/
Approximation Algorithms for Graph Routing Problems Approximation Algorithms for Graph Routing Problems

Approximation Algorithms for Graph Routing Problems - PowerPoint Presentation

faustina-dinatale
faustina-dinatale . @faustina-dinatale
Follow
392 views
Uploaded On 2017-06-30

Approximation Algorithms for Graph Routing Problems - PPT Presentation

Julia Chuzhoy Toyota Technological Institute at Chicago Routing Problems Input Graph G sourcesink pairs s 1 t 1 s k t k Goal Route as many pairs as possible minimize edge congestion ID: 565001

pairs congestion approximation expander congestion pairs expander approximation edge log graphs vertex disjoint paths graph routing route problem polylog

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Approximation Algorithms for Graph Routi..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Approximation Algorithms for Graph Routing Problems

Julia Chuzhoy

Toyota Technological Institute at ChicagoSlide2

Routing Problems

Input

: Graph G, source-sink pairs (s

1,t1),…,(sk,tk).Goal: Route as many pairs as possible; minimize edge congestion.Slide3

Routing Problems

Input

: Graph G, source-sink pairs (s

1,t1),…,(sk,tk).Goal: Route

as many pairs as possible; minimize edge congestion.Slide4

Routing Problems

Input

: Graph G, source-sink pairs (s

1,t1),…,(sk,tk).Goal: Route as many pairs as possible; minimize

edge congestion.

Edge congestion: 2Slide5

Routing Problems

Input

: Graph G, source-sink pairs (s

1,t1),…,(sk,tk).Goal: Route as many pairs as possible; minimize edge congestion.

n

– number of graph vertices

m

– number of edges

k

– number of demand pairs

terminals

– vertices participating in the demand pairsSlide6

Routing Problems

Input

: Graph G, source-sink pairs (s

1,t1),…,(sk,tk).Goal: Route as many pairs as possible; minimize edge congestion.

3 pairs with congestion 2Slide7

Routing Problems

Input

: Graph G, source-sink pairs (s

1,t1),…,(sk,tk).Goal: Route as many pairs as possible; minimize edge congestion.

3

pairs with congestion 2

2

pairs with congestion 1Slide8

Congestion MinimizationSlide9

Congestion Minimization

Route

all

demand pairsMinimize maximum edge congestion

solution value: 2Slide10

LP-relaxation

Rounding Algorithm [

Raghavan

, Thompson ‘87] Every pair (si,ti

) chooses a path P w. probability f(P)Max edge congestion O(c

log n/log log n) w.h.p.Slide11

Congestion Minimization

-

approximation

[Raghavan, Thompson ‘87]Directed graphs: -hard to approximate [Andrews, Zhang ‘06], [C, Guruswami,

Khanna, Talwar ‘07]

Undirected graphs: -hard to approximate [Andrews, Zhang ‘07]Slide12

Open Problem 1

Can we close the gap for undirected graphs?

What is the integrality gap of the LP?

What if we only need to connect a constant fraction of the demand pairs?Slide13

Edge-Disjoint Paths Problem

No congestion allowed

Route maximum number of the demand pairs

Solution value: 2Slide14

Edge Disjoint Paths (EDP)

For directed graphs NP-hard even with only two demand pairs

[Fortune,

Hopcroft, Wyllie '80]When k is constant, can be solved efficiently in undirected graphs [Robertson, Seymour ‘90]NP-hard when k is part of input [Karp ’

72]Slide15

LP-relaxationSlide16

Rounding Algorithm

[

Kolliopoulos

, Stein ‘98]Find shortest path P with non-zero flow, connecting any demand pair.Add P to the solution and delete all flow that uses edges of P.

Analysis

If the length of P is less than – at most flow is deleted.

If the length of P is more than – at most flow remains.

-approximationSlide17

Can We Do Better?

Directed graphs

: EDP is -hard

to approximate for any [Guruswami, Khanna, Rajaraman

, Shepherd, Yannakakis ‘99]Undirected graphs

: -approximation algorithm [Chekuri,

Khanna, Shepherd ’06].

-hardness of approximation for any[Andrews, Zhang ‘05], [Andrews, C, Guruswami

, Khanna, Talwar, Zhang

’10]LP integrality gap

: [Garg, Vazirani

, Yannakakis ‘93]Slide18

Integrality Gap Example[

Garg

,

Vazirani, Yannakakis ‘93]

s

1

s

2

s

k

t

1

t

2

t

k

fractional: k/2

integral: 1

k=Slide19

A Brick-Wall Graph

s

1

s

2

s

k

t

k

t

1

t

2

…Slide20

Open Problem 2

Close the gap for undirected EDP

planar graphs?

constant-factor approximation with congestion 2 [Chekuri, Khanna, Shepherd ‘04], [Chekuri,

Khanna, Shepherd ‘06], [Seguin-Charbonneau, Shepherd ‘11]O(log n)-approximation for Eulerian

or 4-edge connected planar graphs [Kawarabayashi

, Kobayashi ’10]constant approximation for grid-like graphs [Kleinberg,

Tardos ’95]Slide21

Open Problem 2

Close the gap for undirected EDP

planar graphs?

better algorithms for brick-wall graphs?Slide22

Positive Results

Moderately connected graphs:

If

global min-cut is Ω(log5n), there is a polylog-approximation [Rao, Zhou ‘10]

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

… Slide23

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 allowedSlide24

EDPwC

Congestion

O(log n/log log n):

constant approximation [Raghavan, Thompson ’87] -approximation with congestion c [

Azar, Regev ’

01], [Baveja, Srinivasan

’00], [Kolliopoulos, Stein ‘04]

Directed graphs: -hardness for any congestion c [C, Guruswami

, Khanna, Talwar

’06]Slide25

EDPwC

Congestion

O(log n/log log n):

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]Congestion 2: -approximation [Kawarabayashi

, Kobayashi ’11]

polylog(k)-approximation with congestion 14 [C, ‘11]polylog(k)-approximation with congestion 2

[C, Li, ‘12]Slide26

Integrality Gaps for EDPwC

s

1

s

2

s

k

t

1

t

2

t

k

Congestion 1: integrality gap

[

Garg

,

Vazirani

,

Yannakakis

‘93]

Congestion c: integrality gap

[Andrews, C,

Guruswami

,

Khanna

,

Talwar

, Zhang ‘10]

-

hard

to

approximate with congestion c

for any Slide27

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 2

-hardness with congestion cSlide28

Another View: Reducing Congestion

Suppose we have a “bad” solution, where X pairs are routed with congestion C.

Then we can route X/(C

polylog k) pairs with congestion 2! But if we want congestion 1, may only be able to route pairs, even if C=2.Slide29

A Polylogarithmic

Approximation with Constant CongestionSlide30

Well-

Linkedness

[

Robertson,Seymour], [

Chekuri, Khanna, Shepherd], [Raecke

]

Graph G is well-linked for the set T of terminals,

iff

for any partition (A,B) of V(G), Slide31

Well-

Linkedness

[

Robertson,Seymour], [

Chekuri, Khanna, Shepherd], [Raecke

]

Graph G is well-linked for the set T of terminals,

iff

for any partition (A,B) of V(G), Slide32

Pre-Processing

Input

: Graph G, source-sink pairs (s

1,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-linkedTotal fractional solution value for all induced sub-problems is

“Enough” to solve the problem on well-linked instances.Slide33

Embed an expander on a subset of terminals into G.

e

xpander

vertices terminalsexpander edges paths in GRoute a subset of the demand pairs in the expander

High-

Level Plan [CKS ‘04]

Embedding

congestion

: max load on any edge of G

CrossbarSlide34

Goal

Embed an expander over a subset of terminals into G.

Include

polylog

(k)-fraction of the terminals

congestion 2Slide35

Cut-Matching Game [

Khandekar

,

Rao

,

Vazirani

06]

Cut Player

: wants to build an expander

Matching Player

: wants to delay its construction

There is a strategy for cut player,

s.t.

a

fter O(log

2

n) iterations, we get an expander!Slide36

Embedding Expander into GraphSlide37

Embedding Expander into Graph

After O(log

2

k

) iterations, we get an expander embedded into G.

Problem

: congestion

Ω

(log

2

k

)Slide38

Solution?

Idea

[Rao Zhou ‘06]:Split G into graphs G1,…,Gh using algorithm of

[Karger ’93]

V(Gi)=V(G) for all iEvery edge of G belongs to at most one G

iEach Gi well-linked for the terminalsh=O(log

2k)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) Slide39

Getting a Constant CongestionSlide40

Embedding an Expander into G

Expander vertex

connected component in G containing the terminal

Expander edge

path connecting some pair of vertices in the two components

An edge of G belongs to at most 2 of the components/paths.Slide41

Embedding an Expander into G

Routing on

vertex-disjoint

paths in X gives a congestion-2 routing in G!Slide42

Expander vertex

connected component in G containing the terminal

Expander edge

path connecting some pair of vertices in the two components

An edge of G belongs to at most 2 of the components/paths.

Embedding an Expander into GSlide43

Embedding an Expander into G

Families of Good Vertex SetsSlide44

Good Vertex Subset

S is a good vertex subset

iff

:

S contains no terminals

k/

polylog

k red edges

S is well-linked for the red edgesSlide45

A Good Family of Vertex Subsets

O(log

2

k) disjoint good vertex subsetsk/polylog k

treeseach edge of G participates in at most 2 treesEach tree Ti spans a distinct terminal

ti and a distinct red edge adjacent to Sj for each j.Slide46

Embedding an ExpanderSlide47

Embedding an Expander

Expander vertex

the tree spanning the terminal

Expander edges:

via the cut-matching game of [KRV]Slide48

Embedding an ExpanderSlide49

Embedding an Expander

After O(log

2

k) iterations, we obtain an expander embedded into G with congestion 2.

…Slide50

Algorithm for EDPwC

Find a good family of vertex subsets

Embed an expander into G

Find vertex-disjoint routing in the expander

Transform into routing in GSlide51

Open Problem 3

A cleaner algorithm for

polylog

(k) approximation with congestion 2? Better power of polylog?What if we need to route almost all demand pairs (a constant fraction)?Slide52

Routing on Vertex-Disjoint Paths

Generalizes EDP

Connections

to Graph Minor theoryNo congestion: -approximation [Kolliopoulos, Stein ‘98]

-lower bound on LP integrality gap [Garg, Vazirani

, Yannakakis ‘97]Routing with congestion:O(poly log k)-approximation with constant congestion

[Chekuri, Ene ‘12]Slide53

Better algorithms/lower bounds for Vertex-Disjoint Paths?

Open Problem 4Slide54

Better algorithms/lower bounds for Vertex-Disjoint Paths?

Vertex-disjoint paths in grid graphs

Open Problem 4Slide55

s

1

t

1

s

2

t

2

s

3

t

3

Better algorithms/lower bounds for Vertex-Disjoint Paths?

Vertex-disjoint paths in grid graphs

Open Problem 4Slide56

Thank you!