College of Computer & Information Science Spring 2012 Northeastern University 3 April 2012 CS 7880: Network Algorithms and Analysis Scribe: Zhifeng Sun

Lecture Outline:

• Leighton-Rao sparsest cut theorem

1 Leighton-Rao’s sparsest cut theorem

In the previous lecture, we already saw that Max-Flow f^{∗} could be much smaller than Min-Cut η for the Uniform Multicommodity Flow problem, f^{∗} ≤ O (\frac{η}{log n}). In this lecture, we are going to show this inequality is tight up to constant factors in Uniform Multicommodity Flow problem. This was proved by Leighton-Rao in 1990. The result was proved for multicommodity flow with general demands later by Linial-London-Rabinovich and Aumann-Rabani.

First, let’s recall the LP for this problem. Let P_{i} be the set of paths between pair (s_{i}, t_{i}), p_{j}^{i} be the j^{th} path in P_{i}, dem(i) be the demands of pair (s_{i}, t_{i}), and f_{j}^{i} be the amount of commodity i sent on path p_{j}^{i}. Then we get the following LP for Demands Multicommodity Flow problem.

max f
s.t. ∑_{p_{j}^{i}} f_{j}^{i} ≥ f · dem(i) ∀i
∑_{p_{j}^{i}:e∈p_{j}^{i}} f_{j}^{i} ≤ c_{e}  ∀e

And its dual is

min ∑_{e} c_{e}d_{e}
s.t. ∑_{e∈p_{j}^{i}} d_{e} ≥ l_{i} ∀i, j
∑_{i} l_{i} · dem(i) ≥ 1

In the remainder, we assume uniform demands. That is, we assume we have a commodity for each pair (u, v) with demand = 1. For simplicity, we also assume in this lecture that c_{e} = 1. The arguments can be easily generalized to arbitrary c_{e}’s. (We could also replace the edge with capacity c_{e} with c_{e} parallel edges of capacity 1. While this will suffice for proving the max-flow-min-cut relationship in the above theorem, it would not establish the polynomial-time computability.)

Theorem 1. For any n, there is an n-node uniform multicommodity flow problem with Max-Flow f^{∗} and Min-Cut η for which η = O (f^{∗} log n). And a cut of value O (f^{∗} log n) can be found in polynomial time. In other words, this is an O (log n)-approximation for sparsest cut.

To provide some intuition, let us consider the following proof of the max-flow min-cut theorem for the single commodity flow problem.

Single Commodity Flow: After solving the dual LP, we have d_{e} values. Treat these values as the distance assignments of each edge. From the dual LP constraint, we know that the distance between the source and the sink is 1. Now taking the source as center, begin to grow a ball continously with radius t, t ranging from 0 to 1. The set of nodes inside the ball are all nodes that are within distance t from the source, according to the d_{e} labels. From the complimentary slackness, we know if d_{e} > 0 then the corresponding edge is saturated, so the min-cut is some collection of this saturated edges.

Let C(t) denote the set of edges that cross the ball of radius t. At time t (t : 0 → 1), let x(t) be the value of cut C(t). Then during the period (t, t + dt), the cut C(t) contributes x(t) · dt to ∑_{e} c_{e}d_{e}. So ∫_{0}^{1} x(t)dt = ∑_{e} c_{e}d_{e}. From an averaging argument, we know ∃t at which C(t) ≤ ∑_{e} c_{e}d_{e} = f^{∗}.

Multicommodity Flow: We generalize the idea for single commodity flow to uniform multicommodity flow. After solving the dual LP, we know f^{∗} = ∑_{e} d_{e}. The average d_{e} value \overline{d} = f^{∗}/m (here m is the number of edges whose d_{e} > 0). Now replace every edge e in the original graph G by a path of ⌈d_{e}/\overline{d}⌉ edges, each with distance \overline{d}. We could have a new graph, G^{+}. And the total distance values of edges in this graph won’t exceed 2f^{∗}. Furthermore, the total number of edges in G^{+} does not exceed ∑_{e:d_{e}>0}⌈d_{e}/\overline{d}⌉, which is at most 2m.

∑_{all original edges} ⌈\frac{d_{e}}{\overline{d}} ⌉ \overline{d} ≤ ∑ \frac{d_{e}}{\overline{d}} \overline{d} + ∑ \overline{d} ≤ f^{∗} + f^{∗} = 2f^{∗}.

Our goal is to find a cut of value O (f^{∗} log n). We define set S as balanced if \frac{2n}{3} ≥ |S| ≥ \frac{n}{3}. Otherwise, S is unbalanced. The following is a region growing approach similar to the single commodity flow. Set

α = \frac{O (n^{2} · f^{∗} log n)}{m}

Pick a source in graph G^{+}, grow the region hop by hop. Each hop we grow the region by \overline{d} which is the distance weight of edges in G^{+}. After each hop, we compare the ratio \frac{#crossing edges}{#internal edges} with α. If the ratio is greater then α, we keep on growing. If not, we stop. Pick a new source, which is not covered by any region, using the same approach to grow, until we all the sources are covered by a region. After the region growing step, there are two possible cases.

case 1: For all the regions R′_{i}s, the number of nodes from graph G is smaller or equal to \frac{2n}{3}. In this case, we can group the regions into balanced set in the following way. If there is a region that is larger than \frac{n}{3}, then we can just pick this region as S and group the other regions as S̄. If all of the regions are smaller than \frac{n}{3}, then we can greedily pack regions to S until the size of S is larger than \frac{n}{3}. Because each region has the property that \frac{#crossing edges}{#internal edges} ≤ α, we know if we group some regions together to a bigger region R, it still have this property, which means

\frac{#crossing edges}{#internal edges} ≤ α = \frac{O (n^{2} · f^{∗} log n)}{m}

So,

δ(R) = #crossing edges ≤ \frac{O (n^{2} · f^{∗} log n)}{m} · (#internal edges) ≤ O (n^{2} · f^{∗} log n)

And |R| · |R̄| = O (n^{2}). We know this cut

η = \frac{δ(R)}{|R| · |R̄|} = O (f^{∗} log n)

This means we find a cut of value O (f^{∗} log n).

case 2: There is a region R that contains more than \frac{2n}{3} nodes from graph G. Each step we grow the region R, its ratio \frac{#crossing edges}{#internal edges} ≥ α until i^{th} step. So the total number of edges included in this region after each step is at least 1, (1 + α), (1 + α)^{2}, …, (1 + α)^{i}. From (1 + α)^{i} ≤ m, we have

i ≤ \frac{log2m}{log(1 + α)} ≈ \frac{log 2m}{α} = \frac{m · log 2m}{n^{2} · f^{∗} log n} = O (\frac{m}{f^{∗}n^{2}} )

which mean the number of hops of this region is at most \frac{m}{f^{∗}n^{2}} . Then the radius r of this region

r ≤ \overline{d} · \frac{m}{f^{∗}n^{2}} = \frac{f^{∗}}{m} · \frac{m}{f^{∗}n^{2}} = O (\frac{1}{n^{2}} )

We can have r ≤ \frac{1}{2n^{2}} by setting appropriate α value. By metric property, we know for any nodes u and v,

dist(u, v) ≤ dist(u, R) + dist(v, R) + \frac{1}{2n^{2}}

From the constraint ∑_{i} l_{i} ≥ 1 in the dual, we have

1 ≤ ∑_{u,v} dist(u, v) ≤ 2n ∑_{u} dist(u, R) + \frac{1}{2}

So,

∑_{u∉R} dist(u, R) ≥ \frac{1}{4n}

Look at figure 1. Let n_{i} be the number of nodes that are at least i hops away from the region R, and r_{i} be the ratio of #edges crossing cut i to the demand crossing cut i. Then #crossing edges ≥ r_{i} · \frac{2n}{3} · n_{i} since the demand crossing cut is ≤ \frac{2n}{3} · n_{i}. And its contribution to the left hand side of the above inequality is n_{i} · \frac{f^{∗}}{m}. By average argument (contribution per edge), there is at least one cut i for which

\frac{n_{i} · \frac{f^{∗}}{m}}{r_{i} · \frac{2n}{3} · n_{i}} ≥ \frac{1/4n}{m}

So we have

r_{i} ≤ 6f^{∗}

Combining the above two cases, we can conclude that η ≤ O (f^{∗} log n).

Figure 1: One region has more than 2n/3 nodes 4