new algorithms for disjoint paths and routing problems
DESCRIPTION
New algorithms for Disjoint Paths and Routing Problems. Chandra Chekuri Dept. of Computer Science Univ. of Illinois (UIUC). Menger’s Theorem. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/1.jpg)
New algorithms for Disjoint Paths and Routing Problems
Chandra ChekuriDept. of Computer Science
Univ. of Illinois (UIUC)
![Page 2: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/2.jpg)
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
![Page 3: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/3.jpg)
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
![Page 4: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/4.jpg)
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.
![Page 5: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/5.jpg)
Computational view
max integer flow
max frac flow= = min cut
“easy” to compute
difficult to compute directly
![Page 6: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/6.jpg)
Multi-commodity Setting
Several pairs: s1t1, s2t2,..., sktk
s1
s2
s3
t1
t2
t3s4t4
![Page 7: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/7.jpg)
Multi-commodity Setting
Several pairs: s1t1, s2t2,..., sktk
Can all pairs be connected via edge-disjoint paths?
s1
s2
s3
t1
t2
t3s4t4
![Page 8: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/8.jpg)
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
s1
s2
s3
t1
t2
t3s4t4
![Page 9: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/9.jpg)
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
s1
s2
s3
t1
t2
t3s4t4
![Page 10: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/10.jpg)
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
s1
s2
s3
t1
t2
t3s4t4
![Page 11: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/11.jpg)
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
![Page 12: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/12.jpg)
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
![Page 13: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/13.jpg)
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?
![Page 14: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/14.jpg)
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
![Page 15: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/15.jpg)
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
![Page 16: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/16.jpg)
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 · 1Total fractional flow = i xi
Relaxation can be solved in polynomial time using linear programming (faster approximate methods also known)
![Page 17: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/17.jpg)
Example
s1s2si s3sk-1sk
t1
tk-1
tk
t3
t2
ti
(n1/2) integrality
gap [GVY 93]
max integer flow = 1, max fractional flow = k/2
![Page 18: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/18.jpg)
Overcoming integrality gap
Two approaches: Allow some small congestion c
up to c paths can use an edge
![Page 19: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/19.jpg)
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]
![Page 20: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/20.jpg)
Example
s1 s2
t1t2
s1
s2
t1t2
1/2
1/2
1/2
1/2
![Page 21: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/21.jpg)
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
![Page 22: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/22.jpg)
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
![Page 23: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/23.jpg)
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.
![Page 24: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/24.jpg)
Flows, Cuts, and Integer Flows
max integer flow
max frac flow min multicut · ·
NP-hard NP-hardPolytime via LP
Multicommodity: several pairs
![Page 25: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/25.jpg)
Flows, Cuts, and Integer Flows
max integer flow
max frac flow min multicut · ·
NP-hard NP-hard
Flow-cut gap thms [LR88 ...]??
Multicommodity: several pairs
Polytime via LP
![Page 26: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/26.jpg)
Flows, Cuts, and Integer Flows
max integer flow
max frac flow min multicut · ·
NP-hard NP-hard
Flow-cut gap thms [LR88 ...]??
graph theory
Multicommodity: several pairs
Polytime via LP
![Page 27: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/27.jpg)
Part II: Details
![Page 28: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/28.jpg)
New algorithms for routing
1. Compute maximum fractional flow
2. Use fractional flow solution to decompose input instance into a collection of well-linked instances.
3. Well-linked instances have nice properties – exploit them to route
![Page 29: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/29.jpg)
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
![Page 30: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/30.jpg)
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
for all S ½ V with |S Å X| · |X|/2, |(S)| ¸ |S Å X|
![Page 31: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/31.jpg)
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
![Page 32: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/32.jpg)
Exampless1 t1s2 t2
s3 t3s4 t4
Not a well-linked instance
s1 t1s2 t2
s3 t3s4 t4
A well-linked instance
![Page 33: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/33.jpg)
New algorithms for routing
1. Compute maximum fractional flow
2. Use fractional flow solution to decompose input instance into a collection of well-linked instances.
3. Well-linked instances have nice properties – exploit them to route
![Page 34: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/34.jpg)
Advantage of well-linkedness
LP value does not depend on input matching M
s1 t1s2 t2
s3 t3s4 t4
Theorem: If X is well-linked, then for any matching on X, LP value is (|X|/log |X|). For planar G, LP value is (|X|)
![Page 35: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/35.jpg)
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
Crossbars
H
![Page 36: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/36.jpg)
Grids as crossbars
s1 s3s2 s4 s5t1 t2 t3 t4 t5
First row is interface
![Page 37: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/37.jpg)
Grids in Planar Graphs
Theorem[RST94]: If G is planar graph with treewidth h, then G has a grid minor of size (h) as a subgraph.
v Gv
Grid minor is crossbar with congestion 2
Gv
![Page 38: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/38.jpg)
Back to Well-linked sets
Claim: X is well-linked implies treewidth = (|X|)
X well-linked ) G has grid minor H of size (|X|)
Q: how do we route M = (s1t1, ..., sktk) using H ?
![Page 39: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/39.jpg)
Routing pairs in X using H
X
H
Route X to I and use H for pairing up
![Page 40: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/40.jpg)
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?
![Page 41: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/41.jpg)
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
![Page 42: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/42.jpg)
Reduction to Well-linked case
Given G and k pairs s1t1, s2t2, ... sktkX = {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?
![Page 43: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/43.jpg)
DecompositionG
G1 G2 Gr
Xi is well-linked in Gi
i |Xi| ¸ OPT/
![Page 44: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/44.jpg)
Example
s1 t1s2 t2
s3 t3s4 t4
s1 t1
s2 t2
s3 t3
s4 t4
![Page 45: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/45.jpg)
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 solutionRecursive algorithm using separator algorithmsNeed to work with approximate and weighted
notions of well-linked sets
![Page 46: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/46.jpg)
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
![Page 47: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/47.jpg)
OS instance
Planar graph G, all terminals on single (outer) face
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
![Page 48: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/48.jpg)
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
![Page 49: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/49.jpg)
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?
![Page 50: New algorithms for Disjoint Paths and Routing Problems](https://reader036.vdocument.in/reader036/viewer/2022062521/56816836550346895dddf113/html5/thumbnails/50.jpg)
Thanks!