Recent Results on Approximating the Steiner Tree Problem and its. Vijay V. Vazirani

Similar documents
Bicriteria Network Design via Iterative Rounding

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

6. Lecture notes on matroid intersection

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

5. Lecture notes on matroid intersection

Steiner Trees and Forests

In this lecture, we ll look at applications of duality to three problems:

Approximation algorithms for finding a -connected subgraph of a graph with minimum weight

12 Introduction to LP-Duality

12.1 Formulation of General Perfect Matching

SURVIVABLE NETWORK DESIGN WITH DEGREE OR ORDER CONSTRAINTS

Approximating Node-Weighted Multicast Trees in Wireless Ad-Hoc Networks

Matching Theory. Figure 1: Is this graph bipartite?

Paths, Flowers and Vertex Cover

Approximation Algorithms

Theorem 2.9: nearest addition algorithm

Approximation Algorithms

Bottleneck Steiner Tree with Bounded Number of Steiner Vertices

the element connectivity problem Kamal Jain Ion Mandoiu Vijay V.Vazirani David P. Williamson y SNDP.A-approximation algorithm for the SNDP runs

Lecture 8: The Traveling Salesman Problem

Mathematical and Algorithmic Foundations Linear Programming and Matchings

The Encoding Complexity of Network Coding

of Two 2-Approximation Algorithms for the Feedback Vertex Set Problem in Undirected Graphs Michel X. Goemans y M.I.T. David P. Williamson x IBM Watson

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

Lecture 9: Pipage Rounding Method

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

1. Lecture notes on bipartite matching

PLANAR GRAPH BIPARTIZATION IN LINEAR TIME

Approximation Algorithms: The Primal-Dual Method. My T. Thai

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

Parameterized graph separation problems

Notes for Lecture 24

A primal dual interpretation of two 2-approximation algorithms for the feedback vertex set problem in undirected graphs

4 Fractional Dimension of Posets from Trees

On Covering a Graph Optimally with Induced Subgraphs

Progress Towards the Total Domination Game 3 4 -Conjecture

1. Lecture notes on bipartite matching February 4th,

Dual-Based Approximation Algorithms for Cut-Based Network Connectivity Problems

Treewidth and graph minors

On linear and semidefinite programming relaxations for hypergraph matching

2 The Fractional Chromatic Gap

The strong chromatic number of a graph

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

CS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri

Definition For vertices u, v V (G), the distance from u to v, denoted d(u, v), in G is the length of a shortest u, v-path. 1

Approximation Algorithms

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0).

Algorithms for Euclidean TSP

Subdivisions of Graphs: A Generalization of Paths and Cycles

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

Applications of the Linear Matroid Parity Algorithm to Approximating Steiner Trees

Complexity Results on Graphs with Few Cliques

A Note on Polyhedral Relaxations for the Maximum Cut Problem

Localization in Graphs. Richardson, TX Azriel Rosenfeld. Center for Automation Research. College Park, MD

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret

A General Class of Heuristics for Minimum Weight Perfect Matching and Fast Special Cases with Doubly and Triply Logarithmic Errors 1

COMP260 Spring 2014 Notes: February 4th

Discrete mathematics , Fall Instructor: prof. János Pach

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph.

Rearrangement of DNA fragments: a branch-and-cut algorithm Abstract. In this paper we consider a problem that arises in the process of reconstruction

Monochromatic loose-cycle partitions in hypergraphs

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

CSC Linear Programming and Combinatorial Optimization Lecture 12: Semidefinite Programming(SDP) Relaxation

Stanford University CS261: Optimization Handout 1 Luca Trevisan January 4, 2011

Algorithm Design and Analysis

A 4-Approximation Algorithm for k-prize Collecting Steiner Tree Problems

Approximation Algorithms for Finding Highly. Samir Khuller. Dept. of Computer Science. University of Maryland. College Park, MD 20742

8 Matroid Intersection

Decreasing the Diameter of Bounded Degree Graphs

Analysis of an ( )-Approximation Algorithm for the Maximum Edge-Disjoint Paths Problem with Congestion Two

Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft)

Advanced Combinatorial Optimization September 17, Lecture 3. Sketch some results regarding ear-decompositions and factor-critical graphs.

11. APPROXIMATION ALGORITHMS

Two Characterizations of Hypercubes

Approximability Results for the p-center Problem

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra

Bipartite Roots of Graphs

2. Lecture notes on non-bipartite matching

Abstract. A graph G is perfect if for every induced subgraph H of G, the chromatic number of H is equal to the size of the largest clique of H.

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

A Faster Implementation of the Goemans-Williamson Clustering Algorithm

The Structure of Bull-Free Perfect Graphs

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

A Reduction of Conway s Thrackle Conjecture

An O(log 2 k)-approximation Algorithm for the k-vertex Connected Spanning Subgraph Problem

Hardness of Subgraph and Supergraph Problems in c-tournaments

1 Introduction and Results

1 Variations of the Traveling Salesman Problem

IPCO Location: Bonn, Germany Date: June 23 25,

3 No-Wait Job Shops with Variable Processing Times

PTAS for Matroid Matching

Approximation Algorithms for Finding Low-Degree Subgraphs

Lecture Overview. 2 The Steiner Tree Problem. 2.1 Steiner tree: a 2-approximation algorithm. COMPSCI 590.1: Graph Algorithms March 22, 2015

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem

A step towards the Bermond-Thomassen conjecture about disjoint cycles in digraphs

Expected Approximation Guarantees for the Demand Matching Problem

Combinatorial Optimization

Transcription:

Recent Results on Approximating the Steiner Tree Problem and its Generalizations Vijay V. Vazirani 1 Introduction The Steiner tree problem occupies a central place in the emerging theory of approximation algorithms { methods devised to attack it have led to fundamental paradigms for the rest of the area. The reason for interest in this problem lies not only in its rich mathematical structure, but also because it has arisen repeatedly in diverse application areas. Even though the Euclidean Steiner tree problem is fairly well understood by now (see [2]), there are vast gaps in our understanding of the metric Steiner tree problem and its generalizations and variants. In this short survey, we will present the key ideas behind the following two results obtained in the last year: Promel and Steger's [18] factor 5 + approximation algorithm, for any constant 3 > 0, for the metric Steiner tree problem, and Jain's [12] factor 2 approximation algorithm for the Steiner network problem. Finally, we will mention a recent result [19] on what is perhaps the most compelling open problem in this area: to design an algorithm using the bidirected cut relaxation for the metric Steiner tree problem, and determine the integrality gap of this relaxation. 2 Steiner trees via matroid parity The metric Steiner tree problem is: Given a graph G = (V; E) whose vertices are partitioned into two sets, R and S, the required and Steiner vertices, and a function cost : E! Q + specifying non-negative costs for the edges, nd a minimum cost tree containing all the required vertices and any subset of the Steiner vertices. It is easy to see that the edge costs can be assumed to satisfy the triangle inequality without loss of generality. It is easy to see that for any constant r 2, one can construct in polynomial time an optimal Steiner tree connecting r of the required vertices R. Clearly, this can also be done for all subsets of at most r required vertices in polynomial time. Can a low cost Steiner tree be constructed in G using this information? To state this scheme formally, we need some denitions. A hypergraph H = (V; F ) is a generalization of a graph, allowing F to be an arbitrary family of subsets of V, instead of just 2 element subsets. A sequence of distinct vertices and hyperedges, v 1 ; e 1 ; : : :; v l ; e l, for l 2 is said to be a cycle in H if v 1 2 e 1 \ e l and for 2 i l, v i 2 e i?1 \ e i. College of Computing, Georgia Institute of Technology, vazirani@cc.gatech.edu 1

A subgraph of H, H 0 = (V; F 0 ), with F 0 F is said to be a spanning tree of H if it is connected, acyclic and spans all vertices of V. Unlike the case of a graph, a hypergraph may not have a spanning tree even though it is connected. Hypergraph H is said to be r-regular if every hyperedge in F consists of r vertices. For a constant r 2, let H r be the hypergraph on vertex set R consisting of all possible hyperedges containing at most r vertices. The cost of such a hyperedge will be the cost of a minimum cost Steiner tree on this set of vertices in G. A spanning tree in H r yields a Steiner tree in G { replace each hyperedge used by the spanning tree by an optimal Steiner tree connecting its vertices; in the end, if there are cycles, remove edges until a tree is obtained. Clearly, the cost of the Steiner tree obtained is bounded by the cost of the spanning tree. Let r denote the supremum over all graphs G of the ratio of the cost of a minimum cost spanning tree in H r and an optimal Steiner tree in G. Next, let us address the following two questions: what is r as a function of r, and can a minimum cost spanning tree be constructed in polynomial time in H r? For r = 2, this just corresponds to nding a minimum spanning tree on the set of required vertices; furthermore, it is easy to show that 2 = 2. Zelikovsky [21] proved that 3 = 5=3, and Borchers and Du proved that r = ((t + 1)2 t + l)=(t2 t + l) for r = 2 t + l; 0 l < 2 t. Thus r! 1 for r! 1. On the other hand, the problem of constructing a minimum spanning tree in H r is NP-hard for any xed r 4. So this scheme cannot yield an approximation algorithm better than 5=3. For r = 3, the complexity of this computational problem is still open. Promel and Steger show that this problem is in RPif the costs of the hyperedges are given in unary. Now, by scaling the given weights appropriately, one can obtain a polynomial time approximation scheme for this problem. Overall, this gives a 5=3 + factor randomized algorithm for the Steiner tree problem for any xed > 0. Let us provide an overview of the ideas involved. Lemma 1 The problem of nding a minimum cost spanning tree in H 3 can be reduced to that of nding a minimum cost spanning tree in a 3-regular hypergraph. Proof : Let the number of vertices in H 3, jrj = n. Let the maximum cost of a hyperedge in H 3 be c, and let M = nc. We will construct a 3-regular hypergraph H on the set of vertices R [ Z, where jzj = n? 1. All hyperedges of size 3 in H 3 will be included in H with their original costs. In addition, for each edge e in H 3, we will include hyperedges e [ fzg in H, for each z 2 Z; each has cost cost(e) + M. These will be called type 1 hyperedges. Furthermore, for each v 2 R and z 1 ; z 2 2 Z, we will include the hyperedge fv; z 1 ; z 2 g with cost 2M; these will be called type 2 hyperedges. Let T be a spanning tree in H 3, and let its number of size 2 and 3 hyperedges be n 2 and n 3 respectively. Since T is a spanning tree, n 2 + 2n 3 = n? 1. Therefore n? 1? n 2 is even. Hence augmenting each size 2 hyperedge with a distinct Z vertex leaves an even number of Z vertices uncovered. These can be picked with type 2 hyperedges to yield a spanning tree in H of cost cost(t ) + (n? 1)M. Similarly, a spanning tree T 0 in H yields a spanning tree of cost cost(t 0 )? (n? 1)M in H 3 by dropping type 2 hyperedges and removing Z vertices from type 1 hyperedges. The lemma follows. 2 Lemma 2 The problem of nding a minimum cost spanning tree in a 3-regular hypergraph can be reduced to the minimum weight matroid parity problem. 2

Proof : Let H = (V; F ) be a 3-regular hypergraph. A new graph H 0 on vertex set V is constructed as follows: corresponding to each hyperedge fv 1 ; v 2 ; v 3 g 2 F, we add the edge pair (v 1 ; v 2 ) and (v 1 ; v 3 ) to H 0 (the choice of v 1 is arbitrary). The cost of this pair is the same as that of the hyperedge. let F 0 be a set of hyperedges in H, and F 00 be the corresponding set of edge pairs in H 0. It is easy to see that F 0 is a spanning tree for H i F 00 is a spanning tree for H 0. Consider the graphic matroid in H 0, impose the additional restriction that independent sets must pick both edges of a pair or neither, and nd a maximal independent set of minimum weight. This is the minimum weight matroid parity problem. By the remark made earlier, a solution to this problem gives a minimum cost spanning tree in H. 2 Interestingly enough, determining the complexity of minimum weight matroid parity is still open, even though the cardinality version of this problem is known to be in P[15]. However, if the weights are given in unary, the problem is in RP[5] and even in RNC[16]. This gives the Promel-Steger result. For other algorithms for this problem see [3, 13]. An algorithm achieving a slightly better approximation factor of 1.644 appears in [14]. However, it is too involved in its current form for this survey; moreover, to beat the factor of 5=3, it takes time exceeding O(n 20 ). 3 Steiner networks via LP-rounding The Steiner network problem generalizes the metric Steiner tree problem to higher connectivity requirements: Given a graph G = (V; E), a cost function on edges c : E! Q + (not necessarily satisfying the triangle inequality), and a connectivity requirement function r mapping unordered pairs of vertices to Z + nd a minimum cost graph that has r(u; v) edge disjoint paths for each pair of vertices u; v 2 V. Multiple number of copies of any edge can be used to construct this graph; each copy of edge e will cost c(e). For this purpose, for each edge e 2 E, we are also specied u e 2 Z + [ f1g stating an upper bound on the number of copies of edge e we are allowed to use; if u e = 1, then there is no bound on the number of copies of edge e. All LP-duality based approximation algorithms for the metric Steiner tree problem and its generalizations work with the undirected relaxation [1, 9, 10, 20]. In order to give the integer programming formulation on which this relaxation is based, we will dene a cut requirement function f : 2 V! Z +. For S V, f(s) is dened to be the largest connectivity requirement separated by the cut (S; S), i.e., f(s) = maxfr(u; v)ju 2 S and v 2 Sg. Let us denote the set of edges in the cut (S; S) by (S). The integer program has a variable x e for each edge e: minimize subject to The LP-relaxation is: e2e c e x e e: e2(s) x e f(s); S V x e 2 Z + ; e 2 E and u e = 1 x e 2 f0; 1; : : :; u e g; e 2 E and u e 6= 1 (1) 3

minimize subject to e2e c e x e e: e2(s) x e f(s); S V x e 0; e 2 E and u e = 1 u e x e 0; e 2 E and u e 6= 1 (2) Figure 1: An optimal extreme point solution for the Petersen graph. Certain NP-hard problems, such a vertex cover [17] and node multiway cut [7] admit LP-relaxations having the remarkable property that they always have a half-integral optimal solution. Clearly, rounding up all halves to 1 in such a solution leads to a factor 2 approximation algorithm. Does the relaxation (2) have this property? The answer is \No". Not surprisingly, the Petersen graph is a counter-example: Consider the minimum spanning tree problem on this graph, i.e., for each pair of vertices u; v; r(u; v) = 1. Each edge is of unit cost. Since the Petersen graph is 3-edge connected (in fact, it is 3-vertex connected as well), x e = 1=3 for each edge e is a feasible solution. Moreover, this solution is optimal, since the degree of each vertex under this solution is 1, the minimum needed to allow the connectivity required. The cost of this solution is 5. A half integral solution of cost 5 would have to pick, to the extent of half each, the edges of a Hamiltonian cycle. Since the Petersen graph has no Hamiltonian cycles, there is no half integral optimal solution. Let us say that an extreme point solution, also called a vertex solution or a basic feasible solution, for an LP is a feasible solution that cannot be written as the convex combination of two feasible solutions. It turns out that the solution, x e = 1=3 for each edge e, is not an extreme point solution. An extreme point solution is shown in Figure 1; thick edges are picked to the extent of 1=2, thin edges to the extent of 1=4, and the missing edge is not picked. The isomorphism group of the Petersen graph is edge-transitive, and so there are 15 related extreme point solutions; the solution x e = 1=3 for each edge e is the average of these. Notice that although the extreme point solution 4

is not half-integral, it picks some edges to the extent of half. Jain's algorithm is based on proving that in fact any extreme point solution to LP (2) must pick at least one edge to the extent of at least a half. We will pay a factor of at most 2 in rounding up all such edges. But now how do we proceed? Let us start by computing the residual cut requirement function. Suppose H is the set of edges picked so far. Then, the residual requirement of cut (S; S) is f 0 (S) = maxff(s)? j H (S)j; 0g; where H (S) represents the set of edges of H crossing the cut (S; S). In general, the residual cut requirement function, f 0, may not correspond to the cut requirement function for a certain set of connectivity requirements. We will need the following denitions to characterize it: Denition 3 Function f : 2 V! Z + is said to be submodular if f(v ) = 0, and for every two sets A; B V, the following two conditions hold: 1. f(a) + f(b) f(a? B) + f(b? A). 2. f(a) + f(b) f(a \ B) + f(a [ B). Notice that for any graph G on vertex set V, the function j G (:)j is submodular. Denition 4 Function f : 2 V! Z + is said to be weakly supermodular if f(v ) = 0, and for every two sets A; B V, at least one the following conditions holds: f(a) + f(b) f(a? B) + f(b? A) f(a) + f(b) f(a \ B) + f(a [ B) The following is an easy consequence of the denitions: Lemma 5 Let H be a subgraph of G. If f : 2 V (G)! Z + is a weakly supermodular function, then so is the residual cut requirement function f 0. It is easy to see that the original cut requirement function is weakly supermodular; by Lemma 5, so is the residual cut requirement function. Henceforth, we will assume that the function f used in LP (2) is a weakly supermodular function. We can now state the central polyhedral fact proved by Jain in its full generality. This will enable us to design an iterative algorithm for the Steiner network problem. Theorem 6 For any weakly supermodular function f, any extreme point solution, x, to LP (2) must pick some edge to the extent of at least a half, i.e., x e 1=2 for at least one edge e. The algorithm that we started to design above can now be completed: in each iteration, round up all edges picked to the extent of at least a half in an optimal extreme point solution, and update the residual cut requirement function. The algorithm halts when the original cut requirement function 5

is completely satised, i.e., the residual cut requirement function is identically zero. Using a max- ow subroutine, one can obtain a separation oracle for LP (2) for any residual cut requirement function f, and so an optimal extreme point solution can be computed in polynomial time. Let us sketch how Theorem 6 is proven. From polyhedral combinatorics we know that a feasible solution to a set of linear inequalities in R m is an extreme point solution i it satises m linearly independent inequalities with equality. W.l.o.g. we can assume that in any optimal solution to LP (2), for each edge e, 0 < x e < 1 (since edges with x e = 0 can be dropped from the graph, and those with x e = 1 can be permanently picked and the cut requirement function updated accordingly). So, the tight inequalities of an optimal extreme point solution to LP (2) must correspond to cut requirements of sets; in this case, we will say that this set is tight. We will say that a collection, L, of subsets of V forms a laminar family if no two sets in this collection cross. The inequality corresponding to a set S denes a vector in R m : the vector has a 1 corresponding to each edge e 2 G (S), and 0 otherwise. We will call this the incidence vector of set S, and will denote it by A S. Theorem 7 Corresponding to any extreme point solution to LP (2) there is a collection of m tight sets such that their incidence vectors are linearly independent, and collection of sets forms a laminar family. The extreme point solution for the Peterson graph given in Figure 1 assigns non-zero values to 14 of the 15 edges. By Theorem 7, there should be 14 tight sets whose incidence vectors are linearly independent. These are marked in Figure 1. Fix an extreme point solution, x, to LP (2). Let L be a laminar family of tight sets whose incidence vectors are linearly independent. Denote by span( L) the vector space generated by the set of vectors fa S js 2 Lg. Since x is an extreme point solution, the span of the collection of all tight sets is m. We will show that if span( L) < m, then there is a tight set S whose addition to L does not violate laminarity and also increases the span. Continuing in this manner, we will obtain m tight sets as required in Theorem 7. We begin by studying properties of crossing tight sets. Lemma 8 Let A and B be two crossing tight sets. Then, one of the following must hold: A? B and B? A are both tight and A A + A B = A A?B + A B?A A [ B and A \ B are both tight and A A + A B = A A[B + A A\B. Proof : Since f is weakly supermodular, either f(a) + f(b) f(a? B) + f(b? A) or f(a) + f(b) f(a [ B) + f(a \ B). Let us assume the former holds; the proof for the latter is similar. Since A and B are tight, we have x(a) + x(b) = f(a) + f(b): 6

Since A? B and B? A are not violated, Therefore, x(a? B) + x(b? A) f(a? B) + f(b? A): x(a) + x(b) x(a? B) + x(b? A): Edges having one endpoint in A [ B and the other in A \ B can contribute only to the l.h.s. of this inequality. The rest of the edges must contribute equally to both sides. So, this inequality must be satised with equality. Furthermore, since x e > 0 for each edge e, G cannot have any edge having one endpoint in A [ B and the other in A \ B. Therefore, A A + A B = A A?B + A B?A. 2 For any set S V, dene its crossing number to be the number of sets of L that S crosses. Lemma 9 Let S be a set that crosses set T 2 L. Then, each of the sets S? T; T? S; S [ T and S \ T has a smaller crossing number than S. Proof : The gure below illustrates the three ways in which a set T 0 2 L can cross one of these four sets without crossing T itself (T 0 is shown dotted). In all cases, T 0 crosses S as well. In addition, T crosses S but not any of the four sets. 2 S T Lemma 10 Let S be a tight set such that A S 62 span( L) and S crosses some set in L. Then, there is a tight set S 0 having a smaller crossing number than S, and such that A S 0 62 span( L). Proof : Let S cross T 2 L. Suppose the rst possibility established in Lemma 8 holds; the proof of the second possibility is similar. Then, S? T and T? S are both tight sets and A S + A T = A S?T + A T?S. This linear dependence implies that A S?T and A T?S cannot both be in span( L), since otherwise A S 2 span( L). By Lemma 9, S? T and T? S both have a smaller crossing number than S. The lemma follows. 2 Corollary 11 If span( L) 6= R m, then there is a tight set S such that A S 62 span( L) and L [ fsg is a laminar family. By Corollary 11, if L is a maximal laminar family of tight sets with linearly independent incidence vectors, then j Lj = m. This establishes Theorem 7. 7

3.1 A counting argument The characterization of extreme point solutions given in Theorem 7 yields Theorem 6 via a fairly involved counting argument. A considerably simpler argument, in the same style, leads to a slightly weaker result { showing that some edge must be picked to the extent of at least a third. We present this argument below. Let x be an extreme point solution and L be the collection of tight sets established in Theorem 7. The number of sets in L equals the number of edges in G, i.e., m. The degree of S is dened to be j G (S)j. The result claimed above will follow from: Lemma 12 There is a set S 2 L whose degree is at most 3. Since L is a laminar family, it can be viewed as a forest of trees if its elements are ordered by inclusion. Let us make this precise. For S 2 L, if S is not contained in any other set of L, then we will say that S is a root set. If S is not a root set, we will say that T is the parent of S if T is a minimal set in L containing S; by laminarity of L, T is unique. Further, S will be called a child of T. Let the relation descendent be the reexive transitive closure of the relation \child". Sets that have no children will be called leaves. In this manner, L can be partitioned into a forest of trees, each rooted at a root set. For any set S, by the subtree rooted at S we mean the set of all descendents of S. Edge e is incident at set S if e 2 G (S). Set S owns endpoint v of edge e = (u; v) if S is the smallest set of L containing v. The subtree rooted at set S owns endpoint v of edge e = (u; v) if some descendent of S owns v. We will prove Lemma 12 by contradiction. Assume that for each set S 2 L, the cut (S; S) contains at least 3 edges. Since G has m edges, it has 2m endpoints. We will prove that the for any set S, the endpoints owned by the subtree rooted at S can be redistributed in such a way that S gets at least 4 endpoints, and each of its proper descendents gets 2 endpoints. Carrying out this procedure for each of the root sets of the forest, we get that the total number of endpoints in the graph must exceed 2m, leading to a contradiction. Lemma 13 If set S has only one child, then it must own at least two endpoints. Proof : Let S 0 be the child of S. If S has no end point incident at it, the set of edges incident at S and S 0 must be the same. But then A S = A S 0, leading to a contradiction. S cannot own exactly one endpoint, because then x(s) and x(s 0 ) will dier by a fraction, contradicting the fact that both these sets are tight and have integral requirements. The lemma follows. 2 Lemma 14 Consider a tree T rooted at set S. Under the assumption that each set in L has degree at most 3, the endpoints owned by T can be redistributed in such a way that the S gets at least 4 end points, and each of its proper descendents gets 2 endpoints. Proof : The proof is by induction on the height of tree T. The base case is obvious. 8

Let us say that a set has a surplus of 2 if 4 endpoints have been assigned to it. For the induction step, consider a non-leaf set S. We will prove that by moving the surplus of the children of S and considering the endpoints owned by S itself, we can assign the 4 endpoints to S. The induction step involves two cases: 1. If S has 2 or more children, we can assign the surplus of each child to S, thus assigning at least 4 endpoints to S. 2. If S has one child, say S 0, then by Lemma 13, S owns at least 2 endpoints. So, moving the surplus of S 0, we can assign 4 endpoints to S. The integrality gap of a relaxation is the supremum of the ratio of costs of optimal integral and optimal fractional solutions. Its importance lies in the fact that it limits the approximation factor that an algorithm using this relaxation can achieve. As a consequence of the factor 2 approximation algorithm for the Steiner network problem, we also get that the integrality gap of the undirected relaxation is 2. Previously, algorithms achieving guarantees of 2k [20] and 2H k [10], where k is the largest requirement, were obtained for this problem. 2 4 The bidirected cut relaxation The undirected relaxation has an integrality gap of 2 not only for as general a problem as the Steiner network problem, but also for the minimum spanning tree problem, a problem in P! For a proof of the latter claim, consider a cycle on n vertices, with all edges of unit cost. The optimal integral solution to the minimum spanning tree problem on this graph is to pick n? 1 edges for a cost of n? 1, but an optimal fractional solution picks each edge to the extent of a half, for a total cost of n=2. The ratio of the two solutions is 2? 2=n. Two fundamental questions arise: Is there an exact relaxation, i.e., with integrality gap 1, for the minimum spanning tree problem? Is there a tighter relaxation for the metric Steiner tree problem? The two questions appear to be intimately related: The answer to the rst question is \Yes". This goes back to the seminal work of Edmonds [6], giving a primal-dual schema based polynomial time algorithm for the even more general problem of nding a minimum branching in a directed graph. A similar idea gives a remarkable relaxation for the metric Steiner tree problem: the bidirected cut relaxation. This relaxation is conjectured to have integrality gap close to 1; the worst example known, due to Goemans [8], has integrality gap of 8=7. However, despite the fact that this relaxation has been known for decades, no algorithms have been designed using it, and the only upper bound known on its integrality gap is the trivial bound of factor 2 which follows from the undirected relaxation. 9

Recently, [19] have given a primal-dual schema based factor 3=2 approximation algorithm using this relaxation for the special class of quasi-bipartite graphs; a graph is quasi-bipartite if it contains no edges between two Steiner vertices. Part of the diculty of designing an algorithm using the bidirected cut relaxation arises from edges running between Steiner vertices. Restricting to quasibipartite graphs enables [19] to nesse this diculty and address the rest of the aspects of the problem. Thus, the progress reported in this paper is quite similar to that made on the matching problem by restricting to bipartite graphs, thereby nessing the diculty created by odd cycles. We present below the bidirected cut relaxation, and leave the open problem of designing an approximation algorithm beating factor 2 using it. 4.1 The bidirected cut relaxation First replace each undirected edge (u; v) of G by two directed edges (u! v) and (v! u) each of cost cost(u; v). Denote the graph so obtained by ~G = (V; ~E). Pick an arbitrary vertex r 2 R and designate it to be the root. W.r.t. the choice of a root, a set C V will be called a valid set if C contains at least one required vertex and C contains the root. The following integer program is trying to pick a minimum cost collection of edges from ~ E in such a way that each valid set has at least one out-edge. It is easy to see that an optimal solution to this program will be a minimum cost Steiner tree directed into r. minimize subject to e2 ~ E cost(e)x e (3) e: e2(c) x e 1; 8 valid set C x e 2 f0; 1g; 8e 2 ~E The LP-relaxation of this integer program is called the bidirected cut relaxation for the metric Steiner tree problem. (Notice that there is no need to explicitly add the constraints upper-bounding variables x e.) minimize subject to e2 ~ E cost(e)x e (4) e: e2(c) x e 0; x e 1; 8 valid set C 8e 2 ~ E It is easy to verify that the choice of the root does not aect the cost of the optimal solution to the IP or the LP. As usual, the dual is seeking a maximum cut packing. 10

5 Acknowledgement This paper is based on a talk I gave at the Conference in Honour of Manuel Blum's 60 th Birthday. It was indeed an honour to attend this special event { Manuel was my Ph.D. advisor. References [1] A. Agrawal, P. Klein, and R. Ravi. When trees collide: An approximation algorithm for the generalized Steiner problem on networks. SIAM Journal on Computing, 24(3):440{456, June 1995. [2] S. Arora. Nearly linear time approximation schemes for Euclidean TSP and other geometric problems. In 38th Annual Symposium on Foundations of Computer Science, pages 554{563, Miami Beach, Florida, 20{22 October 1997. IEEE. [3] P. Berman and V. Ramaiyer. Improved approximations for the Steiner tree problem. J. Algorithms, 17, 381-408, 1994. [4] A. Borchers and D.Z. Du, The k-steiner ratio in graphs. STOC, 641-649, 1995. [5] P. Camerini, G. Galbiati, and F. Maoli. Random pseudo-polynomial algorithms for exact matroid problems. J. Algorithms 13, 258-273, 1992. [6] J. Edmonds. Optimum branchings. J. Res. Nat. Bur. Standards, B71:233{240, 1967. [7] N. Garg, V. V. Vazirani, and M. Yannakakis. Approximation algorithms for multiway cuts in node-weighted and directed graphs. Proc. 21th International Colloquium on Automata, Languages and Programming, 1994. [8] M. Goemans. Personal communication, 1996. [9] M.. Goemans and D.P. Williamson. A general approximation technique for constrained forest problems. SIAM Journal on Computing, 24(2):296{317, April 1995. [10] M.. Goemans, A. Goldberg, S. Plotkin, D. Shmoys, E. Tados, and D.P. Williamson. Approximation algorithms for network design problems. SODA, 223-232, 1994. [11] M. Grotschel, L. Lovasz, and A. Schrijver. The ellipsoid method and its consequences in combinatorial optimization. Combinatorica, 1(2):169{197, 1981. [12] K. Jain. A factor 2 approximation algorithm for the generalized steiner network problem. manuscript, 1998. [13] L. Kou, G. Markowsky, and L. Berman. A fast algorithm for Steiner trees. Acta Informatica 15, 141-145, 1981. [14] M. Karpinski and A. Zelikovsky. New approximation algorithms for the Steiner tree problem. Electr. Colloq. Comput. Compl., TR95-030, 1995. 11

[15] L. Lovasz. The matroid matching problem. Algebraic Methods in Graph Theory, Colloquia Mathematica Societatis Janos Bolyai, Szeged (Hungary), 1978. [16] H. Narayanan, H. Saran, and V.V. Vazirani. Randomized parallel algorithms for matroid union and intersection, with applications to arborescences and edge-disjoint spanning trees. [17] G. L. Nemhauser and L. E. Trotter, Jr.. Vertex packing: structural properties and algorithms. Mathematical Programming, 8:232-248, 1975. [18] H. J. Promel and A. Steger. RNC-approximation algorithms for the Steiner problem. In R. Reischuk and M. Morvan, editors, Proceedings of the Symposium on Theoretical Aspects of Computer Science, volume 1200 of Lecture Notes in Computer Science, pages 559{570. Springer-Verlag, Berlin, Germany, 1997. [19] S. Rajagopalan and V.V. Vazirani. On the Bidirected Cut Relaxation for the Metric Steiner Tree Problem. Submitted, 1998. [20] D. Williamson, M. Goemans, M. Mihail, and V. Vazirani. A primal-dual approximation algorithm for generalized steiner network problems. Combinatorica, 15, 1995. [21] A. Zelikovsky. An 11/6-approximation algorithm for the network Steiner problem. Algorithmica, 9:463{470, 1993. 12