What's the purpose of the KKT condition when first-order optimality condition exists?

60 Views Asked by At

Given a convex optimization problem $$\min f(x), x \in D$$ $f, D$ convex.

The first-order optimality condition says $x$ is the minimizer if and only if $\nabla f(x)^T (x-y) \geq 0, \forall y\in D.$ For unconstrained problems, this is $\nabla f(x) = 0$.

This seems to be perfectly suited for finding minimizers $x$.

So why bother with KKT conditions?

We already have an equation which we can use to solve for minimizers $x$.

Furthermore, KKT condition is just sufficient (but might not be necessary), so it is an inferior version as compared to the first-order optimality condition.

Can someone shed light as to why we might care about KKT conditions even though we have first-order optimality condition?

1

There are 1 best solutions below

0
On

... because it is easier to check whether the KKT conditions are satisfied compared to the first-order conditions.

In fact, you only need some set of multipliers, plug it into the set of equations and see if it fits. For the first-order conditions, you have to check every $y \in D$.