Presentation is loading. Please wait.

Presentation is loading. Please wait.

All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews, Alcatel-Lucent Bell Labs Princeton Approximation Workshop June 15, 2011 Edge-Disjoint.

Similar presentations


Presentation on theme: "All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews, Alcatel-Lucent Bell Labs Princeton Approximation Workshop June 15, 2011 Edge-Disjoint."— Presentation transcript:

1 All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews, Alcatel-Lucent Bell Labs Princeton Approximation Workshop June 15, 2011 Edge-Disjoint Paths with Congestion

2 Edge Disjoint Paths (EDP) This talk –Routing on Edge-Disjoint Paths –Useful primitive for many industrial routing problems

3 Edge Disjoint Paths (EDP) Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); Output –A subset of demands routed on edge-disjoint paths; –Maximize such a subset s t t s OPT = 1

4 Edge Disjoint Paths (EDP) Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); Output –A subset of demands routed on edge-disjoint paths; –Maximize such a subset s t t s OPT = 1 NP-hard problem One of the first!! (Karp’s list)

5 Congestion Minimization Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); Output –Route all demands; –Minimize max number of demand routes per edge. s t t s OPT = 2

6 Edge Disjoint Paths with Congestion (EDPwC) Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); –Congestion parameter c; Output –A subset of demands routed such that max congestion  c –If ALG can route X/  demands with congestion c whenever OPT can route X demands with congestion 1 then ALG is an  -approx with congestion c s t t s

7 Known Results Undirected Graphs –EDP solvable in polytime if the number of demands is constant –Robertson-Seymour Directed Graphs –NP-hard even for 2 demands –Fortune-Hopcroft-Wyllie

8 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

9 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log 0.5-  N - approx with congestion 1 –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

10 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No 1 - approx with congestion (log log N) 1-  –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

11 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

12 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

13 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

14 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion? This talk

15 Other Known Results Planar Graphs –O(1) - approx with congestion 4 –Chekuri-Khanna-Shepherd All-or-Nothing Flow (fractional paths allowed) –polylog(N) - approx with congestion 1 –Chekuri-Khanna-Shepherd

16 Known Results (Directed Graphs) Positive –N 1/c - approx with congestion c –Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein Negative –No N Ω(1/c) - approx with congestion c –A-Zhang, Chuzhoy-Guruswami-Khanna-Talwar

17 EDPwC in Graphs with Short Paths Fractional routing –If we allow fractional paths, problem is a linear program Known result #1 –If fractional path length is polylog(N), can route with congestion loglog N –Why? –Use randomized rounding. Each edge is dependent on polylog(N) other edges –Apply Lovasz Local Lemma s t t s 1/2

18 Graph Expansion Out-degree –Let out(S) = set of edges with one endpoint in S –Abuse: out(S) = | out(S) | Expander –Graph G is an expander if out(S) / |S| is large whenever S is small

19 EDPwC in Expanders Known result #2 –EDP has polylog(N)-approx in expanders –e.g. Broder-Frieze-Upfal, Kolman-Scheideler –Even better, can connect polylog(N) fraction of ANY set of terminals using disjoint paths Why? –Using random walks, can connect any pair of terminals with paths of polylog(N) length –Produces good fractional solution –Round fractional solution via Lovasz Local Lemma

20 Rao-Zhou Known result #3 –(Rao-Zhou) polylog(N) –approx on disjoint paths if min-cut in graph has size polylog(N)

21 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

22 Hardness of EDPwC Hardness Idea 1 –If routing is fixed then there is reduction from Max Independent Set

23 Hardness of EDPwC Hardness Idea 2 –Embed hardness construction into expander (high-girth!) –Terminals are close together (distance log 1/2 N ) –Each demand has only 1 short ( canonical ) path –Low congestion soln must use canonical paths –Routing component is removed –Use previous reduction from Max-Indpt-Set –Use product of regular expander (e.g. random graph) with Max-Indpt-Set example

24 Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

25 Rao-Zhou Known result #3 –(Rao-Zhou) polylog(N) –approx on disjoint paths if min-cut in graph has size polylog(N)

26 Rao-Zhou Analysis Why? –(Khandekar-Rao-Vazirani) Can build expander on | T | terminals using polylog( | T | ) bipartite matchings

27 Rao-Zhou Analysis Application to EDPwC –Use max-flows to find matchings between terminals –How to bound congestion from max-flows ? (Max flows exist due to linkedness results of Chekuri-Khanna-Shepherd)

28 Partitioning –Randomly partition edges into polylog( | T | ) pieces –Solve max-flow in each piece –How do we know this is feasible? p-skeletons –(Karger sparsification) If min-cut in graph is large, all cuts are preserved in each component up to polylog( | T | ) factors –Can connect “enough” terminals using max-flow-min-cut thm Rao-Zhou Analysis

29 Build expanders –Use paths created in the previous phase to build expander on the terminals Route original demands –Now use standard polylog(N)-approx for routing in expanders Rao-Zhou Analysis

30 How to Attack General Case Obviously wrong approach –Solve EDPwC in expanders –Prove that every graph is an expander

31 So what else can we try? Divide and conquer? –Not all graphs have good expansion… –Can we partition any graph into subgraphs with good expansion? –Yes! –Use Räcke decomposition result expander

32 Räcke Decompositions Introduced for oblivious routing –w l (S) = # edges in S between two level l clusters –(Räcke) Can create log N levels s.t. for all small S in level l cluster U cap(S, U - S) ≥ w l +1 (S) / log N

33 Räcke Decompositions Introduced for oblivious routing –w l (S) = # edges in S between two level l clusters –(Räcke) Can create log N levels s.t. for all small S in level l cluster U cap(S, U - S) ≥ w l +1 (S) / log N Contract level l+1 clusters Get graph with good expansion

34 How to Attack General Case Different approach –Prove that every graph is an expander-of-expanders –Solve EDPwC in expanders-of-expanders ? Use Räcke decomposition result

35 Expanders-of-Expanders How to route in expander of expanders –Route recursively using expander routing? –Seems difficult –At each level we can route a 1/log N fraction of demands routed at higher level expander

36 Uniform Decomposition But do we need to recurse across all levels? –Suppose decomposition is uniform –For each cluster U either: –all subclusters S have out(S) ≤ log p N or –all subclusters S have out(S) ≥ log p N small large

37 Uniform Decomposition Critical clusters –Cluster U is critical if: –U is large –all subclusters S of U are small

38 Three Step Routing Step 1 –Shrink critical clusters to single nodes –All cuts are now large –Use Rao-Zhou

39 Three Step Routing Step 2 –Shrink small clusters to single nodes –Critical clusters now look like expanders –Route in critical clusters using expander routing

40 Three Step Routing Step 3 –Route across small clusters –Small clusters have polylog( N ) terminals –Using Rao-Zhou in small clusters gives poly( log log N ) congestion

41 Non-Uniform Result How can we handle non-uniform decompositions? –Basic idea: Ignore the non-uniform parts –…

42 Open Problems Can we lower congestion by going further down the Räcke hierarchy? Can we improve the hardness example via a hierarchical construction?

43 Three Step Routing Revisited Step 1 –Shrink critical clusters to single nodes –All cuts are now large –Use Rao-Zhou (incl Karger sparsification lemma) –i.e. partition edges in polylog(n) buckets using random sampling –All cuts are preserved (up to polylog(n) factors)

44 Three Step Routing Revisited Step 2 –Shrink small clusters to single nodes –Critical clusters now look like expanders –Route in critical clusters using expander routing

45 Three Step Routing Revisited Step 3 –Route across small clusters –Small clusters have polylog( N ) terminals –Using Rao-Zhou in small clusters gives poly( log log N ) congestion – But can we go further down the hierarchy to get better congestion?

46 Recursive Routing Small cluster routing –New defn for critical clusters based on poly(log log n) threshold –Randomly partition edges in poly(log log n) buckets –Problem!! - Could have poly(n) critical clusters Small cluster outdegree polylog(n) Outdegree poly( loglog(n)) New critical cluster

47 Hardness Revisited Could we improve hardness via a hierarchical example? –Original hardness result created on expander –Hardness for congestion cannot be larger than log (diam) = log log N

48 Hardness Revisited Could we improve hardness via a hierarchical example? –Original hardness result created on expander –Hardness for congestion cannot be larger than log (diam) = log log N –Can we improve hardness by considering “hierarchical expander” Expander

49 Hierarchical Decompositions What can uniform decompositions look like? Key parameters –  l = Outdegree of level l cluster –Number of subclusters of level l cluster –Diameter of level l cluster when all subclusters are contracted

50 Hierarchical Decompositions Square mesh –  l = Outdegree of level l cluster = 4 x 2 l –Number of subclusters of level l cluster = 4 –Diameter of level l cluster = 2

51 Hierarchical Decompositions Hierarchy of Expanders –Suppose we want unique short path at each level –  l = Outdegree of level l cluster = (  l-1 ) d+1 / d –Number of subclusters of level l cluster = (  l-1 ) d –Diameter of level l cluster = d –Polynomial relationship between outdegree and size of cluster –Shortest path between s and t remains ≤ log N Expander

52 Hierarchical Decompositions Can we have the following in any natural decomposition? Can we handle this situation if it does occur? Better sparsification result? Outdegree of level l cluster  l  l-1  l-2  l-3 :  2  1 Number of subclusters in level l cluster exp(  l ) exp(  l-1 ) exp(  l-2 ) exp(  l-3 ) : exp(  2 ) exp(  1 )

53 Hierarchical Decompositions For hard examples –If outdegree of cluster is small, doesn’t make sense for the cluster to be large –Either all terminals lie within the cluster –Or most of the cluster is not useful for routing –Can we formalize this notion? Small cluster outdegree polylog(n)

54 Thank you

55 Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees critical cluster

56 Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees Not an acceptable cluster

57 Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees

58 Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees

59 Non-Uniform Result How do we deal with nodes outside critical cluster? –Replace each node in tree by an expander

60 Non-Uniform Result How do we deal with nodes outside critical cluster? –Use expanders to route on tree using low congestion paths

61 Non-Uniform Result –Use paths to join up critical clusters –Key property #1: all tree nodes are gone –Key property #2: all cuts are preserved (more or less) Use analysis for uniform decompositions!!

62 Non-Uniform Result But what about general non-uniform decompositions? –H = nodes that aren’t in a critical cluster H critical cluster

63 Non-Uniform Result But what about general non-uniform decompositions? –H = nodes that aren’t in a critical cluster H

64 Non-Uniform Result –Use a Räcke lemma to find small clusters around outside of H –Let H’ be the subset of H that is not in any of these clusters –|out( H’ )| ≤ |out( H )| / 2 –Can do this at most log(N) times H H’

65 Non-Uniform Result –Repeat log N times –Use small clusters to grow paths of logarithmic length that connect up critical clusters H

66 critical cluster Non-Uniform Result –So now we have critical clusters joined by paths of logarithmic length (just as in the “tree” case) –We are done… H


Download ppt "All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews, Alcatel-Lucent Bell Labs Princeton Approximation Workshop June 15, 2011 Edge-Disjoint."

Similar presentations


Ads by Google