Improved Steiner 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 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

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 . 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 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 . The cost of any edge in C [K ] coincides with the cost of the corresp onding

edge in K . The 1-to-1 corresp ondence between edges of K n LossK  and C [K ] implies that

costH  l ossH =costC [H ]. Similarly, for any Steiner tree H , C [H ] is the terminal-spanning

tree in which the losses of all full comp onents of H are contracted.

Our algorithm constructs a k -restricted Steiner tree, i.e., a Steiner tree in which each full

comp onent has at most k terminals. Let Opt be an optimal k -restricted Steiner tree, and let

k

opt and l oss be the cost and loss of Opt , resp ectively. Let opt and l oss b e the cost and loss

k k k

of the optimal Steiner tree, resp ectively.

Wenow prove the following lower b ound on the cost of the optimal k -restricted Steiner tree.

Lemma 2 Let H be a Steiner tree; if g ain K   0 for any k -restricted ful l component K ,

C [H ]

then

costH  l ossH =costC [H ]  opt

k

Pro of. Let K ;::: ;K b e full comp onents of Opt .

1 p

k

costC [H ] opt = g ain Opt 

k k

C [H ]

= g ain K [ ::: [ K 

1 p

C [H ]

 g ain K +::: + g ain K 

1 p

C [H ] C [H ]

 0

ut

An approximation ratio of an algorithm is an upp er b ound on the ratio of the cost of the

found solution over the cost of the optimal solution. In the next section we will prop ose a new

algorithm for the Steiner Tree Problem, and then prove a b est-to-date approximation ratio for

it.

3 The Algorithm

All previous heuristics except Berman and Ramayer's [2 ] approach with provably go o d approx-

imation ratios cho ose appropriate full comp onents and then contract them in order to keep them

for the overall solution. This do es not allow us to give up an already-accepted full comp onent

even if later wewould nd out that a b etter full comp onent disagrees with a previously accepted

two comp onents disagree if they share at least two terminals.

The main idea b ehind the Loss-Contracting Algorithm see Figure 3 is to contract as little as

p ossible so that i a chosen full comp onentmay still participate into the overall solution but ii

not many other full comp onents would be rejected. In particular, if we contract LossK , i.e.,

replace a full comp onent K with C [K ], then i it will not cost anything to add a full comp onent

K in the overall solution and ii we decrease the gain of full comp onents which disagree with K

by a small value e.g., less than in the Berman-Ramayer algorithm for large k , and much smaller

than in [15 ] for any k .

Our algorithm iteratively mo di es a terminal-spanning tree T , which is originally MST G ,

S

by incorp orating into T loss-contracted full comp onents greedily chosen from G. The intuition

b ehind the gain-over-loss ob jective ratio is as follows. The cost of the approximate solution lies 4

between mst = mstG  and opt . If we accept a comp onent K , then it increases by a gain

S

k

of K  the gap b etween mst and the cost of the approximation. Thus the gain of K is our clear

pro t. On the other hand, if K do es not b elong to OP T , then after accepting K we would

k

no longer b e able to reach Opt b ecause wewould need to pay for the connection of incorrectly

k

chosen Steiner p oints. Therefore, the value of l ossK , which is the connection cost of Steiner

p oints of K to terminals, is an upp er b ound on the increase in the cost gap between opt and

k

the b est achievable solution after accepting K . Thus l ossK  is an estimate of our connection

exp ense. Finally, maximizing the ratio of gain over loss is equivalent to maximizing the pro t

p er unit exp ense.

Loss-Contracting Algorithm k -LCA for Steiner Trees in Graphs

Input: A complete graph G =V ; E ; cost with edge costs satisfying the triangle inequality,

a set of terminals S  V , and an integer k jS j

Output: A k -restricted Steiner tree in G connecting all the terminals in S

T = MST G 

S

H = G

S

Rep eat forever

Find a k -restricted full comp onent K with the maximum r = g ain K =l ossK 

T

If r  0 then exit rep eat

H = H [ K

T = MST T [ C [K ]

Output the tree MST H 

Figure 3: The k -restricted Loss-Contracting Al-

gorithm k -LCA.

In Section 6 we will show that costT  mstT [ K =g ain K . Therefore, each time the

T

algorithm cho oses a full comp onent K , the cost of T decreases by g ain K +l ossK . This will

T

imply the basic approximation result proved in Section 6.

Theorem 1 For any instance of the Steiner Tree Problem, the cost Appr ox of the Steiner tree

produced by algorithm k -LCA is at most:

mst opt

k

+ opt 1 Appr ox  l oss  ln 1+

k k

l oss

k

4 Performance of k -LCA in General Graphs

Our estimate of the p erformance ratio of algorithm k -LCA in arbitrary graphs is based on the

opt

k

estimates of optimal k -restricted Steiner trees. Let  be the worst-case ratio of . It was

k

opt

1

shown in [5 ] that   1+blog k c +1 . We will show b elow that the approximation ratio of

k

2

4 1

ln 1. Therefore, the approximation ratio of k -LCA converges k -LCA is at most  1 +

k

2 

k

ln 3

to 1+ < 1:55 when k !1. This is an improvement over the algorithm given by Hougrady

2

and Prommel [10 ], where the approximation ratio approaches 1.59. 5

1 4

Theorem 2 The k -LCA algorithm has an approximation ratio of at most 1 + ln 1

k

2 

k

Pro of. Since mst  2opt see [20 ], the inequality 1 yields the following upp er b ound on the

output tree cost of k -LCA.

2opt opt

k

Appr ox  l oss  ln 1+ + opt

k k

l oss

k

1

costT . Therefore, l oss  It was proved in [15 ] that for any Steiner tree T , l ossT  

k

2

1

opt .

k

2

2optopt

0

k

The partial derivativel oss  ln1 +  is always p ositive; therefore, the the upp er

k

l oss

l oss

k

k

1

b ound on Appr ox achieves maximum when l oss = opt . Thus, we obtain

k k

2

0 1

4opt

ln 1

opt Appr ox

opt

k

k

@ A

1+  

opt opt 2

opt

k

Since the upp er b ound ab ove grows when opt increases, we can replace with the maximum

k

opt

value of  . ut

k

5 Steiner Trees in Quasi-Bipartite Graphs and Complete Graphs

with Edge Weights 1 and 2

Recently Ra jagopalan and Vazirani [19 ] suggested a primal-dual -based algorithm for approxi-

mating Steiner trees. They show that their algorithm has an approximation ratio of 1:5+ for

quasi-bipartite graphs, i.e., the graphs where all non-terminals are pairwise disjoint. We rst

show that the well-known Iterated 1-Steiner heuristic [13 , 9, 14 ] has an approximation ratio of

1.5. Next, we apply algorithm k -LCA to quasi-bipartite graphs and estimate its runtime. Finally

we prove that the p erformance ratio of k -LCA for quasi-bipartite graphs is b elow 1.28. We also

apply k -LCA to the Steiner Tree Problem in complete graphs with edge weights 1 and 2. Bern

4

and Plassmann [4 ] proved that this problem is MAX SNP-hard and gave a -approximation

3

algorithm. Applying Lovasz's algorithm for the parity matroid problem see [16 ], an 1.2875-

approximation algorithm was given in [3]. We will show that the p erformance ratio of algorithm

k -LCA approaches 1.28 for such graphs, improving on previously achievable b ounds.

The Iterated 1-Steiner heuristic. The Iterated 1-Steiner heuristic I1S see [13 , 9, 14 ]

rep eatedly while it is p ossible adds Steiner p oints to the terminal set, which decreases the cost

of the minimum spanning tree over terminals. Accepted Steiner no des are deleted if they b ecome

useless, i.e., if their b ecome 1 or 2 in the MST over the terminals. Although I1S decreases

the MST cost by the maximum p ossible value at each iteration, we will estimate the cost of the

output Steiner tree regardless of howitwas obtained. The following theorem will also enable us

to estimate the p erformance ratio of a faster Batched variant of the Iterated 1-Steiner heuristic

[13,9,14].

Theorem 3 Given an instance of the Steiner Tree Problem in a quasi-bipartite graph G, let H

be a Steiner tree in G such that i any Steiner has degree at least 3 and ii H cannot be

improved by adding any other Steiner point, i.e., mstH [ v   costH  for any vertex v in G.

Then the cost of H is at most 1.5 times the optimal. 6

Pro of. Any full comp onent in quasi-bipartite graphs has a single Steiner p oint. Therefore, the

loss of any full comp onent equals the cost of the least-cost edge connecting its single Steiner p oint

to a terminal. Since any Steiner p oint has degree at least 3 condition i, the loss of any full

1

comp onentinH is at most one third of its cost. Thus, l ossH   costH .

3

Wenow show that g ain K   0 for any full comp onent K . Indeed, condition ii implies

C [H ]

that mstH [ K   costH . If we contract the loss of H , then we can decrease MST H [ K 

by at most l ossH  since reduction by l ossH  happ ens only if all edges of LossH  b elong to

MST H [ K . Therefore, mstC [H ] [ K   mstH [ K  l ossH  and mstC [H ] [ K  

costH  l ossH =costC [H ]. Thus, g ain K   costC [H ] mstC [H ] [ K   0. By

C [H ]

1 3

Lemma 2, costH  l ossH   opt and since l ossH   costH , we obtain costH   opt. ut

3 2

The ab ove result helps explain why the Iterated 1-Steiner and Ra jagopalan-Vazirani heuris-

tics p erform similarly when applied to instances of the Steiner Tree Problem restricted to the

rectilinear plane see [17 ].

Runtime of the algorithm k -LCA in quasi-bipartite graphs. For a given Steiner p oint v ,

algorithm k -LCA adds only a full comp onent with the largest gain since the loss is determined

by v . We can nd a full tree with the maximum gain with resp ect to a terminal-spanning tree T

among al l p ossible full comp onents with Steiner p oint v by merely nding all neighb ors of v in

MST T [ v . Therefore a full comp onent maximizing the gain-over-loss ratio over all k can be

found within p olynomial time.

We estimate the runtime of k -LCA for quasi-bipartite graphs as follows. Let m and n b e the

number of terminals and non-terminals, resp ectively. The number of iterations is O n since a

Steiner p oint can b e added only once to H . Each iteration consists of O n gain evaluations, each

of which can b e computed within O m time. Finally, using the appropriate data structures, the

2

k -LCA algorithm can b e implemented within a total runtime of O n m, where m is the number

of terminals.

Performance of the algorithm k -LCA. We rst estimate the loss of a Steiner tree in the

cases of quasi-bipartite graphs and complete graphs with edge weights 1 and 2.

Lemma 3 For the Steiner TreeProblem in quasi-bipartite graphs and complete graphs with edge

weights 1 and 2,

mst  2opt l oss  2

k k

Pro of. For quasi-bipartite graphs, let K b e an arbitrary full comp onent of a Steiner tree T with

p terminals connected by a single Steiner p oint with edges of lengths d ;d ;::: ;d . Assume

0 1 p1

0

that l ossK  = d = minfd g. Let mstK  be the cost of the minimum spanning tree of G ,

0 i

S

0

where S is the set of terminals in K . By the triangle inequality,

p1

X

mstK   d + d =p  d + costK  2d  2costK  2l ossK 

0 i 0 0

i=1

The b ound 2 follows from the fact that mst, the minimum spanning tree cost of S , do es not

exceed the sum of mst-costs for terminals in each of the full comp onents in Opt .

k

Nowwe prove the lemma for the case of complete graphs with edge weights 1 and 2. Let m and

n resp ectively b e the numb er of terminals and Steiner p oints in the optimal k -restricted Steiner

tree Opt . Then mst  2m 2 since all edge weights are at most 2 and opt  m + n 1 since

k k 7

Opt contains m + n no des. Wemay assume that full comp onents of Opt contain only edges of

k k

weight 1, and therefore l oss = n. Thus, mst  2m 2=2m + n 1 n  2opt l oss . ut

k k k

Theorem 4 Algorithm k -LCA has an approximation ratio of at most  1:279 for quasi-bipartite

graphs and an approximation ratio approaching  1:279 for complete graphs with edge weights 1

and 2.

Pro of. After substituting the MST b ound 2 into inequality 1, we obtain

opt

k

1 + opt 3 Appr ox  l oss  ln

k k

l oss

k

opt

0

k

Taking the partial derivativeofl oss  ln 1 ,we see that the single maximum of the

l oss

l oss

k

k

l oss

k

is the ro ot of the equation 1 + ln x + x =0. Solving upp er b ound 3 o ccurs when x =

opt l oss

k k

this equation numerically we obtain x  0:279. Finally,we substitute x into 3

x 1

Appr ox   opt  ln + opt =x +1  opt  1:279  opt

k k k k

1+x x

The b ound ab oveisvalid for the output of algorithm k -LCA for quasi-bipartite graphs if we

set k = jS j, i.e., if we omit the index k . For complete graphs with edge weights 1 and 2, opt

k

converges to opt, and the approximation ratio of algorithm k -LCA therefore converges to 1.279

when k !1. ut

6 Approximation Ratio of Algorithm k -LCA

This section is devoted to the pro of of the Theorem 1. Let K ;::: ;K be full comp onents

1

l ast

chosen by k -LCA. Let T = MST G  and let T , i = 1;::: ;last be the tree T pro duced by

0 S i

k -LCA after i iterations. Let costT  b e the cost of T after the i-th iteration of k -LCA.

i i

Lemma 4 g ain K =costT  mstT [ K 

T i i1 i1 i

i1

Pro of. It is sucient to show that T [K ]=MST T [ K . Assume that MST T [ K 

i1 i i1 i i1 i

do es not contain some edge e 2 K and let A and B be two connected comp onents of K feg.

i i

We will show that either A or B has a larger gain-over-loss ratio, which contradicts the choice of

K .

i

Since e do es not b elong to MST T [ K , we have costT [A [ B ] < costT [K ].

i1 i i1 i1 i

B . Note that e is A+g ain A [ B   g ain K  < g ain By Lemma 1, g ain

T T i T T

i1 i1 i1 i1

the longest edge on a K -path between some pair of terminals, and therefore cannot b elong to

i

LossK . Thus LossK =LossA [ LossB  and l ossK =l ossA+l ossB . Finally,

i i i

 

B  A+g ain B  g ain g ain A g ain K  g ain

T T T T i T

i1 i1 i1 i1 i1

<  max ;

l ossK  l ossA+l ossB  l ossA l ossB 

i

ut

We de ne the supergain of a graph H with resp ect to a Steiner tree T as super g ain H =

T

g ain H +l ossH . By Lemma 4, the sup ergain of K with resp ect to T is

T i i1

super g ain K  = g ain K +l ossK 

T i T i i

i1 i1

= costT  mstT [ K +mstT [ K  costT 

i1 i1 i i1 i i

= costT  costT  4

i1 i 8

Let G = super g ain OP T  b e the sup ergain of the optimal k -restricted Steiner tree OP T

i T

k k

i

with resp ect to T i = 0; 1;::: ;last. Let l ossn be the loss of the rst n accepted full trees

i

K ;::: ;K . We will show that the loss of full comp onents accepted by k -LCA do es not growtoo

1 n

fast.

l ossn

G

0

Lemma 5 If G is positive, then  ln

n

l oss G

n

k

Pro of. Let l = l ossK  and g = super g ain K  b e resp ectively the loss and sup ergain of

i i i T i

i1

the i-th full Steiner tree accepted by algorithm k -LCA. Let Opt consist of full comp onents X .

j

k

By Lemma 1,

 

P

super g ain X 

T j

g ain X  G g ain K  g

X 2Opt 0

T j 0 T 1 1

j

k

0 0

P

 1+max   1+ =

X 2Opt

j

k

l ossX  l oss l ossX  l ossK  l

j j 1 1

k

X 2Opt

j

k

G

g

i1

i

 . Therefore, Inductively, for i =1; 2;::: ;n,

l oss l

i

k

l

i

G 5 g 

i1 i

l oss

k

Each time k -LCA accepts a full tree K , it decreases the cost of T by the sup ergain of K ,

i i i

which results in decrease of the sup ergain of Opt by the same value. The equality 4 yields

k

G = costT  costOP T +l oss . Therefore, G G = costT  costT =g .

i i i1 i i1 i i

k k

l

i

1 The inequality 5 implies that G = G g  G . Since G > 0, unraveling

i i1 i i1 n

l oss

k

the last inequality yields

n

Y

l G

i n

1 

G l oss

0

k

i=1

Taking the natural logarithms of b oth sides and using inequality x  ln1 + xwe nally obtain

n

X

G l ossn l

0 i

ln = 6 

G l oss l oss

n

k k

i=1

ut

By Lemma 2, after all iterations terminate, the cost of the last tree T will be at most

l ast

opt . We stop iterating when costT  < opt  costT  for some n. It can b e show that we

n+1 n

k k

can \partially" p erform the n + 1-st iteration so that costT  will coincide with opt . Then

n+1

k

G = mst opt + l oss and G = opt opt + l oss = l oss . Finally,

0 n+1

k k k k k k

mst opt + l oss

k k

Appr ox  costT +l ossn +1  opt + opt  ln

n+1

k k

l oss

k

Acknowledgments

We thank Gruia Calinescu for reading earlier drafts of this pap er and giving numerous helpful

suggestions. 9

References

[1] S. Arora,\Polynomial Time Approximation Schemes for Euclidean TSP and Other Geometric Problems",

Proceedings 37th Annual Symposium on Foundations of Computer Science 1996, 2{11.

[2] P. Berman and V. Ramaiyer, \Improved Approximations for the Steiner Tree Problem", J. of Algorithms,

17 1994, 381{408.

[3] P. Berman, M. Furer and A. Zelikovsky, \Applications of the Matroid Parity Problem to Approximating

Steiner Trees", Tech. Rep. 980021, Computer Science Dept., UCLA, Los Angeles, 1998.

[4] M. Bern and P. Plassmann, \The Steiner Tree Problem with Edge Lengths 1 and 2", Information Pro-

cessing letters 32 1989, 171{176.

[5] A. Borchers and D.-Z. Du, \The k-Steiner Ratio in Graphs", SIAM J. Computing 26 1997, 857{869.

[6] A. Caldwell, A. Kahng, S. Mantik, I. Markov and A. Zelikovsky, \On Wirelength Estimations for

Row-Based Placement", Proceedings of the International Symposium on Physical Design, Monterey, Califor-

nia 1998, pp. 4{11.

[7] A. E. F. Clementi and L. Trevisan, \Improved Non-Approximability Results for Minimum Vertex Cover

with Density Constraints", Electronic Col loquium on Computational Complexity, TR96-016 1996.

[8] M. R. Garey, D. S. Johnson. \The Rectilinear Steiner Problem is NP-Complete", SIAM J. Appl. Math., 32,

826-834, 1977.

[9] J. Griffith, G. Robins, J. S. Salowe, and T. Zhang, Closing the Gap: Near-Optimal Steiner Trees

in Polynomial Time, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 13

1994, pp. 1351{1365.



[10] S. Hougardy and H. J. Prommel, \A 1.598 Approximation Algorithm for the Steiner Problem in Graphs",

Proceedings of ACM-SIAM Symposium on Discrete Algorithms 1999, 448{453.

[11] F. K. Hwang, D. S. Richards, and P. Winter. The Steiner TreeProblem, North-Holland, 1992.

[12] B. Korte, H. J. Promel, A. Steger. \Steiner Trees in VLSI-Layouts", In Korte et al.: Paths, Flows and

VLSI-Layout, Springer, 1990.

[13] A. B. Kahng and G. Robins, \A New Class of Iterative Steiner Tree Heuristics With Go o d Performance",

IEEE Transactions on Computer-Aided Design, 11 7, 1992, pp. 893-902.

[14] A. B. Kahng and G. Robins, On Optimal Interconnections for VLSI, Kluwer Publishers, 1995.

[15] M. Karpinski and A. Zelikovsky, \New Approximation Algorithms for the Steiner Tree Problem", Journal

of Combinatorial Optimization, 1 1997, 47{65.

[16] L. Lovasz and M. D. Plummer, Matching Theory. Elsevier Science, Amsterdam, 1986.

[17] I. I. Mandoiu, V. V. Vazirani and J. L. Ganley, \A New Heuristic for Rectilinear Steiner Trees",

manuscript.



[18] H. J. Prommel and A. Steger, \RNC-Approximation Algorithms for the Steiner Problem", Proceedings

14th Annual Symposium on Theoretical Aspects of Computer Science 1997, 559{570.

[19] S. Rajagopalan and V. V. Vazirani, \On the Bidirected Cut Relaxation for Metric Steiner Problem",

Proceedings of ACM-SIAM Symposium on Discrete Algorithms 1999, 742{757.

[20] H. Takahashi and A. Matsuyama, \An Approximate Solution for the Steiner Problem in Graphs", Math.

Jap. 24 1980, 573{577.

[21] A. Zelikovsky, \An 11/6-Approximation Algorithm for the Network Steiner Problem", Algorithmica 9

1993, 463{470.

[22] A. Zelikovsky, \Better Approximation Bounds for the Network and Euclidean Steiner Tree Problems",

Technical report CS-96-06, University of Virginia, 1996. 10