(10 hours to learn)
Convex optimization refers to optimizing a convex function over a convex set. It is a very broad class of problems, encompassing widely used techniques such as linear programming, linear least squares, quadratic programming, and semidefinite programming. Convex optimization is important because for reasonable-sized problems, there are efficient algorithms for finding the global optimum.
This concept has the prerequisites:
- Know the definition of a convex optimization problem
- Be aware that all local optima to a convex optimization problem are globally optimal
- Know and be able to apply the first-order optimality condition for the unconstrained case (i.e. the gradient being zero)
Core resources (read/watch one of the following)
→ Convex Optimization
A graduate-level textbook on convex optimization.
- Some special cases of convex optimization problems: