2026-08-28·by Sijie Wang#node#idea#math

lagrangian

拉格朗日量

父级:math

约束优化问题转化为平稳性条件的装置。目标是最小化目标函数 f(x),同时满足等式约束 hᵢ(x)=0不等式约束 gⱼ(x)≤0,其中 x ∈ ℝⁿ

为什么会出现乘子——几何直觉(等式情形)

先只看等式约束:可行集是曲面 M = {x : hᵢ(x)=0}。在一个正则点∇hᵢ 线性无关)处,既能移动又保持可行的方向构成切空间

TxM={d: hi(x)d=0  i}.T_xM=\{\,d:\ \nabla h_i(x)\cdot d=0\ \ \forall i\,\}.

x*fM 上的一个局部极小点。沿着任意经过 x* 的可行曲线,f 都是平稳的,因此

f(x)d=0for every dTxM.\nabla f(x^\ast)\cdot d=0\qquad\text{for every } d\in T_xM .

这说明 ∇f(x*) 正交于切空间,也就是说它落在约束梯度所张成的空间里:

f(x)=iλihi(x).\nabla f(x^\ast)=-\sum_i \lambda_i\,\nabla h_i(x^\ast).

系数 λᵢ 正是拉格朗日乘子——由线性无关性可知它们是唯一的。直觉:在最优点处,你不可能再把 f 往下推而不被某个约束顶回来;∇f 是那些把你固定在曲面上的"力" ∇hᵢ 的一个线性组合。

拉格朗日函数把这一切打包成一个平稳性条件

拉格朗日函数

把每一个约束都折进目标函数,各自乘以专属的乘子——每个等式 hᵢ 对应符号自由的 λᵢ,每个不等式 gⱼ 对应 μⱼ≥0

L(x,λ,μ)=f(x)+iλihi(x)+jμjgj(x).L(x,\lambda,\mu)=f(x)+\sum_i \lambda_i\, h_i(x)+\sum_j \mu_j\, g_j(x).

现在最优点就只是 L 的一个平稳点

  • xL=0\nabla_x L=0 复现了上面的条件(f=λihi\nabla f=-\sum\lambda_i\nabla h_i);
  • L/λi=0\partial L/\partial\lambda_i=0 复现了约束 hᵢ=0

于是约束问题就变成了:求解 ∇L=0——n+m 个方程,n+m 个未知数 (x, λ)。约束并没有消失,而是被转化成了额外变量 λ 上的平稳性条件。

乘子的含义:影子价格(敏感度)

把约束 i 放松为 hᵢ(x)=bᵢ,并设 p*(b) 为相应的最优值。求导:利用 ∇hⱼ·(∂x*/∂bᵢ)=δᵢⱼ∇f=-Σλₖ∇hₖ

pbi=fxbi=kλkhkxbi=λi.\frac{\partial p^\ast}{\partial b_i}=\nabla f\cdot\frac{\partial x^\ast}{\partial b_i}=-\sum_k \lambda_k\,\nabla h_k\cdot\frac{\partial x^\ast}{\partial b_i}=-\lambda_i .

所以λᵢ 就是约束 i 每放松一个单位,最优值随之产生的边际变化——它的影子价格。乘子很大的紧约束是"昂贵"的;乘子为 0 则说明该约束根本没有起作用(不是紧约束)。

一个简单的算例

最小化 x²+y²,约束为 x+y=1。于是 L=x²+y²+λ(x+y−1)∇ₓL=0 给出 2x+λ=02y+λ=0x=y,再代入约束得 x=y=½λ=−1。最优值为 ½。验证敏感度:当 x+y=b 时最优值为 p*(b)=b²/2,于是 dp*/db=b=1=−λ。✓

完整的代表性计算(极小与极大,几何验证 + 影子价格验证):lagrangian-worked-example

不等式约束 → μ≥0 与互补松弛性

不等式 gⱼ≤0 只在一个方向上阻挡运动,所以它的乘子带有符号约束μⱼ≥0(它只能把你推回可行域)。而如果某约束在最优点处是松的gⱼ<0,未被触及),它就不施加任何力,于是 μⱼ=0——这就是互补松弛性 μⱼgⱼ=0。等式约束(自由的 λ)加上不等式约束(μ≥0 加松弛性)合在一起,就是 kkt 条件。

极小-极大(鞍点)视角 → 对偶性

L原问题变量 x对偶变量 (λ,μ) 耦合在一起。对乘子取最大化,正好复现出约束问题:

minx maxμ0, λ L(x,λ,μ) = (primal optimum),\min_x\ \max_{\mu\ge 0,\ \lambda}\ L(x,\lambda,\mu)\ =\ \big(\text{primal optimum}\big),

因为一旦某个约束被违反,内层的最大化就能把 L 推向 →∞。交换取值顺序则得到对偶问题 maxμ0minxL\max_{\mu\ge0} \min_x L,其值恒小于等于原问题(弱对偶性),在凸性 + Slater 条件下取等。完整的对偶性内容见 kktclassical-optimization

about this entry

One of sijie's wiki entries. The AI on this site is grounded in the same corpus and answers in sijie's voice, with citations back to entries like this one — answering costs sijie money, so it waits behind a code: enter an access code →