一种对拉格朗日乘子的直观理解

假如你面前有一座山,山上有一条复杂的小路,如果你爬山的时候只能顺着小路走,那么什么时候你发现自己到了某个至高点呢?很明显,当你发现自己不论是往前走,还是往后退时,高度总是下降的,那么这时你就位于一个局部的最高点了。




把这个思想抽象为数学表达,那就是,当函数上某点的梯度在约束曲线切向没有分量时,你就到达局部最高点了;换句话说,如果函数的梯度在约束曲线切向有分量,那么你就可以继续顺着这个分量移动以达到一个更高的高度。我们知道,约束曲线的切向是正交于法向的,所以这实际就是说函数的梯度要和曲线的法向平行。


约束曲线的法向是什么?假如一个约束曲线表达为G=0, 那么所谓曲线的法向,其实是曲面G在等高线G=0处的梯度!所以两个梯度平行,意味着grad(F)=k grad(G). 这个系数k就被称为拉格朗日乘子。


而求函数在约束曲线下的最大值,实际上也就是解方程组:

grad(F) = L grad(G)

G=0


为了简便与形式的统一,我们引入朗格朗日函数: L(F,G,k) = F+kG, 那么以上方程组实际上等价为:

grad_x(L) = 0

dL/dk = 0


值得注意的是,如果我们的约束曲线变成了曲面G>=0,同时要求解只能在G=0上,那么乘子k的符号其实是有限定的,它必须保证两个梯度方向相反(即对偶可行性条件)。为什么要这样?其实很明显,因为我们一方面已经约束了解只能在G=0上,另一方面又允许进一步探索G>0的区域,那么如果 grad(F) 和 grad(G) 同向,则意味着我们可以进入G>0的区域以提高F的取值,这点就与解只能在G=0上相矛盾。所以只有grad(F) 和 grad(G) 反向时,进一步提高F的值意味着步入G<0的领域,但那是不允许的,所以这就保证了解只可能出现在G=0上。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值