KKT conditions

The Karush-Kuhn-Tucker (KKT) conditions are a set of conditions that are necessary for a point to be the minimal point of any optimization problem with differentiable function. If the problem is convex, then the KKT conditions are necessary and sufficient.

The KKT conditions are as follows. Let $$L(x,\lambda,\nu)$$ be the Lagrangian of an optimization problem. Let $$x^*$$ and $$(\lambda^*,\nu^*)$$ be any primal and dual optimal points with zero duality gap. If $$x^*$$ minimizes $$L(x,\lambda^*,\nu^*)$$ over $$x$$, then its gradient must vanish at $$x^*$$. Thus we have that $$\nabla f_0(x^*) + \sum_{i=1}^m\lambda_i^* \nabla f_i(x^*) + \sum_{i=1}^p \nu_i^* \nabla h_i(x^*) = 0$$

$$ f_i(x) \le 0, \,\,\,i=1,\dots,m \\ h_i(x) = 0,\,\,\, i=1,\dots,p \\ \lambda_i^* \ge 0, \,\,\, i=1,\dots,m \\ \li^* f_i(x^*) = 0, \,\,\, i=1,\dots,m \\

$$