College of Computer & Information Science Fall 2009 Northeastern University 10 November 2009 CS7880: Algorithmic Power Tools Scribe: Hooman Javaheri

Lecture Outline:

• Complete Steiner network analysis

In this lecture, we will complete the analysis of Jain’s 2-approximation algorithm for the Generalized Steiner Network problem.

1 Review of the problem and the algorithm

The Generalized Steiner Network problem is:

Problem 1. Given a graph G(V, E), a cost function c : E → Z^{+}, and a connectivity requirement r_{uv} for each pair (u, v), find a min-cost subgraph of G satisfying the connectivity requirement for all (u, v), where u_{e} is maximum number of copies you can pick for edge e

The corresponding LP can be written this way

min ∑ c_{e}x_{e}

s.t. ∑_{e∈δ(S)} x_{e} ≥ f(S)

0 ≤ x_{e} ≤ u_{e}

where,

f(S) = max_{u,v_{u∈S,v∈S̄}} r_{uv}

δ(S) is the set of edges connecting S to \overline{S}.

Here is Jain’s algorithm for the problem:

Algorithm 1: Jain’s algorithm for generalized steiner network problem

1. F ← Ø , Define f according to r_{uv}s. f′ ← f.

2. repeat 2.1. Solve LP for f′ to obtain a solution x with desired property: ∃e s.t. x_{e} ≥ 1/2 2.2. Add ⌈x_{e}⌉ copies of all e s.t. x_{e} ≥ 1/2 to F 2.3. Remove the above edges e from G. 2.4. f′(S) ← max(0, f(S) − δ_{F} (S)) where, δ_{F} (S) is set of edges of F crossing S.

until f′(S) = 0

3. Return F

In the previous lecture, we started a 3 step approach to analyze the algorithm:

1. LP can be solved in Poly-Time ,in fact, we will find an optimal BFS in each iteration.

2. The algorithm is a 2-approximation assuming the desired property in statement 2.1 is true.

3. We finally prove the desired property in statement 2.1.

Theorem 1. Desired Property: for all BFSs, ∃e s.t. x_{e} ≥ 1/2 Actually, we will prove it for 1/3 rather than 1/2. The approach for 1/2 is the similar, but requires some complicated case analysis for which we refer to the original paper.

2 Completing the analysis: Proving Theorem 1

Having proved first two steps, we have got one step to go, the last but definitely not the least step. As we mentioned before, we are going to prove Theorem 1 in two steps. We first prove

Theorem 2. Suppose x is a BFS of Generalized Steiner Network’s LP Further assume x_{e} ∈ (0, 1) not including 0 and 1. Suppose there are m such edges. There exist a set of m tight constraints that are independent and form a laminar family.

We then prove Theorem 1 using Theorem 2.

Let’s define terminology here in more detail.

• Independent: for every S if e crosses the cut the coefficient of x_{e} in LP is 1; otherwise it is zero. Therefore, we can define a vector A_{S} of coefficients of each edge. Note that wlog, we can number the edges in arbitrary order and define A_{S} as a m dimension 0-1 vector, where m is the numbers of edges .

A collection of sets is independent if their corresponding A_{S}’s are linearly independent.

• Cross: Two sets S and T are said to cross if S − T, T − S, S ∩ T are all non-empty.

• Laminar family: A laminar family is a collection of sets no two of which cross.

2.1 Proof of Theorem 1, assuming Theorem 2.

Assuming that Theorem 2 is true, we are going to prove Theorem 1. First, let’s take a close look at a laminar family. Let L denote the laminar family in Figure 1. As we mentioned before laminar family can be represented with a tree hierarchy. Figure 2 shows the corresponding tree for laminar family L.

In order to prove that ∃e s.t. x_{e} ≥ 1/3, we only need to show ∃ set S in this Laminar family that has at most 3 1’s in its A_{S} (i. e. there are at most 3 edges crossing this set). We will show that if all sets have more than 3 crossing edges, then the total number of edge endpoints exceeds 2m, which is a contradiction.

Let us consider an easy case first. Suppose all sets are disjoint. We have m edges corresponding to 2m end-points. In this scenario, each edge crosses two sets. Considering we have only m sets, it is trivial to see that Theorem 1 holds true in this situation.

Figure 1: Laminar Family L

For a slightly harder case, let’s look at the tree corresponding to first 10 sets of the laminar family L (Figure 2.). If we assume that each set has at least 4 crossing edges, adding up the number of the edges for leaves of the tree, we will have 24 end-points which is not possible since we at most have 20 endpoints for 10 sets.

The full argument is by processing the tree formed by a laminar family (actually a tree of the forest formed by a laminar family) in a bottom-up manner. We will show that if every set of the laminar family has at least 4 crossing edges, then we can do the processing such that we associate two endpoints with every node of the tree and four endpoints at the root, all distinct from one another, leading to a total of more than 2m endpoints, a contradiction. In our argument, we will only associate an endpoint with a node (set) if the endpoint lies in the set (note that the endpoint may not correspond to an edge that crosses the set).

The above claim is true at the leaves by our assumption that each set has at least 4 edges crossing it. Now suppose we have maintained the above invariant for all children of a particular node (set) S. If S has more than one child, then we can “move up” two of the endpoints associated with each of its children to S, and maintain the invariant. So the difficult case is when S has only one child, say T (e.g., the tree with only four nodes in Figure 2). First, of the at least 4 endpoints we have associated with T, we “move up” 2 to S. Since S is independent from its child set T, there is at least one edge that crosses S and not T or vice versa. In fact, since both sets are tight and all the x_{e} variables are in (0, 1), there should be at least two such edges. There is an end-point within S − T corresponding to both of these that will be associated with S, giving it a count of 4 endpoints.

2.2 Proof of Theorem 2.

Definition: Function δ is SUBMODULAR if for all S and T both of the following conditions hold:

|δ(S)| + |δ(T)| ≥ |δ(S − T)| + |δ(T − S)|
|δ(S)| + |δ(T)| ≥ |δ(S ∩ T)| + |δ(T ∪ S)|

Figure 2: Corresponding tree for L

We can easily show that δ(S) in our problem is submodular. Figure 3 depicts S and T crossing. We can define 6 types of edges corresponds to their origins and destinations. Using the counting argument it’s easy to see that all types of edges but Type V I counts in both right-hand-side and let-hand-side equally and type V I edges only count toward the left-hand side.

Lemma 1. If S and T are crossing and tight, then either S − T and T − S are tight and A_{S−T} + A_{T −S} = A_{S} + A_{T} or S ∩ T and S ∪ T are tight and A_{S∩T} + A_{T ∪S} = A_{S} + A_{T}.

Proof. Given solution x, S and T, if x is tight at S and T we have

δ_{x}(S) = ∑_{e∈δ(S)} x_{e} = f(S)

δ_{x}(T) = ∑_{e∈δ(T)} x_{e} = f(T)

To prove the lemma, we need the following result, whose proof is similar to that of (and also uses) the submodularity of the cut functions.

Lemma 2. f(S) is weakly supermodular; that is at least one of the following two conditions hold.

f(S) + f(T) ≤ f(S − T) + f(T − S)
f(S) + f(T) ≤ f(S ∩ T) + f(S ∪ T)

Let us suppose f(S) + f(T) ≤ f(S − T) + f(T − S), Therefore

δ_{x}(S − T) + δ_{x}(T − S) ≤ δ_{x}(S) + δ_{x}(T)
= f(S) + f(T)
≤ f(S − T) + f(T − S).

Figure 3: Submodularity of cut function.

Since x is feasible, δ(S −T) ≥ f(S −T) and δ_{x}(T −S) ≥ f(S −T). Therefore, δ_{x}(S −T) = f(S −T) and δ_{x}(T − S) = f(T − S). We then also have

δ_{x}(S − T) + δ_{x}(T − S) = δ_{x}(S) + δ_{x}(T)

This leads to

A_{S−T} + A_{T −S} = A_{S} + A_{T}

Note: assuming second part of Lemma 2 and a similar approach we can show that S ∩ T and S ∪ T are tight and A_{S∩T} + A_{T ∪S} = A_{S} + A_{T}.

Lemma 3. Let L be a laminar family and S be a set not in L and also independent of L. Suppose S crosses T in L. Then each of S ∩ T, S ∪ T, S − T, T − S cross fewer sets in L than S.

Proof. Figure 4 depicts S crossing T. Imagine how the other sets in L can cross S. There are in total 3 types of crossing sets. S may cross all 3 types, while S − T ans S ∪ T only cross Type I and II, also T − S and S ∩ T only cross Type III. None of these sets cross T. Therefore, each of those sets crosses fewer sets than S itself.

Finally, we show that given a laminar family L and a tight set S that is independent with respect to L, if S crosses a set in L, then we can find another tight set that crosses fewer sets in L than S L, is independent with respect to L. We can apply this process repeatedly to determine the desired laminar family of Theorem 2.

Lemma 4. Let S be a tight set and L be a laminar family such that S is independent of L and S crosses a set in L. Then, there exists a tight set that crosses fewer sets in L than S L, is independent with respect to L.

Figure 4: Crossings for S, T, S − T, T − S, S ∩ T, and S ∪ T.

Proof. Suppose S crosses T in L. Suppose the first part of Lemma 1 holds (the other part is similar). Then, S − T and T − S are both tight and A_{S−T} + A_{T −S} = A_{S} + A_{T}. Both A_{S−T} and A_{T −S} cannot be linearly dependent on L, since otherwise A_{S} will also be linearly dependent, contradicting our assumption. Without loss of generality, suppose S − T is linearly independent of L. By Lemma 2, S − T has a smaller crossing number with respect to L than S. This completes the proof of the lemma.