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

3 vues (au cours des 30 derniers jours)
Youhei Ogawa
Youhei Ogawa le 28 Nov 2019
Réponse apportée : Kazuya le 30 Nov 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 commentaires
Kazuya
Kazuya le 28 Nov 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 le 28 Nov 2019
fは別ものです。
-1以上だけでなく、 -1以上、かつ1以下という制約条件を設けたいです。

Connectez-vous pour commenter.

Réponses (1)

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

Catégories

En savoir plus sur 二次計画法と錐計画法 dans Help Center et File Exchange

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!