Title: All-or-Nothing Multicommodity Flow
1All-or-Nothing Multicommodity Flow
- Chandra Chekuri Sanjeev Khanna Bruce
Shepherd - Bell Labs U. Penn Bell Labs
2Routing connections in networks
NY SF 10 Gb/sec NY SF 20 SE DE 5 SF DE
6
SE
DE
25
NY
Core Optical Network
3Multicommodity Routing Problem
- Network graph with edge capacities
- Requests k pairs, (si, ti) with demand di
- Objective find a feasible routing for all pairs
- Optimization maximize number of pairs routed
-
4All-or-Nothing Flow Problems
- Pair is routed only if all of di satisfied
- Single path for routing unsplittable flow
- (connection oriented networks)
- Fractional flow paths all-or-nothing flow
- (packet routing networks)
- Integer flow paths all-or-nothing integer flow
- (wavelength paths)
5Complexity of AN-Flow
- di 1 for all i
- Single path edge disjoint paths problem (EDP)
- classical problem, NP-hard
- only polynomial approx ratios
- AN-MCF APX-hard on trees
approximation ?
6Approximating EDP/AN-MCF
- O(min(n2/3,m1/2)) approx in dir/undir graphs
(EDP/UFP) Kleinberg 95, Srinivasan 97,
Kolliopoulos-Stein 98, C-Khanna 03,
Varadarajan-Venkataraman 04 - EDP is W(n1/2 - e)-hard to approx in directed
graphs - Guruswami-Khanna-Rajaraman-Shepherd-Yannakaki
s 99 - LP integrality gap for EDP is W(n1/2) GVY 93
- AN-MCF APX-hard on trees
Garg-Vazirani-Yannakakis 93
7Results
- In undirected graphs AN-MCF has an O(log3
n log log n) approximation - Polynomial factor to poly-logarithmic factor
- Approx via LP, integrality gap not large
For planar graphs O(log2 n log log n) approx Same
ratios for arbitrary demands dmax umin Online
algorithm with same ratio
8LP Relaxation
- xi amount of flow routed for pair (si, ti)
- max åi xi
- s.t
- xi flow is routed for (si,ti) 1 i k
- 0 xi 1 1 i k
9A Simple Fact
- Given AN-MCF instance all di 1
- Can find W(OPT) pairs such that each pair routes
1/log n flow each - How? rand rounding of LP and scaling down
- Problem we need pairs that send 1 unit each
10Nice Flow Paths
- Suppose all flow paths use a single vertex v
11Routing via Clustering
- cluster has log n terminals
- cluster induces a connected component
- clusters are edge disjoint
12Clustering
- Finding connected edge-disjoint clusters?
- G is connected use a spanning tree for a rough
grouping of terminals - New copy of G for clustering congestion 2
- 1 for clustering, 1 for routing
- Congestion 1 using complicated clustering
13How to find nice flow paths?
- Algorithmic tool
- Rackes hierarchical graph decomposition for
oblivious routing Räcke02 -
14Räckes Graph Decomposition
- Represent G as a capacitated tree T
3
10
4
v
4
2
7
leaves of T are vertices of G internal node v
G(v) is induced graph on leaves of T(v)
15Räckes Result
- T is a proxy for G
- For all D
- c(D,G) c(D,T) a(G) c(D,G)
- Routing in T is unique
- a(G) O(log3 n) Räcke 02
- a(G) O(log2 n log log n) Harrelson-Hildrum-Rao
03
16Routing details
With each v there is distribution pv on G(v) s.t
åi 2 G(v) pv(i) 1 s distributes 1 unit of
flow to G(v) according to pv t distributes 1
unit of flow to G(v) according to pv
v
t
s
17Back to Nice Flow Paths
X(v) pairs with v as their least common ancestor
(lca)
G(v), pv
s1
t1
s2
s3
t2
t3
s4
t4
Routing in T
Routing in G
18Algorithm
- Find set of pairs X that can be routed in T (use
tree algorithm GVY93,CMS03) - Each pair (si,ti) in X has a level L(i)
- Choose level L at which most pairs turn
- Route pairs independently in subgraphs at L
v
L
19Algorithm contd
- v at L , X(v) pairs in X that turn at v
- Can route 1/a(G) flow for each pair in X(v) using
nice flow paths - Use clustering to route X(v)/a(G) pairs
- Approx ratio is
- a(G) depth(T) O(log3 n log log n)
20Open Problems
- Improve approximation ratio
- What is integrality gap of LP ?
No super-constant gap known - Extend ideas to EDP
- Recent result Poly-log approximation for EDP/UFP
in planar graphs with congestion 3