Subexponential lower bounds for randomized pivoting rules for the - - PowerPoint PPT Presentation

subexponential lower bounds for randomized pivoting rules
SMART_READER_LITE
LIVE PREVIEW

Subexponential lower bounds for randomized pivoting rules for the - - PowerPoint PPT Presentation

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


slide-1
SLIDE 1

Subexponential lower bounds for randomized pivoting rules for the simplex algorithm

Oliver Friedmann1 Thomas Dueholm Hansen2 Uri Zwick3

1 Department of Computer Science,

University of Munich, Germany.

2 Department of Management Science and Engineering,

Stanford University, USA.

3 School of Computer Science,

Tel Aviv University, Israel.

The Fields Institute, November 29, 2013

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 1/41

slide-2
SLIDE 2

Outline

Linear programming and the simplex algorithm. Related work and results. The simplex algorithm for shortest paths. Framework: Lower bounds for the simplex algorithm utilizing shortest paths. On the lower bound for RandomEdge. (On the lower bound for RandomFacet.) Open problems.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 2/41

slide-3
SLIDE 3

Linear programming

Let A ∈ Rm×n, b ∈ Rm, and c ∈ Rn. A linear program (LP) in standard form is an optimization problem of the form: min cTx s.t. Ax = b x ≥

−c

The set of feasible solutions is a convex polytope.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 3/41

slide-4
SLIDE 4

Basic feasible solutions

min cTx s.t. Ax = b x ≥

−c

A basis is a subset B ⊆ {1, . . . , n} of m columns of A such that the corresponding matrix AB ∈ Rm×m is invertible. Every basis defines a basic feasible solution xB = A−1

B b by

setting non-basic variables, xi for i ∈ B, to zero. Vertices (or corners) are basic feasible solutions.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 4/41

slide-5
SLIDE 5

The simplex algorithm, Dantzig (1947)

min cTx s.t. Ax = b x ≥

−c

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, and Zwick Lower bounds for the simplex algorithm Page 5/41

slide-6
SLIDE 6

Pivoting rules

−c

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, and Zwick Lower bounds for the simplex algorithm Page 6/41

slide-7
SLIDE 7

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, and Zwick Lower bounds for the simplex algorithm Page 7/41

slide-8
SLIDE 8

Exponential lower bounds

Klee and Minty (1972): The LargestCoefficient pivoting rule may require exponentially many steps; the Klee-Minty cube.1 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´ atal (1978). ShadowVertex: Murty (1980), Goldfarb (1983). See Amenta and Ziegler (1996) for a unified view.

1Picture from G¨

artner, Henk and Ziegler (1998)

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 8/41

slide-9
SLIDE 9

Randomized pivoting rules

RandomEdge

Perform uniformly random improving pivots.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 9/41

slide-10
SLIDE 10

Randomized pivoting rules

RandomEdge

Perform uniformly random improving pivots.

RandomFacet, Kalai (1992) and Matouˇ sek, 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, and Zwick Lower bounds for the simplex algorithm Page 9/41

slide-11
SLIDE 11

Randomized pivoting rules

RandomEdge

Perform uniformly random improving pivots.

RandomFacet, Kalai (1992) and Matouˇ sek, 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: 2O(√m log n) expected steps.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 9/41

slide-12
SLIDE 12

Randomized pivoting rules

RandomEdge

Perform uniformly random improving pivots.

RandomFacet, Kalai (1992) and Matouˇ sek, 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: 2O(√m log n) expected steps.

Randomized Bland’s rule

Randomly permute the variables and use Bland’s rule.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 9/41

slide-13
SLIDE 13

Randomized pivoting rules

RandomEdge

Perform uniformly random improving pivots.

RandomFacet, Kalai (1992) and Matouˇ sek, 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: 2O(√m log n) 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, and Zwick Lower bounds for the simplex algorithm Page 9/41

slide-14
SLIDE 14

Randomized pivoting rules

RandomEdge

Perform uniformly random improving pivots.

RandomFacet, Kalai (1992) and Matouˇ sek, 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: 2O(√m log n) 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 randomized pivoting rules.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 9/41

slide-15
SLIDE 15

Results

We prove lower bounds for the expected number of pivoting steps: RandomEdge: 2Ω(m1/4) RandomFacet: 2˜

Ω(m1/3)

Randomized Bland’s rule: 2˜

Ω(m1/2)

where m is the number of equality constraints, and the number of variables is n = ˜ O(m).

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 10/41

slide-16
SLIDE 16

Results

We prove lower bounds for the expected number of pivoting steps: RandomEdge: 2Ω(m1/4) RandomFacet: 2˜

Ω(m1/3)

Randomized Bland’s rule: 2˜

Ω(m1/2)

where m is the number of equality constraints, and the number of variables is n = ˜ O(m). Note: In our SODA 2011 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, and Zwick Lower bounds for the simplex algorithm Page 10/41

slide-17
SLIDE 17

Results

We prove lower bounds for the expected number of pivoting steps: RandomEdge: 2Ω(m1/4) RandomFacet: 2˜

Ω(m1/3)

Randomized Bland’s rule: 2˜

Ω(m1/2)

where m is the number of equality constraints, and the number of variables is n = ˜ O(m). Note: In our SODA 2011 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, and Zwick Lower bounds for the simplex algorithm Page 10/41

slide-18
SLIDE 18

Techniques

Previous lower bounds were proved by studying linear programs directly. The new lower bounds are based on linear programs for shortest paths and Markov decision processes (MDPs), for which the behavior of the simplex algorithm can be more easily understood.

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, and Zwick Lower bounds for the simplex algorithm Page 11/41

slide-19
SLIDE 19

Related work

Friedmann (2009) and Fearnley (2010) gave a similar lower bound construction for Howard’s PolicyIteration algorithm for solving MDPs (and parity games).

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 12/41

slide-20
SLIDE 20

Related work

Friedmann (2009) and Fearnley (2010) gave a similar lower bound construction for Howard’s PolicyIteration algorithm for solving MDPs (and parity games). Friedmann (2011) used the same technique to prove a lower bound of subexponential form, 2Ω(√m), for Zadeh’s LeastEntered pivoting rule (1980).

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 12/41

slide-21
SLIDE 21

Related work

Friedmann (2009) and Fearnley (2010) gave a similar lower bound construction for Howard’s PolicyIteration algorithm for solving MDPs (and parity games). Friedmann (2011) used the same technique to prove a lower bound of subexponential form, 2Ω(√m), for Zadeh’s LeastEntered pivoting rule (1980). Superpolynomial lower bounds for RandomEdge and RandomFacet were previously only known in an abstract setting (Acyclic Unique Sink Orientations): Matouˇ sek (1994): 2Ω(√m) lower bound for RandomFacet. Matouˇ sek and Szab´

  • (2006): 2Ω(m1/3) lower bound for

RandomEdge.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 12/41

slide-22
SLIDE 22

Outline

Linear programming and the simplex algorithm. Related work and results. ⇒ The simplex algorithm for shortest paths. 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, and Zwick Lower bounds for the simplex algorithm Page 13/41

slide-23
SLIDE 23

Single target shortest paths

t b4 = 1 b5 = 1 b6 = 1 b1 = 1 b2 = 1 b3 = 1 bt = −6

  • 4

3

  • 6

2

  • 1

1 2 5 3 3 8 t

  • 4

3

  • 6

2

  • 1

1 2 5 3 3 8

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 14/41

slide-24
SLIDE 24

Single target shortest paths

t b4 = 1 b5 = 1 b6 = 1 b1 = 1 b2 = 1 b3 = 1 bt = −6

  • 4

3

  • 6

2

  • 1

1 2 5 3 3 8 t

  • 4

3

  • 6

2

  • 1

1 2 5 3 3 8

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 14/41

slide-25
SLIDE 25

Single target shortest paths

t b4 = 0 b5 = 0 b6 = 0 b1 = 1 b2 = 0 b3 = 0 bt = −1

  • 4

3

  • 6

2

  • 1

1 2 5 3 3 8

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v ∈ V :

  • w:(v,w)∈E

x(v,w) −

  • u:(u,v)∈E

x(u,v) = bv ∀(u, v) ∈ E : x(u,v) ≥

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 14/41

slide-26
SLIDE 26

Single target shortest paths

t b4 = 1 b5 = 1 b6 = 1 b1 = 1 b2 = 1 b3 = 1 bt = −6

  • 4

3

  • 6

2

  • 1

1 2 5 3 3 8

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v ∈ V :

  • w:(v,w)∈E

x(v,w) −

  • u:(u,v)∈E

x(u,v) = bv ∀(u, v) ∈ E : x(u,v) ≥

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 14/41

slide-27
SLIDE 27

Basic feasible solutions

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v = t :

  • w:(v,w)∈E

x(v,w) −

  • u:(u,v)∈E

x(u,v) = 1 ∀(u, v) ∈ E : x(u,v) ≥

Flow conservation:

x1 = 1 x2 = 6 x3 = 4 x4 = 2

x1 + x2 = 1 + x3 + x4

The flow through every vertex is at least 1.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 15/41

slide-28
SLIDE 28

Basic feasible solutions

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v = t :

  • w:(v,w)∈E

x(v,w) −

  • u:(u,v)∈E

x(u,v) = 1 ∀(u, v) ∈ E : x(u,v) ≥

Flow conservation:

x1 = 7 x2 = 0 x3 = 4 x4 = 2

x1 + x2 = 1 + x3 + x4

The flow through every vertex is at least 1. For a basic feasible solution, at most one edge leaving every vertex has non-zero flow.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 15/41

slide-29
SLIDE 29

Basic feasible solutions

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v = t :

  • w:(v,w)∈E

x(v,w) −

  • u:(u,v)∈E

x(u,v) = 1 ∀(u, v) ∈ E : x(u,v) ≥

Flow conservation:

x1 = 7 x2 = 0 x3 = 4 x4 = 2

x1 + x2 = 1 + x3 + x4

The flow through every vertex is at least 1. 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, and Zwick Lower bounds for the simplex algorithm Page 15/41

slide-30
SLIDE 30

Improving pivots

t valπ(1) = 12 valπ(2) = 11 valπ(3) = 8 2 + 8 < 12 1 2 3 8 t valπ(1) = 12 valπ(2) = 11 valπ(3) = 8 1 2 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, and Zwick Lower bounds for the simplex algorithm Page 16/41

slide-31
SLIDE 31

Improving pivots

t valπ(1) = 12 valπ(2) = 11 valπ(3) = 8 2 + 8 < 12 1 2 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) An edge (u, v) is an improving pivot (or improving switch) w.r.t. π if it improves the value of u: c(u,v) + valπ(v) < valπ(u)

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 16/41

slide-32
SLIDE 32

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, and Zwick Lower bounds for the simplex algorithm Page 17/41

slide-33
SLIDE 33

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 π The simplex algorithm is the special case where only one improving switch is performed in every iteration.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 17/41

slide-34
SLIDE 34

Lower bound constructions: The first idea

To prove a lower bound for a given pivoting rule, we construct a family of graphs (or MDPs) Gn 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:

bi bi ⇒ biti(π) = 0 ⇒ biti(π) = 1

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 18/41

slide-35
SLIDE 35

Lower bound constructions: The first idea

To prove a lower bound for a given pivoting rule, we construct a family of graphs (or MDPs) Gn 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:

bi bi ⇒ biti(π) = 0 ⇒ biti(π) = 1

We then show that (with high probability) a run of the PolicyIteration algorithm generates all 2n counting configurations.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 18/41

slide-36
SLIDE 36

A simplified construction

wi ai ui bi wi+1 ui+1 22i 22i 22i+1 22i+1 + 1

The graph is acyclic, and every bit i is associated with a level consisting of four vertices: bi, ai, wi, ui. wn+1 = un+1 = t.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 19/41

slide-37
SLIDE 37

A simplified construction, n = 3

w1 a1 u1 b1 w2 a2 u2 b2 w3 a3 u3 b3 w4 u4 t 22 22 23 23 + 1 24 24 25 25 + 1 26 26 27 27 + 1 Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 20/41

slide-38
SLIDE 38

Case: valπ(wi+1) = valπ(ui+1)

wi ai ui bi wi+1 ui+1 valπ(wi+1) = valπ(ui+1) valπ(wi) = valπ(ui) 22i 22i 22i+1 22i+1 + 1

biti(π) = 0, stable.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 21/41

slide-39
SLIDE 39

Case: valπ(wi+1) = valπ(ui+1)

wi ai ui bi wi+1 ui+1 valπ(wi+1) = valπ(ui+1) valπ(wi) = valπ(ui) 22i 22i 22i+1 22i+1 + 1

biti(π) = 1, transitioning.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 21/41

slide-40
SLIDE 40

Case: valπ(wi+1) = valπ(ui+1)

wi ai ui bi wi+1 ui+1 valπ(wi+1) = valπ(ui+1) valπ(wi) = valπ(ui) + 22i 22i 22i+1 22i 22i+1 + 1

biti(π) = 1, transitioning, lower bits are unstable: reset.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 21/41

slide-41
SLIDE 41

Case: valπ(wi+1) = valπ(ui+1)

wi ai ui bi wi+1 ui+1 valπ(wi+1) = valπ(ui+1) valπ(wi) = valπ(ui) + 22i 22i 22i+1 22i 22i+1 + 1

biti(π) = 1, transitioning, lower bits are unstable: reset.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 21/41

slide-42
SLIDE 42

Case: valπ(wi+1) = valπ(ui+1)

wi ai ui bi wi+1 ui+1 valπ(wi+1) = valπ(ui+1) valπ(wi) = valπ(ui) 22i 22i+1 22i 22i+1 + 1

biti(π) = 1, stable.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 21/41

slide-43
SLIDE 43

Case: valπ(wi+1) ≥ valπ(ui+1) + 22i+2

wi ai ui bi wi+1 ui+1 valπ(wi+1) ≥ valπ(ui+1) + 22i+2 valπ(wi) = valπ(ui) 22i 22i+1 22i 22i+1 + 1

biti(π) = 1, unstable, resetting.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 22/41

slide-44
SLIDE 44

Case: valπ(wi+1) ≥ valπ(ui+1) + 22i+2

wi ai ui bi wi+1 ui+1 valπ(wi+1) ≥ valπ(ui+1) + 22i+2 valπ(wi) = valπ(ui) + 22i 22i 22i 22i+1 22i+1 + 1

biti(π) = 0, stable, lower bits are unstable: reset. wi is updated when bit i + 1 stabilizes.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 22/41

slide-45
SLIDE 45

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, and Zwick Lower bounds for the simplex algorithm Page 23/41

slide-46
SLIDE 46

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:

(bi, wi+1) edges are placed last, and σ(bi, wi+1) < σ(bj, wj+1) for i < j. (ai, bi) edges are placed next, and σ(ai, bi) < σ(aj, bj) for i < j. The remaining edges are placed first in arbitrary order.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 23/41

slide-47
SLIDE 47

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:

(bi, wi+1) edges are placed last, and σ(bi, wi+1) < σ(bj, wj+1) for i < j. (ai, bi) edges are placed next, and σ(ai, bi) < σ(aj, bj) 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 (bi, wi+1) and (ai, bi).

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 23/41

slide-48
SLIDE 48

Outline

Linear programming and the simplex algorithm. Related work and results. The simplex algorithm for shortest paths. 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, and Zwick Lower bounds for the simplex algorithm Page 24/41

slide-49
SLIDE 49

Delaying events

3 bi ≡ bi,1 bi,2 bi,3 c c c + ǫ c + 2ǫ

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, and Zwick Lower bounds for the simplex algorithm Page 25/41

slide-50
SLIDE 50

Delaying events

3 bi ≡ bi,1 bi,2 bi,3 c c c + ǫ c + 2ǫ

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, and Zwick Lower bounds for the simplex algorithm Page 25/41

slide-51
SLIDE 51

Delaying events

3 bi ≡ bi,1 bi,2 bi,3 c c c + ǫ c + 2ǫ

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, and Zwick Lower bounds for the simplex algorithm Page 25/41

slide-52
SLIDE 52

Delaying events

3 bi ≡ bi,1 bi,2 bi,3 c c c + ǫ c + 2ǫ

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, and Zwick Lower bounds for the simplex algorithm Page 25/41

slide-53
SLIDE 53

Competing chains

Suppose a short chain of length ℓi is competing with a longer chain of length ℓi+1. There is exactly one improving switch in both chains, and RandomEdge performs either one of them with equal probability.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 26/41

slide-54
SLIDE 54

Competing chains

Suppose a short chain of length ℓi is competing with a longer chain of length ℓ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 ℓi + ℓi+1 coin tosses, then by a Chernoff bound: Pr[X ≤ ℓi] ≤ e

(ℓi+1−ℓi )2 2(ℓi+1+ℓi )

Setting ℓk = Θ(k2n), the probability of failure, X < ℓi, is at most e−n.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 26/41

slide-55
SLIDE 55

Competing chains

Suppose a short chain of length ℓi is competing with a longer chain of length ℓ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 ℓi + ℓi+1 coin tosses, then by a Chernoff bound: Pr[X ≤ ℓi] ≤ e

(ℓi+1−ℓi )2 2(ℓi+1+ℓi )

Setting ℓk = Θ(k2n), the probability of failure, X < ℓi, is at most e−n. With n such chains this results in N = O(n4) vertices, giving a lower bound of 2Ω(N1/4) expected pivoting steps for RandomEdge.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 26/41

slide-56
SLIDE 56

Fast resetting

3 bi ≡ bi,1 bi,2 bi,3 c c c + ǫ c + 2ǫ

Moving in the other directions happens much faster since all edges are improving switches simultaneously.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 27/41

slide-57
SLIDE 57

Problem

We need to reset the progress made in chains at higher bits in

  • rder for the analysis to work.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 28/41

slide-58
SLIDE 58

Problem

We need to reset the progress made in chains at higher bits in

  • rder for the analysis to work.

The graph should not be acyclic: higher bits must have access to lower bits.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 28/41

slide-59
SLIDE 59

Problem

We need to reset the progress made in chains at higher bits in

  • rder 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, and Zwick Lower bounds for the simplex algorithm Page 28/41

slide-60
SLIDE 60

Problem

We need to reset the progress made in chains at higher bits in

  • rder 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, and Zwick Lower bounds for the simplex algorithm Page 28/41

slide-61
SLIDE 61

Problem

We need to reset the progress made in chains at higher bits in

  • rder 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 bi-chains we need additional ci-chains, resulting in alternating behavior.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 28/41

slide-62
SLIDE 62

Construction for RandomEdge

wi ai ui bi wi+1 ui+1 22i 22i 22i+1 22i+1 + 1

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 29/41

slide-63
SLIDE 63

Construction for RandomEdge

g ℓi wi ai ui bi wi+1 ui+1 22i 22i 22i+1 22i+1 + 1

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 29/41

slide-64
SLIDE 64

Construction for RandomEdge

g ℓi wi ai ui bi wi+1 ui+1 u1 22i 22i 22i+1 22i+1 + 1

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 29/41

slide-65
SLIDE 65

Construction for RandomEdge

g ℓi wi ai ui bi wi+1 ui+1 u1 22i 22i 22i+1 ǫ 22i+1 + 1 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 29/41

slide-66
SLIDE 66

Construction for RandomEdge

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 22i 22i 22i+1 ǫ 22i+1 + 2 22i+1 + 1 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 29/41

slide-67
SLIDE 67

Setting a bit

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 valπ(w1) = valπ(u1) biti(π) = 0 22i 22i 22i+1 22i+1 + 2 22i+1 + 1 ǫ 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 30/41

slide-68
SLIDE 68

Setting a bit

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 valπ(w1) = valπ(u1) biti(π) = 0 22i 22i 22i+1 22i+1 + 2 22i+1 + 1 ǫ 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 30/41

slide-69
SLIDE 69

Setting a bit

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 valπ(w1) = valπ(u1) biti(π) = 1 22i 22i 22i+1 22i+1 + 2 22i+1 + 1 ǫ 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 30/41

slide-70
SLIDE 70

Setting a bit

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 valπ(w1) = valπ(u1) + 22i biti(π) = 1 22i 22i 22i+1 22i+1 + 2 22i+1 + 1 ǫ 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 30/41

slide-71
SLIDE 71

Setting a bit

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 valπ(w1) = valπ(u1) + 22i biti(π) = 1 22i 22i 22i+1 22i+1 + 2 22i+1 + 1 ǫ 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 30/41

slide-72
SLIDE 72

Setting a bit

g h ℓi wi ai ui bi wi+1 ui+1 u1 ci w1 valπ(w1) = valπ(u1) biti(π) = 1 22i 22i 22i+1 22i+1 + 2 22i+1 + 1 ǫ 1 − ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 30/41

slide-73
SLIDE 73

RandomEdge lower bound

Theorem (Friedmann, Hansen, and Zwick (2011)) The worst-case expected number of pivoting steps performed by RandomEdge on linear programs with m equalities and n = 2m non-negative variables is 2Ω(m1/4).

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 31/41

slide-74
SLIDE 74

Outline

Linear programming and the simplex algorithm. Related work and results. The simplex algorithm for shortest paths. 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, and Zwick Lower bounds for the simplex algorithm Page 32/41

slide-75
SLIDE 75

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, and Zwick Lower bounds for the simplex algorithm Page 33/41

slide-76
SLIDE 76

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ˇ sek, Sharir, and Welzl (1992).

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 33/41

slide-77
SLIDE 77

The RandomFacet pivoting rule

x P f1 f2 f3

Pick a uniformly random facet fi that contains the current basic feasible solution x.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 34/41

slide-78
SLIDE 78

The RandomFacet pivoting rule

x P f1 f2 f3

Pick a uniformly random facet fi that contains the current basic feasible solution x.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 34/41

slide-79
SLIDE 79

The RandomFacet pivoting rule

x P f1 f2 f3 x′

Recursively find the optimal solution x′ within the picked facet fi.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 34/41

slide-80
SLIDE 80

The RandomFacet pivoting rule

x P f1 f2 f3 x′ x′′

If possible, make an improving pivot from x′, leaving the facet fi, and repeat from the beginning. Otherwise return x′.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 34/41

slide-81
SLIDE 81

The RandomFacet pivoting rule

x P f1 f2 f3 x′ x′′

Note that if the facets f1, . . . , fd containing x are ordered according to their optimal value, then from x′′ we never visit f1, . . . , fi again.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 34/41

slide-82
SLIDE 82

The RandomFacet pivoting rule

The number of pivoting steps for a linear program with dimension d and n inequalities is at most: f (d, n) ≤ f (d − 1, n − 1) + 1 + 1 d

d

  • i=1

f (d, n − i) with f (d, n) = 0 for n ≤ d.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 35/41

slide-83
SLIDE 83

The RandomFacet pivoting rule

The number of pivoting steps for a linear program with dimension d and n inequalities is at most: f (d, n) ≤ f (d − 1, n − 1) + 1 + 1 d

d

  • i=1

f (d, n − i) with f (d, n) = 0 for n ≤ d. Solving the corresponding recurrence gives: f (d, n) ≤ 2O(√

(n−d) log n)

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 35/41

slide-84
SLIDE 84

Interpretation for shortest paths

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v = t :

  • w:(v,w)∈E

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, and Zwick Lower bounds for the simplex algorithm Page 36/41

slide-85
SLIDE 85

Interpretation for shortest paths

minimize

  • (u,v)∈E

c(u,v)x(u,v) s.t. ∀v = t :

  • w:(v,w)∈E

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, and Zwick Lower bounds for the simplex algorithm Page 36/41

slide-86
SLIDE 86

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, and Zwick Lower bounds for the simplex algorithm Page 37/41

slide-87
SLIDE 87

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, and Zwick Lower bounds for the simplex algorithm Page 37/41

slide-88
SLIDE 88

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, and Zwick Lower bounds for the simplex algorithm Page 37/41

slide-89
SLIDE 89

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 2k

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 37/41

slide-90
SLIDE 90

Lower bound construction

wi wi+1 ui ui+1 ai,1,1 ai,1,2 . . . ai,1,s ai,2,1 ai,2,2 . . . ai,2,s · · · ai,r,1 ai,r,2 . . . ai,r,s bi,1 bi,2 . . . bi,rs rs                                    s                                   

  • r

22i 22i 22i+1 22i+1 + ǫ 22i+1 + (s − 1)ǫ 22i+1 + 1 22i+1 + 1 + ǫ 22i+1 + 1 + (rs − 1)ǫ

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 38/41

slide-91
SLIDE 91

Analysis: simulate a “randomized bitcounter”

Start with n bits with value 0: 00000 Pick a random bit i and fix it: 00000 Count recursively with the remaining n − 1 bits: 11011 Increment the i’th bit: 11111 Reset the i − 1 lower bits: 11100 Count recursively with the i − 1 lower bits: 11100 Expected number of increments: f (0) = 0 f (n) = f (n − 1) + 1 + 1 n

n−1

  • i=0

f (i) for n > 0 Solving the recurrence gives: f (n) = 2Θ(√n)

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 39/41

slide-92
SLIDE 92

Open problems

Subexponential upper bounds for RandomEdge and Randomized Bland’s rule? Close the gap between the 2˜

Ω(m1/3) and 2O(√m log n) bounds

for RandomFacet for linear programs. The polynomial Hirsch conjecture: A polynomial upper bound for the diameter of 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, and Zwick Lower bounds for the simplex algorithm Page 40/41

slide-93
SLIDE 93

The end

Thank you for listening!

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 41/41

slide-94
SLIDE 94

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 n-facet convex polytope in d-dimensional Euclidean space is at most n − d. Kalai and Kleitman (1992): O(nlog n) upper bound on the diameter. Counter-example by Santos (2010): Existence of polytopes with diameter (1 + ǫ)(n − d).

It remains open whether the diameter is polynomial, or even linear, in n and d.

Our results are unrelated to the diameter: The constructed polytopes have low diameter.

Friedmann, Hansen, and Zwick Lower bounds for the simplex algorithm Page 42/41