最优性条件
次优解认证和终止准则
如果能够找到一个对偶可行解 ,就对原问题的最优值建立了一个下界:。因此,对偶可行点 为表达式 的成立提供了一个证明或认证。强对偶性意味着存在任意好的认证。
对偶可行点可以让我们在不知道 的确切值的情况下界定给定可行点的次优程度。事实上,如果 是原问题的可行解且 对偶可行,那么
特别地,上式说明了 是 - 次优,其中 。
定义原问题和对偶问题目标函数的差值
为原问题可行解 和对偶可行解 之间的对偶间隙。一对原对偶问题的可行点 将原问题(对偶问题)的最优值限制在一个区间上:
区间的长度即为上面定义的对偶间隙。
如果原对偶可行对 的对偶间隙为零,即 ,那么 是原问题的最优解且 是对偶问题的最优解。此时,我们可以认为 是证明 为最优解的一个认证。(类似地,也可以认为 是证明 为最优解的一个认证。)
上述现象可以用在优化算法中给出非启发式停止准则。即令对偶间隙小于给定精度 ,这能够保证当算法终止的时候,问题的解可以达到 - 最优。
互补松驰性
设原问题和对偶问题的最优值都可以达到且相等(即强对偶性成立)。令 是原问题的最优解,,这表明
第一个等式说明最优对偶间隙为零,第二个等式是对偶函数的定义。第三个不等式是根据 Lagrange 函数关于 求下确界小于等于其在 处得到。最后一个不等式成立是因为
因此,在上面的式子链中,两个不等式取等号。
由此可以得出一些有意义的结论。其中一个特别重要的结论是
事实上,求和项的每一项都非正,因此有
上述条件称为互补松弛性。它对任意原问题的最优解 以及对偶问题的最优解 都成立(当强对偶性成立时)。我们可以将互补松弛性条件写成
或者等价地
互补松弛性条件说明了在最优点处,除了第 个约束起作用的情况,最优 Lagrange 乘子的第 项都为零。
KKT 最优性条件
非凸问题的 KKT 条件
由于 关于 求极小在 处取得最小值,因此函数在 处的导数必须为零,即
因此,我们可以得到
我们称上式为 Karush-Kuhn-Tucker (KKT) 条件。
总之,只要强对偶性成立,那么任何一对原问题的最优解和对偶问题的最优解必须满足 KKT 条件。
凸问题的 KKT 条件
从凸问题的 KKT 条件中,我们可以得出结论
推导过程的最后一步成立是因为 以及 。这说明原问题的解 和对偶问题的解 之间的对偶间隙为零,因此分别是原、对偶问题的最优解。总之,对目标函数和约束函数可微的任意凸优化问题,任意满足 KKT 条件的点分别是原、对偶问题的最优解,对偶间隙为零。
KKT 条件在优化领域有着重要作用。在一些特殊的情形下,是可以解析求解 KKT 条件的(因此可以求解优化问题)。更一般地,很多求解凸优化问题的方法可以认为或者理解为求解 KKT 条件的方法。