In this lecture we shall study a graph partitioning problem known as network decomposition. This notion was introduced by Awerbuch et al. in order to find fast deterministic algorithms for the MIS and related problems [7]. The definition is somewhat involved and is as follows.
A cluster decomposition of a graph G is a partition of
G into connected components Ci.
Given a graph G and a cluster decomposition, the cluster graph
of G, denoted by C(G), is a graph whose vertices are the
clusters Ci and where (Ci,Cj) is an edge
if and only if
and there is an edge (u,v) of G such that
and
.A (c(n),d(n))- network decomposition or, more simply,
a (c(n),d(n))-decomposition of G is a cluster decomposition such that
We shall refer to (f(n),f(n))-decompositions simply as f(n)-decompositions.
Several graph structures, including MIS and certain vertex and edge colorings,
can be solved in
rounds given a
(c(n),d(n))-decomposition (see exercises).
Therefore, in order to compute a MIS and these other problems
deterministically in polylogarithmically many rounds, it suffices to compute
an
-decomposition
in
rounds deterministically.
In this sense then network decomposition is a complete problem
in the message passing model for a reasonably large class of graph problems.
Network decomposition has also other interesting applications,
mainly, but not exclusively, to distributed computing
[5,7,21].
We shall now focus on the problem of computing
-decompositions. All results discussed in this lecture
(and the next) are from a beautiful paper by Linial and Saks
[25]. The first question to ask is whether
such nice decompositions exist at all. The next theorem answers in the affirmative.
Theorem 13201
Let G be a graph with n vertices. Then, G has a
-decomposition. Moreover, such a decomposition can be computed
sequentially in polynomial time.
Proof. For a vertex u define
![]()
![]()
We now describe a polynomial-time algorithm to compute the decomposition. The algorithm repeats a sequence of stages, with each stage consisting of a sequence of growing phases. Initially the graph is connected but later it can be made of scattered connected components as a result of vertex removals. A growing phase is as follows. Pick any vertex u1 and keep growing a ball around it as long as the volume doubles each time the radius is incremented by one, or the whole connected component of u1 is contained inside the ball. Let k1 be the first index such that either
| |
(16) |
A new growing phase is then repeated with the graph induced by the uncolored vertices, until all vertices are colored either red or green. When this happen a stage ends.
At the end of the stage the graph is partitioned
into red balls Bki(ui)'s and
(possibly empty) green boundaries
's.
The Bki(ui)'s are then declared to be clusters and given color
s, where s is the current stage.
Then the red part is removed and a new stage is executed with the remaining green part, until there are no vertices left.
Notice that:
The first assertion follows trivially from the way the clusters are
computed. For the second, notice that the stopping condition
for the growth of a cluster implies
that at the end of a stage there are at least as many red vertices as
there are green ones, so that the leftover graph has size at most half that of
its predecessor. ![]()
Now that we know that
-decompositions exist we ask how fast
they can be computed in the message-passing model.
The best deterministic result to date is the following [29] (see also
[7]).
Theorem 13232
-decompositions can be computed deterministically
in the synchronous, message-passing model in
rounds, where
.
Notice that this complexity is asymptotically better than any fixed root of
n, for
goes to 0 as n grows, but it is
asymptotically worse than any polylog. Notice also that
goes to zero extremely slowly-
in practice it is never going to be less than 1/10, for this would imply
n>2100- quite a huge network! In fact, things are worse because of
the hidden constants in the
term.
In contrast to this, we now give a randomized algorithm that computes an
-decomposition in
rounds. In order to do so, however,
we need to relax the requirements somewhat.
Let G be a graph and
be a cluster (i.e.
a connected component). The strong diameter of a cluster C
is the maximum distance between any two vertices in C
when the distance is computed in G[C]. The weak diameter of C
is the maximum distance between any two vertices in C
when the distance is computed in G. In other words, when computing the
strong diameter we are not allowed to use vertices outside of C, whereas
with the weak diameter we can take shortcuts outside of C
(see Figure 12.1).
Theorem 13255
There is a randomized protocol to compute network decompositions with weak diameter
at most
and
color classes. The expected number of rounds
is
.
To prove the theorem we shall first describe the algorithm and then prove two lemmas which together imply the statement of the theorem.
The algorithm is divided into stages. During a stage each vertex
decides whether to enter a set S. We shall show that the
connected components S have weak diameter at most
and that
the expected size of S is a constant fraction of that of the graph.
Therefore, if the cluster forming S are given a new colour and
removed from the graph, and the procedure is repeated, the whole
graph will be partitioned into
expected color classes
in expected
stages.
We now describe a stage. First, each vertex u, in parallel, selects a radius at random as follows:
![]()
![]()
Then, each vertex, collects all pairs of the form (u,ru). This takes
rounds, since pairs are broadcast at distance at most
.Among all pairs, the one with highest ID is selected.
Let C(u)--the center of u--denote the ID of the pair selected by u.
Now, u enters S if and only if
d(u,C(u)) < rC(u).
Each stage takesWe now show the two lemmas about this protocol.
Lemma 13284
The weak diameter of any connected component of S is at most
![]()
Proof. The lemma follows if we show that every vertex in a connected component
has the same center. For a contradiction, assume that this is not the
case. Then, there must be two adjacent vertices x and y in the
component who selected different centers. Assume without loss of
generality that C(y)>C(x).
Now, since
it must be rC(x) > d(x,C(x)) and,
since x and y are neighbours,
.But this means that y has received the pair (C(x),rC(x)) and must
have selected C(x) as a center instead of C(y).![]()
Lemma 13299
![]()
Proof. It is enough to consider the neighborhood of radius
around u,
since no other message can reach u.
Let Hu be the set of vertices whose ID is greater than or equal to
that of u which lie at distance strictly less than
.Thus,
. And let
be the set of vertices whose ID is greater than u and have
distance from u exactly
.We say that a vertex v reaches u if
and that it
swallows u if rv > d(u,v).
Then, by the independence of the coin tosses,
We bound the two probabilities separately.
Consider the set A of vertices of Hu who reach u.
The set is nonempty since it includes u. Let m(A) be the vertex of A with
highest ID. Then,
![]()
![]()