實用
為什麼 Karush-Kuhn-Tucker 優化找不到解決方案?
我有以下效用最大化問題:
$$ \max (xy) $$ $$ (x+y-2)^2 \leq 0 $$ 條件: $$ y-2\lambda (x+y-2) =0 $$ $$ x-2\lambda (x+y-2) =0 $$ $$ \lambda(x+y-2)^2=0 $$ 當我設置 $ \lambda>0 $ ,我得到:
$$ (x+y-2)^2=0 \Rightarrow (x+y-2) = 0 $$ $$ y-2\lambda (x+y-2) = y = 0 $$ $$ x-2\lambda (x+y-2) = x = 0 $$ 但顯而易見的解決方案是 $ x=y=1 $ .
當我設置
$$ \lambda=0 $$這也不是有效解決方案的情況。約束是否太低?對此有何解釋? 非常感謝您的幫助。
正如@user32416 所指出的,一階平穩條件是不夠的。具體來說,您似乎違反了Slater 的條件,即“可行區域必須有一個內點”。沒有 $ x,y $ 為此
$$ (x+y-2)^2 < 0. $$ 如果您將問題改寫為
$$ \max (xy) $$ $$ x+y-2 = 0 $$ $$ x,y \geq 0 $$ 滿足 Slater 條件(對於線性條件,不需要內部點),您可以應用 Karush-Kuhn-Tucker。
這是一個病態的問題。即使不通過 KKT,你的約束 $ (x + y - 2)^2 \le 0 $ ,因為左側是正方形,意味著唯一可行的解決方案是等式綁定的解決方案;IE $ (x + y - 2)^2 = 0 $ , 或者那個 $ |x + y - 2| = 0 $ ——其中你所說的 $ x = y = 1 $ 是一個解決方案。