1 / 32

A Randomized Polynomial-Time Simplex Algorithm for Linear Programming

A Randomized Polynomial-Time Simplex Algorithm for Linear Programming. Daniel A. Spielman, Yale. Joint work with Jonathan Kelner, M.I.T. Linear Programming. maximize. where is a n x d matrix,  R n Terminology: c = objective function b = right-hand side vector

shanae
Download Presentation

A Randomized Polynomial-Time Simplex Algorithm for Linear Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Randomized Polynomial-Time Simplex Algorithm for Linear Programming Daniel A. Spielman, Yale Joint work with Jonathan Kelner, M.I.T.

  2. Linear Programming maximize where is a n x d matrix, Rn Terminology: c = objective function b= right-hand side vector A has rows a1,…,an subject to

  3. Linear Programming Algorithms • 1940s—Dantzig, simplex method • First practical method for solving linear programs • Runs efficiently in practice on most problems • No known variant ran in worst-case poly time • 1979—Khachiyan, Ellipsoid • Poly time, but usually slower than simplex • 1984—Karmarkar, Interior Point Methods • Poly time, sometimes slower than simplex, • sometimes faster

  4. Simplex Methods Typically, walk on vertices and edges of feasible polytope Not known if graph on vertices and edges has polynomial diameter (See Kalai-Kleitman) Simplex methods have been generalized to walk on more general graphs. Ex.: Self-dual simplex (Dantizg, Lemke), Criss-cross, Admissible pivots (See Fukuda-Lüthi-Namiki)

  5. Main Result A Randomized Polynomial-Time LP Simplex Method polynomial dependence on bit-length No bound on diameters of polytopes Walks on perturbations of polytopes generated from original LP problem A worst-case analysis inspired by Smoothed Analysis (S-Teng),

  6. Overview 1. Reduce to problem of certifying boundedness 2. Boundedness does not depend on RHS, 3. Perturb , and run shadow-vertex simplex on perturbed polytope to generate certificate of boundedness 4. If fail, adjust distribution on perturbations, and try again.

  7. Certifying Boundedness Unbounded if feasible region contains a ray in direction such that Unbounded iff all s lie in a halfspace Certify boundedness by expressing origin as a full-dimensional convex combination of the s

  8. Reduction to certifying boundedness Recall dual LP: Combine primal and dual so that just need feasible Standard reduction to certifying boundedness, removing degeneracy by deterministic perturbation (See Megiddo-Chandrasekaran)

  9. Boundedness Certification Problem Need to show origin in To apply simplex method, consider polytope Boundedness independent of , so can perturb Find certificate by optimizing random and , using shadow-vertex simplex method

  10. Perturbing Walking on perturbed polytope is the same as walking on possibly infeasible vertices of original polytope

  11. The Shadow Vertex Pivot Rule Simplex methods easy in 2d Feasible region is a polygon Possible pivot rules are “clockwise” and “counterclockwise” Lift this simplicity to higher-dimensional LPs

  12. The Shadow of a Polytope Vertices  Vertices, Edges  Edges

  13. The Shadow Vertex Pivot Rule start objective Vertices in shadow = those optimizing objective functions in shadow plane

  14. Well-Rounded Polytopes Definition: A polytope is k-well-rounded if where = radius r ball centered at origin

  15. Perturbing a Well-Rounded Polytope Given k-well-rounded polytope Perturb, to get Where riare exponential rand vars with expectation 1/n:

  16. Perturbing a Well-Rounded Polytope Theorem: For a uniform random shadow plane V, Expected number edges of shadow of onto V is at most Where, P is k-well-rounded,

  17. Proof of well-rounded shadow bound Expected length of perimeter of shadow of is < For every potential edge, given that it appears on the shadow, expected length of its shadow is > So, expect at most edges

  18. Expected length of edge on shadow An edge is determined by the set of d-1 constraints that are tight on it For each , let be event that it appears on the convex hull of Q and in the shadow on V. If appears in shadow, let  be its length Lemma:

  19. Expected length of edge on tope For each , let be event that it appears on the convex hull of Q. If appears, let be its length Lemma:

  20. Arbitrarily set ri for all Consider line L of points satisfying aiTx=1+ri for all Every other constraint intersects this line either positively or negatively Edge length is distance between intersection points of max neg. constraint and min pos. constraint Proof: Expected length edge on tope

  21. Proof: Expected length edge on tope As perturb , intersection point moves by at least size of perturbation Small edge unlikely now follows from memoryless property of exponential distribution:

  22. Proof: Expected length of shadow edge Projection unlikely to decrease edge length too much Let be angle of edge to V. Lemma: Remark: Simple if do not condition upon

  23. Proof: Expected length of shadow edge Lemma: To condition on , Note in shadow iff V intersects So, parameterize V by point in and a point orthogonal to that Compute integral in these new variables

  24. Obstacles to obtaining algorithm Cannot use random 2-plane: Must have start vertex and objective function. Resolve by planting start vertex, and slightly extending theorem. Polytope is not necessarily well-rounded. But, when fail, learn how to make it rounder.

  25. Starting Insert a vertex optimizing a 1/poly ball around by adding d artificial constraints near Will become the start vertex Choose c from a 1/poly ball around Vertex optimizing c will not involve artificial constraints Observe that did not need uniform random 2-plane: only need polynomial randomness, so take span(c, v), where v is random.

  26. If Not Well-Rounded Run algorithm as if it were well-rounded If do not go all the way around shadow, learn a point in polytope of large norm. Using this point, change probability distributions on r1, …, rn and V. Is like re-scaling. Only need to do number times polynomial in bit-length. Is only barrier to strongly-polynomial time.

  27. If Not Well-Rounded Using this point, change probability distributions on r1, …, rn and V. Is like re-scaling.

  28. If Not Well-Rounded Using this point, change probability distributions on r1, …, rn and V. Is like re-scaling.

  29. If Not Well-Rounded Using this point, change probability distributions on r1, …, rn and V. Is like re-scaling.

  30. If Not Well-Rounded Using this point, change probability distributions on r1, …, rn and V. Is like re-scaling.

  31. If Not Well-Rounded Using this point, change probability distributions on r1, …, rn and V. Is like re-scaling.

  32. Open Questions Strongly Polynomial Algorithm? Other Algorithmic Applications?

More Related