跳到正文
格致开物MATHWIKI

KKT条件

KKT 条件把有约束最优化的“可行”“驻点”与“哪些约束真正起作用”合在一起。对可微问题 min⁡f0(x),约束 fi(x)≤0、hj(x)=0,若 x∗ 与乘子 λi≥0,νj 满足 fi(x∗)≤0,hj(x∗)=0,λi≥0,λifi(x∗)=0,∇f0(x∗)+∑iλi∇fi(x∗)+∑jνj∇hj(x∗)=0, 便满足原始可行性、对偶可行性、互补松弛与驻点四组条件。

约束何时施力

继续看 min⁡x2 且 x≥1。写 f1(x)=1−x≤0,最优 x∗=1 处约束正好取等号。驻点式 2x∗−λ=0 给 λ=2,其余条件也满足。若某约束严格有余量 fi(x∗)<0,互补松弛迫使对应 λi=0;这就是“未卡住解的约束没有乘子压力”的精确含义。

充分与必要分开说

若 f0,fi 凸、等式约束 hj 仿射,并且找到满足 KKT 的点,则该点是全局最优:对任意可行 y,凸函数的一阶下界与驻点式合用即可推出 f0(y)≥f0(x∗)。反过来,要保证最优点一定有 KKT 乘子,还需约束资格条件;例如 Slater 条件在适当凸问题中提供这一点。非凸问题即使满足 KKT,也未必全局最优。

具体地,凸性给 f0(y)≥f0(x∗)+∇f0(x∗)𝖳(y−x∗)。把驻点式代入右边,并对每个 fi 用 fi(y)≥fi(x∗)+∇fi(x∗)𝖳(y−x∗),得到 f0(y)≥f0(x∗)+∑iλi(fi(x∗)−fi(y)). 仿射等式的差为零;互补松弛使 λifi(x∗)=0,而 y 可行使 −λifi(y)≥0。故右边不小于 f0(x∗),全局最优性由此成立。

参考资料