2

私は私の目的関数を次のように持っています

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関数を使用した例を提供してください。

4

1 に答える 1

1

問題はAb、サイズが 9x1 であることですが、サイズfitness()は少なくとも 12x1 であると予想されます。

たとえば、次の例にはエラーはありません。

A = ones(12,12);
b = ones(12,1);
lb = zeros(12,1); 
IntCon = [1:12];
ga(@fitness,12,A,b,[],[],lb,[],[],IntCon)

詳細については、混合整数最適化を参照してください。

于 2013-11-08T20:03:27.977 に答える