Presentation is loading. Please wait.

Presentation is loading. Please wait.

New algorithms for Disjoint Paths and Routing Problems

Similar presentations


Presentation on theme: "New algorithms for Disjoint Paths and Routing Problems"— Presentation transcript:

1 New algorithms for Disjoint Paths and Routing Problems
Chandra Chekuri Dept. of Computer Science Univ. of Illinois (UIUC)

2 Menger’s Theorem Theorem: The maximum number of s-t edge-disjoint paths in a graph G=(V,E) is equal to minimum number of edges whose removal disconnects s from t. s t

3 Menger’s Theorem Theorem: The maximum number of s-t edge-disjoint paths in a graph G=(V,E) is equal to minimum number of edges whose removal disconnects s from t. s t

4 Max-Flow Min-Cut Theorem
[Ford-Fulkerson] Theorem: The maximum s-t flow in an edge-capacitated graph G=(V,E) is equal to minimum s-t cut. If capacities are integer valued then max fractional flow is equal to max integer flow.

5 Computational view difficult to compute directly max integer flow =
max frac flow = min cut “easy” to compute

6 Multi-commodity Setting
Several pairs: s1t1, s2t2,..., sktk s4 t3 s3 t4 s2 t1 s1 t2

7 Multi-commodity Setting
Several pairs: s1t1, s2t2,..., sktk Can all pairs be connected via edge-disjoint paths? s4 t3 s3 t4 s2 t1 s1 t2

8 Multi-commodity Setting
Several pairs: s1t1, s2t2,..., sktk Can all pairs be connected via edge-disjoint paths? Maximize number of pairs that can be connected s4 t3 s3 t4 s2 t1 s1 t2

9 Maximum Edge Disjoint Paths Prob
Input: Graph G(V,E), node pairs s1t1, s2t2, ..., sktk Goal: Route a maximum # of si-ti pairs using edge-disjoint paths s4 t3 s3 t4 s2 t1 s1 t2

10 Maximum Edge Disjoint Paths Prob
Input: Graph G(V,E), node pairs s1t1, s2t2, ..., sktk Goal: Route a maximum # of si-ti pairs using edge-disjoint paths s4 t3 s3 t4 s2 t1 s1 t2

11 Motivation Basic problem in combinatorial optimization
Applications to VLSI, network design and routing, resource allocation & related areas Related to significant theoretical advances Graph minor work of Robertson & Seymour Randomized rounding of Raghavan-Thompson Routing/admission control algorithms I hope the short introduction with an important application and special cases has convinced you that these routing problems are of much interest. These multicommodity flow problems are of fundamental importance in combinatorial optimization. They have numerous applications ... In addition the study of these problems has led to many theoretical advances. I have picked a few for illustration.

12 Computational complexity of MEDP
Directed graphs: 2-pair problem is NP-Complete [Fortune-Hopcroft-Wylie’80] Undirected graphs: for any fixed constant k, there is a polynomial time algorithm [Robertson-Seymour’88] NP-hard if k is part of input

13 Approximation Is there a good approximation algorithm?
polynomial time algorithm for every instance I returns a solution of value at least OPT(I)/ where  is approx ratio How useful is the flow relaxation? What is its integrality gap?

14 Current knowledge If P  NP, problem is hard to approximate to within polynomial factors in directed graphs In undirected graphs, problem is quite open upper bound - O(n1/2) [C-Khanna-Shepherd’06] lower bound - (log1/2- n) [Andrews etal’06] Main approach is via flow relaxation

15 Current knowledge If P  NP, problem is hard to approximate to within polynomial factors in directed graphs In undirected graphs, problem is quite open upper bound - O(n1/2) [C-Khanna-Shepherd’06] lower bound - (log1/2- n) [Andrews etal’06] Main approach is via flow relaxation Rest of talk: focus on undirected graphs

16 Flow relaxation For each pair siti allow fractional flow xi 2 [0,1]
Flow for each pair can use multiple paths Total flow for all pairs on each edge e is · 1 Total fractional flow = i xi Relaxation can be solved in polynomial time using linear programming (faster approximate methods also known)

17 W(n1/2) integrality gap [GVY 93]
Example tk tk-1 ti t3 W(n1/2) integrality gap [GVY 93] t2 t1 sk sk-1 si s3 s2 s1 max integer flow = 1, max fractional flow = k/2

18 Overcoming integrality gap
Two approaches: Allow some small congestion c up to c paths can use an edge

19 Overcoming integrality gap
Two approaches: Allow some small congestion c up to c paths can use an edge c=2 is known as half-integer flow path problem All-or-nothing flow problem siti is routed if one unit of flow is sent for it (can use multiple paths) [C.-Mydlarz-Shepherd’03]

20 Example s1 s2 s1 1/2 s2 1/2 1/2 t2 t1 t2 t1 1/2

21 Prior work on approximation
Greedy algorithms or randomized rounding of flow polynomial approximation ratios in general graphs. O(n1/c) with congestion c better bounds in various special graphs: trees, rings, grids, graphs with high expansion No techniques to take advantage of relaxations: congestion or all-or-nothing flow

22 New framework [C-Khanna-Shepherd]
New framework to understand flow relaxation Framework allows near-optimal approximation algorithms for planar graphs and several other results Flow based relaxation is much better than it appears New connections, insights, and questions

23 Some results OPT: optimum value of the flow relaxation
Theorem: In planar graphs can route (OPT/log n) pairs with c=2 for both edge and node disjoint problems can route (OPT) pairs with c=4 Theorem: In any graph (OPT/log2 n) pairs can be routed in all-or-nothing flow problem.

24 Flows, Cuts, and Integer Flows
Multicommodity: several pairs NP-hard Polytime via LP NP-hard max integer flow max frac flow min multicut Before I proceed with more details on how to use the LP relaxation let me digress a bit and give some high level overview of some of the difficulty in solving EDP. What we want to compute is really the maximum integer multicommodity flow. As we saw this is NP-hard. What we can compute in polynomial time is the fractional multicommodity flow. Many of you have heard of the single commodity maxflow mincut theorem. It says that if we are interested in a single pair s-t then

25 Flows, Cuts, and Integer Flows
Multicommodity: several pairs NP-hard Polytime via LP NP-hard max integer flow max frac flow min multicut ?? Before I proceed with more details on how to use the LP relaxation let me digress a bit and give some high level overview of some of the difficulty in solving EDP. What we want to compute is really the maximum integer multicommodity flow. As we saw this is NP-hard. What we can compute in polynomial time is the fractional multicommodity flow. Many of you have heard of the single commodity maxflow mincut theorem. It says that if we are interested in a single pair s-t then Flow-cut gap thms [LR88 ...]

26 Flows, Cuts, and Integer Flows
Multicommodity: several pairs NP-hard Polytime via LP NP-hard max integer flow max frac flow min multicut ?? Before I proceed with more details on how to use the LP relaxation let me digress a bit and give some high level overview of some of the difficulty in solving EDP. What we want to compute is really the maximum integer multicommodity flow. As we saw this is NP-hard. What we can compute in polynomial time is the fractional multicommodity flow. Many of you have heard of the single commodity maxflow mincut theorem. It says that if we are interested in a single pair s-t then Flow-cut gap thms [LR88 ...] graph theory

27 Part II: Details

28 New algorithms for routing
Compute maximum fractional flow Use fractional flow solution to decompose input instance into a collection of well-linked instances. Well-linked instances have nice properties – exploit them to route Now to the algorithm. In fact this is the algorithm for all the routing problems. First we solve the LP relaxation. We use the information from the LP relaxation to decompose the problem into a collection of easier instances that we call well-linked instances. In this conversion we lose only a poly-log factor in teh value of the solution. These well-linked instances have nice properties and we will be exploiting them. Both steps 2 and 3 require time and hence I won’t be able to explain all this in detail. Instead here is what I will do ...

29 Some simplifications Input: undir graph G=(V,E) and pairs s1t1,..., sktk X = {s1, t1, s2, t2, ..., sk, tk} -- terminals Assumption: wlog each terminal in only one pair Instance: (G, X, M) where M is matching on X

30 Well-linked Set Subset X is well-linked in G if for every partition (S,V-S) , # of edges cut is at least # of X vertices in smaller side S V - S Ok, this is a key definition and everything else that follows relies on this. We call a susbet of vertices X well-linked if the following property is true. For every cut that separates the graph into two pieces S and V-S the number of edges between the pieces should be at least the number of vertices of X in the smaller side. This is easier to see via a figure and example. Consider this separation of G into S and V-S. The vertices in red are those in X. There are 3 in S and 6 in V-S. There should be at least 3 edges between the two sides. for all S ½ V with |S Å X| · |X|/2, |d(S)| ¸ |S Å X|

31 Well-linked instance of EDP
Input instance: (G, X, M) X = {s1, t1, s2, t2, ..., sk, tk} – terminal set Instance is well-linked if X is well-linked in G Now that we know what a well-linked set is, let me say what a well-linked instance of EDP is. An EDP instances consists of three inputs G, the set X of terminals and a pairing M on X. We say that this instance is a well-linked instance if in addition X taken as a set is well-linked.

32 Examples s1 t1 s2 t2 Not a well-linked instance s3 t3 s4 t4 s1 t1 s2
To make this concrete let me consider two examples. The first is not well-linked while the second is well-linked. To see why the first is not a well-linked instance consider the following cut. A well-linked instance

33 New algorithms for routing
Compute maximum fractional flow Use fractional flow solution to decompose input instance into a collection of well-linked instances. Well-linked instances have nice properties – exploit them to route Now to the algorithm. In fact this is the algorithm for all the routing problems. First we solve the LP relaxation. We use the information from the LP relaxation to decompose the problem into a collection of easier instances that we call well-linked instances. In this conversion we lose only a poly-log factor in teh value of the solution. These well-linked instances have nice properties and we will be exploiting them. Both steps 2 and 3 require time and hence I won’t be able to explain all this in detail. Instead here is what I will do ...

34 Advantage of well-linkedness
LP value does not depend on input matching M s1 t1 s2 t2 s3 t3 s4 t4 So now we understand what a well-linked instance is, let us see why it helps. At an intuitive level we are asking for a very strong property. Even though we are interested in routing s_i to t_i we are asking that the terminal set X as a whole cannot be separated easily. The advantage we gain is the following symmetry condition. If X is well-linked then the precise pairing M does not matter. In other words ... Theorem: If X is well-linked, then for any matching on X, LP value is W(|X|/log |X|). For planar G, LP value is W(|X|)

35 Crossbars H=(V,E) is a cross-bar with respect to an interface I µ V if any matching on I can be routed using edge-disjoint paths Ex: a complete graph is a cross-bar with I=V H Now I will introduce a new notion, that of a cross bar. We say that a graph is a cross bar with an interface I if for every matching on I we can connect the matching by disjoint paths. Essentially the name cross bar should invoke a switch. What does a switch do? Typically we think of input output switches but here I am thinking of a symmetric switch. A simple example of a crossbar is a complete graph.

36 Grids as crossbars First row is interface s1 s3 s2 s4 s5 t1 t2 t3 t4
Now for a more interesting example of a crossbar in planar graphs. A grid is a crossbar with the first row as n interface. Lets see an example. Suppose we have the following pairs that we want to route. One row per each pair. First row is interface s1 s3 s2 s4 s5 t1 t2 t3 t4 t5

37 Grids in Planar Graphs Grid minor is crossbar with congestion 2
Theorem[RST94]: If G is planar graph with treewidth h, then G has a grid minor of size W(h) as a subgraph. v Gv Gv Here is a beautiful theorem of RST. They give a condition under which a planar graph has a large grid. In fact they say that G has a large grid minor if G has large treewidth. First what is a grid minor? A grid minor is a grid but each vertex of the grid corresponds to a some connected subgraph in the original graph. It is not critical to go into details here but think of a grid minor as basically a grid. Grid minor is crossbar with congestion 2

38 Back to Well-linked sets
Claim: X is well-linked implies treewidth = W(|X|) X well-linked ) G has grid minor H of size W(|X|) Q: how do we route M = (s1t1, ..., sktk) using H ? What is a treewidth? Treewidth is a parameter of a graph. The important thing that we need to know is that if X is a well-linked set then the treewidth is large. Then using the RST theorem we can conclude that the graph has a large grid. Now the question is how do we use the grid to route our pairs

39 Routing pairs in X using H
Route X to I and use H for pairing up Well the picture should say it all! Pause. Any questions?? X

40 Several technical issues
What if X cannot reach H? H is smaller than X, so can pairs reach H? Can X reach H without using edges of H? Can H be found in polynomial time? The picture is nice but it is too simplistic. There are several technical issues to consider. All of them can be solved even though they are all non-trivial. But the overall scheme should be clear now. If X is well-linked there is a large grid minor and you can route using the grid minor.

41 General Graphs? Grid-theorem extends to graphs that exclude a fixed minor [RS, DHK’05] For general graphs, need to prove following: Conjecture: If G has treewidth h then it has an approximate crossbar of size (h/polylog(n)) Crossbar , LP relaxation is good Why can’t we use this approach in general graphs? First, the result extends to any graph if you can prove the following fact – large well-linked set implies that there is a large cross bar. We understand this in planar graphs and near planar graphs but we don’t understand it in general graphs. I would like to point out that if you prove that the LP is good then you will be proving the existence of a good crossbar and hence

42 Reduction to Well-linked case
Given G and k pairs s1t1, s2t2, ... sktk X = {s1,t1, s2, t2, ..., sk, tk} We know how to solve problem if X is well-linked Q: can we reduce general case to well-linked case? So we have understood that if we have a well-linked instance then we can solve the problem in planar graphs. How do we get to a well-linked instance?

43 Decomposition G G1 G2 Gr Xi is well-linked in Gi åi |Xi| ¸ OPT/b
Here is a decomposition scheme. We start with a instance with G and X. We break up the graph into pieces. Each piece has some pairs. We want the pairs to be well-linked. Some pairs might be lost or thrown away in the process. We want the total remaining pairs to be within some factor of the optimum solution to the problem. G1 G2 Gr Xi is well-linked in Gi åi |Xi| ¸ OPT/b

44 Example s1 t1 s1 t1 s2 t2 s2 t2 s3 t3 s4 t4 s3 t3 s4 t4
As an example consider the trivial example I used earlier. The decomposition here is obvious. In general we won’t be able to do this so cleanly. t4 s3 t3 s4 t4

45 Decomposition  = O(log k ) where  = worst gap between flow and cut
 = O(log k) using [Leighton-Rao’88]  = O(1) for planar graphs [Klein-Plotkin-Rao’93] Decomposition based on LP solution Recursive algorithm using separator algorithms Need to work with approximate and weighted notions of well-linked sets What can we achieve? How do we do the decomposition?

46 Decomposition Algorithm
Weighted version of well-linkedness each v 2 X has a weight weight determined by LP solution weight of si and ti equal to xi the flow in LP soln X is well-linked implies no sparse cut If sparse cut exists, break the graph into two Recurse on each piece Final pieces determine the decomposition

47 OS instance Planar graph G, all terminals on single (outer) face G
Okamura-Seymour Theorem: If all terminals lie on a single face of a planar graph then the cut-condition implies a half-integral flow. G

48 Decomposition into OS instances
Given instance (G,X,M) on planar graph G, algorithm to decompose into OS-type instances with only a constant factor loss in value Contrast to well-linked decomposition that loses a log n factor Using OS-decomposition and several other ideas, can obtain O(1) approx using c=4

49 Conclusions New approach to disjoint paths and routing problems in undirected graphs Interesting connections including new proofs of flow-cut gap results via the “primal” method Several open problems Crossbar conjecture: a new question in graph theory Node-disjoint paths in planar graphs - O(1) approx with c = O(1)? Congestion minimization in planar graphs. O(1) approximation?

50 Thanks!


Download ppt "New algorithms for Disjoint Paths and Routing Problems"

Similar presentations


Ads by Google