for i = 1 : npop
pop(i).position = create_x(ncus, ncar);
pop(i).cost = costfunction(pop(i).position,ncar);
pop(i).discharge = dischargefunction(pop(i).position);
end
function z = costfunction(x,n)
p = find(x.car==1,n);
for i=1 : size(p)
for w=p(i-1)+1 : p(i)
route.i = [route.i,(x.cus(w),x.cus(w+1))];
end
end
z = 1;
end
在主函数进入 costfunction的时候会报错
无效表达式。调用函数或对变量进行索引时,请使用圆括号。否则,请检查不匹配的分隔符。
出错 main (第 32 行)
pop(i).cost = costfunction(pop(i).position,ncar);