Polyhedral Optimization Lecture 3 – Part 3 M. Pawan Kumar pawan.kumar@ecp.fr Slides available...

Preview:

Citation preview

Polyhedral OptimizationLecture 3 – Part 3

M. Pawan Kumar

pawan.kumar@ecp.fr

Slides available online http://cvn.ecp.fr/personnel/pawan/

Solving Linear Programs

s.t. A x ≤ b

maxx cTxOptimization

Feasibility asks if there exists an x such that

cTx ≥ 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, ∈ xTy ≤ 1}

Assume 0 is in the interior of P

(P*)* = P Proof?

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 ∈ 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* ∈

x (P*)*∉

Why?

Why? Hence proved

• Polar Polyhedron

• Using Optimization for Separation

• Poly-Time Equivalence

Outline

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

max cTx

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

OptimizationonP

SeparationonP*

Polarity

OptimizationonP*

Ellipsoidmethod

Separationon

(P*)* = P

Polarity

Ellipsoidmethod

Recommended