首页 > 手机 > 配件 > kkt条件,function

kkt条件,function

来源:整理 时间:2022-03-28 06:56:26 编辑:华为40 手机版

拉格朗日乘子法几何意义?

谢邀:今晚太累了,先整理这么多,后期我会对其修改,在求解最优化问题中,拉格朗日乘子法(Lagrange Multiplier)和KKT(Karush Kuhn Tucker)条件是两种最常用的方法。在有等式约束时使用拉格朗日乘子法,在有不等约束时使用KKT条件。  我们这里提到的最优化问题通常是指对于给定的某一函数,求其在指定作用域上的全局最小值(因为最小值与最大值可以很容易转化,即最大值问题可以转化成最小值问题)。

提到KKT条件一般会附带的提一下拉格朗日乘子。对学过高等数学的人来说比较拉格朗日乘子应该会有些印象。二者均是求解最优化问题的方法,不同之处在于应用的情形不同。一般情况下,最优化问题会碰到一下三种情况:(1)无约束条件  这是最简单的情况,解决方法通常是函数对变量求导,令求导函数等于0的点可能是极值点。

将结果带回原函数进行验证即可。(2)等式约束条件设目标函数为f(x),约束条件为h_k(x),形如:  s.t. 表示subject to ,“受限于”的意思,l表示有l个约束条件。   则解决方法是消元法或者拉格朗日法。消元法比较简单不在赘述,这里主要讲拉格朗日法,因为后面提到的KKT条件是对拉格朗日乘子法的一种泛化。

   例如给定椭球:             求这个椭球的内接长方体的最大体积。这个问题实际上就是条件极值问题,即在条件 下,求的最大值。   当然这个问题实际可以先根据条件消去 z (消元法),然后带入转化为无条件极值问题来处理。但是有时候这样做很困难,甚至是做不到的,这时候就需要用拉格朗日乘数法了。

   首先定义拉格朗日函数F(x):    ( 其中λk是各个约束条件的待定系数。) 然后解变量的偏导方程:     ......   如果有l个约束条件,就应该有l 1个方程。

求出的方程组的解就可能是最优化值(高等数学中提到的极值),将结果带回原方程验证就可得到解。   回到上面的题目,通过拉格朗日乘数法将问题转化为        对求偏导得到        联立前面三个方程得到和,带入第四个方程解之       带入解得最大体积为:       至于为什么这么做可以求解最优化?维基百科上给出了一个比较好的直观解释。

 举个二维最优化的例子:     min f(x,y)       s.t. g(x,y) = c  这里画出z=f(x,y)的等高线(函数登高线定义见百度百科):                    绿线标出的是约束g(x,y)=c的点的轨迹。蓝线是f(x,y)的等高线。箭头表示斜率,和等高线的法线平行。

从梯度的方向上来看,显然有d1

文章TAG:kktfunction条件

最近更新