Title: Multicommodity flow, well-linked terminals and routing problems
1Multicommodity flow, well-linked terminals and
routing problems
- Chandra Chekuri
- Lucent Bell Labs
Joint work with Sanjeev Khanna and Bruce
Shepherd Mostly based on paper in STOC 05
2Routing Problems
- Input Graph G(V,E), node pairs s1t1, s2t2, ...,
sktk - Goal Route a maximum of si-ti pairs
- Route?
- EDP path for each pair, paths edge disjoint
- NDP paths are node disjoint
- AN-Flow flow of one unit per pair with edge/node
capacity equal to 1
3Disjoint paths vs An-Flow
4Setup
- Terminals X s1,t1,s2,t2,...,sk,tk
- each terminal occurs in exactly one pair, X
2k - Pairs matching M on X
- Instance (G,X,M)
- unit capacity graph
- Focus edge problems, EDP and An-flow.
-
5Multicommodity Flow Formulation (IP)
- P(i) set of paths between si and ti
- P P(1) P(2) ... P(k)
- f(p) 1 if flow on path p 2 P, 0 otherwise
- xi 1 if siti is routed, 0 otherwise
- max åi xi s.t
- xi åp 2 P(i) f(p) 1 i k
- åp e 2 p f(p) 1 e 2 E
- xi, f(p) 2 0,1
6Multicommodity Flow Formulation (LP)
- P(i) set of paths between si and ti
- P P(1) P(2) ... P(k)
- f(p) flow on path p 2 P
- xi amount of flow routed for siti
- max åi xi s.t
- xi åp 2 P(i) f(p) 1 i k
- åp e 2 p f(p) 1 e 2 E
- xi, f(p) 2 0,1
7Framework
- Start with an LP solution.
- Use LP solution to decompose the input instance
into a collection well-linked instances. - Use well-linkedness to route large fraction
8Outline
- Cut vs Flow well-linkedness
- Well-linked decomposition
- Multicommodity flow to well-linked decomp
- decomposition via cuts
- fractional well-linkedness to well-linkedness
- Conclusions
9Multicommodity Flows
- MC Flow instance
- capacitated graph G
- non-negative demand matrix d on V x V
- route dij flow for node pair ij
- Product MC Flow instance
- node weights p V ! R
- implicitly defines d with dij p(i)p(j) / p(V)
10Sparse Cuts and Multicomm. Flow
- Given a cut (S, V-S) in G and demand matrix d
- sparsity of S d(S) / d(S,V-S)
- MCflow for d is feasible in G implies sparsity 1
S
V - S
11Sparse Cuts and MC Flow
- MCflow for d is feasible in G implies sparsity
1 - d is feasible in G if sparsity W(log n)
- LR88,LLR94,AR94
- For product MC Flow in planar G, sparisty of W(1)
sufficient KPR93 - Flow-cut gap b(G) minimum sparsity reqd for
guaranteeing mc flow
12Cut-Well-linked Set
- Subset X is cut-well-linked in G if for every
partition (S,V-S) , of edges cut is at least
of X vertices in smaller side
for all S ½ V with S Å X X/2, d(S) S
Å X
13Flow-Well-linked Set
- Subset X is flow-well-linked in G if the
following multicommodity flow is feasible in G - for u,v in X, d(uv) 1/X
- product (uniform) multicommodity flow on X
- p(u) 1 if u 2 X
- 0 otherwise
14Cut vs Flow well-linked
- X flow-linked ) X is cut-linked
- X cut-linked ) X flow-linked with congestion b(G)
- b(G) worst case flow-cut gap for product
multicommodity instances in G
15Weighted versions
- p X ! R weight function on X
- p(v) weight of v in X
- p-cut-linked for all S ½ V with p(S Å X)
p(X)/2, d(S) p(S Å X) - p-flow-linked multicommodity flow instance with
d(uv) p(u) p(v) / p(X) is feasible in G
16Well-linked instance of EDP
- Input instance G, X, M
- X s1, t1, s2, t2, ..., sk, tk terminal set
- M matching on X
- (s1,t1), (s2,t2) ... (sk,tk)
- X is well-linked in G
17Well-linked instance weighted
- Input instance G, X, M
- X s1, t1, s2, t2, ..., sk, tk terminal set
- M matching on X
- (s1,t1), (s2,t2) ... (sk,tk)
- X is p-well-linked in G for some p X ! R
- Assume p(v) 1
18Examples
Not a well-linked instance
A well-linked instance
19Well-linked Decomposition
G, X, M
edge disjoint subgraphs
G1, X1, M1
G2, X2, M2
Gr, Xr, Mr
Mi ½ M Xi is well-linked in Gi
åi Xi OPT/a
20Example
s2
t2
s2
t2
s3
t3
s4
t4
s3
t3
s4
t4
21Well-linked Decomposition via Flow
G, X, M Flow f
G1, X1, M1
G2, X2, M2
Gr, Xr, Mr
Xi is pi-flow-well-linked in Gi
åi pi(Xi) f/a
22Decomposition via trees/Racke
- Simple decomposition for trees a O(1)
- Represent G as a tree (approximately) Racke03
- Done in CKS04
- Decomposition based on recursive cuts CKS05
- simple
- better ratio
- applies to node problems
23Trees
- Define p X ! R
- p(sj) p(tj) fj the flow in LP
- Suppose X is p/10-flow-well-linked done!
- Otherwise exists cut of sparsity less than 1/10
- Pick sparse cut (S,V-S) with S minimal
24Trees
ce lt p(S)/10
V - S
S
terminals in S are p-well-linked!
25Decomposition using Sparse Cuts
- Start with LP soln for given instance
- fj flow for pair sjtj assume flow decomposition
- f åj fj total flow in LP
- define p X ! R
- p(sj) p(tj) fj
26Decomposition Algorithm
- If X is p / 10 b(G) log k-flow-linked STOP
- Else
- Find a (approx) sparse cut (S,V-S) wrt p in G
- Remove flow on edges of dG(S)
- G1 GS, G2 GV-S
- Recurse on G1, G2 with remaining flow
27Analysis
- Remaining graphs at end of recursion
- (G1,X1,p1) , (G2,X2,p2) , ...., (Gh, Xh, ph)
- pi is the remaining flow for Xi
- Xi is pi /10 b(G) log k flow-linked in G_i
- åi pi(Xi) Original flow - edges cut
28Bounding the number of edges cut
- X is not p / 10 b(G) log k flow-linked
-
- ) dG(S) p(S) / 10 log k
29Analysis cont
- Theorem total number of edge cut is f/2
- T(x) max of edges cut if started with flow x
- T(f) T(f1) T(f2) f1 / 10 log k
- For f k, T(f) f/2
30Analysis contd
- åi pi (Xi) f/2
- Xi is pi/10 b(G) log k flow-well-linked
31Fractional to integer well-linked
- Theorem
- G, X, M input instance. X is p-flow-well-linked.
- Then G, X, M s.t
- M ½ M,
- X is flow-well-linked
- X W(p(X))
32Edge case spanning tree clustering
- T spanning tree of G, rooted at r
- Tv subtree rooted at v
- Can assume maximum degree of T is 4
- 1. Find deepest node u s.t p(Tu) 1
- Note p(Tu) 5
- 2. Remove Tu from T
- 3. Continue until p(T) 1
33Spanning tree clustering
0.3
0.6
0.4
0.2
0.4
0.3
0.8
0.4
0.5
0.7
0.1
34Spanning tree clustering
0.3
0.6
0.3
0.6
0.4
0.4
0.2
0.2
0.4
0.4
0.3
0.8
0.4
0.5
0.7
0.1
0.3
0.1
35Tree clustering
- T1, T2, ..., Th clusters
- Claim h W(p(X))
- Y is a set of representatives if Y Å Ti 1 for
all i - Lemma Y is ½ - flow-well-linked
36Representatives are well-linked
0.3
0.6
0.4
0.2
0.4
0.3
0.1
37Representatives
- Need representatives Y such that
- Y ½ Xi
- Y induces a large submatching of Mi
- Simple greedy scheme works
- pick si and ti
- remove all terminals in trees of si and ti
- continue
38Node case
- Well-linked decomposition same as for edge case
- Use node-separators instead of edge separators
- Clustering is not straighforward (cant assume
degree bound) - In CKS05 weaker bounds than for edge case
- Recent work same as for edge case. More
technically involved
39Lower Bounds
- Well-linked decomposition has to lose W(log1/2 n)
factor - Implicitly from integrality gap results for
all-or-nothing flow problem Chuzhoy-Khanna05 - Conjecture W(log n) factor lower bound
40Flows, Cuts, and Integer Flows
NP-hard
NP-hard
Solvable
max integer flow
max frac flow
min multicut
graph theory
41Weaker decomp for planar graphs
- Well-linked decomp yields O(log n) approx for
planar graph EDP (congestion 2) - Recent result for planar EDP O(1) approx with
congestion 4 CKS 05 - Weaker decomp based on planar graph properties.
- Q well-linked in planar loses W(log n) ?
42Open problems
- Improve upper/lower bounds on well-linked
decomposition. Q(log n)? - Approx algorithms for EDP/NDP in general graphs
with congestion O(1) - essentially reduced to a graph theory problem
- Directed graphs?
43Thank You!
44Trees to Graphs using Racke
- Hierarchical graph decomposition Racke03
- Given graph G, exists capacitated tree T(G) s.t
- T(G) approximates G w.r.t sparse cuts
- Approximation factor O(b(G) log n log log n)
Harrelson-Hildrum-Rao04 - Apply algo. on T(G) to get decomposition for G
- Loss polylog(n)