routing in undirected graphs with constant congestion julia chuzhoy toyota technological institute...

58
Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Upload: helena-denmon

Post on 28-Mar-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing in Undirected Graphs with Constant Congestion

Julia ChuzhoyToyota Technological Institute at

Chicago

Page 2: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing Problems

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Goal: Route as many pairs as possible; minimize edge congestion.

Page 3: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing Problems

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Goal: Route as many pairs as possible; minimize edge congestion.

Page 4: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing Problems

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Goal: Route as many pairs as possible; minimize edge congestion.

Edge congestion: 2

Page 5: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing Problems

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Goal: Route as many pairs as possible; minimize edge congestion.

n – number of graph verticesk – number of demand pairsterminals – vertices participating in the demand pairs

Page 6: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing Problems

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Goal: Route as many pairs as possible; minimize edge congestion.

• 3 pairs with congestion 2

Page 7: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Routing Problems

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Goal: Route as many pairs as possible; minimize edge congestion.

• 3 pairs with congestion 2• 2 pairs with congestion 1

Page 8: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Edge Disjoint Paths (EDP)Route maximum number of pairs on edge-disjoint paths

Congestion MinimizationRoute all pairs; minimize congestion

Page 9: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Congestion Minimization

Route all pairs; minimize congestion• -approximation [Raghavan,

Thompson ‘87]• -hard to approximate [Andrews,

Zhang ‘07]

Page 10: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Edge Disjoint Paths (EDP)Route maximum number of pairs on edge-disjoint paths• When k is constant, can be solved efficiently [Robertson,

Seymour ‘90]

• NP-hard in general [Karp ’72]

• -approximation algorithm [Chekuri, Khanna, Shepherd ’06]. Best possible?

– LP-relaxation: maximum multicommodity flow between the demand pairs with no congestion.

– Integrality gap: [Chekuri, Khanna, Shepherd ‘06]

Page 11: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Edge Disjoint Paths (EDP)Route maximum number of pairs on edge-disjoint paths• When k is constant, can be solved efficiently [Robertson,

Seymour ‘90]

• NP-hard in general [Karp ’72]

• -approximation algorithm [Chekuri, Khanna, Shepherd ’06].

• When global min-cut is , there is a polylog(n) approximation [Rao, Zhou ‘06]

• -hardness of approximation for any [Andrews, Zhang ‘05], [Andrews, C, Guruswami, Khanna, Talwar, Zhang ’10]

Page 12: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Special Cases

Expander graphsIn a strong enough constant-degree expander, any demand set on vertices can be routed on edge-disjoint paths [Frieze ‘00]

Planar graphs, Trees…

Page 13: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Edge Disjoint Paths (EDP)Route maximum number of pairs on edge-disjoint paths

• -approximation•matching integrality gap

• -hardness

Congestion MinimizationRoute all pairs; minimize congestion

• -approximation

• -hardness

EDP with Congestion (EDPwC)A factor- approximation algorithm with congestion c routes . demand pairs with congestion at most c.

optimum number of pairs with no congestion allowed

Page 14: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

EDPwC• Congestion : constant

approximation [Raghavan, Thompson ‘87]

• -approximation with congestion c [Azar, Regev ’01], [Baveja, Srinivasan ’00], [Kolliopoulos, Stein ‘04]

• polylog(n)-approximation with congestion poly(log log n) [Andrews ‘10]

Today: polylog(k)-approximation with congestion 14.

• -hardness for any c [Andrews, C, Guruswami, Khanna, Talwar, Zhang ’10]

Page 15: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Edge Disjoint Paths (EDP)Route maximum number of pairs on edge-disjoint paths

• -approximation•matching integrality gap

• -hardness

Congestion MinimizationRoute all pairs; minimize congestion

• -approximation

• -hardness

EDP with Congestion (EDPwC)

• polylog(k)-approximation with congestion 14

• -hardness with congestion c

Page 16: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Well-Linkedness[Robertson,Seymour], [Chekuri, Khanna, Shepherd],

[Raecke]

Page 17: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Well-Linkedness

Graph G is -well-linked for the set T of terminals, iff for any partition (A,B) of V(G),

Page 18: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Well-Linkedness

out(S)

Set S is -well-linked iff for any partition (A,B) of S,

Normally

Any matching on the edges of out(S) can be fractionally routed inside S with congestion

Page 19: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Pre-Processing

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

Theorem [Chekuri, Khanna Shepherd ‘04]Can efficiently partition G into disjoint subgraphs G1,…, Gr, such that:

• For each induced sub-problem Gi the terminals are well-linked

• Total fractional solution value for all induced sub-problems is

Can assume w.l.o.g. that G is well-linked for the terminals

Page 20: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

1. Embed an expander on a subset of terminals into G.– expander vertices terminals– expander edges paths in G

2. Route a subset of the demand pairs in the expander

High-Level Plan [CKS ‘04]

Embedding congestion: max load on any edge of G

Crossbar

Page 21: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

GoalEmbed an expander over a subset of terminals into G.• Include polylog(k)-fraction of the terminals• Constant congestion

Page 22: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Cut-Matching Game [Khandekar, Rao, Vazirani ’06]

Cut Player: wants to build an expanderMatching Player: wants to delay its construction

There is a strategy for cut player, s.t. after O(log2n) iterations, we get an expander!

Page 23: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding Expander into Graph

Page 24: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding Expander into Graph

After O(log2k) iterations, we get an expander embedded into G.

Problem: congestion Ω(log2k)

Page 25: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Solution?

Idea [Rao Zhou ‘06]:• Split G into graphs G1,…,Gh

– V(Gi)=V(G) for all i

– Every edge of G belongs to at most one Gi

– Each Gi well-linked for the terminals– h=O(log2k)

• Run the cut-matching game. Use Gi to route flow in iteration i.

Problem: Can only do it if min-cut in G is Ω(log5n)• [Andrews ‘10] adapted this to general graphs, with

congestion poly(log log n)

Page 26: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Getting a Constant Congestion

Page 27: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Input: Graph G, source-sink pairs (s1,t1),…,(sk,tk).

G is well-linked for the terminals.Goal: Route OPT/polylog(k) demand pairs with constant congestion.

Starting Point

Page 28: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander into G

Expander vertex connected component in G containing the terminalExpander edge path connecting some pair of vertices in the two componentsAn edge of G may only belong to a constant number of the components/paths.

Page 29: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander into G

Routing on vertex-disjoint paths in X gives a good routing in G!

Page 30: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Expander vertex connected component in G containing the terminalExpander edge path connecting some pair of vertices in the two componentsAn edge of G may only belong to a constant number of the components/paths.

Embedding an Expander into G

Page 31: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander into G

Families of Good Vertex Sets

Page 32: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Good Vertex Subset

S is a good vertex subset iff:• S contains no terminals• S is well-linked• There are k/polylog k

paths connecting out(S) to the terminals, with congestion polylog k.

Page 33: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Family of Good Vertex SubsetsΩ(log2k) disjoint good vertex subsets.• Each subset can send k/(polylog k) flow units

to the terminals• total congestion polylog k

Page 34: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Rest of the proof

1. We can find a good family of subsets.2. Given a good family of subsets, we can

embed an expander into G.

Page 35: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Rest of the proof

1. We can find a good family of subsets.2. Given a good family of subsets, we can

embed an expander into G.

Page 36: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago
Page 37: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Want:• k/polylog k trees• every edge of G participates in a constant number of

trees• Each tree Ti spans a distinct terminal ti and a distinct

edge eij in out(Sj) for each j.

Page 38: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Want:• k/polylog k trees• every edge of G participates in a constant number of

trees• Each tree Ti spans a distinct terminal ti and a distinct

edge eij in out(Sj) for each j.• Edge eij is viewed as a copy of ti for set Sj.

Page 39: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago
Page 40: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander

Page 41: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander

Expander vertex the tree spanning the terminalExpander edges: via the cut-matching game of [KRV]

Page 42: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander

Page 43: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander

After O(log2k) iterations, we obtain an expander embedded into G.…

Page 44: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

- well-linked

Grouping Technique [CKS]

• is very well-linkedAny partition of into equal-sized subsets can be integrally routed with congestion 2.

• .

- selected edges

Page 45: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Embedding an Expander

After O(log2k) iterations, we obtain an expander embedded into G.…

Page 46: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Rest of the proof

1. We can find a good family of subsets.2. Given a good family of subsets, we can

embed an expander into G.

Page 47: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Rest of the proof

1. We can find a good family of subsets.2. Given a good family of subsets, we can

embed an expander into G.

Page 48: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Contracted Graphs

contract

Only contract clusters C where• C is well-linked• Does not contain terminals• |out(C)|<k/polylog(k)

Good contracted graph

Page 49: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Finding a Good Vertex Subset

• Start with G.• In every iteration:– either find a good vertex subset– or find a good contracted graph with fewer edges

Page 50: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Iteration Description

|E(A)|≥|out(A)|/4

uncontract

Page 51: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Iteration Descriptionwell-linked

decomposition

|E(A)|≥|out(A)|/4

Well-linked Decomposition [Chekuri, Khanna, Shepherd], [Raecke]

• New clusters are well-linked

• …

Page 52: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Iteration Descriptionwell-linked

decomposition

contract

now |E(A)|<<|out(A)|

Problem: for some cluster C, |out(C)| may be too large

|E(A)|≥|out(A)|/4

Page 53: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Iteration Description

C is a good cluster?• Well-linked

C

Page 54: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Iteration Description

C

C is a good cluster? Well-linked• Can route k/polylog(k)

flow units to the terminals?

yes no

C is a good set!

A small cut separates C from the terminals

Page 55: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Iteration Description

uncontract

well-linked decomposition

contract

good contracted graph with fewer edges!

Page 56: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Finding a Good Vertex SubsetRandom subset A of vertices

Uncontract + Well-linked decomposition

All clusters have small out-degree?

Good vertex subset?

yes smaller contracted graph

yesdone!

no

no

smaller contracted graph

uncontract + WLD+contract

Page 57: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Algorithm for EDPwCFind a good family of vertex subsets

Embed an expander into G

Find vertex-disjoint routing on the expander

Transform into routing in G

Page 58: Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago

Summary

• We obtain a polylog(k)-approximation for EDPwC with congestion 14.

• Smaller congestion?• Congestion minimization?

Thank you!