寻找“最好”(3)——函数和泛函的拉格朗日乘数法

拉格朗日乘数法

  大多数的优化问题都会加入特定的约束,而不仅仅是指定起点和终点,此时需要更好的办法去解决优化问题,拉格朗日乘数法正是一种求约束条件下极值的方法。

  简单地说,拉格朗日乘数法(又称为拉格朗日乘数法)是用来最小化或最大化多元函数的。如果有一个方程f(x,y,z),在这个方程里的变量之间不是独立的,也就是说这些变量之间是有联系的,这个联系可能是某个方程g(x,y,z) = C;也就是g(x,y,z) = C定义了x,y,z之间的关系,这个关系对变量做出了一定的的限制,我们需要在这个限制下来最小化或最大化f(x,y,z)。

拉格朗日乘数法的解释

  假设(x,y)表示经纬度,f(x, y)是江浙两省所有大山的海拔高度;g(x, y) = C是约束条件,将范围缩小到江浙边界。现在需要找出找出在跨越江浙两省的大山中,处于江浙边界的最高点,用数学符号表示:

 

   s.t.是subject to 的缩写,意思是使maxf满足于s.t.中规定的条件。由于约束条件是等式,所以这种优化也称为等式约束优化。我们以位于两省边界附近的大山为例,画出它的等高线和两省的分界线:

  如果f(x,y)中有满足g(x,y) = C的点,那么一定处于二者相切处:

 

  切点就是极值,该极值的判定条件是,红绿两条等高线的梯度方向相同。这里切点是必要条件,如果有极值,极值点一定在切点处,但切点未必是极值点。这类似于普通条件下的极值判定,导数为0的点也可能是鞍点。

求解过程

  根据上一节的思路,可以将最初的问题转换为方程组:

 

  其中λ就是拉格朗日乘子,这就将极值问题转换成普通的方程组求解问题。更多拉格朗日乘数法,可参考《多变量微积分笔记6——拉格朗日乘数法》。

盒子的最小表面积

  固定容积的无顶盖的盒子,盒子底部是正方形,使其表面积最小是多少?

  如上图所示,设盒子的底边x,高为y,则体积V = x2y,表面积S = x2 + 4xy。该问题可以使用单变量的极值求解法处理(可参考《单变量微积分笔记8——最值问题和相关变率》),但是有些复杂,现在用拉格朗日乘数法直接求解:

 

  根据拉格朗日乘数法:

 

  当x = 2y时,便面积最小。

多个约束条件

  上面的例子仅有一个约束条件,如果碰到多约束条件的时候如何处理?

一般过程

  设目标函数为f(x,y,z),约束条件为gk(x,y,z),如果寻找在约束下f(x)的最小值:

  如果用向量表示,还可以写成:

  然后对F中的所有未知量(x和λ)求偏导,令其等于0:

 

  这将形成一个方程组,通过解方程组求得所有未知量。

示例

  5个方程,5个未知数,可以求得方程组的解。

泛函拉格朗日乘数法

一般形式

  拉格朗日乘数法也可以在泛函中使用,它的一般形式是:

  这里F和G都是简单泛函,C是一个常数。因为C是常数,所以求A的极值等同于求A – λC的极值,这就将问题和约束条件联合到一起,构成新的泛函极值问题:

周长固定的图形中,面积最大的是圆

  长度固定的绳子围成的图形中,面积最大的是什么图形?

  令曲线方程是y = y(x),线段长度是C,问题用数学描述就是:

 

  使用拉格朗日乘数法,求A的极值相当于求A-λC的极值:

 

  设置泛函L:

 

  现在可以使用欧拉-拉格朗日方程:

 

  这正是圆的公式,所以说长度固定的绳子围成的图形中,面积最大的是圆。


   作者:我是8位的

  出处:http://www.cnblogs.com/bigmonkey

  本文以学习、研究和分享为主,如需转载,请联系本人,标明作者和出处,非商业用途! 

  扫描二维码关注公众号“我是8位的”

  

原文地址:https://www.cnblogs.com/bigmonkey/p/9525161.html