我的目标函数为
function val = fitness( X )
val = 10*X(7)+20*X(8)+50*X(9)+10*X(10)+20*X(11)+50*X(12);
end
我试图将ga称为
ga(@fitness,12,A,b,[],[],lb,[],[],IntCon)
A = 9X9 matrix
b = 9X1 matrix
lb = 9X1 Zero matrix
IntCon = [1:12]
我收到以下错误消息
Error using preProcessLinearConstr (line 48)
The number of columns in A must be the same as the length of X0.
Error in gacommon (line 100)
[Iterate.x,Aineq,bineq,Aeq,beq,lb,ub,msg,exitFlag] = ...
Error in ga (line 319)
[x,fval,exitFlag,output,population,scores,FitnessFcn,nvars,Aineq,bineq,Aeq,beq,lb,ub,
请提供一个使用ga函数求解混合整数问题的例子。
答案 0 :(得分:1)
问题是Ab
的大小为9x1,而fitness()
的大小至少为12x1。
E.g。以下没有错误:
A = ones(12,12);
b = ones(12,1);
lb = zeros(12,1);
IntCon = [1:12];
ga(@fitness,12,A,b,[],[],lb,[],[],IntCon)
有关详细信息,请参阅Mixed Integer Optimization。