A particular class of nonlinear programs is that of convex programs:
Definition 2.13: Convex Program
Let be a nonempty convex set in , and let be convex on . Then,
is said to be a convex program (or a convex optimization problem).
Convex programs possess nicer theoretical properties than general nonconvex problems. Theorem 2.2 is a fundamental result in convex programming:
Theorem 2.2
Let be a local minimum of a convex program. Then, is also a global minimum.
Proof. being a local minimum,
By contradiction, suppose that is not a global minimum. Then,
(2.3) |
Let be chosen such that . By convexity of , is in . Next, by convexity of on and 2.3,
hence contradicting the assumption that is a local minimum. □
Example 2.7. Consider once again the NLP problem
The objective function and the inequality constraints , and being convex, every local solution to this problem is also a global solution by theorem 2.2 . Henceforth, is a global solution and the global solution value is .
In convex programming, any local minimum is therefore a global minimum. This is a powerful result that makes any local optimization algorithm a global optimization algorithm when applied to a convex optimization problem. Yet, theorem 2.2 only gives a sufficient condition for that property to hold. That is, a nonlinear program with nonconvex participating functions may not necessarily have local minima that are not global minima.