Info

此问题已关闭。 请重新打开它进行编辑或回答。

while running a matlab program it shows error Subscript indices must either be real positive integers or logicals.

1 次查看(过去 30 天)
The program is given here
Let NP = population size =10;
D = Number of variables = 3;
pop = [2 4 6; 8 10 12; 5 10 15, 10 20 30; 33 22 11;3 6 9; 5 15 25; 12 24 30; 4 8 12; 8 16 20];
y is the population index that corresponds to best fitness
for np=1:NP
r1=round(unifrnd(1,NP));
while (r1==np)
r1=round(unifrnd(1,NP));
end
for j=1:D
newpop(np,j)=0;
newpop(np,j)=pop(np,j)+round(unifrnd(-1,1)*(pop(y,j)-pop(r1,j)));
end
end
  9 个评论
Walter Roberson
Walter Roberson 2015-9-6
We cannot run this, as ED is not defined. If it is an array then you are attempting to index the array at location 0.
We need to full error message showing exactly which line is triggering the error message for you.

回答(0 个)

此问题已关闭。

Community Treasure Hunt

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

Start Hunting!

Translated by