Polyhedral Optimization Lecture 3 – Part 3 M. Pawan Kumar Slides available online
Solving Linear Programs s.t. A x ≤ b max x c T x Optimization Feasibility asks if there exists an x such that c T x ≥ K A x ≤ b Optimization via binary search on K Feasible solution For a given K
Feasibility via Ellipsoid Method Feasible region of LP
Feasibility via Ellipsoid Method Ellipsoid containing feasible region of LP
Feasibility via Ellipsoid Method Centroid of ellipsoid
Feasibility via Ellipsoid Method Separating hyperplane for centroid
Feasibility via Ellipsoid Method Smallest ellipsoid containing “truncated” ellipsoid
Feasibility via Ellipsoid Method Centroid of ellipsoid
Feasibility via Ellipsoid Method Separating hyperplane for centroid
Feasibility via Ellipsoid Method Smallest ellipsoid containing “truncated” ellipsoid
Feasibility via Ellipsoid Method Centroid of ellipsoid
Feasibility via Ellipsoid Method Terminate when feasible solution is found
Separating hyperplane in polynomial time –Check each of the ‘m’ LP constraints in O(n) time New ellipsoid in polynomial time –Shor (1971), Nemirovsky and Yudin (1972) Polynomial iterations (Khachiyan 1979, 1980) –Volume of ellipsoid reduces exponentially Only requires a separation oracle –Constraint matrix A can be very large Ellipsoid Method
Separation implies easy optimization What about the reverse? Matroid polytopes admit greedy optimization Do they allow easy separation? Why are we even interested in this? Optimization vs. Separation
Polar Polyhedron Using Optimization for Separation Poly-Time Equivalence Outline
Polar Polyhedron Polyhedron P = {x: Ax ≤ b} Polar Polyhedron P* = {y: for all x ∈ P, x T y ≤ 1} Assume 0 is in the interior of P (P*)* = PProof? b > 0 No “loss of generality” as P can be translated
P is a subset of (P*)* If x ∈ P, then for all y ∈ P* we have x T y ≤ 1 (P*)* = {z: for all y ∈ P*, z T y ≤ 1} Therefore, x ∈ (P*)*
(P*)* is a subset of P Let there be an x ∉ P There must exist a separating hyperplane c T x > d c T z ≤ d, for all z ∈ P Since 0 ∈ interior of P, d > 0 Without loss of generality, d = 1
(P*)* is a subset of P Let there be an x ∉ P There must exist a separating hyperplane c T x > 1 c T z ≤ 1, for all z ∈ P c ∈ P* x ∉ (P*)* Why? Hence proved
Polar Polyhedron Using Optimization for Separation Poly-Time Equivalence Outline
Optimization Problem over P Polyhedron P = {x: Ax ≤ b} max c T x x ∈ P
Separation Problem over P* Polar Polyhedron P* = {y: for all x ∈ P, x T y ≤ 1} Given y, return ‘YES’ if y ∈ P* Otherwise, return separating hyperplane
Using Optimization for Separation Set c = y max c T x x ∈ P C* = If C* ≤ 1, then return ‘YES’ If C* > 1, then return x* Optimal solution x*
Polar Polyhedron Using Optimization for Separation Poly-Time Equivalence Outline
Poly-Time Equivalence Optimization on P Separation on P* Polarity Optimization on P* Ellipsoid method Separation on (P*)* = P Polarity Ellipsoid method