入力の最適化において状態の制約を加える

2 Ansichten (letzte 30 Tage)
健太 宮田
健太 宮田 am 18 Nov. 2023
離散化・線形化された以下の方程式
X(k+1) = A*X(k) + B*U(k) + C
において、評価関数Jを最小化するような入力Uを求めたいです。
そこで、Uの制約はもちろんの事、Xもとれる範囲が決まっている為、その制約を最適化に加えたいです。その方法を知っている方がいらっしゃいましたら、教えてください。
<試した方法>
このサイトのように、fmincon関数の[c,ceq]を使用し、非線形制約として方程式を入れ込む方法も試しましたが、「実現不可能な点に到達しました。」というエラーが出てしまいます。
function [c,ceq] = mycon(U,A,B,C,x0)
x_next1 = A*x0' + B*[U(1); U(2); U(3)] + C;
x_next2 = A*x0' + B*[U(4); U(5); U(6)] + C;
x_next3 = A*x0' + B*[U(7); U(8); U(9)] + C;
% %a>0
c(1) = -x_next1(1);
c(2) = -x_next2(1);
c(3) = -x_next3(1);
% %0<e<1
c(4) = -x_next1(2);
c(5) = x_next1(2)-1

Antworten (0)

Kategorien

Mehr zu 非線形最適化 finden Sie in Help Center und File Exchange

Produkte


Version

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!