拉格朗日乘子法(包括测试)

by think3355 on 2026-03-29 14:21:38

拉格朗日乘子法(Lagrange Multiplier Method)是优化理论中一座连接几何直觉代数计算的桥梁。要理解它如何从“性质本质”走向“问题应用”,我们需要层层剥洋葱:从直观的几何图像,到严谨的数学构造,再到具体的解题步骤,最后延伸到其物理/经济含义。

以下是这一过程的完整剖析:


一、本质层面:几何与物理直觉

在死记硬背公式之前,必须理解它到底在干什么。

1. 几何本质:梯度的平行性

想象你在爬一座山(目标函数 $f(x,y)$),但你被限制必须在一条小路(约束条件 $g(x,y)=c$)上走。你想找到小路上的最高点。

核心结论:在极值点处,两个梯度向量共线。 $$ \nabla f = \lambda \nabla g $$ 这里的 $\lambda$ 就是拉格朗日乘子,它只是一个比例系数,用来平衡两个梯度的大小。

2. 物理本质:约束力与虚功

在力学中,拉格朗日乘子法对应着约束力


二、构造层面:从几何到代数(拉格朗日函数)

几何直觉很美,但计算机和人脑解方程更擅长代数。如何把 $\nabla f = \lambda \nabla g$ 和 $g(x)=c$ 打包成一个好解的系统?

1. 构造拉格朗日函数

我们定义一个新的函数 $L$(Lagrangian),将目标函数和约束函数“融合”: $$ L(x, y, \lambda) = f(x, y) - \lambda \cdot (g(x, y) - c) $$ (注:有时也写为 $+\lambda$,不影响结果,仅改变 $\lambda$ 符号)

2. 为什么求 $L$ 的驻点等价于原问题?

对 $L$ 求所有变量的偏导数并令其为 0:

  1. $\frac{\partial L}{\partial x} = \frac{\partial f}{\partial x} - \lambda \frac{\partial g}{\partial x} = 0 \implies \nabla_x f = \lambda \nabla_x g$
  2. $\frac{\partial L}{\partial y} = \frac{\partial f}{\partial y} - \lambda \frac{\partial g}{\partial y} = 0 \implies \nabla_y f = \lambda \nabla_y g$
  3. $\frac{\partial L}{\partial \lambda} = -(g(x, y) - c) = 0 \implies g(x, y) = c$

本质转化


三、应用层面:标准解题流程

从理论到应用,通常遵循以下标准化步骤(SOP):

步骤 1:识别问题

确认问题是等式约束下的极值问题。

步骤 2:构建拉格朗日函数

$$ L(\mathbf{x}, \boldsymbol{\lambda}) = f(\mathbf{x}) - \sum_{i=1}^m \lambda_i (g_i(\mathbf{x}) - c_i) $$

步骤 3:求偏导建立方程组

对所有 $x_j$ 和 $\lambda_i$ 求偏导,令其为 0。 $$ \nabla_{\mathbf{x}} L = 0, \quad \nabla_{\boldsymbol{\lambda}} L = 0 $$

步骤 4:求解方程组

解出候选点 $(\mathbf{x}^, \boldsymbol{\lambda}^)$。

步骤 5:验证与比较


四、实例演示:从抽象到具体

问题:求双曲线 $xy=3$ 上距离原点最近的点。

应用流程

  1. 构造函数: $$ L(x, y, \lambda) = x^2 + y^2 - \lambda(xy - 3) $$
  2. 求偏导: $$ \begin{cases} \frac{\partial L}{\partial x} = 2x - \lambda y = 0 \\ \frac{\partial L}{\partial y} = 2y - \lambda x = 0 \\ \frac{\partial L}{\partial \lambda} = -(xy - 3) = 0 \end{cases} $$
  3. 求解
    • 由前两式得 $2x = \lambda y$ 和 $2y = \lambda x$。
    • 相乘得 $4xy = \lambda^2 xy$。因 $xy=3 \neq 0$,故 $\lambda^2 = 4 \implies \lambda = \pm 2$。
    • 若 $\lambda = 2$,则 $x=y$,代入 $xy=3 \implies x=y=\pm\sqrt{3}$。
    • 若 $\lambda = -2$,则 $x=-y$,代入 $xy=3 \implies -x^2=3$ (无实数解)。
  4. 结论: 最近点为 $(\sqrt{3}, \sqrt{3})$ 和 $(-\sqrt{3}, -\sqrt{3})$,最小距离平方为 6。

五、深层含义:$\lambda$ 到底代表什么?

在应用层面,很多人解出 $\lambda$ 就扔掉了。但在高阶应用(如经济学、灵敏度分析)中,$\lambda$ 往往比最优解 $x^*$ 更重要。

影子价格(Shadow Price)/ 灵敏度: 假设约束条件右边不是常数 $c$,而是变量 $c$。最优值 $f^*$ 是 $c$ 的函数。 数学推导可证明: $$ \lambda = \frac{d f^*}{d c} $$


六、扩展:从等式到不等式(KKT 条件)

现实世界的问题往往是不等式约束(如 $g(x) \le 0$)。拉格朗日乘子法推广为 KKT 条件 (Karush-Kuhn-Tucker)


为了帮助你从不同维度巩固对拉格朗日乘子法的理解,我精选了 5 道题目。这些题目由浅入深,分别对应几何直观经典极值经济含义多约束情况以及不等式约束(KKT)

每道题都标注了考察重点简要思路,建议你先尝试自己求解,再对照思路。


题目 1:基础几何直观(点到平面的距离)

【考察重点】 理解梯度平行与法向量的关系,最基础的代数运算。

题目描述: 求原点 $(0,0,0)$ 到平面 $x + 2y + 2z = 6$ 的最短距离。

建模

简要思路

  1. 构造 $L = x^2 + y^2 + z^2 - \lambda(x + 2y + 2z - 6)$。
  2. 求偏导:
    • $2x = \lambda$
    • $2y = 2\lambda \implies y = \lambda$
    • $2z = 2\lambda \implies z = \lambda$
    • 由此得 $x = \lambda/2, y=\lambda, z=\lambda$。
  3. 代入约束:$\lambda/2 + \lambda + \lambda = 6 \implies 2.5\lambda = 6 \implies \lambda = 2.4$。
  4. 解得点 $(1.2, 2.4, 2.4)$,距离平方为 $1.2^2 + 2.4^2 + 2.4^2 = 7.2$,距离为 $\sqrt{7.2} = \frac{6\sqrt{5}}{5}$。
  5. 验证:这与高中立体几何点到平面距离公式 $d = \frac{|Ax_0+By_0+Cz_0-D|}{\sqrt{A^2+B^2+C^2}}$ 结果一致。

题目 2:经典内接问题(椭圆内接矩形)

【考察重点】 处理对称性,理解“相切”的几何意义。

题目描述: 求内接于椭圆 $\frac{x^2}{a^2} + \frac{y^2}{b^2} = 1$ 且边平行于坐标轴的矩形的最大面积。

建模

简要思路

  1. 构造 $L = 4xy - \lambda(\frac{x^2}{a^2} + \frac{y^2}{b^2} - 1)$。
  2. 求偏导:
    • $4y = \lambda \frac{2x}{a^2}$
    • $4x = \lambda \frac{2y}{b^2}$
  3. 两式相除消去 $\lambda$:$\frac{y}{x} = \frac{x/a^2}{y/b^2} \implies \frac{y^2}{b^2} = \frac{x^2}{a^2}$。
  4. 代入约束:$2\frac{x^2}{a^2} = 1 \implies x = \frac{a}{\sqrt{2}}$,同理 $y = \frac{b}{\sqrt{2}}$。
  5. 结果:最大面积 $S_{max} = 4 \cdot \frac{a}{\sqrt{2}} \cdot \frac{b}{\sqrt{2}} = 2ab$。

题目 3:经济学应用(效用最大化与 $\lambda$ 的含义)

【考察重点】 理解拉格朗日乘子 $\lambda$ 的“影子价格”含义。

题目描述: 某消费者的效用函数为 $U(x, y) = x^{0.5} y^{0.5}$,其中 $x, y$ 为两种商品的数量。商品价格分别为 $p_x=2, p_y=4$,消费者预算为 $I=100$。

  1. 求效用最大化时的商品购买量。
  2. 求此时的 $\lambda$ 值,并解释其经济含义。

建模

简要思路

  1. 构造 $L = x^{0.5} y^{0.5} - \lambda(2x + 4y - 100)$。
  2. 求偏导并联立:
    • $0.5 x^{-0.5} y^{0.5} = 2\lambda$
    • $0.5 x^{0.5} y^{-0.5} = 4\lambda$
    • 两式相除得 $\frac{y}{x} = \frac{2}{4} \implies x = 2y$。
  3. 代入预算约束:$2(2y) + 4y = 100 \implies 8y=100 \implies y=12.5, x=25$。
  4. 求 $\lambda$:代回第一个偏导方程,$\lambda = \frac{0.5 \cdot (25)^{-0.5} \cdot (12.5)^{0.5}}{2} \approx 0.177$。
  5. 含义:$\lambda = \frac{\partial U^*}{\partial I}$。意味着如果预算增加 1 单位(从 100 变 101),最大效用值大约增加 0.177。这就是货币的边际效用

题目 4:多约束条件(空间曲线上的极值)

【考察重点】 处理多个拉格朗日乘子 $\lambda_1, \lambda_2$,理解梯度位于约束法向量张成的平面内。

题目描述: 求函数 $f(x, y, z) = x^2 + y^2 + z^2$ 在约束条件 $z = x^2 + y^2$ (抛物面)和 $x + y + z = 1$ (平面)交线上的极值。

建模

简要思路

  1. 构造 $L = x^2 + y^2 + z^2 - \lambda_1(x^2 + y^2 - z) - \lambda_2(x + y + z - 1)$。
  2. 求偏导:
    • $x: 2x - 2\lambda_1 x - \lambda_2 = 0$
    • $y: 2y - 2\lambda_1 y - \lambda_2 = 0$
    • $z: 2z + \lambda_1 + \lambda_2 = 0$
  3. 由 $x, y$ 方程对称性可知,要么 $x=y$,要么 $\lambda_1=1$(若 $\lambda_1=1$ 则 $\lambda_2=0$,导致 $z=0$,需验证)。
  4. 若 $x=y$,代入约束:
    • $z = 2x^2$
    • $2x + z = 1 \implies 2x + 2x^2 = 1 \implies 2x^2 + 2x - 1 = 0$。
    • 解得 $x = \frac{-1 \pm \sqrt{3}}{2}$。
  5. 算出对应的 $y, z$,代入 $f$ 比较大小即可得到最大值和最小值。

题目 5:不等式约束(KKT 条件入门)

【考察重点】 从等式约束扩展到不等式约束,理解“互补松弛性”。

题目描述: 最小化 $f(x, y) = (x-3)^2 + (y-3)^2$,满足约束 $x + y \le 4$。

建模

简要思路

  1. 观察:无约束时,最小值在 $(3,3)$,此时 $x+y=6 > 4$,违反约束。因此最优解一定在边界 $x+y=4$ 上。
  2. KKT 构造:$L = (x-3)^2 + (y-3)^2 + \lambda(x + y - 4)$。
    • 注意:对于 $\le$ 约束,通常写 $+\lambda g(x)$ 且要求 $\lambda \ge 0$(或者写 $-\lambda g(x)$ 且 $\lambda \ge 0$,符号约定需统一,这里采用标准形式:最小化问题,$\le$ 约束,$\lambda \ge 0$)。
  3. KKT 条件
    • 平稳性:$\nabla f + \lambda \nabla g = 0 \implies 2(x-3) + \lambda = 0, \quad 2(y-3) + \lambda = 0$。
    • 原始可行性:$x + y \le 4$。
    • 对偶可行性:$\lambda \ge 0$。
    • 互补松弛性:$\lambda (x + y - 4) = 0$。
  4. 求解
    • 由平稳性得 $x = 3 - \lambda/2, y = 3 - \lambda/2$。
    • 若 $\lambda = 0$,则 $x=3, y=3$,不满足 $x+y \le 4$,舍去。
    • 故必须 $x + y - 4 = 0$(约束起作用)。
    • 代入得 $(3-\lambda/2) + (3-\lambda/2) = 4 \implies 6 - \lambda = 4 \implies \lambda = 2$。
    • 满足 $\lambda \ge 0$。
  5. 结果:最优解 $x=2, y=2$,最小值为 $(2-3)^2 + (2-3)^2 = 2$。

练习建议

  1. 先手算:不要一开始就用软件,手算偏导和方程组能极大增强对“梯度平行”的体感。
  2. 画图:对于二维问题(题目 1、2、5),尝试画出等高线和约束线,看看切点在哪里。
  3. 思考 $\lambda$:在题目 3 中,试着把预算 $100$ 改成 $101$,算一下效用增加了多少,看看是否接近 $\lambda$。

通过这些题目,你应该能完整体会到拉格朗日乘子法从几何性质代数计算再到实际意义的全过程。


2026-2-18

← Back To The Last Ye

2021-2026 三叶工作室·Think3355