Presentation is loading. Please wait.

Presentation is loading. Please wait.

Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago.

Similar presentations


Presentation on theme: "Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago."— Presentation transcript:

1 Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

2 Routing Problems Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Goal: Route as many pairs as possible; minimize edge congestion.

3 Routing Problems Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Goal: Route as many pairs as possible; minimize edge congestion.

4 Routing Problems Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Goal: Route as many pairs as possible; minimize edge congestion. Edge congestion: 2

5 Routing Problems Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Goal: Route as many pairs as possible; minimize edge congestion. n – number of graph vertices k – number of demand pairs terminals – vertices participating in the demand pairs n – number of graph vertices k – number of demand pairs terminals – vertices participating in the demand pairs

6 Routing Problems Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Goal: Route as many pairs as possible; minimize edge congestion. 3 pairs with congestion 2

7 Routing Problems Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Goal: Route as many pairs as possible; minimize edge congestion. 3 pairs with congestion 2 2 pairs with congestion 1 3 pairs with congestion 2 2 pairs with congestion 1

8 Edge Disjoint Paths (EDP) Route maximum number of pairs on edge-disjoint paths Congestion Minimization Route all pairs; minimize congestion

9 Congestion Minimization Route all pairs; minimize congestion -approximation [Raghavan, Thompson 87] -hard to approximate [Andrews, Zhang 07]

10 Edge Disjoint Paths (EDP) Route maximum number of pairs on edge-disjoint paths When k is constant, can be solved efficiently [Robertson, Seymour 90] NP-hard in general [Karp 72] -approximation algorithm [Chekuri, Khanna, Shepherd 06]. Best possible? – LP-relaxation: maximum multicommodity flow between the demand pairs with no congestion. – Integrality gap: [Chekuri, Khanna, Shepherd 06]

11 Edge Disjoint Paths (EDP) Route maximum number of pairs on edge-disjoint paths When k is constant, can be solved efficiently [Robertson, Seymour 90] NP-hard in general [Karp 72] -approximation algorithm [Chekuri, Khanna, Shepherd 06]. When global min-cut is, there is a polylog(n) approximation [Rao, Zhou 06] -hardness of approximation for any [Andrews, Zhang 05], [Andrews, C, Guruswami, Khanna, Talwar, Zhang 10]

12 Special Cases Expander graphs In a strong enough constant-degree expander, any demand set on vertices can be routed on edge-disjoint paths [Frieze 00] Planar graphs, Trees…

13 Edge Disjoint Paths (EDP) Route maximum number of pairs on edge-disjoint paths -approximation matching integrality gap -hardness Congestion Minimization Route all pairs; minimize congestion -approximation -hardness EDP with Congestion (EDPwC) A factor- approximation algorithm with congestion c routes. demand pairs with congestion at most c. optimum number of pairs with no congestion allowed

14 EDPwC Congestion : constant approximation [Raghavan, Thompson 87] -approximation with congestion c [Azar, Regev 01], [Baveja, Srinivasan 00], [Kolliopoulos, Stein 04] polylog(n)-approximation with congestion poly(log log n) [Andrews 10] Today: polylog(k)-approximation with congestion 14. -hardness for any c [Andrews, C, Guruswami, Khanna, Talwar, Zhang 10]

15 Edge Disjoint Paths (EDP) Route maximum number of pairs on edge-disjoint paths -approximation matching integrality gap -hardness Congestion Minimization Route all pairs; minimize congestion -approximation -hardness EDP with Congestion (EDPwC) polylog(k)-approximation with congestion 14 -hardness with congestion c

16 Well-Linkedness [Robertson,Seymour], [Chekuri, Khanna, Shepherd], [Raecke]

17 Well-Linkedness Graph G is -well-linked for the set T of terminals, iff for any partition (A,B) of V(G),

18 Well-Linkedness out(S) Set S is -well-linked iff for any partition (A,B) of S, NormallyAny matching on the edges of out(S) can be fractionally routed inside S with congestion

19 Pre-Processing Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). Theorem [Chekuri, Khanna Shepherd 04] Can efficiently partition G into disjoint subgraphs G 1,…, G r, such that: For each induced sub-problem G i the terminals are well-linked Total fractional solution value for all induced sub-problems is Can assume w.l.o.g. that G is well-linked for the terminals

20 1.Embed an expander on a subset of terminals into G. – expander vertices terminals – expander edges paths in G 2.Route a subset of the demand pairs in the expander High-Level Plan [CKS 04] Embedding congestion: max load on any edge of G Crossbar

21 Goal Embed an expander over a subset of terminals into G. Include polylog(k)-fraction of the terminals Constant congestion

22 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!

23 Embedding Expander into Graph

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

25 Solution? Idea [Rao Zhou 06]: Split G into graphs G 1,…,G h – V(G i )=V(G) for all i – Every edge of G belongs to at most one G i – Each G i well-linked for the terminals – h=O(log 2 k) Run the cut-matching game. Use G i to route flow in iteration i. Problem: Can only do it if min-cut in G is Ω(log 5 n) [Andrews 10] adapted this to general graphs, with congestion poly(log log n)

26 Getting a Constant Congestion

27 Input: Graph G, source-sink pairs (s 1,t 1 ),…,(s k,t k ). G is well-linked for the terminals. Goal: Route OPT/polylog(k) demand pairs with constant congestion. Starting Point

28 Embedding an Expander into G Expander vertex connected component in G containing the terminal Expander edge path connecting some pair of vertices in the two components An edge of G may only belong to a constant number of the components/paths.

29 Embedding an Expander into G Routing on vertex-disjoint paths in X gives a good routing in G!

30 Expander vertex connected component in G containing the terminal Expander edge path connecting some pair of vertices in the two components An edge of G may only belong to a constant number of the components/paths. Embedding an Expander into G

31 Families of Good Vertex Sets

32 Good Vertex Subset S is a good vertex subset iff: S contains no terminals S is well-linked There are k/polylog k paths connecting out(S) to the terminals, with congestion polylog k.

33 Family of Good Vertex Subsets Ω(log 2 k) disjoint good vertex subsets. Each subset can send k/(polylog k) flow units to the terminals total congestion polylog k

34 Rest of the proof 1.We can find a good family of subsets. 2.Given a good family of subsets, we can embed an expander into G.

35 Rest of the proof 1.We can find a good family of subsets. 2.Given a good family of subsets, we can embed an expander into G.

36

37 Want: k/polylog k trees every edge of G participates in a constant number of trees Each tree T i spans a distinct terminal t i and a distinct edge e ij in out(S j ) for each j.

38 Want: k/polylog k trees every edge of G participates in a constant number of trees Each tree T i spans a distinct terminal t i and a distinct edge e ij in out(S j ) for each j. Edge e ij is viewed as a copy of t i for set S j.

39

40 Embedding an Expander

41 Expander vertex the tree spanning the terminal Expander edges: via the cut-matching game of [KRV]

42 Embedding an Expander

43 After O(log 2 k) iterations, we obtain an expander embedded into G.…

44 - well-linked Grouping Technique [CKS] is very well-linked Any partition of into equal-sized subsets can be integrally routed with congestion selected edges

45 Embedding an Expander After O(log 2 k) iterations, we obtain an expander embedded into G.…

46 Rest of the proof 1.We can find a good family of subsets. 2.Given a good family of subsets, we can embed an expander into G.

47 Rest of the proof 1.We can find a good family of subsets. 2.Given a good family of subsets, we can embed an expander into G.

48 Contracted Graphs contract Only contract clusters C where C is well-linked Does not contain terminals |out(C)|

49 Finding a Good Vertex Subset Start with G. In every iteration: – either find a good vertex subset – or find a good contracted graph with fewer edges

50 Iteration Description |E(A)||out(A)|/4 uncontract

51 Iteration Description well-linked decomposition |E(A)||out(A)|/4 Well-linked Decomposition [Chekuri, Khanna, Shepherd], [Raecke] New clusters are well-linked …

52 Iteration Description well-linked decomposition contract now |E(A)|<<|out(A)| Problem: for some cluster C, |out(C)| may be too large |E(A)||out(A)|/4

53 Iteration Description C is a good cluster? Well-linked C

54 Iteration Description C C is a good cluster? Well-linked Can route k/polylog(k) flow units to the terminals? yes no C is a good set! A small cut separates C from the terminals

55 Iteration Description uncontract well-linked decomposition contract good contracted graph with fewer edges!

56 Finding a Good Vertex Subset Random subset A of vertices Uncontract + Well-linked decomposition All clusters have small out- degree? Good vertex subset? yes smaller contracted graph yes done! no smaller contracted graph uncontract + WLD+contract

57 Algorithm for EDPwC Find a good family of vertex subsets Embed an expander into G Find vertex-disjoint routing on the expander Transform into routing in G

58 Summary We obtain a polylog(k)-approximation for EDPwC with congestion 14. Smaller congestion? Congestion minimization? Thank you!


Download ppt "Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago."

Similar presentations


Ads by Google