KKT条件
最后更新于
这有帮助吗?
title: KKT条件 tags:
数学
机器学习
最优化
categories:
数学
机器学习
最优化
KKT条件是解决最优化问题的时用到的一种方法。我们这里提到的最优化问题通常是指对于给定的某一函数,求其在指定作用域上的全局最小值。
KKT条件是在给定一组约束条件下的最小值(或者最大值)的数学问题。
设目标函数 ,不等式约束为,有时会有等式约束
此时约束优化问题描述如下
定义不等式约束下的拉格朗日函数
其中 是原目标函数, 是第 个等式约束条件, 是对应的约束系数,是不等式约束,是对应的约束系数
此时若要求解上述优化问题,必须满足下述条件
这些求解条件就是KKT条件
(1)
是对拉格朗日函数取极值时候带来的一个必要条件
(2)
是拉格朗日系数约束(同等式情况)
(3)
是不等式约束情况
我们构造 函数,是希望 的(表示求最小值)。在表达式中第二项为0,若使得第三项小于等于0就必须使得系数,这也就是条件
(3)
(4)
是互补松弛条件
直观的解释可以这么看:要求得 的最小值一定是三个公式项中取得最小值,此时第三项最小就是等于0值的时候。稍微正式一点的解释,是由松弛变量推导而来。
(5) (6)
是原约束条件
对于一般的任意问题而言,KKT条件是使一组解成为最优解的必要条件,当原问题是凸问题的时候,KKT条件也是充分条件