アプリ版:「スタンプのみでお礼する」機能のリリースについて

外点ペナルティ関数法について(250枚)
最小化:f(x1,x2)=(x1)^2+(1/3)(x2)^2
制 約:g(x1,x2)=-x1-x2+1<0
という制約条件が1つの問題であれば、ψ=(-x1-x2+1)^2とすることで拡張目的関数が
F(x1,x2,r)=f(x1.x2)+rψ(x1,x2)
=(x1)^2+(1/3)(x2)^2+r(-x1-x2+1)^2 ただし(-x1-x2+1<0である時)
となり、極小解を求めると、制約を満足していない領域においては
dF/dx1=(1+r)x1+rx2-r=0
dF/dx2=3rx1+(1+3r)x2-3r=0
より
x1=r/(4r+1)
x2=3r/(4r+1)
r=∞であるので、x1=1/4 x2=3/4と求まります。

ところで制約条件が複数個になった場合はどのようにといたらいいのでしょうか。
複数個制約が設けられた場合の解法を教えてください。

A 回答 (1件)

「250枚」て何や? 説明してみい。

(笑

質問文中のやり方は、ψ = (-x1-x2+1)^2 が間違い。
ψ = { -x1-x2+1 ≧ 0 のとき } (-x1-x2+1)^2
ψ = { -x1-x2+1 < 0 のとき } 0
でなかったら、ペナルティー関数にならんがな。

制約が複数あったら、g_k < 0 に対して
ψ_k = { g_k ≧ 0 のとき } (g_k)^2
ψ_k = { g_k < 0 のとき } 0
として、各制約のペナルティー関数を作って、

F(x,r1,r2,…) = f + Σ(r_k)(ψ_k) を最小化したら
ええやんか。

この回答への補足

すみません。某サイトの質問のとこで始めは質問させてもらっていたのですが、いっこうに回答が得られず「教えてgoo」で質問させてもらいました。

補足日時:2009/04/23 01:47
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!