on the integrality gap of hypergraphic steiner tree
play

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 /


  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.

  2. Steiner tree T erminals Steiner nodes 2 / 29

  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

  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

  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

  6. Undirected component-based relaxation � min x C cost ( C ) C ∈ K x C ( | S ∩ R ( C ) | − 1 ) + ≤ | S | − 1 � ∀ ∅ � S ⊆ R (LP) C ∈ K � x C ( | R ( C ) | − 1 ) = | R | − 1 C ∈ K x C ≥ 0 ∀ C ∈ K . 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

  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

  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

  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

  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

  11. Blowup graph  X 1 / 2 1 / 2 1 1 / 2 N = 2 ◮ Choose N s.t. x C · N ∈ N for all C ∈ K . ◮ Make x C · N “copies” of C ∈ K . ◮ Notation: Γ( X ) := set of components in X . 9 / 29

  12. Blowup graph  X 1 / 2 1 / 2 1 N = 2 1 / 2 ◮ 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

  13. Edge removals Crucial question What are the possible edge removals after contracting a set of terminals Q ? 11 / 29

  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

  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

  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

  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

  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

  19. Matroid structure Given a set Q of terminals to contract, let B Q = { B ⊆ E ( X ) | ( X /Q ) − B is feasible , and B is minimal with this property} . Theorem ◮ B Q form the bases of a matroid M Q of rank N ( | R ( Q ) | − 1 ) . 12 / 29

  20. Matroid structure Given a set Q of terminals to contract, let B Q = { B ⊆ E ( X ) | ( X /Q ) − B is feasible , and B is minimal with this property} . Theorem ◮ B Q form the bases of a matroid M Q of rank N ( | R ( Q ) | − 1 ) . ◮ Can precisely describe the rank function r Q . ◮ M Q is a gammoid. 12 / 29

  21. Thought experiment ◮ We want to show that there exists a component Q and removal set B ∈ B Q 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 ∈ B Q , and E {cost ( B ) /N } large compared to E {cost ( Q ) }. 13 / 29

  22. Thought experiment ◮ We want to show that there exists a component Q and removal set B ∈ B Q 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 ∈ B Q , 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

  23. Thought experiment ◮ We want to show that there exists a component Q and removal set B ∈ B Q 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 ∈ B Q , 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 � c ( e ) P { e ∈ B } = α · cost ( X ) / | Γ( X ) | , N e implying an integrality gap ≤ α . 13 / 29

  24. Thought experiment ◮ We want to show that there exists a component Q and removal set B ∈ B Q 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 ∈ B Q , 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 � c ( e ) P { e ∈ B } = α · cost ( X ) / | Γ( X ) | , N e implying an integrality gap ≤ α . ◮ Unfortunately we can’t get better than α = 2. 13 / 29

  25. Removal probabilities ◮ Let B ( M Q ) be the base polytope associated with M Q . ◮ p ∈ B ( M Q ) iff there exists a distribution D Q on B Q s.t. P D Q { e ∈ B Q } = p e . ◮ Consider the scaled Minkowski sum 1 � B rem = B ( M Q ) . | Γ( X ) | Q ∈ Γ( X ) ◮ p ∈ B rem iff there exists D s.t. for random ( Q, B ) , B ∈ B Q , P { Q = C } = 1 / | Γ( X ) | ∀ C and P D { e ∈ B } = p e . 14 / 29

  26. Polymatroids for random contraction ◮ B rem is a polymatroid, with rank function 1 � r = r Q . | Γ( X ) | Q ∈ Γ( X ) ◮ But r Q has an implicit description: r Q ( F ) = min S ⊇ Q h X − F ( S ) . 15 / 29

  27. Polymatroids for random contraction ◮ B rem is a polymatroid, with rank function 1 � r = r Q . | Γ( X ) | Q ∈ Γ( X ) ◮ But r Q has an implicit description: r Q ( F ) = min S ⊇ Q h X − F ( S ) . Theorem N B rem ⊇ | Γ( X ) | B ( M R ) . Equivalently: � B ( M Q ) ⊇ N · B ( M R ) . Q ∈ Γ( X ) 15 / 29

  28. Core edges ◮ The set of extreme points of B ( M R ) is precisely B R . ◮ So for any K ∈ B R , the vector p of marginals given by � N/ | Γ( X ) | e ∈ K p e = ∈ K . 0 e / is in B rem . 16 / 29

  29. Core edges ◮ The set of extreme points of B ( M R ) is precisely B R . ◮ So for any K ∈ B R , the vector p of marginals given by � N/ | Γ( X ) | e ∈ K p e = ∈ K . 0 e / is in B rem . ◮ What must remain after removing some B ∈ B R ? Precisely a spanning tree on X /R . 16 / 29

  30. Core edges ◮ The set of extreme points of B ( M R ) is precisely B R . ◮ So for any K ∈ B R , the vector p of marginals given by � N/ | Γ( X ) | e ∈ K p e = ∈ K . 0 e / is in B rem . ◮ What must remain after removing some B ∈ B R ? Precisely a spanning tree on X /R . 16 / 29

  31. Witness sets e 17 / 29

  32. Witness sets W ( e ) e 17 / 29

  33. Witness sets e 17 / 29

  34. Witness sets e 17 / 29

  35. Weights ◮ Charge cost of cleanup edges to edges in K : c ( e ) � w ( f ) = c ( f ) + . | W ( e ) | e / ∈ K : f ∈ W ( e ) Theorem There exists a component Q and B ∈ B Q so that w ( B ) /N ≥ cost ( Q ) . ◮ ( Q, B ) can be found algorithmically (for each Q , find a maximum weight basis in B Q ; the gammoid structure of M Q is helpful here). 18 / 29

  36. Algorithm ◮ Start with blowup graph X and K ∈ B R . ◮ N = 2 in this example. 19 / 29

  37. Algorithm ◮ Find Q and max weight basis B ∈ B Q s.t. cost ( Q ) ≤ w ( B ) /N . 20 / 29

  38. Algorithm ◮ Remove B 21 / 29

  39. Algorithm ◮ Remove B and cleanup edges: F = { e / ∈ K | W ( e ) ⊆ B }. 21 / 29

Recommend


More recommend