On the integrality gap of hypergraphic Steiner tree relaxations - - PowerPoint PPT Presentation

on the integrality gap of hypergraphic steiner tree
SMART_READER_LITE
LIVE PREVIEW

On the integrality gap of hypergraphic Steiner tree relaxations - - PowerPoint PPT Presentation

On the integrality gap of hypergraphic Steiner tree relaxations Neil Olver Department of Mathematics, MIT Aussois, January 2012 Joint work with Michel Goemans, Thomas Rothvo and Rico Zenklusen. Steiner tree T erminals Steiner nodes 2 /


slide-1
SLIDE 1

On the integrality gap of hypergraphic Steiner tree relaxations

Neil Olver

Department of Mathematics, MIT

Aussois, January 2012 Joint work with Michel Goemans, Thomas Rothvoß and Rico Zenklusen.

slide-2
SLIDE 2

Steiner tree

T erminals Steiner nodes

2 / 29

slide-3
SLIDE 3

Approximation results

  • Perf. guarantee

Folklore 2 Zelikovsky [1991] 11/6 ≤ 1.83 Berman & Ramaiyer [1991] 16/9 ≤ 1.78 Zelikovsky [1993] 1 + ln(2) + ε ≤ 1.70 Karpinski & Zelikovsky [1997] ≤ 1.65 Prömel & Steger [2000] 5/3 ≤ 1.67 Hougardy & Prömel [1999] ≤ 1.59 Robins & Zelikovsky [2005] 1 + ln(3)/2 ≤ 1.55 Byrka, Grandoni, Rothvoß, Sanità [2010] ln(4) + ε ≤ 1.39

3 / 29

slide-4
SLIDE 4

Hypergraphic relaxations

◮ Different (but equivalent) relaxations:

◮ Warme [1998] (we’ll use this one). ◮ Polzin and Vahdati-Deneshmand [2003]. ◮ Könemann, Pritchard and T

an [2009].

◮ All have a variable for each component.

4 / 29

slide-5
SLIDE 5

Hypergraphic relaxations

◮ Different (but equivalent) relaxations:

◮ Warme [1998] (we’ll use this one). ◮ Polzin and Vahdati-Deneshmand [2003]. ◮ Könemann, Pritchard and T

an [2009].

◮ All have a variable for each component.

4 / 29

slide-6
SLIDE 6

Undirected component-based relaxation

min

  • C∈K

xC cost(C)

  • C∈K

xC(|S ∩ R(C)| − 1)+ ≤ |S| − 1 ∀ ∅ S ⊆ R

  • C∈K

xC(|R(C)| − 1) = |R| − 1 xC ≥ 0 ∀ C ∈ K. (LP)

Warme [1998] ◮ K = set of components. ◮ Exponential # of variables—but can get a PTAS by only

considering components up to a certain size.

Borchers & Du [1997]

5 / 29

slide-7
SLIDE 7

Integrality gaps

◮ Directed variant used by BGRS for their algorithm—but

their analysis does not bound the integrality gap!

◮ They do prove a bound of 1.55 on the integrality gap by other

methods.

◮ Chakrabarty, Könemann and Pritchard [2010] give a simpler

proof of this bound.

6 / 29

slide-8
SLIDE 8

Our results (I)

◮ Deeper understanding of the component-based LP

.

◮ Leads to simpler algorithm, performance directly

comparable to LP solution:

◮ Deterministic (derandomization much simpler than for BGRS

algorithm).

◮ Gives matching bound on the integrality gap. ◮ Don’t need to re-solve LP in each iteration. 7 / 29

slide-9
SLIDE 9

Overview of algorithm

◮ Solve component LP to get near-optimal solution x. ◮ Until all terminals are connected:

◮ Select component Q to contract; add Q to solution. ◮ Modify LP solution x to be feasible in the new contracted in-

stance.

8 / 29

slide-10
SLIDE 10

Overview of algorithm

◮ Solve component LP to get near-optimal solution x. ◮ Until all terminals are connected:

◮ Select component Q to contract; add Q to solution. ◮ Modify LP solution x to be feasible in the new contracted in-

stance.

◮ No re-solving of LP!

8 / 29

slide-11
SLIDE 11

Blowup graph

1 1/2 1/2 1/2 N = 2  X

◮ Choose N s.t. xC · N ∈ N for all C ∈ K. ◮ Make xC · N “copies” of C ∈ K. ◮ Notation: Γ(X) := set of components in X.

9 / 29

slide-12
SLIDE 12

Blowup graph

1 1/2 1/2 1/2 N = 2  X

◮ X contains all information about x; in particular, can

determine feasibility.

◮ cost(X) :=

  • e∈E(X) c(e) = N · cost(x).

◮ For any F ⊆ E(X), X − F is another blowup graph.

10 / 29

slide-13
SLIDE 13

Edge removals

Crucial question What are the possible edge removals after contracting a set of terminals Q?

11 / 29

slide-14
SLIDE 14

Edge removals

Crucial question What are the possible edge removals after contracting a set of terminals Q?

◮ Important to look at minimal edge removals:

11 / 29

slide-15
SLIDE 15

Edge removals

Crucial question What are the possible edge removals after contracting a set of terminals Q?

◮ Important to look at minimal edge removals:

11 / 29

slide-16
SLIDE 16

Edge removals

Crucial question What are the possible edge removals after contracting a set of terminals Q?

◮ Important to look at minimal edge removals:

11 / 29

slide-17
SLIDE 17

Edge removals

Crucial question What are the possible edge removals after contracting a set of terminals Q?

◮ Important to look at minimal edge removals:

11 / 29

slide-18
SLIDE 18

Edge removals

Crucial question What are the possible edge removals after contracting a set of terminals Q?

◮ Important to look at minimal edge removals:

11 / 29

slide-19
SLIDE 19

Matroid structure

Given a set Q of terminals to contract, let BQ = {B ⊆ E(X) | (X /Q) − B is feasible, and B is minimal with this property}. Theorem

◮ BQ form the bases of a matroid MQ of rank N(|R(Q)| − 1).

12 / 29

slide-20
SLIDE 20

Matroid structure

Given a set Q of terminals to contract, let BQ = {B ⊆ E(X) | (X /Q) − B is feasible, and B is minimal with this property}. Theorem

◮ BQ form the bases of a matroid MQ of rank N(|R(Q)| − 1). ◮ Can precisely describe the rank function rQ. ◮ MQ is a gammoid.

12 / 29

slide-21
SLIDE 21

Thought experiment

◮ We want to show that there exists a component Q and

removal set B ∈ BQ s.t. cost(B)/N is “large” compared to cost(Q).

◮ Try an averaging argument: pick (Q, B) randomly from some

distribution D s.t. B ∈ BQ, and E{cost(B)/N} large compared to E{cost(Q)}.

13 / 29

slide-22
SLIDE 22

Thought experiment

◮ We want to show that there exists a component Q and

removal set B ∈ BQ s.t. cost(B)/N is “large” compared to cost(Q).

◮ Try an averaging argument: pick (Q, B) randomly from some

distribution D s.t. B ∈ BQ, and E{cost(B)/N} large compared to E{cost(Q)}.

◮ Choose D s.t. P{Q = C} = 1/|Γ(X)|

∀C ∈ Γ(X).

◮ So E{cost(Q)} = cost(X)/|Γ(X)|. 13 / 29

slide-23
SLIDE 23

Thought experiment

◮ We want to show that there exists a component Q and

removal set B ∈ BQ s.t. cost(B)/N is “large” compared to cost(Q).

◮ Try an averaging argument: pick (Q, B) randomly from some

distribution D s.t. B ∈ BQ, and E{cost(B)/N} large compared to E{cost(Q)}.

◮ Choose D s.t. P{Q = C} = 1/|Γ(X)|

∀C ∈ Γ(X).

◮ So E{cost(Q)} = cost(X)/|Γ(X)|.

◮ So if we can also ensure that P{e ∈ B} ≥ α · N/|Γ(X)|, we get

E{cost(B)/N} = 1

N

  • e

c(e)P{e ∈ B} = α · cost(X)/|Γ(X)|, implying an integrality gap ≤ α.

13 / 29

slide-24
SLIDE 24

Thought experiment

◮ We want to show that there exists a component Q and

removal set B ∈ BQ s.t. cost(B)/N is “large” compared to cost(Q).

◮ Try an averaging argument: pick (Q, B) randomly from some

distribution D s.t. B ∈ BQ, and E{cost(B)/N} large compared to E{cost(Q)}.

◮ Choose D s.t. P{Q = C} = 1/|Γ(X)|

∀C ∈ Γ(X).

◮ So E{cost(Q)} = cost(X)/|Γ(X)|.

◮ So if we can also ensure that P{e ∈ B} ≥ α · N/|Γ(X)|, we get

E{cost(B)/N} = 1

N

  • e

c(e)P{e ∈ B} = α · cost(X)/|Γ(X)|, implying an integrality gap ≤ α.

◮ Unfortunately we can’t get better than α = 2.

13 / 29

slide-25
SLIDE 25

Removal probabilities

◮ Let B(MQ) be the base polytope associated with MQ. ◮ p ∈ B(MQ) iff there exists a distribution DQ on BQ s.t.

PDQ{e ∈ BQ} = pe.

◮ Consider the scaled Minkowski sum

Brem = 1 |Γ(X)|

  • Q∈Γ(X)

B(MQ).

◮ p ∈ Brem iff there exists D s.t. for random (Q, B), B ∈ BQ,

P{Q = C} = 1/|Γ(X)| ∀C and PD{e ∈ B} = pe.

14 / 29

slide-26
SLIDE 26

Polymatroids for random contraction

◮ Brem is a polymatroid, with rank function

r = 1 |Γ(X)|

  • Q∈Γ(X)

rQ.

◮ But rQ has an implicit description:

rQ(F) = min

S⊇Q hX −F(S).

15 / 29

slide-27
SLIDE 27

Polymatroids for random contraction

◮ Brem is a polymatroid, with rank function

r = 1 |Γ(X)|

  • Q∈Γ(X)

rQ.

◮ But rQ has an implicit description:

rQ(F) = min

S⊇Q hX −F(S).

Theorem Brem ⊇

N |Γ(X)|B(MR).

Equivalently:

  • Q∈Γ(X)

B(MQ) ⊇ N · B(MR).

15 / 29

slide-28
SLIDE 28

Core edges

◮ The set of extreme points of B(MR) is precisely BR. ◮ So for any K ∈ BR, the vector p of marginals given by

pe =

  • N/|Γ(X)|

e ∈ K e / ∈ K . is in Brem.

16 / 29

slide-29
SLIDE 29

Core edges

◮ The set of extreme points of B(MR) is precisely BR. ◮ So for any K ∈ BR, the vector p of marginals given by

pe =

  • N/|Γ(X)|

e ∈ K e / ∈ K . is in Brem.

◮ What must remain after removing some B ∈ BR? Precisely a

spanning tree on X /R.

16 / 29

slide-30
SLIDE 30

Core edges

◮ The set of extreme points of B(MR) is precisely BR. ◮ So for any K ∈ BR, the vector p of marginals given by

pe =

  • N/|Γ(X)|

e ∈ K e / ∈ K . is in Brem.

◮ What must remain after removing some B ∈ BR? Precisely a

spanning tree on X /R.

16 / 29

slide-31
SLIDE 31

Witness sets

e

17 / 29

slide-32
SLIDE 32

Witness sets

e W(e)

17 / 29

slide-33
SLIDE 33

Witness sets

e

17 / 29

slide-34
SLIDE 34

Witness sets

e

17 / 29

slide-35
SLIDE 35

Weights

◮ Charge cost of cleanup edges to edges in K:

w(f) = c(f) +

  • e /

∈K:f∈W(e)

c(e) |W(e)| .

Theorem

There exists a component Q and B ∈ BQ so that w(B)/N ≥ cost(Q).

◮ (Q, B) can be found algorithmically (for each Q, find a

maximum weight basis in BQ; the gammoid structure of MQ is helpful here).

18 / 29

slide-36
SLIDE 36

Algorithm

◮ Start with blowup graph X and K ∈ BR. ◮ N = 2 in this example.

19 / 29

slide-37
SLIDE 37

Algorithm

◮ Find Q and max weight basis B ∈ BQ s.t. cost(Q) ≤ w(B)/N.

20 / 29

slide-38
SLIDE 38

Algorithm

◮ Remove B

21 / 29

slide-39
SLIDE 39

Algorithm

◮ Remove B and cleanup edges: F = {e /

∈ K | W(e) ⊆ B}.

21 / 29

slide-40
SLIDE 40

Algorithm

◮ Remove B and cleanup edges: F = {e /

∈ K | W(e) ⊆ B}.

◮ Contract Q.

21 / 29

slide-41
SLIDE 41

Algorithm

◮ Find Q and B ∈ BQ s.t. cost(Q) ≤ w(B)/N.

22 / 29

slide-42
SLIDE 42

Algorithm

◮ Find Q and B ∈ BQ s.t. cost(Q) ≤ w(B)/N. ◮ Remove B

22 / 29

slide-43
SLIDE 43

Algorithm

◮ Find Q and B ∈ BQ s.t. cost(Q) ≤ w(B)/N. ◮ Remove B and cleanup edges.

22 / 29

slide-44
SLIDE 44

Algorithm

◮ Contract.

23 / 29

slide-45
SLIDE 45

Algorithm

◮ Contract. ◮ Final tree.

23 / 29

slide-46
SLIDE 46

Full algorithm

For a given blowup graph X and K ∈ BR: Algorithm

◮ T ← ∅ ◮ While T is not a Steiner tree:

◮ Find Q and B ∈ BQ s.t. cost(Q) ≤ w(B)/N. ◮ Cleanup: Let F = {e /

∈ K | W(e) ⊆ B}.

◮ Update: T ← T ∪ Q, X ← (X − B − F)/Q, K ← K \ B.

Theorem

Algorithm returns solution of cost at most ΦK(X)/N, where ΦK(X) =

  • e∈K

H(|W(e)|).

24 / 29

slide-47
SLIDE 47

Potential analysis

◮ Can find K minimizing ΦK(X) by a dynamic program. ◮ For best K, can show that

◮ ΦK(X) ≤ ln(4)cost(X). ◮ If G is quasi-bipartite, ΦK(X) ≤ 73

60 cost(X).

25 / 29

slide-48
SLIDE 48

Our results (II)

◮ Quasi-bipartite:

◮ 73/60 bound on integrality gap (previous best of 1.28 by

Chakrabarty, Könemann and Pritchard [2010]).

◮ Can show how to obtain optimal solution to hypergraphic LP by

solving bidirected relaxation.

◮ Separation of undirected component-based LP by |R|

max-flow computations.

◮ Rank computations with one max-flow.

◮ Easy proof of sparsity of basic solutions (first proven by

Chakrabarty et al. [2010]).

26 / 29

slide-49
SLIDE 49

Open problems

◮ Improve the bound! ◮ Practical (non-galactic) approximation algorithms? ◮ Better than 2 bound on integrality gap of bidirected cut

relaxation?

27 / 29

slide-50
SLIDE 50

28 / 29

slide-51
SLIDE 51

29 / 29