Approximating Euclidean Shallow-Light Trees
Abstract
For a weighted graph and a designated source vertex , a spanning tree that simultaneously approximates a shortest-path tree w.r.t. source and a minimum spanning tree is called a shallow-light tree (SLT). Specifically, an -SLT of w.r.t. is a spanning tree of with root-stretch (preserving all distances between and all other vertices up to a factor of ) and lightness (its weight is at most times the weight of a minimum spanning tree of ).
It was shown in the early 1990s that (1) for any graph, any source, and any , there is a -SLT, and (2) there exist graphs for which for any -SLT.
The focus of this work is on SLTs in low-dimensional Euclidean spaces, which are of special interest for some applications of SLTs, in geometric network optimization problems. The aforementioned existential lower bound applies to Euclidean plane, as well. It was shown more than a decade ago that (1) by using Steiner points, one can reduce the lightness bound from to , and (2) there exist point sets in the plane for which for any Steiner -SLT.
These tight existential bounds for the Euclidean case yield approximation factors of and on the minimum weight of any non-Steiner and Steiner tree with root-stretch , respectively. Despite the large body of work on SLTs, the basic question of whether a better approximation algorithm exists was left untouched to date, and this holds in any graph family. This paper makes a first nontrivial step towards resolving this question by presenting two bicriteria approximation algorithms. For any , a set of points in constant-dimensional Euclidean space and a source , our first (respectively, second) algorithm returns, in time, a non-Steiner (resp., Steiner) tree with root-stretch and weight at most (resp., ), where denotes the minimum weight of a non-Steiner (resp., Steiner) tree with root-stretch .
Keywords and phrases:
geometric network design, optimization, shallow-light tree, Steiner pointFunding:
Hung Le: Supported by the NSF CAREER award CCF-2237288, the NSF grants CCF-2517033 and CCF-2121952, a Google Research Scholar Award.Copyright and License:
2012 ACM Subject Classification:
Theory of computation Sparsification and spanners ; Theory of computation Routing and network design problems ; Mathematics of computing Graph algorithmsEditors:
Hee-Kap Ahn, Michael Hoffmann, and Amir NayyeriSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
A shortest-path tree (SPT) of an undirected edge-weighted -vertex graph with respect to a designated source or root vertex , denoted by is a spanning tree rooted at that preserves all distances from , i.e., for every vertex , the distance between and in equals their distance in . For a parameter , an -shallow tree (-ST) is a spanning tree of of root-stretch at most , i.e., for every , . A minimum spanning tree (MST) of , denoted by , is a spanning tree of of minimum weight. For a parameter , a -light tree (-LT) is a spanning tree of of lightness , i.e., . The SPT and the MST, including their approximate versions, are among the most fundamental graph constructs and have been extensively studied over decades.
A single tree that simultaneously approximates the SPT and the MST is called a shallow-light tree (SLT). For a pair of parameters , a -SLT of graph w.r.t. a designated source is a spanning tree of that is both a -ST and a -LT. The notion of SLTs was introduced in the pioneering works of Awerbuch et al. [2, 3] and Khuller et al. [18] (see also [8]). They showed that for every , a -SLT can be constructed in linear time for every graph if an SPT and an MST are given. Khuller et al. [18] also showed that this tradeoff is tight, by presenting a planar graph for which for any -SLT.
The balance between the useful properties of an MST, which provides a light-weight network, and of an SPT, which provides short paths from a designated source to all other vertices, has led to a wide variety of applications across diverse domains. This includes applications in routing [1, 5, 16, 19, 21, 27, 32] and in network and VLSI-circuit design [7, 8, 14, 26], for data gathering and dissemination tasks in overlay networks [17, 20, 30], in the message-passing model of distributed computing [2, 3], and in wireless and sensor networks [31, 4, 9, 23, 22, 28]. Additionally, SLTs are used as building blocks in other related graph structures, such as light approximate routing trees [32], shallow-low-light trees [11, 12], light spanners [3, 25], and others [26, 23, 22]. In particular, in real-world applications, such as VLSI-design and wireless communication networks, the vertices are embedded in Euclidean space, and the edge weights correspond to the metric distances between the nodes.
Low-dimensional Euclidean spaces.
Khuller et al. [18] asked whether a better construction of SLTs can be achieved in Euclidean plane, which is the focus of this work. Euclidean space , , can be modeled as a complete edge-weighted graph induced by a finite set of points in with , , and . Elkin and Solomon [13] showed that the upper bound of -SLTs in general graphs [2, 3, 18] is asymptotically tight even in Euclidean plane: For a set of evenly spaced points on a circle, any -SLT for for any source must have . Solomon [29] showed that allowing Steiner points lead to substantial improvement in Euclidean plane: For every set and source , one can construct a Steiner -SLT in linear time. Moreover, this bound is asymptotically tight: For the same set of evenly spaced points on a circle (in fact, here evenly spaced points suffice), any Steiner -SLT for for any source must have [13, 29].
Approximation algorithms and hardness.
The aforementioned results provide tight existential bounds on the tradeoff between root-stretch and lightness of SLTs in general graphs as well as in planar graphs and in Euclidean plane; moreover, as mentioned above, tight bounds were established also for Steiner SLTs in Euclidean plane. However, these algorithms do not necessarily provide instance-optimal SLTs: We present point sets for which any previous SLT algorithm in [2, 3, 18] returns a -ST of weight , Solomon [29] constructs a Steiner -ST of weight , but the minimum weight of a -ST is only . Despite the large body of work on SLTs, very little is known about SLTs from the perspective of optimization and approximation algorithms.
In the -SLT problem, we are given a parameter and an edge-weighted graph , and the goal is to find a -ST for of minimum weight. Khuller et al. [18] showed that for any , the -SLT problem is NP-hard (via a reduction from 3SAT), while the case can be solved in near-linear time. Cheong and Lee [6] showed that it is NP-hard in Euclidean plane, as well (via a reduction from Knapsack). A -approximation algorithm for the problem should return a -ST for whose weight is at most times that of a minimum weight -ST. One can also consider a bicriteria approximation: a -approximation for the problem should return a -ST for whose weight is at most times that of a minimum-weight -ST.
The tight existential bounds, mentioned above, yield approximation factors of and , respectively, for the -SLT problem on general edge-weighted graphs and in Euclidean plane, respectively. To the best of our knowledge, no other approximation algorithm or hardness result is known for this problem, even for basic graph families such as the complete graph with Euclidean edge weights. (In our full version, we discuss a related problem, for which both approximation algorithms and hardness results are known.)
In Euclidean spaces, one can define the Steiner -SLT problem: For a parameter and an input point set , , the goal is to find a Steiner -ST for of minimum weight. We note that a minimum weight Steiner -ST may be significantly lighter than a minimum weight non-Steiner -ST. For example, for a set of evenly spaced points on a circle, the ratio between the weights of minimum weight non-Steiner and Steiner -STs is .
1.1 Our Contribution
We provide a bicriteria approximation for the -SLT problem, where is an arbitrary parameter, in any constant-dimensional Euclidean space. (We shall assume throughout that is a sub-constant parameter. If is a constant, the algorithm in [18] already provides a constant approximation in linear time.)
Theorem 1.
There is an -time algorithm that, given , a finite set of points in Euclidean plane, including a source , returns a Steiner -ST of weight at most , where denotes the minimum weight of a Steiner -ST. The result extends without any loss in parameters to Euclidean space , for any constant .
Interestingly, our bicriteria approximation algorithm of Theorem 1 incurs the same ratio for both the stretch approximation (to the additive term) and the weight approximation. With some additional effort and another factor in the weight approximation ratio, our result generalizes to the setting without Steiner points in the plane.
Theorem 2.
There is an -time algorithm that, given , a finite set of points in Euclidean plane, including a source , returns a -ST of weight at most , where denotes the minimum weight of a -ST. The result extends to Euclidean space , for any constant , with approximation ratio increasing by a factor of and the running time increasing by a factor of .
To complement our results, we show that the approximation ratio of our algorithms (with or without using Steiner points) is significantly better than the state-of-the-art algorithms at the instance level. Specifically, we design point sets in Euclidean plane for which any previous algorithm returns a -ST of approximation ratio at least with Steiner points and without Steiner points.
Theorem 3.
To prove Theorem 1 and Theorem 2, we reduced the problem to a set of points, called centered -net, in a region in a cone with aperture , within distance from the root. The classical lower-bound construction for this problem consists of a set of uniformly distributed points along a circle of unit radius centered at the root . However, if is the subset of points in a cone of angle , then there exists a Steiner -ST of weight [29]. This raises the question: What is the maximum lightness of a Steiner -ST for points in a cone of aperture ? We give a lower bound on the maximum lightness of a minimum-weight Steiner -ST for points in a cone of aperture .
1.2 Technical Overview
Given a set of points in the plane, including a source , and a parameter , we describe -time algorithms to construct a (Steiner) -ST rooted at , and then analyze its weight compared to the minimum weight -ST rooted at . We note that, since -STs do not have a recursive substructure, the stretch between two arbitrary points in may be unbounded. Yet, we can apply a divide-and-conquer strategy by clustering nearby points together, based on their position w.r.t. the source .
In Section 3, we partition the plane into trapezoid tiles, and show that the union of bicriteria approximate SLTs for the point sets in the tiles is a bicriteria approximation for the entire point set for both the Steiner and non-Steiner settings (Theorem 6). We construct a tiling based on geometric considerations. The diameter of each tile is proportional to the distance , and the shape of is roughly for ; see Figure 1. That is, we choose the aspect ratio of every tile to be roughly for the following reason: The triangle inequality implies that every -path of weight at most lies in an ellipse with foci and , and aspect ratio roughly ; see Section 2. Therefore, the union of all ellipses , for all points , will be similar to the tile in the sense that the aspect ratio of its bounding box is roughly . The shape of the tiles is crucial for the proof of the reduction (Theorem 6).
For all points in a tile , the distance to is the same up to constant factors. We can further partition the set of points in each tile into cluster by approximating up to a -factor. Recall that a classical -net in a metric space is a set such that the points in are at least distance apart, and the -neighborhood of every point contains a net point in . In Section 3, we define a centered -net , where points are at least apart, and the -neighborhood of every point contains a net point in . We show that a bicriteria approximate STs for a centered -net can be extended to bicriteria ST for the entire point set, using -spanners in the neighborhoods of the net points (Lemma 7). Interestingly, we reduce the -SLT problem for to a variant of the Steiner -SLT problem for the net , where all Steiner points must be in the original set . We note that although the reduction steps in Section 3 are new and essential to our approach, they are based mainly on standard techniques.
The core technical contributions of our work appear in Sections 4 and 5, where we construct a Steiner ST for a centered -net in Section 4 and then extend the construction to the non-Steiner setting in Section 5. The Steiner setting is easier to work with because we can control the location of Steiner points. We begin with a brief overview of the Steiner construction; refer to Figure 1. From the perspective of a single point , the construction is similar to the Steiner SLT construction by [29], which gave an existentially tight bound: We choose Steiner points in the ellipse on parallel lines at distance from , where . Solomon [29] shows that one can carefully choose Steiner points so that the stretch of the path is at most . However, geometric calculations show that even if we choose arbitrary points for , then each edge still contributes only to the stretch (more precisely, exceeds the length of its orthogonal projection to the line by ). In other words, arbitrary Steiner points , for , guarantee a root-stretch .
For a point set in a tile , we follow the above strategy, but we synchronize the lines chosen for different points in . Then each line corresponds to many points , and intersects their ellipses . We use a minimum hitting set for the intervals , to choose the minimum number of Steiner points that serve all associated ellipses. The weight analysis uses the fact that each ellipse contains a -path that crosses all lines .
In Section 5, we adapt the Steiner ST algorithm to the non-Steiner setting. However, both the algorithm design and its analysis are more challenging. Instead of creating Steiner points in a line of our choice, now all points must be in . We use the lines to cover the ellipse with axis-aligned rectangles whose corners are on two consecutive lines and ; and then choose minimum hitting sets from for the nonempty rectangles. Some of the rectangles might be empty (i.e., ). This means that we cannot choose a point in for some -path (our algorithm simply skips ), but it also means that an optimal ST does not have any vertices in , to the -path in contains an edge that traverses whose weight is proportional to the width of . This is a crucial observation for the weight analysis. The root-stretch analysis also requires more work in the non-Steiner setting: In the Steiner case, the Steiner points and are on the lines and , so we can control the distance between and . However, when are limited to points in rectangles and , it is possible that and are too close to each other, and their contribution to the root-stretch is too large. In such cases, we modify the -paths by skipping or . This ensures that the distances between consecutive points of the -paths are sufficiently large, and we prove that the weight increases by at most a constant factor. We show that our algorithms (for both the Steiner and non-Steiner settings) extend naturally to higher dimensions using cone partitioning and approximate high-dimensional hitting sets. For the Steiner version, the approximation guarantee remains unchanged. However, the non-Steiner algorithm incurs an additional factor in its approximation ratio. Its running time also increases by an additional factor.
2 Preliminaries
Let , and . If is a -path of weight at most , then every point , we have . This implies that is contained in the ellipse with foci and , and major axis ; see Figure 2. The ellipse is contained in a rectangle spanned by its major and minor axes. The length of its minor axis is if .
For analyzing the weight of an ST, we consider a -path as a polyline (i.e., a subset of the plane). In particular, for any region , the intersection is the part of the polyline contained in .
Slopes, slack, and stretch.
The slope of a line segment is if , and if . For a line segment in the plane, we denote by the orthogonal projection of to the -axis. Note that . We define the slack of as . In our paper, all proofs of theorems, lemmas, corollaries, and observations marked with a are in our full version.
Lemma 4 ().
For any line segment with , we have
| (1) | ||||
| (2) |
It is known that a -monotone path (i.e., a path in which the -coordinates of the points along the path are monotone increasing) with edges of bounded slopes have small stretch.
Lemma 5.
Let be a -monotone polygonal path in such that for all . Then ; and .
For two points and a parameter , let denote the ellipse with foci and and major axis , that is, .
3 Reduction to Net Points in a Trapezoid
In this section, we reduce the problem of constructing a bicriteria approximation for the minimum weight (Steiner) -ST to the special case where all points, except the source , lie in a trapezoid, and the point set is sparse (i.e., form a centered -net, defined below).
Given a source and , define a tiling of the plane into a set of trapezoids as follows; refer to Figure 3. Let be a circle of unit radius centered at . Let be a regular -polygon with inscribed circle , where is the minimum integer such that the side length of is less than . For all integers , let , that is, a scaled copy of , centered at . Finally, add rays emanating from that pass through the vertices of the polygons , . Polygons , , and the rays subdivide the plane into a set of trapezoids: Each trapezoid lies between two consecutive polygons and , and two consecutive rays.
Let be a set of points in the plane, and let be a finite set of tiles that cover , and let . For a tile , we define a tile-restricted -ST (for short, -tST) as a tree such that , and contains a -path of weight at most for every . In other words, a tile-restricted -ST is a Steiner -ST for rooted at , where all Steiner points are in .
Theorem 6 ().
Given a set of points, a source , a parameter , and two real functions and . Let be the set of tiles in , where . Let be a tile-restricted -ST (resp., Steiner -ST) for of weight , where is the minimum weight of a -ST for , for all . Then, a shortest-path tree of the graph , rooted at , is a -ST (resp., Steiner -ST) for and , where is the minimum weight of a -ST for .
For the purpose of a -ST, with a source (or center) , we define a variation of -nets where the density of the net depends on the distance from : A centered -net (for short, -cnet) with center is a subset such that
-
for all , , we have and
-
for every , there exists a point such that .
Given a point set , including , a parameter and a subset , we also define a net-restricted -ST for as a tree such that , and contains a -path of weight at most for every . This means that is a Steiner -ST rooted at for the -cnet , where all Steiner points are in . We claim that it suffices to find a net-restricted (resp., Steiner) -ST for a -cnet with center .
Lemma 7 ().
Let be a set of points in the plane, , , and a -cnet for . Let and be real functions such that and for all . Assume that in time, we can compute a net-restricted (resp., Steiner) -ST for of weight , where is the minimum weight of a net-restricted (resp., Steiner) -ST for . Then, in time, we can compute a (Steiner) -ST for of weight , where is the minimum weight of a (Steiner) -ST for .
4 Steiner Shallow Trees for Points in a Tile
In this section, we prove Theorem 1. By Theorem 6 and Lemma 7, we may assume that is a set of points in a trapezoid (defined in Section 3), and is a centered -net w.r.t. center . We may further assume w.l.o.g. that and ; see Figure 4. We first present an algorithm that constructs a Steiner tree for , rooted at . Then we show that is a -ST and its weight is , where denotes the minimum weight of a Steiner -ST for rooted at ; and let be one such Steiner -ST.
Steiner shallow tree construction: Overview.
We start with a brief overview of the ST construction and then present the algorithm in detail. We construct a Steiner graph on (which is not necessarily a tree), and then let be the shortest path tree of rooted at (that is, the single-source shortest path tree of with as the source). We can analyze the root-stretch in the graph , and the weight of is upper-bounded by the weight of .
For each point , we know that contains a -path of length at most in the ellipse with major axis . We associate each point with vertical lines , where . For , we choose a Steiner point in the line segments , and add the path to the graph . We show (Lemma 12) that if the distances between the vertical lines increase exponentially, then .
Importantly, each line is associated with multiple points in , and each Steiner point also serves multiple points in . For each line , we choose the Steiner points in as a minimum hitting set for the line segments over all points associated with line . Since the intersection is a hitting set for these intervals, we can charge the weight of to the weight of . The approximation factor , in the stretch and the weight, is the result of using Steiner points, one in each line , for .
Steiner shallow tree construction: Details.
Assume w.l.o.g. that for some . Each ellipse is contained in an ellipse (), where the segment is horizontal and . As a shorthand notation, we use .
We define families of vertical lines. For every integer , let
| (3) |
that is, the distance between two consecutive vertical lines in is . For every point , we recursively choose for , as follows. Let be the second line in to the right of . For , if has already been chosen, let be the second line in to the right of . (We choose the second line in , rather than the first one, to ensure that the gaps between and grow exponentially in ; cf. Observation 8.)
Now consider a line , and let be the set of all points in associated with . Formally, we put . Consider the set of intervals . Let be a minimum hitting set (a.k.a., piercing set, stabbing set, or transversal) for : It is a minimum subset of that contains at least one point in each interval in ; it can be computed in time [10, 15, 24].
Finally, we construct the Steiner graph as follows. The vertex set of comprises , , and the points for all , . The edges are defined as follows. For each point , consider the lines associated with . For let be an arbitrary point in . Add the edges of the path to . We output the shortest path tree of rooted at .
Observation 8.
For , is within .
From Observation 8, using a geometric series, we obtain the following corollary:
Corollary 9 ().
For , is within .
Root stretch analysis.
It is enough to analyze the root stretch in the graph . Recall that in the construction of , we have already built a path . We show that (Lemma 12). We first need to estimate the slopes of the edges of . We start with the following lemma.
Lemma 10.
For every point if a vertical line is to the right of at distance from , then . In particular, for every , we have .
Proof.
Consider the unit disk and the line for ; see Figure 5. Then for , we obtain
The ellipse is an affine image of the unit disk : The affine transformation takes to , where and are the major and minor axes of . We estimate and up to constant factors. Since and , then we have . We have (). The major axis of is so ; and its minor axis is , and so .
The focus is at distance from the leftmost point of , where . By Corollary 9, the distance between and the leftmost point of is at least and at most . Overall, this distance is .
The inverse transformation takes to the unit disk , and the line to a vertical line , where . As noted above, we have , consequently .
Combining Observation 8 and Lemma 10, we have the following corollary:
Corollary 11 ().
For every , consider the path . For all , we have .
Lemma 12.
For every , we have .
Proof.
By construction, we have . We partition into three parts: , and , and bound the weight of each part separately.
First we estimate the weight of the first edge .
Recall that and . By construction, we have , and Lemma 10 gives . Therefore, we have . We can now bound the weight of the subpath of . By Lemma 4, Observation 8, and Corollary 11,
Finally, we estimate the weight of the last edge, , of . We have
| (4) |
Since and , then . Lemma 10 gives . Consequently, , and Lemma 4 yields .
The sum of the weights of the three parts is
Weight analysis.
We give an upper bound for . Similarly to the root stretch analysis, we decompose into three parts, , , and , and then bound the weight of the union of each.
We first analyze the total weight of the union of edges of the paths over all . For lines and , let denote the set of all edges such that and . Recall that is a minimum-weight Steiner -ST for rooted at (). We denote by the part of clipped in the vertical strip . Our main lemma is as follows.
Lemma 13.
For every and , we have
Before the proof of Lemma 13, we observe that it implies the bound on the total weight of the interior edges of the paths over all .
Corollary 14 ().
.
It remains to prove Lemma 13. We do this in a sequence of lemmas, using geometric properties of ellipses and interval graphs. We start with an easy observation.
Observation 15 ().
For every and every , we have
Lemma 16.
For every and every , there exists a set of size such that the regions in are disjoint.
Proof.
Each interval in has weight by Lemma 10. Let be the ratio of the maximum to the minimum weight of an interval in . Each interval in is of the form for some point . For every , let be the axis-aligned bounding box of ; see Figure 6. Note that the major axis of is horizontal, and its minor axis is to the right of by Equation 4. Consequently, for every vertical line , we have , which holds with equality for . In particular, the height of is .
Now consider a maximum set such that the intervals are disjoint. Note that , that is, the maximum independent set has the same size as a hitting set for intervals in a line.
A set of disjoint intervals along the line have a well-defined total order, which defines a total order on . Let be the subset that corresponds to the first and every -th interval. Then . Furthermore, the intervals are disjoint. This, in turn, implies that the boxes are disjoint. Thus, the regions are also disjoint.
Observation 15 and Lemma 16 imply the following corollary.
Corollary 17 ().
For every and , we have
Lemma 18.
For every and , we have
Proof.
We first show that every edge in has weight . Every edge of is the edge of for some point . By Corollary 11, , where . Consequently, we have for all . Therefore,
Next, we show that every vertex of has degree. Lemma 10 gives and for all . Note also that both and have a reflection symmetry in the horizontal major axis of , implying is contained in an interval of length centered at . Similarly, is contained in an interval of length . Since for all , then the hitting set contains points in the interval . In the graph , all neighbors of vertex are in the interval and in . This proves that has neighbors in .
Overall, every edge of has weight ; and every vertex of has degree. Since is a bipartite graph with partite sets and , then the total weight of is , as claimed.
Combining Lemma 18 and Corollary 17, we obtain Lemma 13. We conclude:
Lemma 19.
For a -cnet and , the weight of is , where denotes the minimum weight of a Steiner -ST for .
Proof.
We have shown that for every , the first edge of has weight . Consequently, the total weight of the union of first segments of over all is . Since is a -cnet, then this is bounded by . By Corollary 14, the total weight of the interior edges of the paths over all , namely, is bounded by .
Finally, we bound the total weight of the last edges of the paths for all . By Observation 8, there are vertical lines in between and . By Corollary 11, we have . Consequently, each piercing set has size. Overall, there are distinct segments in , and the weight of each segment is . Consequently, the total weight of these segments is also . Since , then , and so .
Running time.
The running time is .
5 Shallow Trees for Points in a Tile
In this section, we prove Theorem 2. By Theorem 6 and Lemma 7, we may reduce to the problem of finding a tile-restricted -ST for points in a tile . Let be a set of points in the plane, be a tile, and an -cnet for the point set . We present an algorithm constructing a net-restricted ST for . Then we show that is a net-restricted -ST and its weight is , where denotes the minimum weight of a net-restricted -ST for ; and let be one such a -ST.
Lemma 20 ().
Let be the weight of the lightest net-restricted -ST for . There is a polynomial time algorithm returns a net-restricted ST for of weight .
Shallow tree construction algorithm.
Similar to Section 4, we assume that and (see Figure 4). For each point , we use the same set of vertical lines defined in Equation 3. For each point and each integer , let denote the intersection of with the strip between the two lines and and be the smallest axis-parallel rectangle containing . The point is associated with the rectangles with . A rectangle lies on two distinct vertical lines and if two of its vertical sides are contained in and .
We construct minimum hitting sets in iterations. Starting from , let be the set of rectangles . Consider every pair of lines such that there are some rectangles in lying on and . Let be the set of rectangles in lying on and that have nonempty intersection with . We find the minimum hitting set of from . For each point in the hitting set, let for every (and define for all ).
We build a graph on as follows: For every point , let be a sequence of hitting points so that for , if , then we choose an arbitrary point from the minimum hitting set of that hits (otherwise no point is chosen from . We add the path to . The path is called the candidate path of in .
For each point , let be the candidate path of in . We prune the path to eliminate some of the vertices: Initialize . While there exist two consecutive interior vertices and in such that , then let the first such pair be and eliminate from . Assume that is the result of the pruning process. Observe that is a path from to . We call the approximate path of . Let be the union of paths for all . We return the shortest-path tree of rooted at .
Lemma 21 ().
Let be a point in , and let be the approximate path of in , we have .
The proof of Lemma 21 is similar to the one with Steiner points. Since is the shortest-path tree of , it contains -paths of weight for all .
Weight Analysis.
We show that , and then prove that . Combined with the trivial bound , we obtain , as required.
Proof Overview.
To bound the weight of , we partition its edges into two types: local edges, which connect vertices in consecutive strips, and crossing edges, which connect vertices in non-consecutive strips. The contribution of local edges can be bounded using the number of paths in that intersect the upper strip. For crossing edges, we charge each such edge to an appropriate representative edge of . The key observation is that if contains a long edge , then there must exist an edge whose length is at least , and we charge to this . Because the lengths at different scale differ by exponential factors, each edge of can be charged only by edges of at the same scale. Therefore, each such representative edge is charged at most times, which yields the desired bound. The bound on the weight of follows from the fact that each consecutive edge can appear in at most candidate paths in .
References
- [1] Charles J Alpert, Te C Hu, Jen-Hsin Huang, Andrew B Kahng, and David Karger. Prim-dijkstra tradeoffs for improved performance-driven routing tree design. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 14(7):890–896, 2002.
- [2] Baruch Awerbuch, Alan E. Baratz, and David Peleg. Cost-sensitive analysis of communication protocols. In Proc. 9th ACM Symposium on Principles of Distributed Computing, (PODC), pages 177–187, 1990. doi:10.1145/93385.93417.
- [3] Baruch Awerbuch, Alan E. Baratz, and David Peleg. Efficient broadcast and light-weighted spanners. manuscript, 1991.
- [4] Yehuda Ben-Shimol, Amit Dvir, and Michael Segal. SPLAST: A novel approach for multicasting in mobile wireless ad hoc networks. In Proc. 15th IEEE Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC), volume 2, pages 1011–1015, 2004. doi:10.1109/PIMRC.2004.1373851.
- [5] Gengjie Chen and Evangeline F. Y. Young. SALT: provably good routing topology by a novel Steiner shallow-light tree algorithm. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst., 39(6):1217–1230, 2020. doi:10.1109/TCAD.2019.2894653.
- [6] Otfried Cheong and Changryeol Lee. Single-source dilation-bounded minimum spanning trees. Int. J. Comput. Geom. Appl., 23(3):159–170, 2013. doi:10.1142/S0218195913500052.
- [7] Jason Cong, Andrew B. Kahng, Gabriel Robins, Majid Sarrafzadeh, and C. K. Wong. Performance-driven global routing for cell based ICs. In Proc. IEEE International Conference on Computer Design: VLSI in Computer & Processors (ICCD), pages 170–173, 1991. doi:10.1109/ICCD.1991.139874.
- [8] Jason Cong, Andrew B. Kahng, Gabriel Robins, Majid Sarrafzadeh, and Chak-Kuen Wong. Provably good performance-driven global routing. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst., 11(6):739–752, 1992. doi:10.1109/43.137519.
- [9] Razvan Cristescu, Baltasar Beferull-Lozano, Martin Vetterli, and Roger Wattenhofer. Network correlated data gathering with explicit communication: Np-completeness and algorithms. IEEE/ACM Trans. Netw., 14(1):41–54, 2006. doi:10.1145/1133553.1133557.
- [10] Ludwig Danzer and Branko Grünbaum. Intersection properties of boxes in . Comb., 2(3):237–246, 1982. doi:10.1007/BF02579232.
- [11] Yefim Dinitz, Michael Elkin, and Shay Solomon. Low-light trees, and tight lower bounds for Euclidean spanners. Discret. Comput. Geom., 43(4):736–783, 2010. doi:10.1007/S00454-009-9230-Y.
- [12] Michael Elkin and Shay Solomon. Narrow-shallow-low-light trees with and without Steiner points. SIAM Journal on Discrete Mathematics, 25(1):181–210, 2011. doi:10.1137/090776147.
- [13] Michael Elkin and Shay Solomon. Steiner shallow-light trees are exponentially lighter than spanning ones. SIAM J. Comput., 44(4):996–1025, 2015. doi:10.1137/13094791X.
- [14] Stephan Held and Daniel Rotter. Shallow-light Steiner arborescences with vertex delays. In Proc. 16th Conference on Integer Programming and Combinatorial Optimization (IPCO), volume 7801 of LNCS, pages 229–241. Springer, 2013. doi:10.1007/978-3-642-36694-9_20.
- [15] Dorit S. Hochbaum and Wolfgang Maass. Approximation schemes for covering and packing problems in image processing and VLSI. J. ACM, 32(1):130–136, 1985. doi:10.1145/2455.214106.
- [16] Xiaohua Jia, Ding-Zhu Du, Xiao-Dong Hu, Man-Kei Lee, and Jun Gu. Optimization of wavelength assignment for QoS multicast in WDM networks. IEEE Trans. Commun., 49(2):341–350, 2001. doi:10.1109/26.905896.
- [17] Ardalan Khazraei and Stephan Held. An improved approximation algorithm for the uniform cost-distance Steiner tree problem. In Proc. 18th Workshop on Approximation and Online Algorithms (WAOA), volume 12806 of LNCS, pages 189–203, 2020. doi:10.1007/978-3-030-80879-2_13.
- [18] Samir Khuller, Balaji Raghavachari, and Neal E. Young. Balancing minimum spanning trees and shortest-path trees. Algorithmica, 14(4):305–321, 1995. Preliminary version at SODA 1993. doi:10.1007/BF01294129.
- [19] Vachaspathi P. Kompella, Joseph Pasquale, and George C. Polyzos. Multicast routing for multimedia communication. IEEE/ACM Trans. Netw., 1(3):286–292, 1993. doi:10.1109/90.234851.
- [20] Dejan Kostic and Amin Vahdat. Latency versus cost optimizations in hierarchical overlay networks. Technical report, Technical report, Duke University,(CS-2001-04), 2002.
- [21] Wei Li, Yuxiao Qu, Gengjie Chen, Yuzhe Ma, and Bei Yu. Treenet: Deep point cloud embedding for routing tree construction. In Proc. 26th Asia and South Pacific Design Automation Conference (ASPDAC), pages 164–169. ACM Press, 2021. doi:10.1145/3394885.3431566.
- [22] Weifa Liang and Yuzhen Liu. Online data gathering for maximizing network lifetime in sensor networks. IEEE Trans. Mob. Comput., 6(1):2–11, 2007. doi:10.1109/TMC.2007.250667.
- [23] Hong Luo, Jun Luo, Yonghe Liu, and Sajal K Das. Adaptive data fusion for energy efficient routing in wireless sensor networks. IEEE Transactions on Computers, 55(10):1286–1299, 2006. doi:10.1109/TC.2006.157.
- [24] Frank Nielsen. Fast stabbing of boxes in high dimensions. Theor. Comput. Sci., 246(1-2):53–72, 2000. doi:10.1016/S0304-3975(98)00336-3.
- [25] David Peleg. Distributed Computing: A Locality-Sensitive Approach. SIAM, 2000. doi:10.1137/1.9780898719772.
- [26] F. Sibel Salman, Joseph Cheriyan, R. Ravi, and S. Subramanian. Buy-at-bulk network design: Approximating the single-sink edge installation problem. In Proc. 8th ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 619–628, 1997. URL: http://dl.acm.org/citation.cfm?id=314161.314397.
- [27] Anees Shaikh and Kang Shin. Destination-driven routing for low-cost multicast. IEEE Journal on Selected Areas in Communications, 15(3):373–381, 1997. doi:10.1109/49.564135.
- [28] Hanan Shpungin and Michael Segal. Near-optimal multicriteria spanner constructions in wireless ad hoc networks. IEEE/ACM Transactions on etworking, 18(6):1963–1976, 2010. doi:10.1109/TNET.2010.2053381.
- [29] Shay Solomon. Euclidean Steiner shallow-light trees. J. Comput. Geom., 6(2):113–139, 2015. doi:10.20382/JOCG.V6I2A7.
- [30] Jürgen Vogel, Jörg Widmer, Dirk Farin, Martin Mauve, and Wolfgang Effelsberg. Priority-based distribution trees for application-level multicast. In Proceedings of the 2nd Workshop on Network and System Support for Games (NETGAMES), pages 148–157. ACM, 2003. doi:10.1145/963900.963914.
- [31] Pascal Von Rickenbach and Rogert Wattenhofer. Gathering correlated data in sensor networks. In Proceedings of the DIALM-POMC Joint Workshop on Foundations of Mobile Computing, pages 60–66, 2004. doi:10.1145/1022630.1022640.
- [32] Bang Ye Wu, Kun-Mao Chao, and Chuan Yi Tang. Light graphs with small routing cost. Networks, 39(3):130–138, 2002. doi:10.1002/NET.10019.
