## Lagrange 乘數法

$L(x_1,x_2,\lambda)=f(x_1,x_2)+\lambda g(x_1,x_2)$

$\displaystyle \frac{\partial L}{\partial x_1}=0,~\frac{\partial L}{\partial x_2}=0,~\frac{\partial L}{\partial\lambda}=0$

$f(\mathbf{x}+\boldsymbol{\epsilon})=f(\mathbf{x})+\displaystyle\sum_{i=1}^n\frac{\partial f}{\partial x_i}(\mathbf{x})\,\epsilon_i+\frac{1}{2}\sum_{i=1}^n\sum_{j=1}^n\frac{\partial^2f}{\partial x_i\partial x_j}(\mathbf{x})\,\epsilon_i\epsilon_j+\cdots$

$\displaystyle \nabla f=\frac{\partial f}{\partial\mathbf{x}}=\begin{bmatrix} \displaystyle\frac{\partial f}{\partial x_1}\\[0.5em] \vdots\\[0.5em] \displaystyle\frac{\partial f}{\partial x_n} \end{bmatrix}$

$H=[h_{ij}]$$n\times n$ 階矩陣，稱作 Hessian，其中各元為 $h_{ij}=\frac{\partial^2f}{\partial x_i\partial x_j}$。明顯地，$H$ 是一個實對稱矩陣。多變量泰勒展開可表示成向量矩陣運算形式：

$\displaystyle f(\mathbf{x}+\boldsymbol{\epsilon})=f(\mathbf{x})+\nabla f(\mathbf{x})^T\boldsymbol{\epsilon}+\frac{1}{2}\boldsymbol{\epsilon}^TH(\mathbf{x})\boldsymbol{\epsilon}+O(\Vert\boldsymbol{\epsilon}\Vert^3)$

$\displaystyle \begin{array}{ll} \hbox{minimize}&f(\mathbf{x})\\ \hbox{subject to}&g(\mathbf{x})=0, \end{array}$

$\displaystyle g(\mathbf{x}+\boldsymbol{\epsilon})=g(\mathbf{x})+\nabla g(\mathbf{x})^T\boldsymbol{\epsilon}+O(\Vert\boldsymbol{\epsilon}\Vert^2)$

$\displaystyle \nabla\hat{f}=\nabla f-\left(\frac{\nabla f^T\nabla g}{\Vert\nabla g\Vert^2}\right)\nabla g$

$L(\mathbf{x},\lambda)=f(\mathbf{x})+\lambda g(\mathbf{x})$

\displaystyle\begin{aligned} \nabla_{\mathbf{x}}L&=\frac{\partial L}{\partial \mathbf{x}}=\nabla f+\lambda\nabla g=\mathbf{0},\\ \nabla_{\lambda}L&=\frac{\partial L}{\partial\lambda}=g(\mathbf{x})=0,\end{aligned}

$\displaystyle \begin{array}{ll} \hbox{minimize}&x_1^2+x_2^2\\ \hbox{subject to}&x_1+x_2=1, \end{array}$

$\displaystyle L(x_1,x_2,\lambda)=x_1^2+x_2^2+\lambda(x_1+x_2-1)$

\displaystyle \begin{aligned} \frac{\partial L}{\partial x_1}&=2x_1+\lambda=0\\ \frac{\partial L}{\partial x_2}&=2x_2+\lambda=0\\ \frac{\partial L}{\partial \lambda}&=x_1+x_2-1=0. \end{aligned}

Lagrange 乘數法可推廣至包含多個束縛條件的約束最佳化問題：

$\displaystyle \begin{array}{lll} \hbox{minimize}&f(\mathbf{x})&\\ \hbox{subject to}&g_k(\mathbf{x})=0,&k=1,\ldots,m. \end{array}$

$\displaystyle L\left(\mathbf{x},\{\lambda_k\}\right)=f(\mathbf{x})+\sum_{k=1}^m\lambda_kg_k(\mathbf{x})$

\displaystyle\begin{aligned} \nabla_{\mathbf{x}}L&=\nabla f+\sum_{k=1}^m\lambda_k\nabla g_k=\mathbf{0},\\ \nabla_{\lambda_k}L&=g_k(\mathbf{x})=0,~~~k=1,\ldots,m.\end{aligned}

Lagrange 乘數法的應用：

This entry was posted in 特別主題 and tagged , , , , , . Bookmark the permalink.

### 9 Responses to Lagrange 乘數法

1. 張盛東 says:

• ccjou says:

你說的外積可是指outer product？

• 張盛東 says:

是的。

• ccjou says:

2. Ethan says:

教授您好，我是正在學大一微積分的同學，所以沒有看很懂這篇文章…不過還是想問個問題！我想知道拉格朗日乘數是否有不為零的限制？總覺得似乎是沒有的，是嗎？剛已有在 stackexchange 查過這問題（http://math.stackexchange.com/questions/41534/is-it-possible-for-the-lagrange-multiplier-to-be-equal-to-zero），但看得滿吃力的Orz…還沒有很清楚，希望教授能幫忙指點迷津，謝謝！

• ccjou says:

上文提到：在滿足限制的情況下，駐點發生於 $\nabla\hat{f}=\mathbf{0}$，此時 $\nabla f$ 屬於 $\mathrm{span}\{\nabla g\}$，故存在一純量 $\lambda$ 使得 $\nabla f=-\lambda \nabla g$ (正負號可任意選定)。

$\lambda=0$，則 $\nabla{f}=\mathbf{0}$，意思是駐點的位置 $\mathbf{x}$ 恰好滿足限制式 $g(\mathbf{x})=0$。例如，$f(x,y)=x^2+y^2$$(x,y)=(0,0)$ 有極小值。倘若加入限制式 $g(x,y)=x^2-y=0$，則 Lagrangian 函數為
$L(x,y,\lambda)=x^2+y^2+\lambda(x^2-y)$
計算偏導數並設為0，
$\displaystyle\frac{\partial L}{\partial x}=2x+2\lambda x=0$
$\displaystyle\frac{\partial L}{\partial y}=2y-\lambda=0$
也就有
$(1+\lambda)x=0$$\lambda=2y$$y=x^2$。將後面兩式代入第一式，
$(1+2x^2)x=0$，取實數解 $x=0$，故 $y=0$$\lambda=0$

• Ethan says:

哇！非常感謝教授這麼快就回覆了！謝謝教授，我會再研究看看，有問題再進一步發問^^

3. 小鎮馬 says:

用 \nabla f=-\lambda \nabla g 就可以算出答案，為什麼還要多寫Lagrangian 函數？

4. Alan says:

老師我想請問 為何“ 在滿足束縛條件的情況下，f 的局部極小值發生於 \nabla\hat{f}=\mathbf{0}“？