Modified: July 07, 2022
Karush-Kuhn-Tucker conditions
This page is from my personal notes, and has not been specifically reviewed for public consumption. It might be incomplete, wrong, outdated, or stupid. Caveat lector.Given a constrained optimization problem over a convex function ,
we consider the Lagrangian function
introducing variables and which we'll call KKT mutipliers (a generalization of Lagrange multipliers). This has associated primal and dual functions
Now suppose we have (somehow) found primal and dual optimal points
and that the duality gap is zero, i.e., we have
so in particular all of these quantities equal to by definition of . Together thus constitute a saddle point of the Lagrangian, meaning that
In this case we can say a few things:
Feasibility: we have and ("primal feasibility"), as well as ("dual feasibility)". That is, the constraints are satisfied and the multipliers on the inequality constraints are positive.
Complementary slackness: because we have , it follows that the remaining Lagrangian terms sum to zero,
which together with the feasibility conditions implies for each for each constraint that
This means that we've either pushed the constraint right up to its boundary, , or its Lagrange multiplier is zero (the case where the constraint just happens to end up satisfied 'for free', without the need for an explicit penalty).
First-order condition: because minimizes , then in particular the gradient at that point is zero: , i.e., we are at a critical point in .
These three conditions (feasibility, complementary slackness, and the first-order condition) are collectively known as the Karush-Kuhn-Tucker (KKT) conditions. They apply necessarily when we have that realize a duality gap of zero.
For a convex optimization problem (where are convex and is affine), it turns out that satisfying the KKT conditions is sufficient for points to be primal and dual optimal and implement a zero duality gap. (but note that a set of such points may not exist, e.g., if a zero duality gap isn't possible because strong duality doesn't hold).
References:
- Convex Optimization book (Boyd and Vandenberghe)
- Scribe notes from Ryan Tibshirani's class: https://www.stat.cmu.edu/~ryantibs/convexopt-F16/scribes/kkt-scribed.pdf