拉格朗日乘子法的通俗理解

2021-10-05 02:29:31 字數 1013 閱讀 6307

這裡舉個簡單的例子吧

在家裡做蛋糕,假如只計算雞蛋和牛奶的**

其中雞蛋的**為4.5¥/斤,牛奶為12¥/公升,而預算剛好是20¥

那麼就有:

經過分析,蛋糕的總量跟兩種原材料(x1,x2)具有如下關係:

那麼最少能做多少蛋糕

在 線性最小二乘法的通俗理解 中提到極值點可以通過求偏導來實現

函式 f

ff(x1,x2) 對x1,x2分別求偏導,那麼得出的結論是:x1,x2都為0的時候最小

單獨看這個函式,這個結論對的,

但問題是它不滿足預算為20的限制條件

拉格朗日想到 既然 h

hh(x1,x2) = 0

那函式 f

ff(x1,x2) 是否可以加上這個h

hh(x1,x2)再乘以乙個係數也應該不變

任何數乘以0當然是0,f

ff(x1,x2) 加上0當然保持不變

所以其實就可以等同於求下面這個函式的極值:

對x1,x2以及 λ 分別求偏導:

解上面的方程組得到 x1=0.8889,x2=1.3333

然後代入 f

ff(x1,x2) 即可

這裡為什麼要多加乙個乘子λ呢

試想一下,如果 λ 是個固定的數(比如1),也能通過上面的前兩條方程式求解得到x1,x2

但是就得不到第三條方程式,其實也就是沒有約束條件

在求偏導(極值點)以後,還能保留原有的約束條件

把約束條件帶進來,跟求其他變數的偏導結果放在一起

既能滿足約束條件,又能保證是約束條件下的極值

當然這是乙個約束條件的情況,如果有多個約束條件呢?

那就要用多個不同的 λ,正如最上面的那個定義那樣,把這些加起來(這些0加起來也是0)

最優問題,這個思維很重要,求 條件極值 轉化為求 函式和條件 的極值

謝謝!

直觀理解拉格朗日乘子法

拉格朗日乘數法 lagrange multiplier 是一種尋找多元函式在一組約束下的極值的方法。通過引入拉格朗日乘子,可將d個變數和k個約束條件的最優化為題轉化成d k個變數的無約束優化問題求解。舉個2維的例子來說明 假設有自變數x和y,給定約束條件g x,y c,要求f x,y 在約束g下的極...

對拉格朗日乘子法的理解

我們什麼時候用拉格朗日乘子法?在求二次優化 或者寬泛點說,凸優化 的時候,一般寫法是,我們要求乙個函式的min,然後這個函式一般是凸函式,然後,這個函式的自變數還有好幾個約束 等式約束and不等式約束 我們的拉格朗日式子寫出來,寫出來的是用原函式減去alpha 等式約束,減去beta 不等式約束 因...

深入理解拉格朗日乘子法

乙個最短路徑問題 假設你在m點,需要先到河邊再回到c點,如何規劃路線最短?假設 河流曲線滿足方程 g x,y 0 例如 如果它是乙個圓 g x,y x 2 y 2 r 2 0 用p表示河邊上的任意 p x,y 點,用 d m,p 表示m,p之間距離,那麼問題可以描述為 max f p 約束於 g p...