[转载]拉格朗日乘子法如何理解?

@[转载]拉格朗日乘子法如何理解?

链接:https://www.zhihu.com/question/38586401/answer/105273125

拉格朗日乘数法(Lagrange multiplier)有很直观的几何意义。举个2维的例子来说明:假设有自变量 x y x和y ,给定约束条件 g ( x , y ) = g(x,y)= c,要求 f ( x , y ) f(x,y) 在约束 g g 下的极值。我们可以画出 f f 的等高线图,如下图。此时,约束 g = c g=c 由于只有一个自由度,因此也是图中的一条曲线(红色曲线所示)。显然地,当约束曲线 g = c g=c 与某一条等高线 f = d 1 f=d1 相切时,函数 f f 取得极值。两曲线相切等价于两曲线在切点处拥有共线的法向量。因此可得函数 f ( x , y ) f(x,y) g ( x , y ) g(x,y) 在切点处的梯度(gradient)成正比。于是我们便可以列出方程组求解切点的坐标 ( x , y ) (x,y) ,进而得到函数 f f 的极值。
在这里插入图片描述

1 与原点的最短距离

假如有方程: x 2 y = 3 x^2y=3

图像是这个样子滴:
在这里插入图片描述
现在我们想求其上的点与原点的最短距离:
在这里插入图片描述
这里介绍一种解题思路。首先,与原点距离为a 的点全部在半径为a 的圆上:
在这里插入图片描述
那么,我们逐渐扩大圆的半径:
在这里插入图片描述
显然,第一次与 x 2 y = 3 x^2y=3 相交的点就是距离原点最近的点:

在这里插入图片描述
此时,圆和曲线相切,也就是在该点切线相同:
在这里插入图片描述
至此,我们分析出了:
线 在极值点,圆与曲线相切

2 等高线

为了继续解题,需要引入等高线。这些同心圆:

在这里插入图片描述
可以看作函数 f ( x , y ) = x 2 + y 2 f(x,y)=x^2 + y^2 的等高线:
在这里插入图片描述
根据梯度的性质(关于梯度可以查看如何通俗地理解梯度?),梯度向量:
在这里插入图片描述
是等高线的法线:
在这里插入图片描述
另外一个函数 g ( x , y ) = x 2 y g(x,y)=x^2y 的等高线为:
在这里插入图片描述
之前的曲线 x 2 y = 3 x^2y=3 就是其中值为3的等高线:
在这里插入图片描述
因此,梯度向量:
在这里插入图片描述
也垂直于等高线 x 2 y = 3 x^2y=3
在这里插入图片描述

3 拉格朗日乘子法

3.1 求解

根据之前的两个分析:
在这里插入图片描述综合可知,在相切点,圆的梯度向量和曲线的梯度向量平行:
在这里插入图片描述
也就是梯度向量平行,用数学符号表示为:

在这里插入图片描述
还必须引入 x 2 y = 3 x^2y=3 这个条件,否则这么多等高线,不知道指的是哪一根:
在这里插入图片描述
因此联立方程:
在这里插入图片描述求一下试试:
在这里插入图片描述这就是拉格朗日乘子法。

3.2 定义

要求函数f 在g 约束下的极值这种问题可以表示为:

在这里插入图片描述
s . t . s.t. 意思是subject to,服从于,约束于的意思。
可以列出方程组进行求解:
在这里插入图片描述
用这个定义来翻译下刚才的例子,要求:
令:
在这里插入图片描述求:
在这里插入图片描述联立方程进行求解:
在这里插入图片描述

3.3 变形

这个定义还有种变形也比较常见,要求:
在这里插入图片描述定义:
在这里插入图片描述求解下面方程组即可得到答案:
在这里插入图片描述把等式左边的偏导算出来就和上面的定义是一样的了。

3.4 多个约束条件

如果增加一个约束条件呢?比如说:
在这里插入图片描述
求:
在这里插入图片描述
从图上看约束条件是这样的:
在这里插入图片描述
很显然所求的距离是这样的:
在这里插入图片描述
那这三者的法线又有什么关系呢? x 2 + y 2 x^2 + y^2 的法线是 x 2 y 3 x^2y-3 x y 3 x-y-3 的法线的线性组合:
在这里插入图片描述假设:
在这里插入图片描述
那么线性组合就表示为:
在这里插入图片描述
联立方程:
在这里插入图片描述
即可求解。

往更高纬度走的话,多约束条件的情况下,问题变为了 g 1 , g 2 g_1,g_2 围成的曲线 C 和f 相切,直观上看 f \nabla f 必然在 g 1 , g 2 \nabla g_1,\nabla g_2 张成的空间中:
在这里插入图片描述
这点的严格性这里就不证明了。

两条曲线相切,意味着他们在这点的法线平行,也就是法向量只差一个任意的常数乘子(取为 λ f ( x , y ) = λ g ( x , y ) -\lambda):\nabla f(x,y)=-\lambda \nabla g(x,y) , 我们把这个式子的右边移到左边,并把常数移进微分算子,就得到 ( f ( x , y ) + λ g ( x , y ) ) = 0 \nabla (f(x,y)+\lambda g(x,y))=0
把这个式子重新解释一下,这个就是函数 f ( x , y ) + λ g ( x , y ) f(x,y)+\lambda g(x,y) 无约束情况下极值点的充分条件。

发布了7 篇原创文章 · 获赞 18 · 访问量 2170

猜你喜欢

转载自blog.csdn.net/shao918516/article/details/85142709