ハンドルクラス内のfmincon使用に関する不具合
古いコメントを表示
現在、私はMATLABで強化学習を行っています。ハンドルクラスを作成し、その中のfunction内でfminconを使用していますが値0しか返さない状態になって困っています。以下にコードを示します。
x;
A = [];
b = [];
Aeq = [];
beq = [];
lb = [];
ub = [];
nonlcon = [];
x0 = [0,0];
obj.fun = @(x)100*(obj.x(2)-obj.x(1)^2)^2 + (1-obj.x(1))^2;
obj.x = fmincon(obj.fun,obj.x0,obj.A,obj.b,obj.Aeq,obj.beq,obj.lb,obj.ub,obj.nonlcon)
私は最初のコードの一部であるobj.fun = @(x)をobj.fun = @(obj.x)と記述していないことが原因なのではないかと考えているのですが、この記述方法ではドットを使用しているので実行時に「演算子の使用が無効です。」とエラーが出てきてしまいます。fminconが0しか返さない原因はこのobj.funの記述が悪いからでしょうか?また、その場合、どのようにすればハンドルクラス内でobj.funを定義できるのでしょうか?
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で インストールとライセンスの紹介 についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!