PPT

advertisement
Polyhedral Optimization
Lecture 3 – Part 3
M. Pawan Kumar
pawan.kumar@ecp.fr
Slides available online http://cvn.ecp.fr/personnel/pawan/
Solving Linear Programs
maxx cTx
Optimization
s.t. A x ≤ b
Feasibility asks if there exists an x such that
cTx ≥ K
For a given K
Ax≤b
Feasible solution
Optimization via binary search on 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
Ellipsoid Method
• 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
Optimization vs. Separation
• 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?
Outline
• Polar Polyhedron
• Using Optimization for Separation
• Poly-Time Equivalence
Polar Polyhedron
Polyhedron P = {x: Ax ≤ b}
Polar Polyhedron P* = {y: for all x∈P, xTy ≤ 1}
Assume 0 is in the interior of P
b>0
No “loss of generality” as P can be translated
(P*)* = P
Proof?
P is a subset of (P*)*
If x ∈P, then for all y ∈ P* we have xTy ≤ 1
(P*)* = {z: for all y∈P*, zTy ≤ 1}
Therefore, x ∈ (P*)*
(P*)* is a subset of P
Let there be an x ∉ P
There must exist a separating hyperplane
cTx > d
cTz ≤ 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
cTx > 1
cTz ≤ 1, for all z ∈ P
c ∈ P*
Why?
x ∉ (P*)*
Why?
Hence proved
Outline
• Polar Polyhedron
• Using Optimization for Separation
• Poly-Time Equivalence
Optimization Problem over P
Polyhedron P = {x: Ax ≤ b}
max cTx
x∈P
Separation Problem over P*
Polar Polyhedron P* = {y: for all x∈P, xTy ≤ 1}
Given y, return ‘YES’ if y ∈P*
Otherwise, return separating hyperplane
Using Optimization for Separation
Set c = y
Optimal solution x*
C* =
max cTx
x∈P
If C* ≤ 1, then return ‘YES’
If C* > 1, then return x*
Outline
• Polar Polyhedron
• Using Optimization for Separation
• Poly-Time Equivalence
Poly-Time Equivalence
Optimization
on
P
Polarity
Ellipsoid
method
Separation
on
(P*)* = P
Separation
on
P*
Ellipsoid
method
Polarity
Optimization
on
P*
Download