拉格朗日乘子法和KKT条件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拉格朗日乘子法和KKT条件相关的知识,希望对你有一定的参考价值。
参考技术A 首先,拉格朗日乘子法和kkt条件都是解决数学中最优化问题的方法。什么时候会用到这种方法呢?比如,求解函数 ,直接求 关于x的一阶导数,让一阶导数为0,便得到 取最小值时的最优解为1。但要是x有限制条件呢?那么就会用到上面的两种方法。
一、限制条件为等式
这是一个有等式约束的优化问题,如果不借助其他工具是不是很难求解,尤其是 或g(x,y)都比较复杂的情况下。拉格朗日乘子法将这个问题转化成了无约束问题,那么就可以用求偏导的方法去求解。拉格朗日函数为:
求 分别关于 的偏导(没有找到偏导符号,用d代替):
通过求解 的偏导数为0,便可获得 取极值时的最优解。
那么为什么这样做呢?即 取极值时的最优解是否就是 的最优解呢?其实在等式约束条件这里是非常容易理解的,因为 的后半分 恒等于0,那么自然 和 的最优解是一致的。
从另一个角度来看,下图是对原问题的几何描述,只有当 和 的切线重合的时候,原问题能够取得最优解。那么在切点的梯度有
那么限制条件为不等式呢?下面来看
二、限制条件为不等式
当最优解问题是:
那么如果同样用拉格朗日函数将上述有约束问题化解为无约束问题,是否可以直接通过求 分别关于 的偏导,令偏导数为0来获得最优解呢?答案是不能。为什么不能呢?看下图就明白了:
所以我们采用广义拉格朗日乘子法,先求 关于乘子的最大,再求关于x,y的最小。原始问题的拉格朗日函数为:
这个问题很难求解,所以想要将问题转化为原问题的对偶问题:
那么原问题和对偶问题的解是否等价呢?
所以这里我们引入KKT条件, 同时是原始问题和对偶问题的解的充分必要条件就是满足以下条件:
当 满足上述的kkt条件时,对偶问题的解就是原始问题的解。当约束如图1所示,那么 ;当约束如图2所示,实际上约束已经不起作用,那么 。
以上是关于拉格朗日乘子法和KKT条件的主要内容,如果未能解决你的问题,请参考以下文章