Reprints Available Directly from the Publisher Photocopying Permitted by License Only on the Minimum Density Interconnection Tree Problem*

We discuss a new minimum density objective for spanning and Steiner tree constructions. This formulation is motivated by the minimum-area layout objective, which is best achieved through balancing the usage of horizontal and vertical routing resources. We present two efficient heuristics for constructing low-density spanning trees and prove that their outputs are on average within small constants of optimal with respect to both tree cost and density. Our proof techniques suggest a non-uniform lower bound schema which can afford tighter estimates of solution quality for a given problem instance. Furthermore, the minimum density objective can be transparently combined with a number of previous interconnection objectives (e.g., minimizing tree radius or skew) without affecting solution quality with respect to these previous metrics. Extensive simulation results suggest that applications to VLSI global routing are promising.


INTRODUCTION
n this paper, we address a new minimum density objective for spanning and Steiner tree construc- tions in the Manhattan plane.Our work is motivated by the area minimization requirement inherent in the global routing phase of VLSI layout (the global rout- ing phase entails construction of spanning or Steiner interconnection trees over prescribed pointsets, or signal nets; see [20] for a survey).Traditionally, the minimum-area objective has been approximately captured by minimizing the total edgelength in the tree" since wires have a fixed width and must be routed at a fixed separation from each other, the total *Partial support for this work was provided by a Department of Defense Graduate Fellowship; by NSF MIP-9110511; by NSF MIP-9110696, NSF Young Investigator Award MIP-9257982, ARO DAAK-70-92-K-0001, and ARO DAAL-03-92-G-0050; and by an IBM Graduate Fellowship.A preliminary version of this work appeared in Proc.IEEE Intl.Symp. on Circuits and Systems, Chicago, May 1993.tree edgelength provides an obvious lo,wer bound on the routing area that must be added to the layout.However, the grid-based structure of integrated cir- cuit routing resources provides additional informa- tion for determining the impact of a given intercon- nection topology on the chip area.
For the four-terminal signal net shown in Figure 1, the interconnection tree of Figure l(a) forces at least three wires to cross the dashed line, meaning that the horizontal dimension of the chip must in- crease by enough to accommodate these three rout- ing grids.(We adopt "routing grid" as a generic term that is independent of layout methodology.The term encompasses, e.g., vertical feedthroughs or horizon- tal routing tracks in a channel [20].)In contrast, the tree of Figure l(b) forces the horizontal chip dimen- sion to grow by only one routing grid (however, the vertical chip dimension will grow by two grids, as indicated by the horizontal dashed line).In view of manufacturing constraints on the maximum chip di- mension, the most effective layouts are generally those which are roughly square, and this suggests 158 C.J. ALPERT, J. CONG, A.B. KAHNG, G. ROBINS, and M. SARRAFZADEH

Ca) (b)
A four-terminal signal net for which the tree on the left increases the required layout dimension by three routing grids, while the tree on the right requires only two routing grids.
balancing the horizontal and vertical routing requirements induced by the interconnection tree.As a re- sult, we formulate the Minimum Density Interconnection Tree problem as follows.
A signal net N {Pl, P2, Pn} is a set of n points, or terminals, in the Manhattan plane.(Note that in discussing related formulations, we will oc- casionally find it necessary to distinguish a single source terminal of the net, with the remaining ter- minals being sinks.)An interconnection tree of a net N, denoted T(N), is a tree which spans N. The cost of a tree edge is the Manhattan distance between its endpoints, and the cost of a routing tree is the sum of the costs of its edges.A line properly intersects an edge if it intersects the edge at a single point which is not an endpoint of the edge.
Definition: The density of an interconnection tree is the maximum number of tree edges that can be properly intersected by a horizontal o.r vertical line in the plane (Figure 2).Definition: For a given net N, the minimum density of N is the minimum density achievable by an inter- connection tree T(N), and a minimum density inter- connection tree is any T(N) that achieves this mini- mum density.
Minimum Density Interconnection Tree (MDIT) Problem: Given a net N, construct a minimum den- sity interconnection tree T(N) with minimum cost.
Our density criterion recalls the notion of trees with "low stabbing number," which are used in the computational geometry literature to speed up dy- namic "ray shooting" queries [1, 8, 13, 14, 24].How- ever, our work differs from these computational geometry results in several important respects.First, spanning trees with low stabbing number minimize the number of tree edges that can be intersected by a line of any orientation, while our MDIT formu- lation is concerned only with horizontal or vertical intersecting lines.While the low stabbing number formulation is more general, it is also much more difficult to solve: we achieve bounds that are tighter by a logarithmic factor, and our algorithms are con- siderably simpler as well as more efficient than those achievable through naive adaptation of previous con- structions.Second, methods from the computational geometry literature do not bound the tree cost in addition to bounding the tree density; our methods minimize both parameters simultaneously and are thus much more relevant to VLSI routing applica- tions.Finally, we address the case when Steiner points are allowed, enabling considerably tighter bounds on both density and tree cost.We also note an attractive feature of the MDIT heuristics presented below, namely, their "compatibility" with existing VLSI routing objectives.The three most prominent interconnection tree criteria in the current literature are all "performancedriven," i.e., they are aimed at improving the max- imum speed at which a digital system may be clocked: 1. Minimizing the total cost o the interconnection tree corresponds to the well-studied minimum rectilinear Steiner tree problem [4, 19, 21, 25,  28].The total tree cost contributes a significant portion of the RC delay as well as routing area [61.
3. Minimizing the maximum pathlength skew, i.e., difference in source-sink pathlengths, captures both the clock skew minimization problem as well as the "min-max" timing constraints which arise in global routing of very high-performance designs.These formulations have been treated in such recent works as [7,17,18,23].
We make note of these existing formulations be- cause our proposed algorithms for minimum-density interconnection trees afford unique multiple opti- mizations wherein up to three competing objectives may be optimized simultaneously.As a result, the area minimization objective of minimum-density routing can be attained without sacrificing performance-driven criteria.In particular, the discussion below describes how tree cost, radius, and density can be simultaneously optimized; we also show how tree cost, skew and density can be simultaneously addressed.
The remainder of this paper is organized as fol- lows.In Section 2, we give two efficient heuristic constructions for minimum density interconnection trees, along with several simple variants.Section 3 establishes a number of performance bounds: we show that our methods have good performance in that on average they produce interconnection trees with both cost and density bounded by constant fac- tors from their optima.Section 4 integrates the minimum density objective with current performance-driven objectives in order to achieve "triple optimizations," and Section 5 concludes with experimental results as well as several directions for future research.

HEURISTICS FOR MINIMUM DENSITY INTERCONNECTION TREES
Without loss of generality, the following discussion will assume that all terminal coordinates lie inside the unit square (the input can alWays be scaled to meet this condition). 2.1 The COMB Construction for Spanning and Steiner Trees Our first basic algorithm sorts the terminals by in- creasing x-coordinate (ties are broken to favor the larger y-coordinate), and then partitions the terminals of net N into /-// vertical strips, each con- taining v/n terminals (Figure 3a).(Note that our discussion implicitly assumes use of the floor and ceiling functions as appropriate; this does not affect any of our asymptotic results.)We then connect all the terminals of each strip into a path, in order of decreasing y coordinate (Figure 3b).We complete the routing topology by connecting the terminals with  Output: a low-density low-cost interconnection tree spanning N 1' Partition N into vertical strips each containing x/ terminals 2: Connect in monotone y-order the terminals within each strip 3: Connect in monotone x-order the bottom terminals of all strips 4: Output resulting spanning tree lowest y coordinate in each strip, in order from left to right (Figure 3c).This algorithm is described in Figure 4.The complexity of this algorithm, which we call COMB, is clearly dominated by the parti- tioning/sorting step (Step 1 of Figure 4), and is there- fore O(n log n).
If the introduction of Steiner points is allowed in constructing the interconnection tree, we can reduce the worst-case density as well as the worst-case cost of our construction via the following method: (i) par- tition the net N into V// vertical strips, each containing terminals (Figure 5a); (ii) within each strip, connect the terminals in the strip to a central spine, i.e., a vertical line which passes through the median terminal of the strip when the terminals are sorted by x-coordinate (Figure 5b); then (iii) join all the spines using segments of a single horizontal line (Figure 5c).This variant, which we call COMB_ST, is described in Figure 6 and has complexity O(n log n), again reflecting the complex- ity of the partitioning/sorting step.

A Chain-Peeling Method
A different, "chain-peeling" approach to density minimization iteratively computes and superposes chains or antichains (i.e., sets of terminals through which a staircase routing exists).More precisely, a chain is a sequence of terminals with coordinates that are monotone nondecreasing in both x and y; an antichain has coordinates monotone nondecreasing in x and monotone nonincreasing in y.According to Dilworth's theorem [12], every partially ordered set of size n must contain either a chain or an antichain of size at least /-.
Our chain-peeling method, which we call PEEL (Figure 7), efficiently detects a maximal chain or an- tichain and then removes it from the net; the process is iterated over the remaining terminals until the net has been covered.Each chain contributes at most one to the overall density, and the chains/antichains can be joined together into a tree (Step 7 of Figure 7) without increasing the density further (see Theorem  S=S-C 7" Join all chains/antichains in T and output resulting tree FIGURE 7 Algorithm PEEL produces a low-density tree by iteratively computing maximum chains or antichains, then joining them into an interconnection tree. 3.6 below).The PEEL method is attractive because it escapes such pathological examples as that of Fig- ure 8, where COMB or COMB_ST will yield density an unbounded factor greater than that of PEEL.We show in Section 3.1 that the time complexity of PEEL is O(n 3/2 log log n).

PERFORMANCE BOUNDS
Both the density and the total tree cost of our con- structions are on average only small constant factors away from optimal.

Density Bounds
For a net N of n terminals, a lower bound of f(/-n) can easily be established for the worst-case minimum density of the spanning tree T(N).More- over, we can show @(Vn) expected density for the minimum density interconnection tree over N. Theorem 3.1 A net N containing the n distinct grid points of the (/-1) (/-1) grid cannot be spanned b__,v an interconnection tree having density less than [(X/n + 1)/2].
Proof: In the square array, there are 2(/-1) horizontal and vertical lines between the rows and columns of terminals.For the tree T(N) to be corn nected, each tree edge must cross at least one hor- izontal or vertical line.Hence, there are at least n 1 line crossings, and the pigeonhole principle implies that at least one of the lines is crossed [(n 1)/(2(/--1))] [(/-+ 1)/2] times.
The next theorem requires the following lemma" Lemma 3.2 If n indistinguishable balls are indepen- dently placed at random into n indistinguishable boxes, (1 l/e) n boxes are expected to be non- empty.
Proof: The probability of a given ball ending up in a given box B is 1/n, and so the probability of the ball missing box B is 1 1/n.By the independence of the placements, the probability that all n balls miss box Bi is (1 1/n)".Therefore, as n increases, the probability that any given box remains empty is limn__,(1 1/n) 1/e.By linearity of expectation, it follows that a constant fraction 1/e of the n boxes are expected to remain empty, proving the lemma.
Theorem 3.3 For n terminals chosen randomly from a uniform distribution in the unit square, the mini- (a) (b) (c) FIGURE 8 Illustration (a) of class of examples on which PEEL (b) performs an unbounded factor better than either COMB (c) or COMB_ST.The connecting edges between the strips (Step 3 of COMB) are not shown in (c).For points in an "X" configuration, PEEL will always yield a constant density 2, while COMB or COMB_ST density will grow as the square root of n.
(a) (b) FIGURE 9 Expected minimum density of a net: (a) the unit square is partitioned into n congruent cells; (b) each non-empty cell contains some terminal p; which contributes at least one edge e, that crosses a cell boundary.
mum density interconnection tree has expected density o(x n).
Proof: Partition the unit square into n identical square cells, each of size 1// by 1//, using 2-n 2 vertical and horizontal lines (Figure 9a).
If we regard cells as "boxes" and terminals as "balls" then by Lemma 3.2 the expected number of cells containing at least one terminal is (1 i/e) n.For the spanning tree to be connected, each of these non- empty cells must contain at least one terminal Pi which has an incident tree edge ej that crosses a boundary of the cell (Figure 9b).By the pigeonhole principle, at least one of the horizontal or vertical lines will intersect ((1 I/e) n)/(2-n 2) > (1 i/e) /-n/2 tree edges, yielding the (V) lower bound on the expected minimum density.Since our algorithms always yield interconnection trees with density O(/-) (see the following sequence of re- suits), the expected minimum routing density for a net of n terminals uniformly chosen in the unit square Interestingly, the proof schema of Theorem 3.3 suggests a computational lower bound for individual instances of the MDIT problem, as follows.Given a net N, select integers and ] and partition the unit square into an by ] (not necessarily uniform) rec- tangular grid such that the greatest number P of the resulting i. ] rectangles contain terminals (see Figure  10).By the pigeonhole principle (recall the proof of Theorem 3.3), this induces an immediate lower bound of [(P-1)/((/-1) + (1-1))l [(P- 1)/(i + 2)] on the minimum routing density of N. Various schemes can be used to find a partition which maximizes the quantity (P-._ 1)/(i + j 2): for example, one could place =X/n horizontal lines such that at most terminals lie between each consecutive pair of horizontal lines, and then place the j vertical lines using a similar criterion.It is open whether there exists a polynomial-time al- gorithm which computes a rectangular partition that maximizes (P 1)/_(i + j 2), even for fixed/and j (e.g., j X/n).Experimental data indicates that this simple computational lower bound can be useful for small net sizes; details are presented in Section 5.
We now establish the density bounds for our heu- ristics.
Theorem 3.4 Algorithm COMB constructs a span- ning tree with density Proof: Since each strip contains no more than X/ terminals, a vertical line passin, z_through any strip cannot intersect more than V'2n tree edges.Since any given horizontal line cannot intersect more than two edges within a strip (one edge from Step 2 and one from Step 3 in Figure 4), the maximum horizontal density is 2 /-/'v/ '-.Thus, the density of the COMB output is at most -.Theorem 3.5 Algorithm COMB_ST constructs a Steiner tree with density <-X/-/V + 1.   Proof: In the construction of Figure 5, a strip can contain at most --n// terminals on each side of its )/((4 1) + (4 1))] 2. On the other hand, the non-uniform partition shown in (c) yields 14 non-empty cells, which imply an improved density lower bound of [(14-1)/((4-1) + (4-1))| 3.  spine, so no vertical line can intersect more than --n// of the edges created in Step 2 of Figure 6.No horizontal line can intersect any of the -// vertical spines more than once.Thus, the density of the COMB_ST output is at most -// + 1, when we consider the edges added to join the spines to- gether (Step 3).
A density bound for the chain-peeling algorithm PEEL follows from the following two lemmas, namely, (i) at most O(/-) chains or antichains will be "peeled" during the construction, and (ii) these chains/antichains can be connected to form a single component which has density at most the number of chains/antichains.Theorem 3.6 Algorithm PEEL constructs a Steiner tree with density <-2.V-.
Proof: We first show that PEEL computes at most 2 chains and/or antichains.Let ai denote the number of points remaining after we have peeled off chains and/or antichains.Assume that the algo- rithm stops when we have peeled off k chains and/ or antichains, i.e., a 0. We want to show that k -< 2 /-n.According to Dilworth's Theorem [12], the size of the (i + 1)-th chain/antichain is at least -ai.Thus, a+ <-ai X/-ii.Moreover, it is easy to verify that X/x X/ -< X/2 1/2.Therefore, To complete the proof, we need to show the chains and antichains can be "joined" into a spanning tree without increasing density.This can be accomplished by extending each chain to the top-right corner of the unit square and each anti-chain to the top-left corner; this clearly will not increase total density be- yond k (see Figure  11).A simple case analysis shows that the set of chains can then be connected to the set of antichains with no further increase in density, yielding the overall density bound of 2 /.

V3
Note that when the chains and antichains are joined into a Steiner tree as described in the proof, the tree density will always be exactly the total number of chains and antichains since a horizontal line near the top of the square will cut all (extended) chains and antichains.Clearly, lower density constructions might be attainable; however, our experimental re- sults of Section 5 use this simple "joining" construc- tion for Step 7 of the PEEL algorithm.
A result of Hunt and Szymanski [16] shows that the maximum chain or antichain in a pointset can be computed in O(n 19_g log n) time.Since PEEL re- quires at most O(Vn) iterations, its time complexity is bounded by O(n 3/2 log log n).

Cost Bounds 1
This implies that k -< 2. (-a0 v/-a-) 2. /-.Probabilistic arguments show that on average, all of our algorithms will produce interconnection trees with low cost.Theorem 3.7 For n terminals distributed arbitrarily in the unit square, algorithm COMB constructs a spanning tree with cost <-2/ /-.
Proof: In the COMB construction, the sum of the vertical components of the edges within each strip is bounded by 1 (the height of each strip is one unit).
Thus, the sum of the vertical components of all rout- ing tree edges introduced in Step 2 of Figure 4 is bounded by X/-/X/.Furthermore, the vertical com- ponents of edges introduced in Step 3 also sum to at most /-/X/.To bound the sum of horizontal com- ponents, note that if we pick an arbitrary edge from within each strip, these /-/X/ edges have total horizontal span bounded by 1.The horizontal com- ponents of all tree edges from Step 2 thus contribute at most 1 to the tree cost, and since the edges added in Step 3 have total horizontal span -< 1, we obtain the bound of 2X/./-.U] Theorem 3.8 For n terminals distributed arbitrarily in the unit square, algorithm COMB_ST constructs a Steiner interconnection tree with cost <-X/ + 1.
Proof: In the COMB_ST construction, the vertical spines contribute at most /-// to the tree cost.
As in the proof of Theorem 3.7, if we pick an ar- bitrary pair of horizontal edges in each strip, one from either side of the spine, the total cost of these edges is <-1, so the sum of horizontal edge compo- nents is at most /2 /V.Finally, the hor- izontal connector which joins the spines (Step 3 of Unre 6) has cost -<1, and the desired bound of + 1 follows.E] Theorem 3.9 For n terminals distributed arbitrarily in the unit square, algorithm PEEL constructs a Stei- her tree with cost <-4 X/-.
Proof: According to Theorem 3.6, PEEL con- structs at most 2 X/n chains and antichains, which are extended and then joined to yield a Steiner tree over the net N. Each extended chain or antichain can have cost at most 2, yielding the desired bound.
Theorem 3.10 For n terminals chosen randomly from a uniform distribution in the unit square, the expected minimum spanning tree cost is O(X/-n).
Proof: While this claim is a consequence of results in the theory of subadditive functionals in the Lp plane [5,22], we present the following simple proof.
Again, we partition the unit square into an array of n square cells, each of size 1/ by 1/-.Recall that the expected number of cells that will contain at least one terminal is (1 l/e) n.In any in- terconnection tree T(N), each terminal will have at least one incident tree edge, and this edge must cross the boundary of the cell.It is easy to show that the expected distance from a terminal to the nearest side of its containing cell is lower-bounded by some con- stant times the length of the side of the cell (in the Manhattan norm, this constant is -).We therefore have an f(-) bound on the expected total cost of the interconnection tree.Since our COMB algorithm always yields a spanning tree with cost O(X/-), the minimum spanning tree cost for a set of n terminals uniformly distributed in the unit square is O(-) on average.
From these results, we have: Corollary 3.11 For n terminals chosen randomly from a uniform distribution in the unit square, the algorithms COMB, COMB_ST and PEEL all con- struct trees which on average have both density and cost bounded by constants times optimal.
As noted in Section 1, our notion of density is related to the computational geometry concept of "low stabbing number" which seeks spanning trees having few intersections with lines of any orientation [8, 13].Welzl  [24] has proved that there always exists a spanning tree with stabbing number O(X), but his method is both complicated and less efficient (having greater than cubic time complexity).Edels- brunner et al. [14] have shown that 12(X/-) is a lower bound for the stabbing number of a pointset; our Theorems 3.1 and 3.3 show that this lower bound holds even when only horizontal and vertical stab- bing lines are allowed, and moreover establish an average case 12(X/-) density lower bound.The au- thors of [14] also give three spanning tree construc- tions with low stabbing number, trading off between space, stabbing number, and the use of randomiza- tion.These methods obtain bounds on stabbing num- ber ranging from O(n(1/2+')) to O(n 1/2.polylog), and typically run in O(n3) time and O(n2) space.By con- trast, our algorithms guarantee O(n/2) density, and run in O(n log n) time and O(n) space.Finally, Agar- wal [1] showed that there always exists a family of O(log n) trees such that for an arbitrary given line, one of the trees will have a stabbing number of O(V/-n); this family can be computed in time O(tl 3/2 "polylog).However, this is not very useful for VLSI routing, where the goal is to find a single tree with good density.In general, since the MDIT formulation restricts the orientation of the stabbing lines, our algorithms are more spaceand time-effi- cient, and have better performance bounds.We are also able to address the case of low-density Steiner trees, while previous work on trees with low stabbing number could address only spanning constructions.

TRIPLE OPTIMIZATION
For practical VLSI routing applications, it is often desirable to minimize more than one objective func- tion at once.However, this is difficult: it is unusual for even two competing measures to be treated ef- fectively (e.g., the simultaneous tree radius and tree cost minimization of [11]).In this section, we show that the minimum-density objective is "compatible" with existing performance-driven routing objectives, so that we may simultaneously address up to three separate routing tree measures.

Minimizing Skew, Density, and Total Wirelength
Recall from Section 1 that construction of an inter- connection tree with minimum difference among the various source-sink pathlengths captures both mini- M the edges of the optimal geometric matching over P 5: For (p,p) M Do 7: T = the subtree of T rooted at p 8: T2 = the subtree of T rooted at p 9: p-a point lying between p and/92 on the line containing p and p, such that p minimizes skew of the tree T t.J T2 t.J {(p, p), (p, p2) ) rooted at p 10: P' = P'U 11: T = Tt.J {(p,p), (p,p)} 12: P = P plus a possible unmatched node if IPI is odd 13: clock routing tree T 14: root of T single remaining point in P FIGURE 12 Matching-based, minimum-skew clock tree construction of [18].mum-skew clock routing [3] and global routing with min-max timing constraints.The work of [18] gives a general interconnection scheme that achieves ex- tremely small pathlength skews, while keeping the total wirelength on average within a constant factor of optimal, and always bounded by O(Vn).This clock routing construction of [18], which we refer to as CLOCK, begins with a forest of n isolated ter- minals, each of which is considered to be a (trivial) tree.An optimal geometric matching on these n points yields n/2 segments, each of which defines a tree with two nodes.A tree is rooted at its balance point, i.e., the point that minimizes the pathlength skew to the leaves of its two subtrees.Trees continue to be paired up by geometric matching of their roots, so that at each level of the construction, only half as many points are matched as in the previous level.Thus, after [log n] matching iterations, a complete tree topology is obtained.Figure 12 formally details the CLOCK algorithm.
In order to construct clock routing trees with low density, we construct a low-density geometric match- ing via the following variant of algorithm COMB: partition the net into /--n/ strips of X/ terminals each and connect the terminals of each strip from top to bottom as before (Figure 13a).However, in- stead of connecting the bottom terminals of all strips, connect the terminals in a serpentine fashion, i.e., alternate between connecting the bottoms and tops of adjacent pairs of strips as shown in Figure 13b.
Arguments similar to those in Section 3 show that this procedure (which we call COMB_SERP) will connect all of the terminals in a single long path topology that has both total cost and overall den- sity simultaneously bounded by O(V) in the worst case.
Taking only every other edge of the tour produced by COMB_SERP will constitute a geometric match- ing (Figure 13c) having both total cost and overall density simultaneously bounded by O(/-).We may iteratively use such matchings within the CLOCK algorithm of [18] to yield clock routing trees that simultaneously address three competing objectives: pathlength skew, total wirelength, and density.In particular, the latter two quantities are both bounded on average by constants times optimal, which follows from the fact that at each level of the tree construc- tion, only half as many points are being matched as in the previous iteration.For example, the density of the resultin_ock tree will be bounded by The time complexity of this construction is O(n log n) since it is dominated by the serpentine matching algorithm.
4.2 Minimizing Radius, Density, and Total Wirelength In [11], a method was proposed to uniformly trade off total routing tree cost with tree radius (i.e., the longest source-sink pathlength in the tree), and si- multaneously optimize both parameters to within constants times optimal in the worst case.This "bounded-radius, bounded-cost" (BRBC) construc- tion [11] starts with a low-cost tour of the net ter- minals (e.g., a depth-first tour of a minimum span- ning tree), and then augments this tour by adding shortest paths to the source from certain regularly spaced locations along the this tour.The precise cost/ radius tradeoff obtained by BRBC depends on a user-specified parameter e -> 0. The algorithm re- turns the shortest-paths tree over the resulting aug- mented graph.Figure 14 formally details the BRBC construction [11].
We can combine the minimum density objective with the cost/radius tradeoff of the BRBC algorithm to obtain another "triple optimization."Specifically, we may execute the BRBC algorithm with an initial tour L (Step 3 of Figure 14) that is based on, e.g., the spanning tree constructed by COMB_SERP in- stead of the minimum spanning tree; recall from Section 4.1 that the COMB_SERP output has total cost and density both bounded by O(-).Aside from this choice of initial traversal, the remainder of the construction proceeds exactly as in [11] and thus has O(n2) time complexity.
The resulting BRBC spanning tree will have radius bounded by (1 + e) from optimum in the worst case, cost bounded by (1 + 2/e) 2/-, and density bounded by (1 + 4/(e.R)) -, where R -< 2 is the distance from the source to the farthest sink.This can be seen as follows.The density of the combined COMB_SERP/BRBC construction is bounded by the sum of (the density of the COMB_SERP tree Q), plus the number of shortest paths to the source taken during the traversal of Q in the BRBC algorithm (since any shortest path is necessarily monotone, it cannot contribute more than 1 to the density).The latter quantity is deter- mined by noting that the depth-first tour of Q has length equal to twice the COMB tree cost 2/, and that BRBC adds shortest paths to the source at in- tervals of at least e.R along the traversal of Q.Thus, the density of the overall construction is given_y 2--(e R) (1 + 4/(e-R)).V2n.

"-+ 2
Recalling the/n)12( lower bounds for expected cost and density, we see that this construction will on average yield cost, density, and radius within con- stant factors of their respective optimal values.In-Algorithm: BRBC Input: a net N, containing IN[n terminals, source s N, and a real parameter e > 0 Output: a tree T with radius < (1 + e).R  S-S + dist(Li, Li+t) 7" IfS > e. R Then 8" Q -QU{(s, Li+)} S-O 10: T = shortest path tree of Q FIGURE 14 BRBC algorithm of [11], which computes a bounded-radius spanning tree T for a net N, with source s N and radius R, using parameter e (we use dist(Li, Li+l) tO denote the edge cost between two consecutive points in the depth-first tour L).T will have radius at most (1 + e) R, and cost at most (1 + 2/e) cost(MST(N)).  120.69 22 13 13.00 1.00 1.00 1.00 2 1.00 1.36 2.00 3 1.00 1.97 3.00 3 1.50 1.54 3.00 3 1.50 1.50 1.50 4 1.33 1.85 2.00 5 1.67 1.85 2.50 6 1.50 1.97 2.00 8 2.00 2.00 2.00 13 1.86 2.08 2.17   Averages are taken over 100 instances for each net size.The rightmost columns give the ratio of COMB_ST density to the instance-wise computational lower bound of Section 3.1" for small net sizes in particular, the closeness of the COMB_ST result to this simple lower bound is encouraging.deed, the radius is within a constant factor of optimal in the worst case as well. 5

RESULTS AND CONCLUSIONS
We have implemented the COMB_SERP variant of the COMB algorithm (see Section 4.1), the COMB_ST and the PEEL algorithms using ANSI C for both the Macintosh and Sun Sparc environments.
The code is available from the first-listed author upon request.Results are presented in Tables I and II.For each pointset cardinality, each algorithm was exe- cuted on 100 pointsets randomly chosen from a uni- form distribution in the unit squre.Table I reports the minimum, average, and maximum densities of the resulting interconnection trees.Note that for al-Net gorithm PEEL, we simply report the number of Size chains and antichains computed by the algorithm; 3 this gives the spanning tree density when we use the 5 simple joining method described in the proof of Theorem 3.6.The tree cost of PEEL will be some-15 what higher than shown in Table II since we report 20 the sum of chain/antichain costs, but not the extra 30 edgelength needed to join the chains together.The data indicates that the average density of the 300 tree produced by the COMB_SERP algorithm is on par with the density of the simple minimum spanning Net tree.However, the density of the minimum spanning Size tree has markedly higher variance, and in the worst case can be as large as O(n).Thus, the COMB or 7 COMB_SERP constructions may have practical util- 0 ity due to their predictable performance.The aver- 15 age density of the trees produced by the COMB_ST 20 30 algorithm is considerably better than the average 50 density of the corresponding minimum spanning 100 trees" for example, with signal nets of size 10, 300   COMB_ST yields trees with average density 3.00, in contrast to average minimum spanning tree density 3.82.For n 10, this 21% decrease in average density is achieved with a corresponding 21% in- crease in the tree cost over the MST cost, shown in Table II.Note that there is essentially no variance in the density of the COMB_ST output.
As discussed in Section 3, for a given net N, any partition of the unit square into an by j rectangular grid, such that P of the resulting .]rectangles con- tain terminals of N (Figure 10), induces a lower bound [(P 1)/(i + j 2)] on the minimum routing density of N. Recall that a simple version of this horizontal lines so as to leave at most terminals between con- secutive lines, and then places vertical lines using the same criterion.A comparison of the COMB_ST density versus the results of this com- putational lower bound are given in the rightmost three columns of Table I (note that any fractional computational lower bound values are rounded up to the nearest integer, since density takes on only integer values).The lower bound can be used to assessing algorithm quality on an instance-wise basis; in particular, we see that the performance ratio for COMB_ST is quite good despite the simplicity of the lower bound.
In conclusion, we have proposed a new spanning and Steiner tree formulation based on a minimum density criterion.We have also presented several ef- ficient heuristics for constructing low-density routing trees.The average performance of all our algorithms has been shown to be within constant factors of optimal in terms of both tree cost and density.Our techniques can be used to unify the new density cri- terion with previous "performance-driven" intercon- nection objectives in order to achieve simultaneous optimization of up to three separate and competing interconnection tree measures.Extensive simula- tions indicate that our constructions are effective in practice, and hold promise for balanced-resource routing applications in VLSI layout.It is still an open question whether there exists a polynomial-time algorithm that constructs a routing tree with both cost and density bounded by constants times optimal in the worst case.It is also unknown whether the MDIT problem is NP-complete.Recall that the chain-peeling method, PEEL, holds some promise in the sense that there exist examples where it outperforms COMB and COMB_ST by a factor of O(/-) (Figure 8); we conjecture that PEEL can be shown to yield worst-case density that is within a small constant factor of optimal.Indeed, we offer two closely related conjectures" (i) that the minimum density of a spanning tree over net N is at least the minimum of the number of chains or the number of antichains needed to cover N; and (ii) the PEEL algorithm will use at most two times the minimum possible number of chains/antichains that cover N.

FIGURE 2
FIGURE 2 (a) Example of a signal net, along with (b) an interconnection tree with density 3, and (c) a minimum density tree with density 2.

FIGURE 3
FIGURE 3 Execution of the COMB spanning tree construction on a net of size n16.
net N, containing IN[ = n terminals

FIGURE 4
FIGURE 4  Algorithm COMB: heuristic minimum-density spanning tree construction.

FIGURE 5
FIGURE 5  Execution of the COMB_ST Steiner tree construction on a net of size n 16.Note that density 3 is achieved by the construction, while the COMB construction yielded density 5 for the same instance.

FIGURE 11
FIGURE 11  Combining chains into a low-density tree.
Algorithm: CLOCK Input: a net N, containing IN[ = n terminals Output: A low pathlength skew tree topology T

FIGURE 13
FIGURE13 (a) Partitioning a net into strips/chains; (b) a serpentine tour with low density and low average cost; and (c) an embedded geometric matching which also has low density and low average cost.

TABLE Tree Density
Statistics for Minimum Spanning Tree and For the Three Heuristic Constructions Net Size Min Ave Max Min Ave Max Min Ave Max Min Ave Max Min Ave Max