
Improved Steiner Tree Approximation in Graphs y z Gabriel Robins and Alexander Zelikovsky y Department of Computer Science, University of Virginia, Charlottesville, VA 22903-2442 [email protected], www.cs.virginia.edu/robins z Department of Computer Science, Georgia State University,Atlanta, GA 30303 [email protected], www.cs.gsu.edu/ matazz ~ Abstract The Steiner tree problem in weighted graphs seeks a minimum weight connected subgraph containing a given subset of the vertices terminals. We present a new p olynomial-time ln 3 1:55, which improves up on heuristic with an approximation ratio approaching 1+ 2 the previously b est-known approximation algorithm of [10] with p erformance ratio 1:59. In quasi-bipartite graphs i.e., in graphs where all non-terminals are pairwise disjoint, our algorithm achieves an approximation ratio of 1:28, whereas the previously b est metho d achieves an approximation ratio approaching 1:5 [19]. For complete graphs with edge weights 1 and 2, we show that our heuristic has an approximation ratio approaching 1:28, which 4 improves up on the previously b est-known ratio of [4]. Our metho d is considerably simpler 3 and easier to implement than previous approaches. Our techniques can also be used to prove that the Iterated 1-Steiner heuristic [14] achieves an approximation ratio of 1:5 in quasi-bipartite graphs, thus providing the rst known non-trivial p erformance ratio of this well-known metho d. 1 Intro duction Given an arbitrary weighted graph with a distinguished vertex subset, the Steiner Tree Problem asks for a minimum-cost subtree spanning the distinguished vertices. Steiner trees are imp ortant in various applications such as VLSI routing [14 ], wirelength estimation [6 ], phylogenetic tree reconstruction in biology [11 ], and network routing [12 ]. The Steiner Tree Problem is NP -hard even in the Euclidean or rectilinear metrics [8 ]. Arora established that Euclidean and rectilinear minimum-cost Steiner trees can b e eciently approximated arbitrarily close to optimal [1]. On the other hand, unless P = NP , the Steiner Tree Problem in general graphs cannot b e approximated within a factor of 1 + for suciently small >0 [4, 7]. For arbitrary weighted graphs, the b est Steiner approximation ratio achievable within p olynomial time was gradually decreased from 2 to 1:59 in a series of works [20 , 21 , 2 , 22 , 18 , 15 , 10 ]. In this pap er we presenta p olynomial-time approximation scheme with a p erformance ratio ln 3 1:55 which improves up on the previously b est-known ratio of 1.59 due to approaching 1 + 2 This work was supp orted bya Packard Foundation Fellowship, by National Science Foundation Young Inves- tigator Award MIP-9457412, and by a GSU Research Initiation Grant. 1 Hougardy and Promel [10 ]. We apply our heuristic to the Steiner Tree Problem in quasi-bipartite graphs i.e., where all non-terminals are pairwise disjoint. In quasi-bipartite graphs our heuristic 2 achieves an approximation ratio of 1:28 within time O mn , where m and n are the numb ers of terminals and non-terminals in the graph, resp ectively. This is an improvementover the primal- dual algorithm by Ra jagopalan and Vazirani [19 ] where the b ound is more than 1:5. We also show that a well-known Iterated 1-Steiner heuristic [13 , 9, 14 ] achieves an approximation ratio of 1:5 for quasi-bipartite graphs; previously, no non-trivial b ounds were known for the Iterated 1-Steiner heuristic. Finally,we improve the approximation ratio achievable for the Steiner Tree Problem in complete graphs with edge weights 1 and 2, by decreasing it from the previously 4 known [4] to less than 1:28 for our algorithm. 3 The remainder of the pap er is organized as follows. In the next section we intro duce basic de nitions, notation and prop erties. In Section 3 we present our main algorithm called k -LCA and formulate the basic approximation result. In Sections 4 and 5 we prove the approximation ratio of the algorithm k -LCA in general graphs and estimate the p erformance of the Iterated 1-Steiner heuristic and k -LCA in quasi-bipartite graphs and in complete graphs with weights 1 and 2. We conclude by proving in Section 6 the basic approximation result for k -LCA. 2 De nitions, Notations and Basic Prop erties Let G =V ; E ; cost be a graph with a non-negative cost function on its edges. Any tree in G spanning a given set of terminals S V is called a Steiner tree, and the cost of a tree is de ned to b e the sum of its edge costs. The Steiner Tree Problem STP seeks a minimum-cost Steiner tree. Note that a Steiner tree may contain non-terminal vertices and these are referred to as Steiner points. We can assume that the cost function over G = V ; E ; cost is metric i.e., the triangle inequality holds since we can replace any edge e 2 E with the shortest path connecting the ends of e. Henceforth we will therefore assume that G is a complete graph. Similarly, for the subgraph G induced by the terminal set S , G is a complete graph with vertex set S . S S Let MST G b e the minimum spanning tree of G . For any graph H , costH is the sum S S of the costs of all edges in H . We thus denote the cost of a minimum spanning tree of H by mstH , e.g., costMST G = mstG . For brevity,we use mst to denote mstG . In order S S S to simplify our analyses, we further assume that all edge costs in G are unique this ensures that the optimal Steiner tree and minimum spanning tree are unique. 0 0 A Steiner tree over a subset of the terminals S S in which all terminals S are leaves is called a ful l component see Figure 1a. Any Steiner tree can be decomp osed into full comp onents by splitting all the non-leaf terminals. Our algorithm will pro ceed by adding full comp onents to a growing solution, based on their \relative cost savings" this notion will be made precise b elow. We assume that any full comp onent has its own copy of each Steiner p ointso that full comp onents chosen by our algorithm do not share Steiner p oints. A Steiner tree which do es not contain any Steiner p oints i.e., where each full comp onent consists of a single edge, will be henceforth called a terminal-spanning tree. Our algorithm will compute relative cost savings with resp ect to the \shrinking" terminal-spanning tree which initially coincides with MST G . S The relative cost savings of full comp onents are represented by a ratio of how much a full comp onent decreases the cost of the current terminal-spanning tree over the cost of connecting its Steiner p oints to terminals. The cost savings of an arbitrary graph H with resp ect to a terminal-spanning tree T is the di erence b etween the cost of T and the cost of the Steiner tree 2 a a c b c b d d (a) (b) (c) Figure 1: a A full comp onent K : lled circles denote terminals and empty circles denote Steiner p oints. b Connected comp onents of LossK to b e collapsed, dashed edges b elong to LossK . c The corresp onding terminal-spanning tree C [K ] with the contracted LossK . obtained by augmenting H with the edges of T . Formally, let T [H ] b e the minimum cost graph in H [ T which contains H and spans all the terminals of S see Figure 2. The g ain of H with resp ect to T is de ned as g ain H = costT costT [H ]. If H is a Steiner tree, then T g ain H = costT costH . Note that g ain H costT mstT [ H b ecause T [H ] T T cannot cost less than MST T [ H . We will use the following prop ertyof g ain proved in [21 , 2 ]. H T T[H] (a) (b) Figure 2: a A graph H dashed edges and a terminal-spanning tree T solid edges. b The corresp onding graph T [H ] contains H and spans all the terminals. 0 Lemma 1 For any terminal-spanning tree T and graphs H and H , 0 0 g ain H [ H g ain H +g ain H T T T The minimum-cost connection of Steiner p oints of a full comp onent K to its terminals is denoted LossK . Formally, LossK isa minimum-cost forest spanning the Steiner no des of a full comp onent K such that each connected comp onent contains at least one terminal see Figure 1b. Intuitively, Loss will serve as an upp er b ound on the optimal solution cost increase during our algorithm's execution as will b e elab orated b elow. We will denote the cost of LossK by l ossK . The loss of a union of full comp onents is the sum of their individual losses. As so on as our algorithm accepts a full comp onent K it contracts its LossK , i.e. \collapses" each connected comp onentofLoss into a single no de see Figure 1c. Formally,aloss-contracted 3 full comp onent C [K ] is a terminal-spanning tree over terminals of K in which two terminals are connected if there is an edge between the corresp onding two connected comp onents in the forest LossK .
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages10 Page
-
File Size-