On Approximation of the Power-p and Bottleneck Steiner Trees Piotr Berman
Alexander Zelikovskyy
Abstract
Many VLSI routing applications, as well as the facility location problem involve computation of Steiner trees with non-linear cost measures. We consider two most frequent versions of this problem. In the power-p Steiner problem the cost is de ned as the sum of the edge lengths where each length is raised to the power p > 1. In the bottleneck Steiner problem the objective cost is the maximum of the edge lengths. We show that the power-p Steiner problem is MAX SNP-hard and that one cannot guarantee to nd a bottleneck Steiner tree within a factor less than 2, unless P = NP. We prove that in any metric space the minimum spanning tree is at most a constant times worse than the optimal power-p Steiner tree. In particular, for p = 2, we show that the minimum spanning tree is at most 23.3 times worse than the optimum and we construct an instance for which it is 17.2 times worse. We also present a better approximation algorithm for the bottleneck Steiner problem with performance guarantee log2 n, where n is the number of terminals (the minimum spanning tree can be 2 log2 n times worse than the optimum).
1 Introduction A bottleneck Steiner tree (or a min-max Steiner tree) is a Steiner tree (i.e. a tree spanning a distinguished point set) in which the maximum edge weight is minimized. A power-p Steiner tree is a Steiner tree in which the sum of edge weights raised in power p > 1 is minimized. Several multifacility location and VLSI routing problems ask for bottleneck and power-p Steiner trees. Consider the problem of choosing locations for a number of hospitals serving homes where the goal is either to minimize maximum weighted distance to any home from the hospital that serves it and between hospitals or to minimize the cost of constructing corresponding roads which may nonlinearly depend on distances [16, 5, 11]. The solution is a tree which spans all hospitals and connects each home to the closest hospital. This tree can be seen as a Steiner tree where the homes are terminals and hospitals are Steiner points. Unlike the classical Steiner tree problem where the total length of Steiner tree is minimized, in this problem it is necessary to minimize either maximum edge weight or sum of weights raised in a certain power p > 1. Department of Computer Science and Engineering, Penn State University, University Park, PA 16802. Email:
[email protected]. Research partially supported by NSF grant CCR-9700053. y Department of Computer Science, Georgia State University, University Plaza, Atlanta, GA 30303-3083, Email:
[email protected]. Research partially supported by Volkswagen Stiftung and Packard Foundation.
1
The other instance of the bottleneck and power-p Steiner tree problems occurs in electronic physical design automation where nets are routed subject to delay minimization [3, 15, 10, 2]. The terminals of a net are interconnected possibly through intermediate nodes (Steiner points) and for electrical reasons one would like to minimize maximum distance between each pair of interconnected points or to minimize Elmore delay which is a quadratic function of length. The most popular versions of the bottleneck and power-p Steiner tree problems in the literature are geometric. Note that if the number of Steiner points is not bounded, then any edge can be subdivided into in nitely small segments and the resulting maximum edge length and the sum of edge weights raised in power p > 1 become zero. While ordinarily we should be most happy if we can solve a problem with cost 0, one can clearly see that in our examples these solutions make no sense. The reason is that there exists hard limits on the number of new nodes which can be introduced. For example, in electronic physical design the delay grows quadratically between the points where the signal is ampli ed, and new points will decrease the delay only if they contain ampli ers (transistors). However, each ampli er consumes energy, and there is a hard limit on the amount of energy that can be dissipated. This complication can be tackled in several ways. One is to introduce the allowed number of ampli ers as a new parameter to Steiner-tree like problem. This approach can be indeed precise, but dicult to deal with algorithmically, in particular, we would need to use a much more complicated estimate of Elmore delay. The other approach is to restrict the positions of ampli ers topologically, so their number would be always smaller than the number of terminals (hence, only on the branching point), and the Elmore delay is easy to estimate (thus, on every branching point). This gives rise to the problem formulation suggested by Ganley and Salowe [7, 8]. Problem 1. Given a set of n points in the plane (called terminals), nd a bottleneck (powerp) Steiner tree spanning all terminals such that the degree of any Steiner point is at least 3. Another approach is to require each branching to have an ampli er (so Elmore delay is a function of length), limit the edge length and to minimize the number of ampli ers (which now may be placed on nodes of degree 2). The resulting formulation has been proved to be NP-hard by Sarrafzadeh and Wong [15]. Problem 2. Given a set of n terminals in the plane and > 0, nd a Steiner tree spanning n terminals with the minimum number of Steiner points such that every edge is not longer than . In this paper we generalize the bottleneck and power-p Steiner problems to arbitrary metric spaces and weighted graphs. The rst such formulation is suggested in [4]. Problem 3. Given a graph G = (V; E; d) with nonnegative weight d on edges, and a set of terminals S V , nd a Steiner tree spanning S with the smallest maximum edge weight. Problem 3 can be solved eciently in the optimal time O(jE j) [4]. Unfortunately, the above formulation does not bound the number of Steiner points and therefore does not capture the practical avor of the problems 1 and 2. Note that the classical Steiner tree problem in an arbitrary discrete metric space and in weighted graphs are equivalent because any edge can be replaced with a shortest path between its endpoints without aecting the sum of weights objective. This is not valid for the bottleneck or power-p objectives and 2
it is necessary to be more careful in generalizing these two problems to graphs. We rst generalize problem 1 to an arbitrary discrete metric in the following way. Let (V; d) be a metric space on a nite set of points V with a nonnegative distance function d : V 2 ! R+ and let S V be a set of terminals. An arbitrary tree T in (V; d) which contains S and in which any point from V n S (a Steiner point) has degree at least 3 is called a Steiner tree of S . Note that the restriction on the degree of a Steiner point bounds the number of Steiner points. Bottleneck Steiner Problem. Given a metric space (V; d) and a subset S V . Find a Steiner tree in which the maximum distance between adjacent points is minimized. Power-p Steiner Problem. Given a metric space (V; d) and a subset S V . Find a Steiner tree in which the sum of distances between adjacent points each raised to the power p is minimized. The above formulations imply the graph-theoretical generalization of Problem 1 considered in [7, 8]. The metric space (V; d) is considered to be a metric closure of a graph with edge costs over the vertex set V , i.e., the distance between any pair of vertices is the cost of a shortest path between these vertices. We also assume that edge costs already satisfy the triangle inequality. In this paper we consider the following formulation. Given a graph G = (V; E; d) with costs d on edges and a set of terminals S V , nd a Steiner tree spanning S in the metric closure (V; d) of G in which each Steiner point has degree at least 3 such that the maximum edge cost (Bottleneck Steiner Problem) or the sum of edge costs each raised to the power p (Power-p Steiner Problem) is minimized. In the next section, we show that the both problems are hard to approximate. We rst prove that the Power-p Steiner Tree Problem is MAX SNP-hard. We next show that the Bottleneck Steiner Tree Problem cannot be solved by any polynomial-time algorithm with the performance ratio less than 2 unless P=NP. Note that the NP-hardness of the Power-p Steiner Tree Problem is non-trivial. Indeed, the classical NP-hard Steiner Tree Problem in graphs (p = 1) cannot be embedded in the Power-p Steiner Tree Problem with all edge weights raised in power p > 1 because the triangle inequality becomes invalid.1 A well-known approximation algorithm for Steiner problems, the so called MSTheuristic, nds the minimum spanning tree of the terminal set S in G. Similarly to the classical Steiner tree problem, if no Steiner points are allowed (i.e. if the Steiner tree may connect only terminals from S ), the MST-heuristic outputs the optimal solution for the both problems: the Bottleneck and the Power-p Steiner Tree Problem [7, 8]. Our next goal is to nd the performance ratio 2 of the MST-heuristic which is called a Steiner ratio. We consider the bottleneck and the power-p Steiner ratios B (n) and p , respectively. The bottleneck Steiner ratio is also de ned as the supremum over all instances with n terminals of the ratio of the maximum edge weight of the minimum spanning tree for S over the maximum edge weight of the bottleneck Steiner tree. 1 Indeed, e.g., 1 + 1 2 but 1p + 1p < 2p for any p > 1. Such a modi cation of edge weights also cannot help for approximating power-p Steiner trees, since all approximations of classical Steiner trees heavily rely on the triangle inequality for the shortest-path weight. 2 Performance ratio of an approximation algorithm is an upper bound on the ratio of the output cost of this algorithm over the optimum cost.
3
It was conjectured in [6] that the power-p Steiner ratio p is nite. In Section 3 we prove that this conjecture is true, i.e. that the power-p Steiner ratio p is constant for any p. In particular, for p = 2, we show that the minimum spanning tree is at most 23.3 times worse than the optimum. But we do not think that this bound is tight since the largest Steiner ratio for the Power-2 Steiner Tree Problem found so far equals 17.2. It has been proved that B (n) = 2blog2 nc ? , where is either 0 or 1 depending on whether mantissa of log2 n is greater than log2 3=2 [7]. This means that he minimum spanning tree heuristic for the bottleneck Steiner tree problem has approximation ratio 2 log2 jS j. In Section 4 we present an approximation algorithm with the better performance ratio of log2 jS j.
2 Approximation Complexity of Power-p and Bottleneck Steiner Problems In this section we construct reduction from the maximum independent set problem in 3regular graphs and the exact cover by 3-sets to the power-p and bottleneck Steiner problems, respectively. The both reductions use similar gadgets (see Figure 1).
Theorem 1 The power-p Steiner Problem is MAX SNP hard. Proof. We will construct an approximation preserving reduction from the problem of
nding a maximum independent set in 3-regular graphs (see [14]). Let G = (V; E ) be a 3-regular graph. We create an instance of the power-p Steiner problem consisting of a graph G0 = (V 0; E 0 ; d) and a terminal set S V 0 as follows: (1) S = E [ fg, where is the special, \central" node. (2) For each node v 2 V and its three incident edges ei ; ej ; ek we insert two nodes to V 0 , namely v1 ; v2 and connect six nodes of V 0 , ei ; ej ; ek ; v1 ; v2 and with ve length 1 edges, as shown in Figure 1(a). (3) For each pair of edges ei ; ej 2 E we insert node eij to V 0 that is connected with them with length 1 edges, in turn, the new node is connected with with length 2 edge (see Figure 1(b)), Note that any 5-tuple of edges (2) allows to attach ei ; ej and el to with cost 5. Any triple of edges (3) allows to attach ei and ej to with cost 2 + 2p = 2, where 2 < < 2p . To show that this is an approximation preserving reducibility, we need to describe how to translate a Steiner trees T in G0 into an independent set in G. Assume that G has 2m nodes and 3m edges. Tree T consists of a Steiner components with 4 leaves, b with 3 leaves and c with 2 leaves, where 3a + 2b + c = 2m ? 1. The only Steiner components with 4 leaves are described in point (2) of our construction; each of them corresponds to a node in V and together they correspond to an independent set. Moreover, each of them has cost 5. One can easily check that every possible component with 3 leaves consists of two length 1 edges and one length 2 edge, so its power-p cost is 2. Now, suppose that there exist at least 2 components with 2 leaves. One can show that (i) they cost at least 2 2p ; and (ii) they can be replaced with one component wit h3 leaves, of the kind described in point (3) of the construction. (After removing these two components, T splits 4
ei
v
ej
θ 1 1 v2
v1 1
ek
1 ei
θ 2 1
ej
eij
1 ek
1
ei
(a)
ej
(b)
Figure 1: Reduction from the independent set problem for 3-regular graphs to pSTP. The terminals are denoted by lled circles. A node with 3 adjacent edges is transformed into a 5-tuple (a). Any pair of edges is transformed into a 3-star (b) into 3 connected components, one of them contains , from the other two we can select ei and ej respectively.) Thus we can assume that c < 2, and so (b; c) is equal to (2m ? 1 ? 3a; 0) or (2m ? 2 ? 3a; 1). If we neglect a small constant additive term, we can express the cost of T as follows 5a + (2m ? 3a) = 2m ? (3 ? 5)a: (1) Observe that 3 ? 5 > 1. This linear relationship between the cost of T and a, the size of the corresponding independent set in G, shows that our reduction preserves the approximability.
ut
Theorem 2 The Bottleneck Steiner Tree Problem cannot be solved by any polynomial-time algorithm with the performance ratio less than 2 unless P equals NP.
Proof. We are going to translate X3C (exact cover by 3-sets, see [12]) into the Bottleneck
Steiner Tree Problem. An instance of X3C is a set with 3m elements, and a collection of 3-element subsets. The task is to nd a collection of m disjoint subsets, i.e. to cover all the elements with a disjoint collection of subsets. Given an instance with set of elements V and set of triples E , we create an instance of the Bottleneck Steiner Steiner Tree Problem consisting of a graph G0 = (V 0 ; E 0 ; d) and a terminal set S V 0 similarly to the previous reduction (see Figure 1(a)). (1) S = V [ fg, where is an auxiliary terminal. (2) For each triple t = fu1 ; u2 ; u3 g we create nodes t1 and t2 and a 5-tuple of length 1 edges: fu1 ; t1 g; fu2 ; t1 g; ft1 ; t2 g; fu3 ; t2 g and ft2 ; g: It is easy to see that the bottleneck cost is 1 if and only if we can create a Steiner tree that consists of complete 5-tuples corresponding to 3-element subsets of X3C only, i.e. if and only if there exists an exact 3-cover. Otherwise, the bottleneck cost is at least 2. Thus if the Bottleneck Steiner Tree Problem can be approximated with a factor strictly less than 2, then X3C can be solved exactly. ut
5
3 The Power-p Steiner Ratio In this section we show that the performance ratio of the MST-heuristic is constant bounded.
Theorem 3 The power-p Steiner ratio p is nite for any p. Proof. We may assume that an instance I of a power-p Steiner problem is de ned by a graph (V; E ), a length function of edges d and a set of terminals S V . In such a case we
assume that the distance between two nodes is the length of the respective shortest path. Let Mst(I ) and St(I ) be the power-p cost of the minimum spanning tree of S and the minimum Steiner tree respectively. For each instance I we also de ne ratio(I ) = Mst(I )=St(I ). Our goal is to show how to nd the power-p Steiner ratio, i.e. a value p such that ratio(I ) p for every I . Our strategy is to show that for every instance I there exists an instance I 0 such that ratio(I 0 ) ratio(I ), while the form of I 0 is so special that we can nd succinct expressions for St(I 0 ) and Mst(I 0 ) and compare them using elementary calculus. Consider now an instance I with minimum Steiner tree T . Our rst modi cation of I is to replace the original graph with the tree T . Obviously, St(I ) is unchanged, but Mst(I ) could only increase, because for each pair of nodes, say u nd v, the current shortest path (which gives the distance in the modi ed metric) existed in the old graph, which in turn could contain yet shorter paths; thus the new metric space, induced by T , cannot have smaller distances than the metric space induced by the old graph. Similarly, if in a Steiner tree T one of the terminals u is an internal node, we may divide T into two parts, T1 and T2 , that share node u. Clearly, St(I (T1 )) + St(I (T2 )) = St(I (T )), while Mst(I (T1 )) + Mst(I (T2 )) Mst(I (T )). Therefore we may consider only the trees where the set of terminals and leaves are equal. We may put further restrictions on the form of T . Replacing a node of degree higher than 3 with a group of nodes connected by 0-length edges changes neither Mst(I (T )), nor St(I (T )). Similarly, replace a node with a chain of three nodes connected by 0-cost edges. Thus we may assume that all internal nodes of T have degree 3, with the exception of the \root node" r that has degree 2, i.e. that T is a rooted binary tree. We can also replace a leaf with a group of nodes connected by 0-length edges: Mst(I (T )) clearly does not change, while St(I (T )) can only decrease. Thus we may assume that T is a full binary tree. We say that the level i of T consists of nodes that are i edges away from the leaves, and edges that join nodes on levels i and i ? 1. The nal simpli cation of T is done by the following lemma.
Lemma 1 For every full binary tree T with function d(e) de ning the length of edges, there exists another length function d0 such that on every level all edges have the same length, St(I (T )) remains unchanged and Mst(I (T )) does not decrease. Proof. We use the following strategy. We will rst de ne a certain weighted tree M (T ) which spans all leaves of T . In our transformations, St(I (T )) will be xed, the cost of M (T ) will be nondecreasing, and at the end, M (T ) will coincide with Mst(I (T )). Let r be the root of T . For any vertex u 2 T , let T (u) be the subtree of T with root u. Let leaf (u) be a leaf in T (u) which is closest to u and let (u) be the path from u to leaf (u). Note that for any leaf l, the path (l) is empty. We de ne e(u) to be an edge between two leaves leaf (u1 ) and leaf (u2 ), where u1 and u2 are the children of u. The cost 6
r u
u1
π( r ) u2 π( u2)
leaf(r) e(u1)
e(u)
e(r)
Figure 2: The tree T (solid edges) and the tree M (T ) (thick edges) spanning the leaves (empty circles) of the tree T . The paths (u) from vertices of the tree T to the closest leaf leaf (u) are dotted. of e(u) is de ned to be sum of costs of two paths (u1 ), (u2 ) and two edges (u; u1 ), (u; u2 ). The graph M (T ) consists of all edges e(u), u 2 T (see Figure 2). The graph M (T ) is a tree since it does not contain cycles and the number of edges equals the number of leaves minus one. After k ? 1 transformations, the edges on the same level are the same, provided that they are in the same T (u) for some u on level k ? 1. This claim is trivially true after 0 transformations. Now we will describe our k-th transformation (see Figure 3). We perform it separately for every node on level k. Let vk be such a node, with children vk?1 and vk0 ?1 , and let xk = d(vk ; vk?1 ), x0k = d(vk ; vk0 ?1 ). Because of the previous k ? 1 transformations, for 1 i < k, all edges on i-th level of T (vk?1 ) (and T (vk0 ?1 )) have the same length, xi (respectively, x0i ). The transformation replaces the lengths of edges on level i of T (vk ) with
xi =
(xi)p + (x0 )p p1 i
2 It is obvious that this change of edge length does not change St(T ). We only need to show the cost of M (T ) cannot decrease. Let l be the the length of (vk?1 ) plus xk , and l0 be the the length of (vk0 ?1 ) plus x0k . After the transformation, both these lengths become equal to l. Suppose l l0 . For an ancestor u of vk , the length of edge e(u) cannot decrease, because in the respective path we replace l with the greater value l:
! k k k k k x + x0 p 0 p1 X X X X X 1 ( x i ) + (xi ) p i 0 i = xi l0 l 2 xi + xi = 2 2 i=1 i=1 i=1 i=1 i=1 7
v x
x’
v
v’
k-1
k-1
x k-1
x
k-1
k-1
x
x’
1
k
v’
k-1
x’
k-1
x
k
k
k
v x
v
k
1
1
Figure 3: After the k-th transformation, all edges on the same level i, i k, have the same length. The central inequality is a well-known inequality on power-p means (see e.g. [9], page 26, inequality 2.9.1). Now it remains to show that the sum of costs of e(u) increases for the descendants of vk . These descendants can be paired, a node u on i-th level from T (vk?1 ) with a node u0 on the same level from T (vk0 ?1 ). Before the transformation, the sum of costs of e(u) and e(u0 ) equals 0 1p 0 1p 00 1p 0 1p1
@X 2xj A + @X 2x0j A = 2p @@X xj A + @X x0j A A i
i
i
i
j =1
j =1
j =1
j =1
After the transformation, the corresponding sum equals
1p 1p 0i 0i p + (x0 )p ! p1 1 X X ( x ) A = 2p @ (xj )p + (x0j )p p A 2@ 2 j 2 j j =1
j =1
The necessary inequality
1p 0 i 1p 0 i 1p 0i 1 X X X @ xj A + @ x0j A @ (xj )p + (x0j )p p A j =1
j =1
j =1
follows from Minkowski's inequality (see e.g. [9], page 32, inequality 2.12.1) after substituut tion: (xj )p = aj , (x0j )p = bj and 1p = r. According to the last lemma, a tree of the kind that we need to consider has all edges on level i equal to some P xi . Thus a k-level tree T is fully de ned by the vector ~x = (x1 ; : : : ; xk ). Then St(T ) 2 ki=1 2k?i xpi = 2S (~x), while
Mst(T ) =
k X i=1
2k?i
0 i 1p 0 i 1p k X X p k ? i @2 xj A = 2 2 @X xj A = 2pM (~x) j =1
i=1
8
j =1
. Thus ratio(T ) 2p?1 M (~x)=S (~x). Our remaining task is to nd an upper bound for M (~x)=S (~x). To nish the proof, we will show that for suitably chosen and the ratio M (~x)=S (~x) is bounded by =(1 ? ). This appears to be dicult, because the quantity in question is a function of k variables. However, the next lemma reduces this inequality to another one that involves two variables only.
Lemma 2 Assume that > 1; 1 > > 0, and xp + 2 yp (x + y)p for every x; y 0 (2) Then M (~x) =(1 ? )S (~x) for every vector ~x with nonnegative entries. Proof. We can rewrite M (~x) as Pki i, where i = 2k?i Pij xj p; similarly S (~x) = Pk y , where y = 2k?ixp. Then we can show by induction on i that =1
=1
i=1 i
i
i
i
Xi j =1
i?j yj = i :
For i = 1, this claim states that yi = 2k?1 xp1 < 2k?1 xp1 . Now, inductively assume that i?1 i?1 . Then
0 i? 1p X i = 2k?i @yi + xj A j 0i? 1p X p 2k?iyi + 2 2k?i @ xj A 1
=1
1
= yi + i?1 yi + i?1
yi +
P
= i
i? X 1
j =1
j =1
1+i?1?j yj
It remains to estimate ki=1 i . Note that this sum is a linear combination of yj s. In particular, yj appears in j , j +1 , j +2 , etc., Pwith coecients that are 0 , 1 , 2 etc. l Obviously, these coecients add to less than 1 l=0 = =(1 ? ). Therefore k X
M (~x) 1 ? yi = 1 ? S (~x) i=1
ut
Now it remains to show how to nd and that satisfy inequality (2). As a preliminary step, we eliminate one of the variables: we can divide both sides by (x + y)p , and substitute x x=(x + y). The range of the new variable is between 0 and 1. Then the existence of the desired and follows quickly from the following 9
Lemma 3 Assume that and x are between 0 and 1 and p > 1. Then xp + (1 ? x)p 1 p? (1 ? )p? Proof. We will nd a necessary and sucient condition for so that xp + (1 ? x)p 1 for every x 2 (0; 1) p?
p? 1
(
1)
(
1
1)
(3)
Let f (x) be the left hand side of (3), then the derivative of f is ! x p?1 1 ? x p?1! p?1 p?1 x (1 ? x ) 0 ? f (x) = p : =p ?
(p?1)
(p?1) It is easy to see that the minimum of f satis es x p?1 1 ? x p?1 0 = () x = 1 ? x : f (x) = 0 () The last equality has a unique solution x0 = =( + ) (consequently 1 ? x0 = =( + )). Because x0 is the minimum, it is sucient and necessary that f (x0 ) 1: p p f (x0 ) = xp?1 + (1 ?p?x1) p p = p1?1 ( + )p + p1?1 ( + )p = ( + )p + ( + )p 1
( + )p?1 1 () ( + )p?1 1 () + 1 The last inequality shows that 1 ? is the maximum value of such that condition 3 holds. =
tu ut
This concludes the proof of our theorem. To illustrate how this technique allows to estimate the power-p Steiner ratio with a concrete constant, we will review the case of p = 2. We know that this ratio is bounded by 2p?1 M (~x)=S (~x), which in turn, by lemma 2 is bounded by 2=(1 ? ). By Lemma 3, we can pick and by choosing some between 0 and 1 and setting = (1 ? )?p+1 and = ?p+1 =2; in our case = 1=(1 ? ) and = 1=2. The resulting ratio is f () = 2 1 ?1 1 ? 11=2 p p It is easy to check (0 of the derivative etc.) that f ( 1=2) = 8 2 + 12 23:314 yields the minimum value. Thus, we proved the following p Corollary 1 The power-2 Steiner ratio is at most 8 2 + 12 23:314. This upper bound need not be exact. In the worst case that we have found the edge length xi form an arithmetical progression with the remainder 1 and the power-2 Steiner ratio is 17:2. 10
4 A Better Heuristic for the Bottleneck Steiner Problem It was proved in [7] that the MST-heuristic for the Bottleneck Steiner Problem has an approximation ratio at most 2 log2 n, where n = jS j is the number of terminals. Moreover, it was shown that this bound is tight, i.e. the minimum spanning tree can have an edge as long as 2 log2 n times the length of the longest edge in the optimal bottleneck tree. In this section we suggest a better approximation algorithm for the the Bottleneck Steiner Problem (see Introduction) with the performance ratio half of that of the MST-heuristic. Let consider a weighted hypergraph H = (S; U; w) in which the vertex set coincides with the terminal set S and the edge set U contains all pairs and triples of terminals. The weight of an edge (s; s0 ) is its length and the weight of a triple is the maximum edge length in the minimum bottleneck steiner tree for . Let H be subhypergraph of H which contains only hyperedges of weight at most . Note that in hypergraphs with the edge size at most 3, we can nd eciently using Lovasz' algorithm [13] the spanning hypertree B (i.e. hypergraph B such that replacing all 3-hyperedges of B with two usual edges makes a usual spanning tree), if it exists. It is easy to see that replacing each 3-hyperedge of B with the corresponding minimum bottleneck Steiner tree converts B to a Steiner tree for S . Algorithm 1: (1) For each triple of terminals nd the optimal bottleneck tree (2) Find the minimum , such that the hypergraph H contains a spanning hypertree (3) Output the Steiner tree corresponding to the spanning hypertree of the hypergraph H
Theorem 4 The performance ratio of Algorithm 1 is at most log n, where n is the number 2
of terminals.
Proof. Let OPT be an optimal bottleneck Steiner tree. We may assume that all internal nodes has degree 3 and all terminals are leaves in OPT . Indeed, if an internal node v has degree at least 4, then we add an auxiliary copy of v connected to v with a zero-cost edge and evenly split vertices adjacent to v between v and and its copy. Similarly, if a terminal s is not a leaf in OPT , then we add a copy of s, say s0 , which is not a terminal. Then we substitute s with s0 in OPT while joining s to s0 with a zero-cost edge. These graph transformations do not change the number of terminals n. Moreover, we may assume that all edges in OPT have the same length 1. Indeed, if there is an edge of length less than the maximum length, then we may increase its length up to the maximum without increasing the bottleneck cost. We will use the following two lemmas which are well-known graph-theoretical facts (e.g. Lemma 2 can be found in [1]). Fact 1 Given a tree with n leaves and all internal nodes of degree 3, except the root r that may have degree 2 or 3. There exists a leaf at most log2 n edges away from r.
Fact 2 Any tree with n leaves contains a node c (called center) such that removing c splits the tree into connecting components each containing at most n=2 nodes.
11
r
r1
r2
r3
log
r4 log
n 2 4
n 2 2
f3
f4
f2
Figure 4: The Steiner tree for terminals f3 ; f4 and f2 with the additional node r1 (thick edges) has bottleneck cost at most log2 n. In order to proof Theorem, we will span the set of terminals S with a union of Steiner trees for triples (and pairs) of terminals each having the bottleneck cost at most log2 n. Let c be a center of the tree OPT and let c1 , c2 , and c3 be the three nodes adjacent to c. Removing c splits the tree OPT into three connected components, say OPT1 ; OPT2 ; and OPT3 such that ci 2 OPTi . Note that each node ci has degree 2 inside the tree OPTi , and Lemma 1 implies that there is a path from ci to a leaf of OPTi , say li , of length at most log2 n2 = log2 n ? 1. Thus, d(c; li ) = d(c; ci ) + d(ci ; li ) log2 n, so the tree f(c; li )ji = 1; 2; 3g shows that one can connect the three dierent node sets OPTi \ S of the hypergraph H by \edge" fl1 ; l2 ; l3 g of cost at most log2 n. So it suces to prove that one can also span, separately for i = 1; 2; 3; the vertices of OPTi \ S by hyperedges of Hlog2 n . We recursively produce the necessary links, using the fact that the sets OPTi \ S lie in a tree with at most n=2 terminals and exactly one internal node of degree 2. Now we consider a tree T of such form, i.e. T has at most n2 terminals-leaves, the root r of T has degree 2 and all other internal nodes have degree 3 (see Figure 4). Removing r splits T into two subtrees T1 and T2 , with roots r1 and r2 which are neighbors of r in T . For certainty, we assume that T1 has as many leaves as T2 , i.e. either jS \ T1 j = jS \ T2 j = 1 or jS \ T1 j 2 and jS \ T2j n4 . In the former case we arrive at the basis of the recursion: the cost of the hyperedge connecting the two terminals S \ T1 and S \ T2 is 2, i.e., at most log2 n. Otherwise, the removal r1 from T1 splits it into two trees, say T3 and T4 , with the roots r3 and r4 , respectively. Let fi be the leaf closest to ri in each tree Ti , i = 2; 3; 4. Note that d(r1 ; f2 ) d(r2 ; f2 ) + 2 log2 n4 + 2 = log2 n. Similarly, d(r1 ; f3 ) and d(r1 ; f4 ) are at most log2 n. Now tree f(r; f1 ); (r; f2 ); (r; f3 )g shows that the cost of the hyperedge ff1 ; f2 ; f3 g, which connects the three dierent terminal sets of T , is at most log2 n. As terminal sets T2 ; T3 and T4 , if cardinality is at least 2, lie again in trees (T2 ; T3 and T4 ) of the same form, but with fewer terminals, we can continue the process of producing hyperedges of Hlog2 n until all terminals are connected. ut
References [1] C. D. Bateman, C. S. Helvig, G. Robins, and A. Zelikovsky, Provably-Good Routing Tree Construction with Multi-Port Terminals, in Proc. International Symposium on Physical Design, Napa Valley, CA, April 1997, pp. 96{102. 12
[2] K. D. Boese, A. B. Kahng, B. McCoy, and G. Robins, Near-optimal critical sink routing tree constructions, IEEE Trans. on Comput.-Aided Des. of Integr. Circuits and Syst., 14 (1995), pp. 1417{11436. [3] C. Chiang, M. Sarrafzadeh, and C. K. Wong, Global Routing Based on Steiner Min-Max Trees, IEEE Trans. Computer-Aided Design, 9 (1990), pp. 1318{25. [4] C. W. Duin and A. Volgenant, The partial sum criterion for Steiner trees in graphs and shortest paths, Europ. J. of Operat. Res., 97 (1997), pp. 172{182. [5] J. Elzinga, D. Hearn, and W. D. Randolph, Minimax multifacility location with Euclidean distances, Transportation Science, 10 (1976), pp. 321{336. [6] J. L. Ganley, Geometric interconnection and placement algorithms, PhD thesis, Dept of CS, University of Virginia, 1995. [7] J. L. Ganley and J. S. Salowe, Optimal and approximate bottleneck Steiner trees, Oper. Res. Lett., 19 (1996), pp. 217{224. [8] J. L. Ganley and J. S. Salowe, The power-P Steiner tree problem, Nordic Journal of Computing, 5 (1998), pp. 115{127. [9] G. Hardy, E. Littlewood, and G. Polya, Inequalities, Cambridge University Press, 1934. [10] N. D. Holmes, N. A. Sherwani, and M. Sarrafzadeh, Utilization of vacant terminals for improved over-the-cell channel routing, IEEE Trans. Computer-Aided Design, 12 (1993), pp. 780{782. [11] J. N. Hooker, Solving nonlinear multiple-facility network, location problem, Networks, 19 (1989), pp. 117{133. [12] R. M. Karp, Reducibility among combinatorial problems, in R.E. Miller and J.W. Thatcher. Complexity of Computer Computations, 1972, pp. 85{103. [13] L. Lovasz and M. Plummer, Matching Theory, Elsvier Science, 1986. [14] C. H. Papadimitriou and M. Yannakakis, Optimization, approximation, and complexity classes, in Proc. ACM Symp. the Theory of Computing, 1988, pp. 229{234. [15] M. Sarrafzadeh and C. K. Wong, Bottleneck Steiner trees in the plane, IEEE Trans. on Computers, 41 (1992), pp. 370{374. [16] J. Soukup, On minimum cost networks with nonlinear costs, SIAM J. Applied Math., 29 (1975), pp. 571{581.
13