hierarchical decompositions for congestion minimization in networks harald räcke 1
TRANSCRIPT
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
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…
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
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.
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)?