Subexponential lower bounds for randomized pivoting rules for the simplex algorithm

Similar documents
Subexponential Lower Bounds for the Simplex Algorithm

The simplex method and the diameter of a 0-1 polytope

A Subexponential Randomized Simplex Algorithm

The Simplex Algorithm

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi

Linear Programming Algorithms [Read Chapters G and H first.] Status: Half-finished.

Algorithmic Game Theory and Applications. Lecture 6: The Simplex Algorithm

Notes taken by Mea Wang. February 11, 2005

Mathematical and Algorithmic Foundations Linear Programming and Matchings

arxiv: v2 [cs.dm] 30 Aug 2016

On real and on bad Linear Programs Günter M. Ziegler.

Polytopes, their diameter, and randomized simplex

Linear Programming Duality and Algorithms

Open problems in convex optimisation

On the Complexity of the Policy Improvement Algorithm. for Markov Decision Processes

RANDOM EDGE can be exponential on abstract cubes

Bernd Gärtner Institut für Informatik Freie Universität Berlin. Günter M. Ziegler Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)

Open problems in convex geometry

Monotone Paths in Geometric Triangulations

An iteration of the simplex method (a pivot )

Lecture 16 October 23, 2014

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

What is the Worst Case Behavior of the Simplex Algorithm?

Combinatorial Optimization

The Simplex Algorithm for LP, and an Open Problem

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

MATH 310 : Degeneracy and Geometry in the Simplex Method

Lecture Notes 2: The Simplex Algorithm

Linear Programming and Clustering

Convex Optimization CMU-10725

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Integer Programming Theory

Linear Programming in Small Dimensions

Artificial Intelligence

J Linear Programming Algorithms

Linear Programming and its Applications

Improved Strong Worst-case Upper Bounds for MDP Planning

Strategy Improvement for Parity Games. A combinatorial perspective

NATCOR Convex Optimization Linear Programming 1

CMPSCI611: The Simplex Algorithm Lecture 24

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

Solution for Homework set 3

Linear Programming Motivation: The Diet Problem

A deterministic subexponential algorithm for solving parity games

Abstract objective function graphs on the 3-cube a classification by realizability

arxiv: v1 [cs.cc] 30 Jun 2017

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

11.1 Facility Location

Linear programming and duality theory

Chapter 1 Linear Programming. Paragraph 4 The Simplex Algorithm

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

Circuit Walks in Integral Polyhedra

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

INDIAN STATISTICAL INSTITUTE

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29

1 The Traveling Salesperson Problem (TSP)

11. APPROXIMATION ALGORITHMS

CMPSCI 311: Introduction to Algorithms Practice Final Exam

LECTURE 6: INTERIOR POINT METHOD. 1. Motivation 2. Basic concepts 3. Primal affine scaling algorithm 4. Dual affine scaling algorithm

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

Some Useful Links and Software Sites on Optimization

CSC 8301 Design & Analysis of Algorithms: Linear Programming

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

What is linear programming (LP)? NATCOR Convex Optimization Linear Programming 1. Solving LP problems: The standard simplex method

ACTUALLY DOING IT : an Introduction to Polyhedral Computation

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Lecture 3: Totally Unimodularity and Network Flows

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

Linear programming and the efficiency of the simplex algorithm for transportation polytopes

Lecture 14: Linear Programming II

Introduction to Algorithms I

Lecture 2 - Introduction to Polytopes

6 Randomized rounding of semidefinite programs

The Touring Polygons Problem (TPP)

CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Hollow Heaps. Aarhus University, Denmark. Tel Aviv University, Israel. Princeton University, USA. July 7, 2015

Theorem 2.9: nearest addition algorithm

Algorithmic and geometric aspects of combinatorial and continuous optimization

On the diameter of the Transportation Polytope

Integral Geometry and the Polynomial Hirsch Conjecture

Copyright 2000, Kevin Wayne 1

Optimization. Lecture08 12/06/11

Introduction to Randomized Algorithms

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

CS483 Analysis of Algorithms Lecture 09 Linear Programming 01

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

Lecture 4: Linear Programming

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Sorting lower bound and Linear-time sorting Date: 9/19/17

The Arrangement Method for Linear Programming

be a polytope. has such a representation iff it contains the origin in its interior. For a generic, sort the inequalities so that

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

Transcription:

Subexponential lower bounds for randomized pivoting rules for the simplex algorithm Oliver Friedmann 1 Thomas Dueholm Hansen 2 Uri Zwick 3 1 Department of Computer Science, University of Munich, Germany. 2 Department of Management Science and Engineering, Stanford University, California, USA. (Previously at Aarhus University and Tel Aviv University.) 3 School of Computer Science, Tel Aviv University, Israel. October 21, 213 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 1/44

Outline Linear programming, the simplex algorithm, and shortest paths. Results and related work. Framework: Lower bounds for the simplex algorithm utilizing shortest paths and Markov decision processes. On the lower bound for RandomEdge. On the lower bound for RandomFacet. Summary of open problems. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 2/44

Linear programming A linear program (LP) in standard form is an optimization problem of the form: minimize c T x s.t. Ax = b x We use A R n m, b R n, and c R m : m variables and inequality constraints, n equality constraints, and dimension d = m n, assuming that the rows of A are linearly independent. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 3/44

Example: Single target shortest paths 2 b 1 = 1 b 2 = 1 b 3 = 1 b t = 6 1 3 8 t -4 5 3-6 -1 2 b 4 = 1 b 5 = 1 b 6 = 1 3 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 4/44

Example: Single target shortest paths 2 b 1 = 1 b 2 = 1 b 3 = 1 b t = 6 1 3 8 t -4 5 3-6 -1 2 b 4 = 1 b 5 = 1 b 6 = 1 3 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 4/44

Example: Single target shortest paths 2 b 1 = 1 b 2 = 1 b 3 = 1 b t = 6 1 3 8 t -4 5 3-6 -1 2 b 4 = 1 b 5 = 1 b 6 = 1 3 minimize c (u,v) x (u,v) s.t. v V : (u,v) E x (v,w) x (u,v) = b v w:(v,w) E u:(u,v) E (u, v) E : x (u,v) Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 4/44

Basic feasible solutions min c T x s.t. Ax = b x The set of feasible solutions is a convex polytope. Vertices (or corners) are basic feasible solutions. A basis is a subset B {1,..., m} of n linearly independent columns of A. Every basic feasible solution is defined by a basis by setting non-basic variables, x i for i B, to zero. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 5/44

Example: Single target shortest paths Flow conservation: minimize c (u,v) x (u,v) s.t. v t : (u,v) E x (v,w) x (u,v) = 1 w:(v,w) E u:(u,v) E (u, v) E : x (u,v) x 1 = 1 x 2 = 6 x 3 = 4 x 4 = 2 The flow through every vertex is at least 1. x 1 + x 2 = 1 + x 3 + x 4 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 6/44

Example: Single target shortest paths Flow conservation: minimize c (u,v) x (u,v) s.t. v t : (u,v) E x (v,w) x (u,v) = 1 w:(v,w) E u:(u,v) E (u, v) E : x (u,v) x 1 = 7 x 2 = x 3 = 4 x 4 = 2 The flow through every vertex is at least 1. x 1 + x 2 = 1 + x 3 + x 4 For a basic feasible solution, at most one edge leaving every vertex has non-zero flow. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 6/44

Example: Single target shortest paths Flow conservation: minimize c (u,v) x (u,v) s.t. v t : (u,v) E x (v,w) x (u,v) = 1 w:(v,w) E u:(u,v) E (u, v) E : x (u,v) x 1 = 7 x 2 = x 3 = 4 x 4 = 2 The flow through every vertex is at least 1. x 1 + x 2 = 1 + x 3 + x 4 For a basic feasible solution, at most one edge leaving every vertex has non-zero flow. There is a one-to-one correspondence between basic feasible solutions and shortest paths trees (or policies). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 6/44

The simplex algorithm, Dantzig (1947) min c T x s.t. Ax = b x Pivoting: Exchange a basic and a non-basic variable in a basis to move from one basic feasible solution to another. A basic feasible solution is optimal if there are no improving pivots w.r.t. its basis. The simplex algorithm: Repeatedly perform improving pivots. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 7/44

Reduced costs The vector of reduced costs for a basis B is: c := c A T y where y = (A 1 B )T c B is the dual basic solution corresponding to B. 1 A variable x i is an improving pivot w.r.t. B iff its reduced cost c i is negative. 1 A B R n n and c B R n are obtained by selecting the columns and rows corresponding to B from A and c, respectively. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 8/44

Pivoting rules Several improving pivots may be available for a given basis. The edge is chosen by a pivoting rule. I.e., a pivoting rule decides which basic and non-basic variables to exchange. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 9/44

Example: Single target shortest paths 2 1 3 8 t -4 5 3-6 -1 2 3 Improving pivots are improving switches. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 1/44

Example: Single target shortest paths c (1,3) = 2 + 8 12 = 2 2 1 3 8 t val π (1) = 12 val π (2) = 11 val π (3) = 8 For every policy π (shortest paths tree), let valπ(v) be the length of the path from v to t in π: (u, v) π : valπ(u) = c (u,v) + valπ(v) Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 11/44

Example: Single target shortest paths c (1,3) = 2 + 8 12 = 2 2 1 3 8 val π (1) = 12 val π (2) = 11 val π (3) = 8 t For every policy π (shortest paths tree), let valπ(v) be the length of the path from v to t in π: (u, v) π : valπ(u) = c (u,v) + valπ(v) The reduced cost of an edge (u, v) w.r.t. π is: c (u,v) = c (u,v) + valπ(v) valπ(u) Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 11/44

PolicyIteration Multiple improving switches can be performed in parallel, which gives a more general class of algorithms: Function PolicyIteration(π) while improving switch w.r.t. π do Update π by performing improving switches return π Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 12/44

Deterministic pivoting rules LargestCoefficient, Dantzig (1947) The non-basic variable with most negative reduced cost enters the basis. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 13/44

Deterministic pivoting rules LargestCoefficient, Dantzig (1947) The non-basic variable with most negative reduced cost enters the basis. Bland s rule, Bland (1977) Pick the available variable with the smallest index, both for entering and leaving the basis. This pivoting rule is guaranteed not to cycle. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 13/44

Deterministic pivoting rules LargestCoefficient, Dantzig (1947) The non-basic variable with most negative reduced cost enters the basis. Bland s rule, Bland (1977) Pick the available variable with the smallest index, both for entering and leaving the basis. This pivoting rule is guaranteed not to cycle. Others: LargestIncrease SteepestEdge ShadowVertex LeastEntered... Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 13/44

Exponential lower bounds Klee and Minty (1972): The LargestCoefficient pivoting rule may require exponentially many steps; the Klee-Minty cube. 2 2 Picture from Gärtner, Henk and Ziegler (1998) Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 14/44

Exponential lower bounds Klee and Minty (1972): The LargestCoefficient pivoting rule may require exponentially many steps; the Klee-Minty cube. 2 Essentially all known natural deterministic pivoting rules are now known to be exponential: LargestIncrease: Jeroslow (1973). SteepestEdge: Goldfarb and Sit (1979). Bland s rule: Avis and Chvátal (1978). ShadowVertex: Murty (198), Goldfarb (1983). See Amenta and Ziegler (1996) for a unified view. 2 Picture from Gärtner, Henk and Ziegler (1998) Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 14/44

Randomized pivoting rules RandomEdge Perform uniformly random improving pivots. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 15/44

Randomized pivoting rules RandomEdge Perform uniformly random improving pivots. RandomFacet, Kalai (1992) and Matoušek, Sharir and Welzl (1992) Pick a uniformly random facet that contains the current vertex, and recursively find an optimal solution within that facet. If possible, make an improving pivot leaving the facet and repeat. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 15/44

Randomized pivoting rules RandomEdge Perform uniformly random improving pivots. RandomFacet, Kalai (1992) and Matoušek, Sharir and Welzl (1992) Pick a uniformly random facet that contains the current vertex, and recursively find an optimal solution within that facet. If possible, make an improving pivot leaving the facet and repeat. Expected subexponential time: 2 O( n log d) expected steps. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 15/44

Randomized pivoting rules RandomEdge Perform uniformly random improving pivots. RandomFacet, Kalai (1992) and Matoušek, Sharir and Welzl (1992) Pick a uniformly random facet that contains the current vertex, and recursively find an optimal solution within that facet. If possible, make an improving pivot leaving the facet and repeat. Expected subexponential time: 2 O( n log d) expected steps. Randomized Bland s rule Randomly permute the variables and use Bland s rule. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 15/44

Randomized pivoting rules RandomEdge Perform uniformly random improving pivots. RandomFacet, Kalai (1992) and Matoušek, Sharir and Welzl (1992) Pick a uniformly random facet that contains the current vertex, and recursively find an optimal solution within that facet. If possible, make an improving pivot leaving the facet and repeat. Expected subexponential time: 2 O( n log d) expected steps. Randomized Bland s rule Randomly permute the variables and use Bland s rule. No subexponential upper bounds are known for RandomEdge and Randomized Bland s rule. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 15/44

Randomized pivoting rules RandomEdge Perform uniformly random improving pivots. RandomFacet, Kalai (1992) and Matoušek, Sharir and Welzl (1992) Pick a uniformly random facet that contains the current vertex, and recursively find an optimal solution within that facet. If possible, make an improving pivot leaving the facet and repeat. Expected subexponential time: 2 O( n log d) expected steps. Randomized Bland s rule Randomly permute the variables and use Bland s rule. No subexponential upper bounds are known for RandomEdge and Randomized Bland s rule. Prior to our work no superpolynomial lower bounds were known for important randomized pivoting rules. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 15/44

Results We prove lower bounds for the expected number of pivoting steps: RandomEdge: 2 Ω(n1/4 ) RandomFacet: 2 Ω(n 1/3 ) Randomized Bland s rule: 2 Ω(n 1/2 ) where n is the number of equality constraints, and the number of variables is m = Õ(n). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 16/44

Results We prove lower bounds for the expected number of pivoting steps: RandomEdge: 2 Ω(n1/4 ) RandomFacet: 2 Ω(n 1/3 ) Randomized Bland s rule: 2 Ω(n 1/2 ) where n is the number of equality constraints, and the number of variables is m = Õ(n). Note: In our SODA 211 paper we studied a modified RandomFacet pivoting rule and incorrectly claimed that the expected running time was the same. We have repaired the analysis, but with a worse bound. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 16/44

Results We prove lower bounds for the expected number of pivoting steps: RandomEdge: 2 Ω(n1/4 ) RandomFacet: 2 Ω(n 1/3 ) Randomized Bland s rule: 2 Ω(n 1/2 ) where n is the number of equality constraints, and the number of variables is m = Õ(n). Note: In our SODA 211 paper we studied a modified RandomFacet pivoting rule and incorrectly claimed that the expected running time was the same. We have repaired the analysis, but with a worse bound. Initially, we used Markov decision processes for the constructions. We now use shortest paths for RandomFacet and Randomized Bland s rule. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 16/44

Techniques Previous lower bounds were proved by studying linear programs directly. The new lower bounds are based on strong connections between linear programming and shortest paths and Markov decision processes (MDPs). MDPs can be viewed as stochastic shortest paths: edges can result in stochastic transitions. We prove lower bounds for corresponding PolicyIteration algorithms for MDPs, which immediately translate to lower bounds for the simplex algorithm. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 17/44

Related work Friedmann (29) and Fearnley (21) gave a similar lower bound construction for Howard s PolicyIteration algorithm for solving MDPs (and parity games). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 18/44

Related work Friedmann (29) and Fearnley (21) gave a similar lower bound construction for Howard s PolicyIteration algorithm for solving MDPs (and parity games). Friedmann (211) used the same technique to prove a lower bound of subexponential form, 2 Ω( n), for Zadeh s LeastEntered pivoting rule (198). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 18/44

Related work Friedmann (29) and Fearnley (21) gave a similar lower bound construction for Howard s PolicyIteration algorithm for solving MDPs (and parity games). Friedmann (211) used the same technique to prove a lower bound of subexponential form, 2 Ω( n), for Zadeh s LeastEntered pivoting rule (198). Superpolynomial lower bounds for RandomEdge and RandomFacet were previously only known in an abstract setting (Acyclic Unique Sink Orientations): Matoušek (1994): 2 Ω( n) lower bound for RandomFacet. Matoušek and Szabó (26): 2 Ω(n1/3) lower bound for RandomEdge. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 18/44

(Un)related work Orlin (1985): Dantzig s LargestCoefficient pivoting rule requires at most O(n 2 m log n) iterations for shortest paths. Hansen, Kaplan, and Zwick (SODA, 214): Dantzig s LargestCoefficient pivoting rule requires between O(nm log n) and Ω(n 2 ) iterations for shortest paths. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 19/44

(Un)related work Orlin (1985): Dantzig s LargestCoefficient pivoting rule requires at most O(n 2 m log n) iterations for shortest paths. Hansen, Kaplan, and Zwick (SODA, 214): Dantzig s LargestCoefficient pivoting rule requires between O(nm log n) and Ω(n 2 ) iterations for shortest paths. Gärtner and Kaibel (27): RandomEdge requires at most O(2 n /n log n ) iterations for n-dimensional acyclic unique sink orientations (AUSOs). Hansen, Paterson, and Zwick (SODA, 214): RandomEdge requires at most O(1.8 n ) iterations for n-dimensional AUSOs. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 19/44

On the diameter of polytopes The diameter of a polytope P is the maximum distance between any two vertices in the edge graph of P. The diameter gives a lower bound for any pivoting rule for the simplex algorithm. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 2/44

On the diameter of polytopes The diameter of a polytope P is the maximum distance between any two vertices in the edge graph of P. The diameter gives a lower bound for any pivoting rule for the simplex algorithm. Hirsch conjecture (1957): The diameter of any m-facet convex polytope in d-dimensional Euclidean space is at most m d. Kalai and Kleitman (1992): O(m log m ) upper bound on the diameter. Counter-example by Santos (21): Existence of polytopes with diameter (1 + ɛ)(m d). It remains open whether the diameter is polynomial, or even linear, in m and d. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 2/44

On the diameter of polytopes The diameter of a polytope P is the maximum distance between any two vertices in the edge graph of P. The diameter gives a lower bound for any pivoting rule for the simplex algorithm. Hirsch conjecture (1957): The diameter of any m-facet convex polytope in d-dimensional Euclidean space is at most m d. Kalai and Kleitman (1992): O(m log m ) upper bound on the diameter. Counter-example by Santos (21): Existence of polytopes with diameter (1 + ɛ)(m d). It remains open whether the diameter is polynomial, or even linear, in m and d. Our results are unrelated to the diameter: The constructed polytopes have low diameter. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 2/44

Outline Linear programming, the simplex algorithm, and shortest paths. Results and related work. Framework: Lower bounds for the simplex algorithm utilizing shortest paths and Markov decision processes. On the lower bound for RandomEdge. On the lower bound for RandomFacet. Summary of open problems. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 21/44

Lower bound constructions: The first idea To prove a lower bound for a given pivoting rule, we construct a family of graphs (or MDPs) G n such that the corresponding PolicyIteration algorithm simulates an n-bit binary counter. We define a way to interpret a policy π as a configuration of the binary counter: b i bit i (π) = b i bit i (π) = 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 22/44

Lower bound constructions: The first idea To prove a lower bound for a given pivoting rule, we construct a family of graphs (or MDPs) G n such that the corresponding PolicyIteration algorithm simulates an n-bit binary counter. We define a way to interpret a policy π as a configuration of the binary counter: b i bit i (π) = b i bit i (π) = 1 We then show that (with high probability) a run of the PolicyIteration algorithm generates all 2 n counting configurations. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 22/44

A simplified construction w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i The graph is acyclic, and every bit i is associated with a level consisting of four vertices: b i, a i, w i, u i. w n+1 = u n+1 = t. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 23/44

A simplified construction, n = 3 w4 t u4 2 7 + 1 2 6 b3 2 7 2 6 w3 a3 u3 2 5 + 1 2 4 b2 2 5 2 4 w2 a2 u2 2 3 + 1 2 2 b1 2 3 2 2 w1 a1 u1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 24/44

Case: val π (w i+1 ) = val π (u i+1 ) val π (w i+1 ) = val π (u i+1 ) w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) bit i (π) =, stable. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 25/44

Case: val π (w i+1 ) = val π (u i+1 ) val π (w i+1 ) = val π (u i+1 ) w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) bit i (π) = 1, transitioning. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 25/44

Case: val π (w i+1 ) = val π (u i+1 ) val π (w i+1 ) = val π (u i+1 ) w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) + 2 2i bit i (π) = 1, transitioning, lower bits are unstable: reset. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 25/44

Case: val π (w i+1 ) = val π (u i+1 ) val π (w i+1 ) = val π (u i+1 ) w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) + 2 2i bit i (π) = 1, transitioning, lower bits are unstable: reset. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 25/44

Case: val π (w i+1 ) = val π (u i+1 ) val π (w i+1 ) = val π (u i+1 ) w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) bit i (π) = 1, stable. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 25/44

Case: val π (w i+1 ) val π (u i+1 ) + 2 2i+2 val π (w i+1 ) val π (u i+1 ) + 2 2i+2 w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) bit i (π) = 1, unstable, resetting. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 26/44

Case: val π (w i+1 ) val π (u i+1 ) + 2 2i+2 val π (w i+1 ) val π (u i+1 ) + 2 2i+2 w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i val π (w i ) = val π (u i ) + 2 2i bit i (π) =, stable, lower bits are unstable: reset. w i is updated when bit i + 1 stabilizes. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 26/44

Lower bound for Bland s rule Bland s rule for shortest paths: Perform the first improving switch according to a permutation of the edges. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 27/44

Lower bound for Bland s rule Bland s rule for shortest paths: Perform the first improving switch according to a permutation of the edges. It is easy to define a permutation of the edges, σ, such that we get the described behavior, giving an exponential lower bound: (b i, w i+1 ) edges are placed last, and σ(b i, w i+1 ) < σ(b j, w j+1 ) for i < j. (a i, b i ) edges are placed next, and σ(a i, b i ) < σ(a j, b j ) for i < j. The remaining edges are placed first in arbitrary order. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 27/44

Lower bound for Bland s rule Bland s rule for shortest paths: Perform the first improving switch according to a permutation of the edges. It is easy to define a permutation of the edges, σ, such that we get the described behavior, giving an exponential lower bound: (b i, w i+1 ) edges are placed last, and σ(b i, w i+1 ) < σ(b j, w j+1 ) for i < j. (a i, b i ) edges are placed next, and σ(a i, b i ) < σ(a j, b j ) for i < j. The remaining edges are placed first in arbitrary order. To implement a lower bound for RandomEdge we need a gadget to delay improving switches like (b i, w i+1 ) and (a i, b i ). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 27/44

Outline Linear programming, the simplex algorithm, and shortest paths. Results and related work. Framework: Lower bounds for the simplex algorithm utilizing shortest paths and Markov decision processes. On the lower bound for RandomEdge. On the lower bound for RandomFacet. Summary of open problems. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 28/44

Delaying events b i,3 c + 2ɛ 3 b i c b i,2 c + ɛ b i,1 c By replacing a vertex by a chain of vertices, a specific sequence of improving switches has to be performed to get the same effect as performing one improving switch originally. At any time there is only one edge for which it is improving to move into the chain. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 29/44

Delaying events b i,3 c + 2ɛ 3 b i c b i,2 c + ɛ b i,1 c By replacing a vertex by a chain of vertices, a specific sequence of improving switches has to be performed to get the same effect as performing one improving switch originally. At any time there is only one edge for which it is improving to move into the chain. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 29/44

Delaying events b i,3 c + 2ɛ 3 b i c b i,2 c + ɛ b i,1 c By replacing a vertex by a chain of vertices, a specific sequence of improving switches has to be performed to get the same effect as performing one improving switch originally. At any time there is only one edge for which it is improving to move into the chain. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 29/44

Delaying events b i,3 c + 2ɛ 3 b i c b i,2 c + ɛ b i,1 c By replacing a vertex by a chain of vertices, a specific sequence of improving switches has to be performed to get the same effect as performing one improving switch originally. At any time there is only one edge for which it is improving to move into the chain. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 29/44

Competing chains Suppose a short chain of length l i is competing with a longer chain of length l i+1. There is exactly one improving switch in both chains, and RandomEdge performs either one of them with equal probability. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 3/44

Competing chains Suppose a short chain of length l i is competing with a longer chain of length l i+1. There is exactly one improving switch in both chains, and RandomEdge performs either one of them with equal probability. Let X be the number of heads observed in l i + l i+1 coin tosses, then by a Chernoff bound: (l i+1 l i ) 2 2(l Pr[X l i ] e i+1 +l i ) Setting l k = Θ(k 2 n) the probability of failure, X < l i, is at most e n. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 3/44

Competing chains Suppose a short chain of length l i is competing with a longer chain of length l i+1. There is exactly one improving switch in both chains, and RandomEdge performs either one of them with equal probability. Let X be the number of heads observed in l i + l i+1 coin tosses, then by a Chernoff bound: (l i+1 l i ) 2 2(l Pr[X l i ] e i+1 +l i ) Setting l k = Θ(k 2 n) the probability of failure, X < l i, is at most e n. With n such chains this results in N = O(n 4 ) vertices, giving a lower bound of 2 Ω(N1/4) expected pivoting steps for RandomEdge. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 3/44

Fast resetting b i,3 c + 2ɛ 3 b i c b i,2 c + ɛ b i,1 c Moving in the other directions happens much faster since all edges are improving switches simultaneously. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 31/44

Problem We need to reset the progress made in chains at higher bits in order for the analysis to work. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 32/44

Problem We need to reset the progress made in chains at higher bits in order for the analysis to work. The graph should not be acyclic: higher bits must have access to lower bits. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 32/44

Problem We need to reset the progress made in chains at higher bits in order for the analysis to work. The graph should not be acyclic: higher bits must have access to lower bits. No vertex in a chain should get the benefit of setting a bit before this event occurs. RandomEdge solves shortest paths in O(NM) expected iterations, where N is the number of vertices and M is the number of edges. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 32/44

Problem We need to reset the progress made in chains at higher bits in order for the analysis to work. The graph should not be acyclic: higher bits must have access to lower bits. No vertex in a chain should get the benefit of setting a bit before this event occurs. RandomEdge solves shortest paths in O(NM) expected iterations, where N is the number of vertices and M is the number of edges. Use the power of MDPs: Introduce stochastic transitions. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 32/44

Problem We need to reset the progress made in chains at higher bits in order for the analysis to work. The graph should not be acyclic: higher bits must have access to lower bits. No vertex in a chain should get the benefit of setting a bit before this event occurs. RandomEdge solves shortest paths in O(NM) expected iterations, where N is the number of vertices and M is the number of edges. Use the power of MDPs: Introduce stochastic transitions. To reset b i -chains we need additional c i -chains to get alternating behavior. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 32/44

Construction for RandomEdge w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i w i a i u i Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 33/44

Construction for RandomEdge w i+1 u i+1 2 2i+1 + 1 2 2i b i 2 2i+1 2 2i l i w i a i u i g Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 33/44

Construction for RandomEdge w i+1 u i+1 2 2i l i b i 2 2i w i a i 2 2i+1 + 1 u i g 2 2i+1 u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 33/44

Construction for RandomEdge w i+1 u i+1 ɛ 2 2i 1 ɛ 2 2i b i l i w i a i 2 2i+1 + 1 u i g 2 2i+1 u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 33/44

Construction for RandomEdge w i+1 u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 33/44

Setting a bit w i+1 bit i (π) = u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 val π (w 1 ) = val π (u 1 ) u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 34/44

Setting a bit w i+1 bit i (π) = u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 val π (w 1 ) = val π (u 1 ) u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 34/44

Setting a bit w i+1 bit i (π) = 1 u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 val π (w 1 ) = val π (u 1 ) u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 34/44

Setting a bit w i+1 bit i (π) = 1 u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 val π (w 1 ) = val π (u 1 ) + 2 2i u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 34/44

Setting a bit w i+1 bit i (π) = 1 u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 val π (w 1 ) = val π (u 1 ) + 2 2i u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 34/44

Setting a bit w i+1 bit i (π) = 1 u i+1 ɛ 2 2i 1 ɛ h c i 2 2i b i 2 2i+1 + 1 l i w i a i 2 2i+1 + 2 u i g 2 2i+1 w 1 val π (w 1 ) = val π (u 1 ) u 1 Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 34/44

RandomEdge lower bound Theorem (Friedmann, Hansen and Zwick (211)) The worst-case expected number of pivoting steps performed by RandomEdge on linear programs with n equalities and 2n non-negative variables is 2 Ω(n1/4). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 35/44

Outline Linear programming, the simplex algorithm, and shortest paths. Results and related work. Framework: Lower bounds for the simplex algorithm utilizing shortest paths and Markov decision processes. On the lower bound for RandomEdge. On the lower bound for RandomFacet. Summary of open problems. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 36/44

The RandomFacet pivoting rule RandomFacet, Kalai (1992): 1 Pick a uniformly random facet f that contains the current basic feasible solution x. 2 Recursively find the optimal solution x within the picked facet f. 3 If possible, make an improving pivot from x, leaving the facet f, and repeat from (1). Otherwise return x. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 37/44

The RandomFacet pivoting rule RandomFacet, Kalai (1992): 1 Pick a uniformly random facet f that contains the current basic feasible solution x. 2 Recursively find the optimal solution x within the picked facet f. 3 If possible, make an improving pivot from x, leaving the facet f, and repeat from (1). Otherwise return x. A dual variant of the RandomFacet pivoting rule was discovered independently by Matoušek, Sharir and Welzl (1992). Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 37/44

The RandomFacet pivoting rule P f 3 f 2 x f 1 Pick a uniformly random facet f i that contains the current basic feasible solution x. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 38/44

The RandomFacet pivoting rule P f 3 f 2 x f 1 Pick a uniformly random facet f i that contains the current basic feasible solution x. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 38/44

The RandomFacet pivoting rule P f 3 x f 2 x f 1 Recursively find the optimal solution x within the picked facet f i. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 38/44

The RandomFacet pivoting rule P f 3 x x f 2 x f 1 If possible, make an improving pivot from x, leaving the facet f i, and repeat from the beginning. Otherwise return x. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 38/44

The RandomFacet pivoting rule P f 3 x x f 2 x f 1 Note that if the facets f 1,..., f d containing x are ordered according to their optimal value, then from x we never visit f 1,..., f i again. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 38/44

The RandomFacet pivoting rule The number of pivoting steps for a linear program with dimension d and m inequalities is at most: f (d, m) f (d 1, m 1) + 1 + 1 d d f (d, m i) i=1 with f (d, m) = for m d. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 39/44

The RandomFacet pivoting rule The number of pivoting steps for a linear program with dimension d and m inequalities is at most: f (d, m) f (d 1, m 1) + 1 + 1 d d f (d, m i) i=1 with f (d, m) = for m d. Solving the corresponding recurrence gives: f (d, m) 2 O( (m d) log d) Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 39/44

Interpretation for shortest paths minimize s.t. v t : (u,v) E w:(v,w) E c (u,v) x (u,v) x (v,w) u:(u,v) E x (u,v) = 1 (u, v) E : x (u,v) Staying within a facet means that the corresponding inequality is tight, meaning that a variable is fixed to zero. This corresponds to removing the edge. The RandomFacet pivoting rule removes random unused edges and solves the corresponding problem recursively. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 4/44

Interpretation for shortest paths minimize s.t. v t : (u,v) E w:(v,w) E c (u,v) x (u,v) x (v,w) u:(u,v) E x (u,v) = 1 (u, v) E : x (u,v) Staying within a facet means that the corresponding inequality is tight, meaning that a variable is fixed to zero. This corresponds to removing the edge. The RandomFacet pivoting rule removes random unused edges and solves the corresponding problem recursively. Note that delaying a switch, as for Bland s rule, can also be viewed as removing the edge. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 4/44

Different challenges When constructing lower bounds for RandomFacet, the challenge is to make sure that certain edges are not removed before certain other edges. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 41/44

Different challenges When constructing lower bounds for RandomFacet, the challenge is to make sure that certain edges are not removed before certain other edges. Suppose an edge e must not be removed before another edge e. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 41/44

Different challenges When constructing lower bounds for RandomFacet, the challenge is to make sure that certain edges are not removed before certain other edges. Suppose an edge e must not be removed before another edge e. To achieve this with high probability we make use of redundancy: Let e and e be copied k times, in such a way that we only require that at least one copy of e is removed before all copies of e are removed. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 41/44

Different challenges When constructing lower bounds for RandomFacet, the challenge is to make sure that certain edges are not removed before certain other edges. Suppose an edge e must not be removed before another edge e. To achieve this with high probability we make use of redundancy: Let e and e be copied k times, in such a way that we only require that at least one copy of e is removed before all copies of e are removed. The probability of failure, i.e. removing all k copies of e before one copy of e, is then: k i=1 i i + k = (k!)2 (2k)! 1 2 k Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 41/44

Lower bound construction wi+1 ui+1 2 2i+1 + 1 + (rs 1)ɛ bi,rs rs. bi,2 2 2i+1 + 1 + ɛ 2 2i+1 + 1 bi,1 2 2i 2 2i+1 + (s 1)ɛ ai,1,s ai,2,s ai,r,s s. ai,1,2. ai,2,2. ai,r,2 2 2i+1 + ɛ ai,1,1 ai,2,1 ai,r,1 2 2i+1 2 2i wi } {{ } r ui Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 42/44

Open problems Subexponential upper bounds for RandomEdge and Randomized Bland s rule? Close the gap between the 2 Ω(n 1/3) and 2 O( n log d) bounds for RandomFacet for linear programs. Close the gap between the Ω(n 2 ) and O(nm log n) bounds for Dantzig s LargestCoefficient pivoting rule for shortest paths. Close the gap between the (1 + ɛ)(m d) lower bound and O(m log m ) upper bound for the diameter of convex polytopes. Strongly polynomial time algorithm for linear programming? A variant of the simplex algorithm? This question remains open already for Markov decision processes. Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 43/44

The end Thank you for listening! Friedmann, Hansen, Zwick Lower bounds for the simplex algorithm Page 44/44