graph routing problems approximation hardness and graph
play

Graph Routing Problems: Approximation, Hardness, and - PowerPoint PPT Presentation

Graph Routing Problems: Approximation, Hardness, and Graph-Theoretic Insights Julia Chuzhoy Toyota Technological Institute at Chicago Graph Routing Problems maximum s-t flow maximum multicommodity flow maximum node-disjoint paths (NDP)


  1. Approximation Status of EDP -approximation algorithm [Chekuri, Khanna, • O ( √ n ) Shepherd ’ 06] 2 Ω ( √ log n ) -hardness of approximation even for • subgraphs of wall graphs [C, Kim, Nimavat ’ 16]

  2. A Wall

  3. Approximation Status of EDP -approximation algorithm [Chekuri, Khanna, • O ( √ n ) Shepherd ’ 06] 2 Ω ( √ log n ) -hardness of approximation even for • subgraphs of wall graphs [C, Kim, Nimavat ’ 16] • Work in progress: almost polynomial hardness for EDP on wall graphs [C, Kim, Nimavat ‘17]

  4. Summary so Far EDP and NDP do not have reasonable approximation algorithms, even on planar graphs What if we allow some congestion?

  5. EDP/NDP with Congestion An -approximation algorithm with congestion c α routes . demand pairs with congestion at OPT / α most c. up to c paths can share an edge or a vertex

  6. EDP/NDP with Congestion An -approximation algorithm with congestion c α routes . demand pairs with congestion at OPT / α most c. optimum number of pairs with no congestion allowed

  7. EDP with Congestion • Congestion O(log n/log log n): constant approximation [Raghavan, Thompson ’87] • Congestion c: -approximation [Azar, Regev ’01], O ( n 1 /c ) [Baveja, Srinivasan ’00], [Kolliopoulos, Stein ‘04] • Congestion poly(log log n): polylog(n)-approx [Andrews ‘10] • Congestion 2: -approximation [Kawarabayashi, O ( n 3 / 7 ) Kobayashi ’11] • Congestion 14: polylog(k)-approximation [C, ‘11] • Congestion 2: polylog(k)-approximation [C, Li ’12] • polylog(k)-approximation for NDP with congestion 2 [Chekuri, Ene ’12], [Chekuri, C ‘16]

  8. EDP with Congestion • Congestion O(log n/log log n): constant approximation [Raghavan, Thompson ’87] All these results are based on the multicommodity • Congestion c: -approximation [Azar, Regev ’01], O ( n 1 /c ) flow relaxation [Baveja, Srinivasan ’00], [Kolliopoulos, Stein ‘04] • Congestion poly(log log n): polylog(n)-approx [Andrews ‘10] “Tight” due to known • Congestion 2: -approximation [Kawarabayashi, O ( n 3 / 7 ) hardness results Kobayashi ’11] • Congestion 14: polylog(k)-approximation [C, ‘11] • Congestion 2: polylog(k)-approximation [C, Li ’12] • polylog(k)-approximation for NDP with congestion 2 [Chekuri, Ene ’12], [Chekuri, C ‘16]

  9. EDP with Congestion • Congestion O(log n/log log n): constant approximation [Raghavan, Thompson ’87] • Congestion c: -approximation [Azar, Regev ’01], O ( n 1 /c ) [Baveja, Srinivasan ’00], [Kolliopoulos, Stein ‘04] • Congestion poly(log log n): polylog(n)-approx [Andrews ‘10] O ( n 3 / 7 ) Structural results • Congestion 2: -approximation [Kawarabayashi, about graphs Kobayashi ’11] • Congestion 14: polylog(k)-approximation [C, ‘11] • Congestion 2: polylog(k)-approximation [C, Li ’12] new results in graph theory! • polylog(k)-approximation for NDP with congestion 2 [Chekuri, Ene ’12], [Chekuri, C ‘16]

  10. EDP with Congestion • Congestion O(log n/log log n): constant approximation [Raghavan, Thompson ’87] • Congestion c: -approximation [Azar, Regev ’01], O ( n 1 /c ) [Baveja, Srinivasan ’00], [Kolliopoulos, Stein ‘04] • Congestion poly(log log n): polylog(n)-approx [Andrews ‘10] • Congestion 2: -approximation [Kawarabayashi, O ( n 3 / 7 ) Kobayashi ’11] • Congestion 14: polylog(k)-approximation [C, ‘11] • Congestion 2: polylog(k)-approximation [C, Li ’12] • polylog(k)-approximation for NDP with congestion 2 [Chekuri, Ene ’12], [Chekuri, C ‘16]

  11. Edge-Disjoint Paths with Constant Congestion

  12. EDP on Expanders E 0 B | E 0 | ≥ min {| A | , | B |} A 2 In a strong enough expander, if the set of demand pairs is not too large, can route almost all of them on Node-Disjoint Paths!

  13. Main Idea: Exploit Algorithms for Expanders! But our graph is nothing like an expander Find expander-like structure in the graph and use it for routing!

  14. Well-Linkedness [Robertson,Seymour], [Chekuri, Khanna, Shepherd], [Raecke] G terminals

  15. Well-Linkedness [Robertson,Seymour], [Chekuri, Khanna, Shepherd], [Raecke] G terminals Set T of terminals is well-linked in G, iff for any partition (A,B) of V(G), A B | E ( A, B ) | ≥ min {| A ∩ T | , | B ∩ T |}

  16. Well-Linkedness [Robertson,Seymour], [Chekuri, Khanna, Shepherd], [Raecke] edge/node- G disjoint Set T of terminals is well-linked in G, iff for any partition (A,B) of V(G), A B | E ( A, B ) | ≥ min {| A ∩ T | , | B ∩ T |}

  17. EDP: Well-Linked Instances • Terminals: vertices participating in the demand pairs • An instance is well-linked iff the set of terminals is well-linked in G. Theorem [Chekuri, Khanna Shepherd ‘04]: an α - approximation algorithm on well-linked instances gives an O(α log 2 k)-approximation on any instance.

  18. EDP: Well-Linked Instances • Terminals: vertices participating in the demand pairs Only true if the algorithm rounds • An instance is well-linked iff the set of the flow relaxation terminals is well-linked in G. Theorem [Chekuri, Khanna Shepherd ‘04]: an α - approximation algorithm on well-linked instances gives an O(α log 2 k)-approximation on any instance.

  19. Main Idea [Chekuri, Khanna, Shepherd], [Rao, Zhou] Embed an expander over the terminals into G! X G terminals of G

  20. Main Idea [Chekuri, Khanna, Shepherd], [Rao, Zhou] Embed an expander over the terminals into G! X G An edge of G may belong to at most 2 clusters/paths

  21. Main Idea [Chekuri, Khanna, Shepherd], [Rao, Zhou] 1. Embed an expander over the terminals into G 2. Find a routing on node-disjoint paths in the expander X G 3. Translate it into congestion-2 routing in G An edge of G may belong to at most 2 clusters/paths

  22. Embedding an Expander into G t t s s X G Routing on vertex-disjoint paths in X gives a good routing in G!

  23. Main Idea 1. Embed an expander over the terminals into G 2. Find a routing on node-disjoint paths in the expander X G 3. Translate it into congestion-2 routing in G An edge of G may belong to at most 2 clusters/paths

  24. Main Idea 1. Embed an expander over the terminals into G 2. Find a routing on node-disjoint paths in the expander X G 3. Translate it into congestion-2 routing in G An edge of G may belong to at most 2 clusters/paths

  25. Cut-Matching Game [Khandekar, Rao, Vazirani ’06] Cut Player: wants to build an expander Matching Player: wants to delay its construction

  26. Cut-Matching Game [Khandekar, Rao, Vazirani ’06] Cut Player: wants to build an expander Matching Player: wants to delay its construction There is a strategy for cut player, s.t. after O(log 2 n) iterations, we get an expander! A 1 B 1 A 2 B 2 A 3 B 3

  27. Embedding Expander into Graph G

  28. Embedding Expander into Graph G After O(log 2 k) iterations, we get an expander embedded into G. Problem: congestion Ω(log 2 k)

  29. Path-of-Sets System

  30. width w A Path-of-Sets System length L C 2 C 3 … C L C 1 w … A 1 B 1 A 2 B 2 A 3 B 3 A L B L • L disjoint connected clusters • Two disjoint sets A i , B i of w vertices in each cluster C i • A i B i is well-linked in C i ∪ • For all i, set P i of w disjoint paths connecting B i to A i+1 • All paths are disjoint from each other and internally disjoint from clusters

  31. From Well-Linkedness to Path-of-Sets C 2 C 3 … C L C 1 w … A 1 B 1 A 2 B 2 A 3 B 3 A L B L Theorem [C, ’ 11], [C, Li ’12], [Chekuri, C ’ 13]: Suppose G has a set of k well-linked vertices. Then we can efficiently construct a path-of-sets system in G with parameters L and w, if: w · L 48 < ˜ O ( k )

  32. From Well-Linkedness to Path-of-Sets C 2 C 3 … C L C 1 We’ll use: L=O(log 2 k) w … w=k/polylog k A 1 B 1 A 2 B 2 A 3 B 3 A L B L Theorem [C, ’ 11], [C, Li ’12], [Chekuri, C ’ 13]: Suppose G has a set of k well-linked vertices. Then we can efficiently construct a path-of-sets system in w · L 48 < ˜ G with parameters L and w, if: O ( k ) Extras: Can connect w terminals to A 1 by disjoint paths • Can make sure they form demand pairs! •

  33. From Well-Linkedness to Path-of-Sets C 2 C 3 … C L C 1 w … A 1 B 1 A 2 B 2 A 3 B 3 A L B L The paths are disjoint from each other and the PoS system The terminals form Given the PoS, can embed an demand pairs expander!

  34. Embedding the Expander C 2 C 3 … C L C 1 w … C i A i B i is well- ∪ linked inside C i A i B i

  35. Embedding the Expander C 2 C 3 … C L C 1 w … X

  36. Embedding the Expander C 2 C 3 … C L C 1 w … X Expander vertex the path containing the terminal

  37. Embedding the Expander C 2 C 3 … C L C 1 X Expander vertex the path containing the terminal

  38. Embedding the Expander C 2 C 3 … C L C 1 Expander edges? cut-matching game!

  39. Embedding the Expander C 2 C 3 … C L C 1 Expander edges? cut-matching game!

  40. Embedding the Expander C 2 C 3 … C L C 1 node-disjoint paths Expander edges? cut-matching game!

  41. Embedding the Expander C 2 C 3 … C L C 1

  42. Embedding the Expander C 2 C 3 … C L C 1 After O(log 2 k) iterations, we obtain an expander embedded into G with congestion 2.…

  43. Algorithm for EDPwC in Well-Linked Instances Find a Path-of-Sets System Embed an expander into G Find vertex-disjoint routing in the expander Transform into routing in G

  44. Structural Result If G contains a large well-linked set of vertices, then it contains a large Path-of-Sets System Treewidth sparsifiers Excluded grid theorem Large-treewidth Vertex flow graph sparsifiers decompositions

  45. Excluded Grid Theorem [Robertson, Seymour]

  46. Excluded Grid Theorem [Robertson, Seymour] Simple graphs

  47. Excluded Grid Theorem [Robertson, Seymour] Simple graphs Complicated graphs

  48. Excluded Grid Theorem [Robertson, Seymour] Simple graphs Complicated graphs Treewidth: measures how complex the graph is. Treewidth k è DP-based algorithms with running time 2 O(k) poly(n).

  49. Excluded Grid Theorem [Robertson, Seymour] Simple graphs Complicated graphs Treewidth: measures how complex the graph is. Original definition: Treewidth is the smallest “width” of a tree-like structure that correctly “simulates” the graph. (Almost) Equivalent definition: Treewidth is the cardinality of the largest well-linked set of vertices in the graph.

Recommend


More recommend