@[转载]拉格朗日乘子法如何理解?
链接:https://www.zhihu.com/question/38586401/answer/105273125
拉格朗日乘数法(Lagrange multiplier)有很直观的几何意义。举个2维的例子来说明:假设有自变量
,给定约束条件
c,要求
在约束
下的极值。我们可以画出
的等高线图,如下图。此时,约束
由于只有一个自由度,因此也是图中的一条曲线(红色曲线所示)。显然地,当约束曲线
与某一条等高线
相切时,函数
取得极值。两曲线相切等价于两曲线在切点处拥有共线的法向量。因此可得函数
与
在切点处的梯度(gradient)成正比。于是我们便可以列出方程组求解切点的坐标
,进而得到函数
的极值。
1 与原点的最短距离
假如有方程:
图像是这个样子滴:
现在我们想求其上的点与原点的最短距离:
这里介绍一种解题思路。首先,与原点距离为a 的点全部在半径为a 的圆上:
那么,我们逐渐扩大圆的半径:
显然,第一次与
相交的点就是距离原点最近的点:
此时,圆和曲线相切,也就是在该点切线相同:
至此,我们分析出了:
2 等高线
为了继续解题,需要引入等高线。这些同心圆:
可以看作函数
的等高线:
根据梯度的性质(关于梯度可以查看如何通俗地理解梯度?),梯度向量:
是等高线的法线:
另外一个函数
的等高线为:
之前的曲线
就是其中值为3的等高线:
因此,梯度向量:
也垂直于等高线
:
3 拉格朗日乘子法
3.1 求解
根据之前的两个分析:
综合可知,在相切点,圆的梯度向量和曲线的梯度向量平行:
也就是梯度向量平行,用数学符号表示为:
还必须引入
这个条件,否则这么多等高线,不知道指的是哪一根:
因此联立方程:
求一下试试:
这就是拉格朗日乘子法。
3.2 定义
要求函数f 在g 约束下的极值这种问题可以表示为:
意思是subject to,服从于,约束于的意思。
可以列出方程组进行求解:
用这个定义来翻译下刚才的例子,要求:
令:
求:
联立方程进行求解:
3.3 变形
这个定义还有种变形也比较常见,要求:
定义:
求解下面方程组即可得到答案:
把等式左边的偏导算出来就和上面的定义是一样的了。
3.4 多个约束条件
如果增加一个约束条件呢?比如说:
求:
从图上看约束条件是这样的:
很显然所求的距离是这样的:
那这三者的法线又有什么关系呢?
的法线是
和
的法线的线性组合:
假设:
那么线性组合就表示为:
联立方程:
即可求解。
往更高纬度走的话,多约束条件的情况下,问题变为了
围成的曲线 C 和f 相切,直观上看
必然在
张成的空间中:
这点的严格性这里就不证明了。
两条曲线相切,意味着他们在这点的法线平行,也就是法向量只差一个任意的常数乘子(取为
, 我们把这个式子的右边移到左边,并把常数移进微分算子,就得到
。
把这个式子重新解释一下,这个就是函数
无约束情况下极值点的充分条件。