【kkt条件,function】拉格朗日乘子法几何意义?
谢邀:今晚太累了 , 先整理这么多 , 后期我会对其修改 , 在求解最优化问题中 , 拉格朗日乘子法(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
推荐阅读
- 前提条件你游戏是vivo渠道的 vivo游戏代充折扣
- 加盟社区e银行需要哪些条件?
- 外地人在天津买房需要什么条件
- 康佳kktv官网,KKTV是什么品牌
- 非深户在深圳买房要什么条件
- 房产证需要什么手续和条件
- function,如何挑选iphone
- 移动花卡领取权益显示不符合条件 中国移动称补偿500元
- 申请经济适用房需要什么条件
- 阴阳师欧皇达成条件