拉格朗日乘子

2022-07-25 23:09:20 字數 1743 閱讀 7211

1拉格朗日乘子又稱未定乘子,用於求解有乙個或多個約束條件的函式駐點。考慮求 \(f(\mathbf)\) 的最大值,約束條件為 \(g(\mathbf)=0\) ,我們觀察這樣的駐點 \(\mathbf^*\) 滿足什麼樣的條件。顯然 \(\mathbf^*\) 在 \(d\) 維空間中由約束條件 \(g(\mathbf)=0\) 確定的 \(d-1\) 維表面上,並且梯度 \(\nabla g(\mathbf)\) 必然垂直於該表面(該點處微平面的法向量)。

考慮 \(g(\mathbf)\) 的泰勒展開,由於 \(\mathbf\) 在曲面 \(g(\mathbf)=0\) 上,對於同在該曲面上的 \(\mathbf+\boldsymbol\epsilon\) ,有

\[g(\mathbf+\boldsymbol\epsilon)= g(\mathbf)+\boldsymbol\epsilon^\text\nabla g(\mathbf)+o(\vert\boldsymbol\epsilon\vert),

\]另一方面

\[g(\mathbf+\boldsymbol\epsilon)=g(\mathbf x)=0,

\]從而

\[\lim_\boldsymbol\epsilon^\text\nabla g(\mathbf)=0.

\]值得注意的是,這裡 \(\boldsymbol\epsilon\) 在微平面 \((\mathbf x, \nabla g(\mathbf x))\) (點法式)上,因為我們已經限定 \(g(\mathbf x)\equiv 0\) ,從而 \(\boldsymbol\epsilon\) 的維度也受到了限制。

由於 \(\mathbf^*\) 是 \(f(\mathbf)\) 的駐點,且 \(\mathbf^*\) 在曲面 \(g(\mathbf)=0\) 上,因此 \(\nabla f(\mathbf^*)\) 必然也與該曲面垂直。故而存在某個常數 \(\lambda\) 滿足

\[\nabla f+\lambda \nabla g=0,

\]這裡 \(\lambda\neq 0\) 即為拉格朗日乘子,對應地,拉格朗日函式為

\[l(\mathbf,\lambda)\equiv f(\mathbf)+\lambda g(\mathbf),

\]\(\nabla_,\lambda}l=0\)等價表示了約束條件下函式駐點的求解。

直觀上講,所謂拉格朗日乘子和最簡單的設未知數求方程沒有本質區別。這裡我們知道 \(\lambda\) 存在,從而先設出來而不是直接求出來,再利用方程組隱式表達所有約束或最值條件。

考慮約束條件是不等式時的情況,不失一般性地,假定約束條件為\(g(\mathbf)\geq 0\),最大化函式為\(f(\mathbf)\)。分別考慮等號是否取得,可構造相同的拉格朗日函式,約束條件如下

\[\begin

g(\mathbf)&\geq0\\

\lambda&\geq 0\\

\lambda g(\mathbf)&=0,

\end\]

即kkt(karush-kuhn-tucker)條件。

顯然這裡對 \(\lambda\) 符號的約束仍然是一階條件。

若最小化函式是\(f(\mathbf)\),此時拉格朗日函式為

\[l(\mathbf,\lambda)\equiv f(\mathbf)-\lambda g(\mathbf),

\]kkt條件不變。

拉格朗日乘子法

最近在學習 svm 的過程中,遇到關於優化理論中拉格朗日乘子法的知識,本文是根據幾篇文章總結得來的筆記。由於是剛剛接觸,難免存在錯誤,還望指出?另外,本文不會聊到深層次的數學推導,僅僅是介紹拉格朗日乘子法的內容,應用,以及個人對它的感性理解。按照維基百科的定義,拉格朗日乘數法是一種尋找多元函式在其變...

拉格朗日乘子法

最優化基本知識這裡就不贅述了,詳情可以參考個種最優化書籍,這篇部落格主要是幫助回憶優化應用中較常用的方法。一般情況下,最優化問題會碰到一下三種情況 1.無約束,2.等式約束 3.不等式約束。對於無約束情況,只要將優化目標對於變數求導,並令其等於0即可,我們主要討論第二種情況。設目標函式為f x 約束...

拉格朗日乘子法

在求取有約束條件的優化問題時,拉格朗日乘子法 lagrange multiplier 和kkt條件是非常重要的兩個求取方法,對於等式約束的優化問題,可以應用拉格朗日乘子法去求取最優值 如果含有不等式約束,可以應用kkt條件去求取。當然,這兩個方法求得的結果只是必要條件,只有當是凸函式的情況下,才能保...