【Convex Optimization】Convex Optimization Basics
『Convex Optimization Basics - YouTube』
【Convex Sets】Some properties:
- The empty set ∅ and ℝd are both convex.
- Preserved by scaling and translation.
- Intersections of convex sets are convex.
【Convex Functions】
Some properties:
- Any local minimum is a global minimum.
- Where it exists, the Hessian is positive semi-definite.
- Level sets are convex.
- a·f(x) + b·g(x) is convex for convex f,g and a,b > 0.
- max(f(x), g(x)) is convex for convex f(x) and g(x).
【Convex Optimization Terminology】
- optimization variable
- objective / cost function
- inequality constraints
- equality constraints
- feasible
- optimal value
- optimal point
- active
- inactive
【Why Convex Optimization?】
- Contains various types of problems, e.g., many ML and OR tasks.
- Repeatability: different runs give the same results.
- Some convex problems can be solved in polynomial time.
- However, lots of important problems aren't convex: neural networks, k-means, most Bayesian inference.
【Duality】
The max-min inequality: the max of the minima ≤ the min of the maxima
E.g.: minimize f0(x) subject to fj(x) ≤ 0 ∀j ∈ 1,2,...,J
- Lagrange multipliers: λ = [λ1, ..., λJ]T≥ 0 ⇒ L(x, λ) = f0(x) + Σjλjfj(x) ⇒ Objective: minxP(x) = minxmaxλ≥0L(x, λ)
- Weak duality: D(λ) = minxL(x, λ) ("dual" objective)
- Duality gap: tightness of lower bound minxP(x) - maxλD(x)
- Strong duality: duality gap = 0
【Linear Programming】
LP examples:
- Minimize food costs subject to nutrition constraints.
- Maximize factory profit subject to materials available.
- Max network flow subject to link capacity and equilibrium.
- Farmer maximizes yield subject to land and fertilizer usage.
LP solution approaches:
- Simplex Algorithm: "greedy" strategy, earliest and most commonly used; requires exponential complexity.
- The Ellipsoid Method: only solves feasibility problem, appealing if testing violations is easy
- Interior-Point Methods: many hybrid methods, active research area
Dual of LP: primal-dual
【Quadratic Programming】
quadratic objective, linear constraints
E.g.:
- Support vector machines
- Constrained least squares
- Model predictive control
Dual of QP