Unable to perform assignment because the size of the left side is 1-by-14 and the size of the right side is 14-by-14.

2 次查看(过去 30 天)
Unable to perform assignment because the size of the left side is 1-by-14 and the size of the right side is 14-by-14.
Error in SSA (line 87)
Tp=SalpPositions(i,:)>ub';Tm=SalpPositions(i,:)<lb';SalpPositions(i,:)=(SalpPositions(i,:).*(~(Tp+Tm)))+ub'.*Tp+lb'.*Tm;
Error in main_SSA (line 16)
[Best_score,Best_pos,SSA_cg_curve]=SSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
>>

采纳的回答

Walter Roberson
Walter Roberson 2021-10-6
Your ub and lb need to be column vectors, not row vectors.
  2 个评论
Walter Roberson
Walter Roberson 2021-10-6
% Problem preparation
dim = 14;
ub = 1.1 * ones(dim, 1);
lb = 0.05 * ones(dim, 1);
fobj = @ofun;
%--------------------------------------------------------------------------
SearchAgents_no=20; %number of population
Max_iteration=1000; %number of iteration
%%
[Best_score,Best_pos,SSA_cg_curve]=SSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);

请先登录,再进行评论。

更多回答(2 个)

Alan Weiss
Alan Weiss 2021-10-6
The error statement is clear: your assignment (equality) statement has a 1-by-14 vector on the left and a 14-by-14 matrix on the right. Take a look at line 87 of your SSA function to see what is wrong. Are those the expected sizes of the variables?
Alan Weiss
MATLAB mathematical toolbox documentation
  1 个评论
tahseen alshmary
tahseen alshmary 2021-10-6
编辑:Walter Roberson 2021-10-6
I do not know
my pararmeter is :
% Problem preparation
dim = 14;
ub = 1.1 * ones(1, dim);
lb = 0.05 * ones(1, dim);
fobj = @ofun;
%--------------------------------------------------------------------------
SearchAgents_no=20; %number of population
Max_iteration=1000; %number of iteration
%%
[Best_score,Best_pos,SSA_cg_curve]=SSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);

请先登录,再进行评论。


tahseen alshmary
tahseen alshmary 2021-10-6

类别

Help CenterFile Exchange 中查找有关 MATLAB Support Package for LEGO MINDSTORMS EV3 Hardware 的更多信息

标签

产品


版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by