二次計画問題(quadprog)について

6 visualizaciones (últimos 30 días)
Youhei Ogawa
Youhei Ogawa el 28 de Nov. de 2019
Respondida: Kazuya el 30 de Nov. de 2019
こんにちは
定式化される二次計画問題について、目的関数の値に制約条件をつけたいのですがどのように書けばよいでしょうか?
例えば、f(x)=0.5*X'*H*X+f'*X H=[1 -1;-1 2], f = [-2 ;-6]という二次計画問題に対して
-1<=f(x)<=1の制約条件が存在するとき、二次計画問題としてどのようにMATLABで記述すればよいでしょうか?
x = quadprog(H,f,A,b)←のどこに、どのように書けばよいのでしょうか。
  2 comentarios
Kazuya
Kazuya el 28 de Nov. de 2019
f(x)=0.5*X'*H*X+f'*X
f = [-2 ;-6]
と2つ f がありますが、f(x) と f は別のものですよね?
要は -1 <= f(x) <= 1 の間で f(x) の最小値を、、すなわち f(x) が -1 以上の最小値を取る x を求めるということですか?
Youhei Ogawa
Youhei Ogawa el 28 de Nov. de 2019
fは別ものです。
-1以上だけでなく、 -1以上、かつ1以下という制約条件を設けたいです。

Iniciar sesión para comentar.

Respuestas (1)

Kazuya
Kazuya el 30 de Nov. de 2019
まず・・ quadprog 関数では目的関数の値に制約条件をつけることはできません。目的関数に制約付けるというところが、あまりイメージ沸かないんですが、例えば以下のように問題を分割してみるのはどうでしょう。
Step 1: まず制約なしで quadporg を実行
Step 2-a: 結果的に f が範囲内ならOK
Step 2-b: 求まった f が範囲の下限より小さければ、f = 下限値を取る x を求める問題に切り替え・・
Step 2-c: 求まった f が範囲の上限より大きければ、範囲を満たす解は無い・(?)

Categorías

Más información sobre 二次計画法と錐計画法 en Help Center y File Exchange.

Productos


Versión

R2019a

Community Treasure Hunt

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

Start Hunting!