拉格朗日乘數法
簡介
簡單概括一下拉格朗日乘子法用來解決具有約束的最值問題。
那麼其中主要有兩個比較重要的問題需要解決:
- 等式約束問題
- 不等式約束問題
等式約束問題
其中我認爲最重要的其實就是等式約束問題,因爲不等式最終也可以轉化爲這第一種問題,至於怎麼轉化我們後面再講,現在我們想搞懂如何解決等式約束問題。
明確問題
上面就是我們需要解決的問題。
基礎知識
首先我們明確一些前提條件,這也是我們求解的基礎。
我們現在需要求解的是有約束的極值問題,那麼我們回想一下當沒有約束的時候我們如何求解。
其實也簡單,偏導爲0對吧:
同理,對於g(x1,x2)=0,我們可以得到:
其中x*表示極值點。
推導
得到了上面的基礎條件之後我們就可以進行真正的推導了。
首先我們根據上面的兩個導數式子得到:
左邊都是相等的,我們合併之後就可以得到兩個式子的分子之比=分母之比。
這時候我們就得到了拉格朗日乘子:
構造
然後我們構造如下方程
其實到這裏我們已經知道了拉格朗日乘子法的靈魂,就是講有約束的極值問題轉換爲無約束的極值問題。
求極值
然後其實就是常規思路了,求導,求極值,下面我們寫的式子也叫KKT條件:
此時問題已經可解。
不等式約束問題
明確問題
不等式約束我們給出一個模板:
問題轉化
我們可知一定存在一個x3使得:
這樣的話我們就可以使用等式約束方法進行解決。
大家共勉~~