Hierarchical Decompositions for Congestion Minimization in Networks Harald Räcke 1.

36
Hierarchical Decompositions for Congestion Minimization in Networks Harald Räcke 1

Transcript of Hierarchical Decompositions for Congestion Minimization in Networks Harald Räcke 1.

1

Hierarchical Decompositions for Congestion Minimization in Networks

Harald Räcke

Graph Tree

Approximation

Tree Approximation

3

Approximating a Graph by a Tree

Task: Given an (undirected) graph G. Compute a decomposition tree that is similar.

decomposition tree: bijection between leaf nodes

of the tree and graph nodes

embedding each internal node is mapped

to some graph node tree edges are mapped to

path in the graph between the corresponding endpoints

a b c d e f g h i j

a

g

b

e

i

j

f

h

dc

What does it mean for a tree to be similar to ?• E.g. given a graph with edge length, approximate

the shortest path distances in

Formally:• Define the length of a tree edge as the length of the

corresponding path in . then:• Distances in the graph are smaller than the distances between the

corresponding leaf nodes in the tree,• and if in the tree no distance is increased by more than a factor

of we say that the tree approximates the graph with guarantee

Similarity

4

Unfortunately this does not work:• Any tree will distort at least one

edge/pair by a lot in a cycle.

Solution:• Convex combination of trees

probability distribution over trees.

• What is the expected factor by which the length of an edge increases when choosing a random tree?

Distance-based Decompositions

5

[Bartal 1996] distance-based approximation with factor

[Bartal 1998] factor

[Fakcharoenphol, Rao, Talwar 2003] factor

Lots of applications: Any graph problem where the cost-function is linear in the distances can be solved/approximated on a tree andwhen using this solution for the approximation guarantee only goes up by a logarithmic factor.

metrical task systems, vehicle routing, buy-at-bulk network design, group steiner tree, metric labelling, min-sum clustering, hierarchical placement, distributed k-server, topology aggregation, covering Steiner tree, distributed queuing, mirror placement

Distance-based Decompositions

6

Given a graph with capacities on the edges.Find a tree that approximates the bottlenecks of the graph.

1. Construct a tree that has better communication performance.For a multicommodity-flow instance in that can be routed with congestion , the straightforward solution of the corresponding instance in has congestion at most .

2. Show that the graph can simulate the tree (constructively!!!). Given a multicommodity flow solution with congestion in , mapping this multicommodity flow to (via the mapping of to ) results in congestion only .

Cut-based Decompositions

7

8

Part 1.

Cut-based Decompositions

a

g

b

e

i

j

f

h

dc

a b c d e f g h i j

c e

b

h

9

Part 2.

Cut-based Decompositions

a b c d e f g h i j

c e

i

h

a

g

b

e

i

j

f

h

dc

10

Part 1: simply make capacities in the tree large enough!!!

Cut-based Decompositions

a

g

b

e

i

j

f

h

dc

a b c d e f g h i j

c e

b

h

11

Part 1: simply make capacities in the tree large enough!!!

Cut-based Decompositions

a

g

b

e

i

j

f

h

dc

a b c d e f g h i j

c e

b

h

12

Part 2: Not possible. The high capacity tree edge is mapped to a single path.

Cut-based Decompositions

a

g

b

e

i

j

f

h

dc

a b c d e f g h i j

c e

b

h

13

Solution A: convex combination of trees / probability distributionover trees

Theorem. There exists a convex combination of decompositiontrees such that the following holds:Suppose we are given for each tree a multicommodity flow with congestion . Mapping all these flows to the graph , (and scaling flow by gives a flow in with congestion .

Cut-based Decompositions

convex multiplier for tree

14

Solution B: one tree / probability distribution over embeddings of this tree

Theorem. There exists a decomposition tree and a convex combination of embeddings of this tree into such that the following holds:Suppose we are given a multicommodity flow that can be routed in with congestion . For each we scale the flow by and map this flow into via . This gives a multicommodity flow in with congestion .

Cut-based Decompositions

Type B:[R 2002]. Guarantee Non-constructive. [Bienkowski, Korzeniowski, R 2003] . Guarantee . Constructive.

[Harrelson, Hildrum, Rao 2003]. Guarantee . Constructive.

Type A:[R 2008]. Guarantee of . Constructive.

Cut-based Decompositions

15

Minimum Bisection

Given a graph; find a partition into two equal sized sets such that the number of edges between both parts is minimized.[Feige, Krauthgamer 2001] -approximation.

black vertices

white vertices

Minimum Bisection

Minimum Bisection on leaf nodes of the tree:

• Color each leaf node either black or white such that each color is used the same number of times.

• Minimize total capacity of edges that you need to take out in order to disconnect black from white vertices.

18

Minimum Bisection

Algorithm:• For each tree in the support of the convex combination

compute a minimum leaf bisection. • Output the smallest bisection found.

tree is better network

T* is optimal

cost𝐺(opt𝑇 ∗)≤ cost𝑇∗(opt𝑇 ∗)

In tree a flow of can be routed betweennodes in and with congestion 1.

Flow of between and can be routed in with congestion .

)

Advantages of having a single tree

• Some applications seem to require a single tree. E.g. all-or-nothing multicommodity flow.

• Oblivious routing can be done with small routing tables (poly-logarithmic per edge).

• See Matthews talk…

Hierarchical Routing Scheme

Hierarchical Routing Scheme

𝑆

assign capacity to these tree edges.

intermediate clusters.

Questions

Embedding:

• How are intermediate nodes chosen?

• How are routing paths between intermediate nodes chosen?

Decomposition:

• How is the partitioning done?

Choosing Intermediate Nodes

Probability distribution for choosing a graph node for a normal tree node corresponding to :

Weight function is the capacity of edges connecting to nodes in other sub-clusters of .

𝑆

Choosing Intermediate Nodes

Probability distribution for selecting a graph node for an intermediate tree node corresponding to set :

Weight function is the capacity of edges connecting to nodes outside of .

𝑆

What is the expected traffic between two nodes and induced by a level in the tree?

a) levels where normal clusters are above intermediate clusters.

Estimating Traffic

𝐸 [dem (𝑥 , 𝑦 ) ]≤𝑃 (𝑦 is   chosen   in  𝐷1 ) ⋅ 𝑃 (𝑥 is   chosen   in  𝑆 ) ⋅out (𝐷1 )

¿ ( 𝑤𝐷1(𝑦 )

𝑤𝐷1(𝐷1 ) )⋅ (𝑤𝑆 (𝑥 )

𝑤𝑆 (𝑆 ) )⋅out (𝐷1)¿𝑤𝑆 (𝑦 ) ⋅𝑤𝑆 (𝑥 )

𝑤𝑆 (𝑆 )

𝑥

𝑦𝐷1 𝐷2 𝐷3

𝑆

What is the expected traffic between two nodes and induced by a level in the tree?

b) levels where normal clusters are belowintermediate clusters.

Estimating Traffic

𝐸 [dem (𝑥 , 𝑦 ) ]≤𝑃 (𝑦 is   chosen   in  𝑆 )⋅ 𝑃 (𝑥 is   chosen   in  𝑆 ) ⋅out (𝑆 )

¿ (𝑤𝑆 ( 𝑦 )𝑤𝑆 (𝑆 ) )⋅(𝑤𝑆 (𝑥 )

𝑤𝑆 (𝑆 ) )⋅ out(𝑆)≤𝑤𝑆 (𝑦 ) ⋅𝑤𝑆 (𝑥 )

𝑤𝑆 (𝑆 )

𝑥

𝑦

𝑆

𝑆

Choosing Routing Paths

Expected demand between two nodes and for simulating tree messages “involving” cluster

Compute optimal routing for this demand.

Choosing Routing Paths

Concurrent multicommodity flow problem for each cluster :

• One commodity for each pair .

• Demand for commodity

• Solve flow-problem with minimum possible congestion, inside cluster .

Select routing paths according to this solution!

dem (𝑥 , 𝑦 )=𝑤𝑆 (𝑥 ) ⋅𝑤𝑆 (𝑦 )

𝑤𝑆(𝑆)

Observation

If• each flow-problem has congestion at most

• height of the tree is

then can simulate the tree via randomized embeddings suchthat the resulting load of an edge is only .

Goal

Construct a decomposition with

• logarithmic height

• congestion of every flow-problem is at most

Idea:• Design partitioning algorithm that partitions any sub-cluster

such that the flow-problem has congestion at most .

• Apply this algorithm recursively.

but

dem (𝑢 ,𝑣 )=𝑤𝑆 (𝑢 )⋅𝑤𝑆(𝑣)𝑤𝑆 (𝑆 )

A Bad-Case Example

A cluster fulfills the precondition iff for every subset with

Precondition

Decomposition Theorem

Theorem:

We can partition any cluster that fulfills the precondition into subclusters such that

• The CMCF-problem on can be solved with congestion .

• For each we have .

• Each fulfills the precondition.

The Algorithm

Capacity of edges bet-ween different clustersdecreases.

Further Results/Open Questions

• There is an guarantee for distribution over trees if only a subset of size act as terminals in the flow problem. [Charikar, Leighton, Li, Moitra 2010], [Englert, Gupta, Krauthgamer, R, Talgam, Talwar 2010], [Makarychev, Makarychev 2010]

• Is there an guarantee for the case of a single tree (Type B)?

Further Results/Open Questions

• How quickly can you compute the decomposition / sample from the decomposition?Madry gives an algorithm that obtains running time with aguarantee of roughly (if I want to have nearly linear time).