電子書籍の厳選無料作品が豊富!

MATLABでfminconを用いているのですが、以下のようなエラーが出てしまい、作業が進みません。どのようにすればエラーが消えるか教えていただけませんか??

??? エラー: ==> fmincon
The constraint function confun must return two outputs:
the nonlinear inequality constraints and
the nonlinear equality constraints.

confunというは私が設定した非線形制約を表す関数です。

ご返答お待ちしております。

A 回答 (1件)

must return two outputsというのだから


function [c,ceq]= confun(x)
のように定義してください。cは不等式制約,ceqは等式制約です。

この回答への補足

御返事ありがとうございます。

confunは現在以下のようになってます。

function [c,ceq]=confun(x)
c=[];
ceq=[];

for i=1:N
ceq=[ceq; %f(x(i))% ];
c=[c; %g(x(i))% ];
end

という感じです。
※ %f(x)% と %g(x)% は実際のプログラムでは式を入力しています。
ここでは省略させていただきました。

としているのですが、先ほどのエラーが出てきます。

補足日時:2009/11/04 15:02
    • good
    • 0
この回答へのお礼

解決しました。

皆さんありがとうございました。

お礼日時:2009/11/05 15:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!