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

조회 수: 4 (최근 30일)
Youhei Ogawa
Youhei Ogawa 2019년 11월 28일
답변: Kazuya 2019년 11월 30일
こんにちは
定式化される二次計画問題について、目的関数の値に制約条件をつけたいのですがどのように書けばよいでしょうか?
例えば、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
Kazuya
Kazuya 2019년 11월 28일
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 2019년 11월 28일
fは別ものです。
-1以上だけでなく、 -1以上、かつ1以下という制約条件を設けたいです。

댓글을 달려면 로그인하십시오.

답변 (1개)

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

카테고리

Help CenterFile Exchange에서 二次計画法と錐計画法에 대해 자세히 알아보기

제품


릴리스

R2019a

Community Treasure Hunt

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

Start Hunting!