MIT 18.02 · 第 13 课

Lagrange Multipliers (Lagrange 乘子)

用 Lagrange 乘子法求解约束极值问题:\(\nabla f = \lambda \nabla g\) 与约束 \(g=c\) 联立。

授课:Denis Auroux 日期:2007-10-11 难度:较难

学习目标


约束极值问题

问题:求 \(f(x,y)\) 在约束条件 \(g(x,y)=c\) 下的极大或极小值。

例子:求双曲线 \(xy=3\) 上离原点最近的点,即极小化

\[ f(x,y) = x^2 + y^2 \quad\text{subject to}\quad g(x,y) = xy = 3 \]

几何直观

在极值点处,\(f\) 的等高线与约束曲线 \(g=c\) 相切。因为如果还能沿约束曲线移动并让 \(f\) 继续减小,就不是极小值。

两条曲线相切意味着它们的法向量平行,即梯度向量平行:

\[ \nabla f = \lambda \,\nabla g \]

其中 \(\lambda\) 称为Lagrange 乘子(Lagrange multiplier)。

核心思想:在约束极值点处,沿约束曲面的任意切方向移动时 \(f\) 的一阶变化为零,因此 \(\nabla f\) 垂直于切平面,从而与 \(\nabla g\) 平行。


Lagrange 乘子法

联立求解:

\[ \begin{cases} f_x = \lambda\, g_x \\ f_y = \lambda\, g_y \\ g = c \end{cases} \]

对于例子 \(f=x^2+y^2\),\(g=xy=3\):

\[ \begin{cases} 2x = \lambda y \\ 2y = \lambda x \\ xy = 3 \end{cases} \]

由前两式得 \(2x-\lambda y=0\),\(-\lambda x+2y=0\)。系数行列式 \(4-\lambda^2=0\),故 \(\lambda=\pm 2\)。

注意:Lagrange 乘子法本身不区分极大还是极小,也不能直接使用二阶导数检验。需要借助几何直观或比较 \(f\) 的取值来判断。


高级应用:最小表面积金字塔

问题:给定三角形底面和固定体积 \(V\),求使用表面积最小的顶点位置。

设底面顶点为 \(P_1,P_2,P_3\),顶点为 \(P=(x,y,h)\),其中高 \(h\) 由体积固定决定。

技巧:选取适合几何的变量——设 \(u_1,u_2,u_3\) 为底面内切方向上的有向距离,则每个侧面面积为 \(\dfrac{1}{2}a_i\sqrt{u_i^2+h^2}\)。

目标函数:

\[ f(u_1,u_2,u_3) = \frac{1}{2}a_1\sqrt{u_1^2+h^2} + \frac{1}{2}a_2\sqrt{u_2^2+h^2} + \frac{1}{2}a_3\sqrt{u_3^2+h^2} \]

约束:

\[ g(u_1,u_2,u_3) = \frac{1}{2}a_1u_1 + \frac{1}{2}a_2u_2 + \frac{1}{2}a_3u_3 = A_{\text{base}} \]

由 \(\nabla f = \lambda \nabla g\) 得

\[ \frac{a_i\,u_i}{2\sqrt{u_i^2+h^2}} = \lambda\,\frac{a_i}{2} \quad\Longrightarrow\quad \frac{u_i}{\sqrt{u_i^2+h^2}} = \lambda \]

这对 \(i=1,2,3\) 都相同,故 \(u_1=u_2=u_3\),即顶点在底面上的投影是三角形的内心(incenter)。

启示:选取合适的变量能极大简化 Lagrange 乘子法的计算。


知识检查

问题 1:用 Lagrange 乘子法求 \(f\) 在 \(g=c\) 下的极值,需要联立什么方程?

问题 2:Lagrange 乘子法的几何意义是?

问题 3:Lagrange 乘子法求得的点如何判断是极大还是极小?


本课要点

Lagrange 条件

\(\nabla f = \lambda \nabla g\) 与 \(g=c\) 联立。

几何意义

极值点处等高线与约束曲线相切。

判断极值:比较 \(f\) 的取值或几何论证。

变量选取

合适的变量可极大简化计算。


一手资料