A 4-Approximation of the 2π 3 -MST
AA 4-Approximation of the π -MST Stav Ashur
Department of Computer Science, Ben-Gurion University of the Negev, [email protected]
Matthew J. Katz
Department of Computer Science, Ben-Gurion University of the Negev, [email protected]
Abstract
Bounded-angle (minimum) spanning trees were first introduced in the context of wireless networkswith directional antennas. They are reminiscent of bounded-degree spanning trees, which havereceived significant attention. Let P = { p , . . . , p n } be a set of n points in the plane, let Π be thepolygonal path ( p , . . . , p n ), and let 0 < α < π be an angle. An α -spanning tree ( α -ST) of P isa spanning tree of the complete Euclidean graph over P , with the following property: For eachvertex p i ∈ P , the (smallest) angle that is spanned by all the edges incident to p i is at most α . An α -minimum spanning tree ( α -MST) is an α -ST of P of minimum weight, where the weight of an α -ST is the sum of the lengths of its edges. In this paper, we consider the problem of computingan α -MST, for the important case where α = π . We present a simple 4-approximation algorithm,thus improving upon the previous results of Aschner and Katz and Biniaz et al., who presentedalgorithms with approximation ratios 6 and , respectively.In order to obtain this result, we devise a simple O ( n )-time algorithm for constructing a π -ST T of P , such that T ’s weight is at most twice that of Π and, moreover, T is a 3-hop spanner of Π.This latter result is optimal in the sense that for any ε > π -ST has weight greater than 2 − ε times the weight of the path. Theory of computation → Computational geometry; Theory ofcomputation → Design and analysis of algorithms
Keywords and phrases bounded-angle spanning tree, bounded-degree spanning tree, hop-spanner
Digital Object Identifier
Funding
Matthew J. Katz : Partially supported by grant 1884/16 from the Israel Science Foundation.
Let P = { p , . . . , p n } be a set of n points in the plane. An α -spanning tree ( α -ST) of P ,for an angle 0 < α < π , is a spanning tree of the complete Euclidean graph over P , withthe following property: For each vertex p i ∈ P , the (smallest) angle that is spanned by allthe edges incident to p i is at most α (see Figure 1). An α -minimum spanning tree ( α -MST)is then an α -ST of P of minimum weight, where the weight of an α -ST is the sum of thelengths of its edges.Since there always exists a MST of P in which the degree of each vertex is at most 5, theinteresting range for α is (0 , π ). The concept of bounded-angle (minimum) spanning tree(i.e., of an α -(M)ST) was introduced by Aschner and Katz [3], who arrived at it through thestudy of wireless networks with directional antennas. However, it is interesting in its ownright. The study of bounded-angle (minimum) spanning trees is also related to the studyof bounded-degree (minimum) spanning trees, which received considerable attention (see,e.g., [7–11]). (A degree- k ST, is a spanning tree in which the degree of each vertex is at most k , and a degree- k MST is a degree- k ST of minimum weight.)It is easy to see that an α -ST of P , for α < π , does not always exist; think, for example,of the corners of an equilateral triangle. On the other hand, it is known (see [1, 2, 6]) that for © Stav Ashur and Matthew Katz;licensed under Creative Commons License CC-BYLeibniz International Proceedings in InformaticsSchloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl Publishing, Germany a r X i v : . [ c s . C G ] O c t X:2 A 4-Approximation of the π -MST π Figure 1 A π -ST. any α ≥ π , there always exists an α -ST of P .The next natural question is what is the status of the problem of computing an α -MST,for a given ‘typical’ angle α . Aschner and Katz [3] proved that (at least) for α = π and for α = π the problem is NP-hard, and, therefore, it calls for efficient approximation algorithms.Obviously, the weight of an α -MST of P , for any angle α , is at least the weight of anMST of P , so if we develop an algorithm for constructing an α -ST, for some angle α , andprove that the weight of the trees constructed by the algorithm never exceeds some constant c times the weight of the corresponding MSTs, then we have a c -approximation algorithm forcomputing an α -MST. Aschner et al. [4] showed that this approach is relevant only if α ≥ π ,since for any α < π , there exists a set of points for which the ratio between the weights ofthe α -MST and the MST is Ω( n ).In this paper, we focus on the important case where α = π . That is, we are interestedin an algorithm for computing a ‘good’ approximation of π -MST, where by good we meanthat the weight of the output π -ST is not much larger than that of an MST (and thus ofa π -MST). Aschner and Katz [3] presented a 6-approximation algorithm for the problem.Subsequently, Biniaz et al. [5] described an improved -approximation algorithm. In thispaper, we manage to reduce the approximation ratio to 4, by taking a completely differentapproach than the two previous algorithms.Most of the paper is devoted to proving Theorem 3.4, which is of independent interest.Our main result, i.e., the 4-approximation algorithm, is obtained as an easy corollary of thistheorem. Let Π denote the polygonal path ( p , ..., p n ). Then, Theorem 3.4 states that onecan construct a π -ST T of P , such that (i) the weight of T , ω ( T ), is at most 2 ω (Π), and (ii) T is a 3-hop spanner of Π (i.e., if there is an edge between p and q in Π, then there is a pathconsisting of at most 3 edges between p and q in T ). Notice that 2 is the best approximationratio that one can hope for, since Biniaz et al. [5] showed that for any α < π , the weight ofan α -MST of a set of n points on the line, such that the distance between consecutive pointsis 1, is at least 2 n −
3, whereas the weight of an MST is clearly n −
1. (This lower bound isalso mentioned without a proof in [3].)We prove Theorem 3.4 by presenting an O ( n )-time algorithm for constructing T andproving its correctness. The algorithm is very simple and easy to implement, but arriving atit and proving its correctness is far from trivial. One approach for constructing a π -ST of P is to assign to each vertex of P an orientation, where an orientation of a vertex p is a coneof angle π with apex at p . The assignment of orientations induces a transmission graph G (over P ), where { p i , p j } is an edge of G if and only if p j is in p i ’s cone and p i is in p j ’s . Ashur and M. Katz XX:3 cone. Now, if G is connected, then by computing a minimum spanning tree of G one obtainsa π -ST of P . The challenge is of course to determine the orientations of the vertices, sothat G is connected and the weight of a minimum spanning tree of G is bounded by a smallconstant times ω (Π).Next, we describe some of the ideas underlying our algorithm for constructing T . Assumefor simplicity that n is even and consider the sequence of edges X obtained from Π byremoving all the edges at even position (i.e., by removing the edges { p , p } , { p , p } , . . . ).For each edge e = { p, q } ∈ X , we consider the partition of the plane into four regionsinduced by e , see Figure 2. This partition determines for each of e ’s vertices three ‘allowable’orientations, see Figure 3. Our algorithm assigns to each vertex of Π one of its three allowableorientations, such that the resulting transmission graph G contains the edges in X and atleast one edge between any two adjacent edges in X . Finally, by keeping only the edgesin X and a single edge between any two adjacent edges, we obtain T . The novelty of thealgorithm is in the way it assigns the orientations to the vertices to ensure that the resultinggraph satisfies these conditions.We now discuss the two previous results on computing an approximation of a π -MSTof P , and some of the related results. The first stage in the previous algorithms, as wellas in the new one, is to compute a MST of P , MST( P ), and from it a spanning path Π of P of weight at most 2 ω (MST( P )). (Π is obtained by listing the vertices of P through anin-order traversal of MST( P ), where a vertex is added to the list when it is visited for thefirst time.) The algorithm of Aschner and Katz [3] operates on the path Π. It constructs a π -ST of P from Π of weight at most 3 ω (Π), and thus of weight at most 6 ω (MST( P )). Thealgorithm of Biniaz et al. [5] can operate only on non-crossing paths, so it first transforms Πto a non-crossing path Π (by iteratively flipping crossing edges), such that ω (Π ) ≤ ω (Π).Then, it constructs a π -ST of P from Π of weight at most ω (Π ), and thus of weight atmost ω (MST( P )). The new algorithm operates directly on Π. It constructs a π -ST of P from Π of weight at most 2 ω (Π), and thus of weight at most 4 ω (MST( P )).Notice that 4 is the best approximation ratio possible, for any such two-stage algorithm,provided the stages are independent. This is true since (i) Fekete et al. [8] showed that forany ε > − ε times the weight of an MST, and (ii) as mentioned above, for any ε >
0, there exists a pointset and a corresponding spanning path for which any π -ST has weight at least 2 − ε timesthe weight of the path.As for other values of α , Aschner and Katz [3] presented a 16-approximation algorithmfor computing a π -MST of P . The best known approximations of the degree- k MST, for k = 2 , ,
4, imply a 2-approximation of the π -MST, a 1.402-approximation of the π -MST [7],and a 1.1381-approximation of the π -MST [7, 9]. (cid:73) Definition 2.1.
Any ordered pair ( u, v ) of points in the plane, induces a partition of theplane into four regions, which we denote by P u,v ; see Figure 2. We denote the four regionsby P u,v , P u,v , P u,v , and P u,v , as depicted in Figure 2. Notice that the partitions P u,v and P v,u are identical, where P u,v = P v,u , P u,v = P v,u , etc. Sometimes, we prefer to considerthe points u and v as an unordered pair of points, in which case we denote the partitioninduced by them as P { u,v } . In P { u,v } , we distinguish between the two side regions, which are P u,v and P u,v (alternatively, P v,u and P v,u ), and the two center regions, which are P u,v and P u,v (alternatively, P v,u and P v,u ). X:4 A 4-Approximation of the π -MST P u,v P u,v P u,v P u,v u v Figure 2
The partition of the plane P u,v induced by the ordered pair of points ( u, v ). The orientation of a point u , is the orientation of a π -cone with apex at u ; we refer tothis cone as the transmission cone of u . In the following definition, we define the three basic orientations of u with respect to another point v , based on P u,v ; see Figure 3. (cid:73) Definition 2.2.
For a pair of points u and v , the three basic orientations of u with respectto v are: u uv : The only orientation of u , such that P u,v is fully contained in the transmission cone of u , u dv : The only orientation of u , such that P u,v is fully contained in the transmission cone of u , and u cv : The only orientation of u , such that P u,v is fully contained in the transmission cone of u . Notice that in each of the basic orientation of u with respect to v , we have that v lies in u ’s cone. Therefore, for any assignment of basic orientation to u (with respect to v ) and anyassignment of basic orientation to v (with respect to u ), the edge { u, v } will be present inthe resulting transmission graph.Next, we prove three claims concerning the relationship between P { u,v } and P { x,y } , where { u, v } and { x, y } are unordered pairs of points. (cid:66) Claim 2.3.
Let { u, v } and { x, y } be two unordered pairs of points. If x lies in one of theside regions of P { u,v } and y lies in the other, then both u and v lie in the union of the centerregions of P { x,y } . Proof.
Assume, e.g., that x ∈ P u,v and y ∈ P u,v . If u is not in one of the center regions of P { x,y } , then it is in one of the side regions of P { x,y } . But, if u ∈ P x,y , then it is impossiblethat y ∈ P u,v , and if u ∈ P x,y , then it is impossible that x ∈ P u,v . Consider for examplethe latter case, i.e., u ∈ P x,y , and assume, without loss of generality, that the line segment uv is horizontal, with u to the left of v , and that y is not below the line containing uv (seeFigure 4). Then, the requirement u ∈ P x,y implies that P x,y and the green region in thefigure are disjoint (when viewed as open regions), which, in turn, implies that x must lie inthe green region. But this is impossible since the green region and P u,v are disjoint. (cid:74)(cid:66) Claim 2.4.
Let { u, v } and { x, y } be two unordered pairs of points, such that x lies in oneof the side regions of P { u,v } , say in the one adjacent to v , and y lies in one of the centerregions of P { u,v } . Then, if u lies in the side region adjacent to x , then so does v . . Ashur and M. Katz XX:5 P u,v P u,v P u,v P u,v u v (a) The orientation u uv . P u,v P u,v P u,v P u,v u v (b) The orientation u dv . P u,v P u,v P u,v P u,v u v (c) The orientation u cv . Figure 3
The three basic orientations of u with respect to v . Proof.
Assume that u ∈ P x,y but v / ∈ P x,y . We show that this implies that y ∈ P u,v — acontradiction. Indeed, assume, without loss of generality, that the segment uv is horizontal,with u to the left of v , and that x is not below the line containing uv (see Figure 5). Since u and v are in different regions of P x,y , we know that the border between P x,y (in which u resides) and P x,y (in which v resides) crosses uv . But, this implies that the dashed rayemanating from x is contained in P u,v , so y , which is somewhere on this ray, is in P u,v . (cid:74)(cid:66) Claim 2.5.
Let { u, v } and { x, y } be two unordered pairs of points, such that x lies in oneof the side regions of P { u,v } , say in the one adjacent to v , and y lies in one of the centerregions of P { u,v } . Then, if v lies in the side region adjacent to y , then so does u . Proof.
Assume that v ∈ P x,y but u / ∈ P x,y . We show that this implies that x is in one ofthe center regions of P u,v — a contradiction. Indeed, assume, without loss of generality, thatthe segment uv is horizontal, with u to the left of v , and that y ∈ P u,v (see Figure 6). Since u and v are in different regions of P x,y , we know that the border between P x,y (in which v resides) and P x,y (in which u resides) crosses uv . But, this implies that the dashed rayemanating from y is contained in P u,v , so x , which is somewhere on this ray, is in P u,v . (cid:74) X:6 A 4-Approximation of the π -MST u v y Figure 4
Proof of Claim 2.3: If y ∈ P u,v and u ∈ P x,y , then x must lie in the green region. u v x Figure 5
Proof of Claim 2.4: If u ∈ P x,y but v / ∈ P x,y , then y , which is on the dashed rayemanating from x , is necessarily in P u,v . π -tree Let { p , . . . , p n } be a set of n ≥ p , . . . , p n ). The weight of Π, ω (Π), is the sum of the lengths of the edges of Π, i.e., ω (Π) = P n − i =1 | p i p i +1 | . Let X and Y be the two natural matchings induced by Π, that is, X = {{ p , p } , { p , p } , . . . } and Y = {{ p , p } , { p , p } , . . . } . Then, since X ∩ Y = ∅ , either ω ( X ) or ω ( Y ) is at most ω (Π) /
2. Assume, without loss of generality, that ω ( X ) ≤ ω (Π) / n is even and that X is a perfect matching.In this section, we present an algorithm for replacing Π by a π -tree, T , such that ω ( T ) ≤ ω (Π) and, moreover, T is a 3-hop spanner of Π (i.e., if there is an edge between p and q in Π, then there is a path consisting of at most three edges between p and q in T ).Our algorithm assigns to each of the vertices p of Π an orientation, which is one of thethree basic orientations of p with respect to the vertex q matched to p in X .In the subsequent description, we think of X as a sequence (rather than a set) of edges.Our algorithm consists of three phases. . Ashur and M. Katz XX:7 u vy Figure 6
Proof of Claim 2.5: If v ∈ P x,y but u / ∈ P x,y , then x , which is on the dashed rayemanating from y , is necessarily in P u,v . In the first phase of the algorithm, we iterate over the edges of X . When reaching the edge { p i , p i +1 } , we examine it with respect to both its previous edge { p i − , p i − } and its nextedge { p i +2 , p i +3 } in X . (The first edge is only examined w.r.t. its next edge, and the lastedge is only examined w.r.t. its previous edge.) During the process, we either assign anorientation to one of p i , p i +1 , to both of them, or to neither of them. In this phase, we onlyassign center orientations, i.e., u cv or v cu , where { u, v } is an edge in X . u v f u v f Figure 7
The conditions by which we assign u the orientation u cv due to f = { x, y } . Left: u ’sorientation is determined by the first condition. Right: u ’s orientation is determined by the secondcondition. Let e = { u, v } be the edge that is being considered and let f = { x, y } be one of its (atmost) two neighboring edges. We assign u the orientation u cv due to f if one of the followingconditions holds: One of f ’s vertices is in v ’s region (i.e., in the side region adjacent to v ) and u is in theregion of the other vertex of f ; see Figure 7 (left). Both x and y are in v ’s region; see Figure 7 (right).Notice that it is possible that both conditions hold; see Figure 8. We say that u ’s orientationwas determined by the second condition, only if the first condition does not hold; otherwise,we say that u ’s orientation was determined by the first condition.Similarly, we assign v the orientation v cu due to f if one of the conditions above holds,when u is replaced by v . X:8 A 4-Approximation of the π -MST u v f Figure 8
Both conditions hold, but we say that u ’s orientation is determined by the first condition. The following series of claims deals with the outcome of examining an edge e with respectto a neighboring edge f . (cid:66) Claim 3.1.
The orientation of at most one of the vertices of edge e = { u, v } is determined,when e is examined with respect to a neighboring edge f = { x, y } . Proof.
Assume that both u and v were oriented due to f and consider the conditionsresponsible for it, so as to reach a contradiction. If the orientation of one of the vertices, say u , was determined by the second condition, then neither of the conditions can apply to v ,since both conditions require that at least one of f ’s vertices is in u ’s region. If, however,the orientation of both u and v was determined by the first condition, then, without loss ofgenerality, x is in u ’s region and y is in v ’s region, and by Claim 2.3 we conclude that u and v are in the center regions of P x,y , implying that neither of the vertices of e was orienteddue to f . (cid:74)(cid:66) Claim 3.2.
If the orientation of a vertex of edge e = { u, v } is determined by the firstcondition, when e is examined with respect to a neighboring edge f = { x, y } , then theorientation of a vertex of f is determined by the first condition, when f is examined withrespect to e , and these two vertices induce an edge of the transmission graph. Proof.
Assume that, e.g., u ’s orientation is determined by the first condition (i.e., u isassigned the orientation u cv ), when e is examined with respect to f . This means that there isa vertex of f , say x , that is in v ’s region, and that u is in y ’s region. Now, when we proceedto examine the edge f with respect to e , we find that u is in y ’s region and x is in v ’s region,so by the first condition we assign x the orientation x cy .It remains to show that u and x induce and edge of the transmission graph. Indeed, x is in the transmission cone of u , since x is in v ’s region and u ’s cone contains v ’s region.Similarly, u is in the transmission cone of x , since u is in y ’s region and x ’s cone contains y ’sregion. (cid:74)(cid:66) Claim 3.3.
If the orientation of a vertex of edge e = { u, v } is determined by the secondcondition, when e is examined with respect to a neighboring edge f = { x, y } , then neither of f ’s vertices is assigned an orientation due to e . Proof.
If the orientation of, e.g., u is determined by the second condition, when e is examinedwith respect to f , then u is in one of the center regions of P { x,y } . Therefore, when f is . Ashur and M. Katz XX:9 examined with respect to e , the only condition that may hold is the first one. But if it does,then by Claim 3.2, the orientation of u is determined by the first condition, contrary to ourassumption. We conclude that if the orientation of a vertex of e is determined by the secondcondition, then neither of f ’s vertices is assigned an orientation due to e . (cid:74) After completing the first phase, in which we iterated over the edges of X only once (i.e., asingle round), we proceed to the second phase, in which we iterate over the edges of X againand again (i.e., multiple rounds). The second phase ends only after a full round is completed,in which no vertex is assigned an orientation. In a single round, we iterate over the edges of X , and for each pair of consecutive edges e = { u, v } and f = { x, y } , where e precedes f , weassign orientations to the vertices of e and f , subject to the four rules listed below. No reorienting:
The orientation of a vertex is unmodifiable; that is, once the orientationof a vertex has been fixed (possibly already in the first phase), it cannot be changed.
Center orientation:
A non-center orientation to a vertex u of an edge e is allowed, onlyif u is the second vertex of e to be assigned an orientation. Thus, if u is the first vertexof e to be assigned an orientation, then u must be assigned a center orientation. Edge creation:
Every operation that is performed must result in the creation of an edgeof the transmission graph. This is achieved either by assigning orientations to two verticessimultaneously, or by orienting a vertex towards an already oriented vertex.
No double tapping:
If one of e ’s vertices was already oriented due to f , where f is oneof e ’s neighboring edges, then the other vertex of e will not be oriented due to f .Notice that in this phase, unlike the previous one, the orientation decisions that we makewhen examining an edge e with respect to the next edge f , also depend on the orientationsthat some of the vertices of these edges may already have, and not only on the relativepositions of these vertices.At this point, we could have proceeded directly to the third phase, since for the purposeof correctness we do not need to elaborate on the types of operations that are performedin the second phase. However, for the sake of clarity, we illustrate below several types ofoperations that are performed during the second phase. u is assigned the orientation u cv and x is assigned the orientation x uy or x dy , to establishthe edge { u, x } of the transmission graph; see Figure 9 (left).Precondition: y is already oriented. x is assigned the orientation x uy or x dy , to establish the edge { u, x } of the transmissiongraph, where u was previously assigned the orientation u cv ; see Figure 9 (left).Precondition: y is already oriented. u is assigned the orientation u uv or u dv and x is assigned the orientation x uy or x dy , toestablish the edge { u, x } of the transmission graph; see Figure 9 (right).Precondition: v and y are already oriented.In Figure 10(a-b) one can see the result of applying the first two phases to the path( p , . . . , p ), i.e., to the sequence of edges X = ( { p , p } , { p , p } , { p , p } , { p , p } ). In this phase we perform one final round, in which we orient all the vertices that were notyet oriented. More precisely, we iterate over the edges of X , considering each edge e with X:10 A 4-Approximation of the π -MST u v y x u v x y Figure 9
Left: If y was already oriented, u and x can be oriented towards each other, assigning x a non-center orientation (first scenario). If u was also already oriented, x can be oriented towards u (second scenario). Right:
If both v and y were already oriented, u and x can be oriented towardseach other, assigning them non-center orientations (third scenario). respect to the next edge f . When considering e , we orient its vertices that were not yetoriented, so that once we are done with e , both e itself and an edge connecting e and f arepresent in the transmission graph that is being constructed.When considering the edge e = { u, v } with respect to the next edge f = { x, y } , we know(by induction) that there already exists a transmission edge connecting e and the previousedge, so at most one of e ’s vertices was not yet oriented. If both vertices of e were alreadyoriented, then either there already exists a transmission edge connecting e and f , or not. Inthe former case, proceed to the next edge of X (i.e., to f ), and in the latter case, orient avertex of f that was not yet oriented (there must be such a vertex), to obtain a transmissionedge between e and f . We prove below that this is always possible.If only one of e ’s vertices was already oriented, then let, e.g., u be the one that is notyet oriented. Now, if there already exists a transmission edge connecting e and f (i.e., v isconnected to both the previous and the next edge of e ), then assign u the orientation u cv (ensuring that e is a transmission edge). Otherwise, if one can assign an orientation to u , sothat a transmission edge is created between u and an already oriented vertex of f , then doso. If this is impossible, then orient u and a vertex of f that was not yet oriented (theremust be such a vertex), to obtain a transmission edge between e and f . We prove belowthat this is always possible.In Figure 10(c) one can see the result of applying the third phase to the sequence of edges X = ( { p , p } , { p , p } , { p , p } , { p , p } ) (following the application of the first and secondphases). We first consider the more interesting case, where (i) one of the vertices of e , say u , is notyet oriented, (ii) there is no transmission edge between e and f , and (iii) it is impossible toorient u so that a transmission edge is created between u and an already oriented vertex of f . In this case, we need to prove that at least one of f ’s vertices is not yet oriented and thatit is possible to orient both u and such a vertex of f to obtain a transmission edge between e . Ashur and M. Katz XX:11 and f .We begin by showing the if both of f ’s vertices were already oriented, then eitherassumption (ii) or assumption (iii) does not hold. Indeed, by Claim 3.1 and the No doubletapping rule of the second phase, one f ’s vertices, say x , was oriented due to e . Now, if x was oriented during the first phase, then we distinguish between two cases according to thecondition by which the orientation of x was determined. x ’s orientation was determined by the first condition. In this case, by Claim 3.2,the edge { v, x } is already in the transmission graph. In more detail, since u is not yetoriented, we must have that x ∈ P u,v and v ∈ P x,y . x ’s orientation was determined by the second condition. In this case, both u and v are in y ’s region and x is in one of the center regions of P { u,v } . So, by orienting u appropriately, one can obtain the transmission edge { u, x } .If, however, x was oriented during the second phase, then by the Edge creation rule, an edgeconnecting e and f was already created.We thus conclude that at least one of f ’s vertices is not yet oriented. We now consider,separately, the case where only one of f ’s vertices is not yet oriented and the case whereboth vertices of f are not yet oriented. Only one of f ’s vertices is not yet oriented. Assume, without loss of generality, that y is the vertex of f that is already oriented. If y was oriented due to e , then by replacing x with y in the proof above, we get that either assumption (ii) or assumption (iii) does not hold.Therefore, we assume that y was oriented due to the edge following f , which implies that y was oriented in the first or second phase. Now, if u and x can be oriented to obtain thetransmission edge { u, x } , then we are done. Otherwise, u ∈ P x,y or x ∈ P u,v . We considerthese cases below and show, for both of them, that a transmission edge between e and f canstill be created. u ∈ P , y : Notice that since x is not yet oriented and y was oriented in the first or secondphase, y ’s orientation is necessarily y cx . We consider each of the possible locations of v in P x,y , and show that regardless of v ’s location a transmission edge can be created. If v ∈ P x,y , then y was oriented due to e during the first phase — contradiction. If v ∈ P x,y , then, by Claim 2.3, x and y are in the center regions of P u,v , which allowsus to orient u towards y to create the transmission edge { u, y } . If v is in one of the center regions of P x,y , then we apply Claim 2.4 to show thatwe can orient x towards v to create the transmission edge { v, x } . Indeed, since (byassumption (iii)) we cannot orient u to create the transmission edge { u, y } , we knowthat y ∈ P u,v . So by Claim 2.4, we get that x ∈ P u,v . Therefore, since both x and y are in u ’s region, v ’s orientation was determined by the second condition during thefirst phase, and x can be oriented towards v to create the transmission edge { v, x } . x ∈ P , v : We first observe that if it is possible to create a transmission edge between v and x (i.e., v
6∈ P x,y ), then it is possible to do so by assigning v a center orientation (since x ∈ P u,v ), and we would have created the edge { v, x } (by assigning v a center orientationand x an appropriate orientation) in the second phase, as y was oriented in the first orsecond phase. We assume therefore that it is impossible to create a transmission edgebetween v and x , which implies that v ∈ P x,y .We now show that regardless of the location of y in P u,v , we get that v
6∈ P x,y —contradiction. If y ∈ P u,v , then, by Claim 2.3, v is in a center region of P x,y . If y ∈ P u,v , then an edge between v and y was created in the first phase (i.e., theorientations of both v and y were determined by the first condition of the first phase). X:12 A 4-Approximation of the π -MST If y is in one of the center regions of P u,v , say y ∈ P u,v , then, by Claim 2.4 and usingthe assertion that v ∈ P x,y , we get that u ∈ P x,y as well. Therefore, y was assigned acenter orientation in the first phase due to e , in contradiction to our assumption. Both vertices of f are not yet oriented. If x, y ∈ P u,v , then v ’s orientation wasdetermined by the second condition in the first phase (since if it were determined by the firstcondition, then we would already have an edge between e and f ). Therefore, v ’s orientationis v cu and v is in one of the center regions of P x,y , and we orient either x or y towards v tocreate a transmission edge between e and f .Assume, therefore, that at least one of f ’s vertices, say x , is not in P u,v . Now, if u / ∈ P x,y ,then we orient u and x towards each other to create the edge { u, x } . So assume, in addition,that u ∈ P x,y . Under these assumptions, we show that regardless of the location of x in P u,v , y / ∈ P u,v , so u and y can be oriented towards each other to create the transmission edge { u, y } . If x is in one of the center regions of P u,v , say x ∈ P u,v , then y / ∈ P u,v . Since, y ∈ P u,v , x ∈ P u,v and u ∈ P x,y implies (by Claim 2.5) that y was already oriented in the firstphase. If x ∈ P u,v , then again y / ∈ P u,v . Since, y ∈ P u,v and x ∈ P u,v implies (see Claim 2.3)that u is in one of the center regions of P x,y , contradicting the assumption u ∈ P x,y .We now tend to the case where both vertices of e are already oriented, but there is notransmission edge between e and f . We first notice that this means that one of the verticesof e , say u , was oriented due to f . Moreover, u ’s orientation was determined by the secondcondition in the first phase, since otherwise an edge connecting e and f would already existin the transmission graph. Next, we notice that at least one of the vertices of f was not yetoriented, since if both were oriented, then, again, one of them was oriented due to e and itsorientation was determined by the second condition in the first phase. But, this implies thatthe first condition applies to both u and this vertex of f and that a transmission betweenthem was already exists.Now, since u ’s orientation was determined by the second condition in the first phase, weknow that it is in one of the center regions of P x,y . We can therefore orient the vertex of f that is not yet oriented towards u to create the required transmission edge.At this point, the edge set of our transmission graph G contains X and at least oneedge, for each pair e, f of consecutive edges of X , connecting a vertex of e and a vertexof f . Let T be the graph obtained from G by leaving only one (arbitrary) edge, for eachpair of consecutive edges of X . Then, T is a π -spanning tree of P (see Figure 10(d)).Denote by Y the set of edges of T between (vertices of) consecutive edges of X . Then, ω ( T ) = ω ( X ) + ω ( Y ) ≤ ω ( X ) + (2 ω ( X ) + ω ( Y )) = ω (Π) + 2 ω ( X ) ≤ ω (Π). Moreover, T isa 3-hop spanner of Π, in the sense that if { p, q } is an edge of Π, then there is a path between p and q in T consisting of at most 3 edges. The non-perfect case.
It was convenient to assume that X is a perfect matching, but itis possible of course that it is not. More precisely, if n is odd, then | X | = b n c and either p or p n remain unmatched, and if n is even, then either | X | = n or | X | = n −
1, where inthe latter case both p and p n remain unmatched. However, it is easy to deal with the casewhere X is not a perfect matching, by converting it to the case where it is. Roughly, foreach unmatched point p ∈ P , we add a new point p to P and add the edge e = { p, p } to X .We then apply the algorithm as described above.We now provide a more detailed description of this reduction. Let f = { u, v } be theedge of X adjacent to p (e.g., if p = p , then f = { p , p } ). We draw p close enough to p , . Ashur and M. Katz XX:13 p p p p p p p p (a) After Phase I. p p p p p p p p (b) After Phase II. p p p p p p p p (c) After Phase III. p p p p p p p p (d) The π -ST that is obtained. Figure 10
A complete example. In the first phase, the vertex p ( p ) is assigned a centerorientation (depicted by the red triangle) due to the edge { p , p } ( { p , p } ) (first condition). Thevertex p is assigned a center orientation (depicted by the violet triangle) due to the edge { p , p } (second condition). In the first round of the second phase, p and p are oriented towards each other,when considering the consecutive edges { p , p } , { p , p } (the green triangles). In the third phase,the vertices p , p , and p are assigned orientations (the blue triangles). The bottom-right figureshows the π -ST that is obtained. ensuring that both points lie in the same region of P u,v , and add the edge e = { p, p } to X .We now apply the algorithm above to the perfect matching X , and consider the resultingtransmission graph G . If G contains an edge between p and a vertex of f , then simply removethe point p from G . Otherwise, G must contain an edge between p and a vertex of f , say u .In this case, we orient p towards u , thus creating the transmission edge { p, u } (since p is alsoin u ’s transmission cone). Finally, we remove the point p . Running time.
The first and third phases of the algorithm each consist of a single round,whereas the second phase consists of O ( n ) rounds. In each round we traverse the edges of X from first to last and spend O (1) time at each edge. Thus, the running time of the first andthird phases is O ( n ), whereas the running time of the second phase is O ( n ). We show belowthat the quadratic bound on the running time is due to our desire to keep the descriptionsimple, and that by slightly modifying the second phase we can reduce its running time to O ( n ). The modification is based on the observation that beginning from the second round, anoperation is performed when considering the pair e i , e i +1 of edges of X (i.e., a transmission X:14 A 4-Approximation of the π -MST edge between them is created) if (i) an operation was performed in the previous round whenconsidering e i +1 and e i +2 , or (ii) an operation was performed in the current round whenconsidering e i − and e i (or both).Using this observation, we prove that two rounds are sufficient. Specifically, in the firstround, we traverse the edges of X from first to last, i.e., a forward round, and in the secondround, we traverse the edges of X from last to first, i.e., a backward round. In both rounds,in each iteration we consider the current edge and the following one, and check whether anoperation can be performed (i.e., a transmission edge can be created), under the four ruleslisted in Section 3.2. We refer to such an operation as a legal operation.We now prove that once we are done, no legal operation can be performed when consideringa pair of adjacent edges of X . Indeed, let g = { p i , p i +1 } , f = { p i +2 , p i +3 } , e , and d be fourconsecutive edges of X , and assume that after the backward round, one can still perform alegal operation when considering the pair e and f . Then, the operation became legal afteran operation was performed when considering the pair f and g . Since, if it became legalafter an operation was performed when considering the pair d and e , then we would haveperformed it during the backward round. However, by our assumption, no operation wasperformed during the backward round when considering the pair e and f , and therefore nooperation was performed in this round when considering the pair f and g — contradiction.The following theorem summarizes the main result of this section. (cid:73) Theorem 3.4.
Let P = { p , . . . , p n } be a set of points in the plane, and let Π denote thepolygonal path ( p , ..., p n ) . Then, one can construct, in O ( n ) -time, a π -spanning tree T of P , such that (i) ω ( T ) ≤ ω (Π) , and (ii) T is a 3-hop spanner of Π . (cid:73) Corollary 3.5.
Let P = { p , . . . , p n } be a set of n points in the plane. Then, one canconstruct in O ( n log n ) -time a π -ST T of P , such that ω ( T ) ≤ ω (MST( P )) . References Eyal Ackerman, Tsachik Gelander, and Rom Pinchasi. Ice-creams and wedge graphs.
Comput.Geom. , 46(3):213–218, 2013. URL: https://doi.org/10.1016/j.comgeo.2012.07.003 , doi:10.1016/j.comgeo.2012.07.003 . Oswin Aichholzer, Thomas Hackl, Michael Hoffmann, Clemens Huemer, Attila Pór, FranciscoSantos, Bettina Speckmann, and Birgit Vogtenhuber. Maximizing maximal angles for planestraight-line graphs.
Comput. Geom. , 46(1):17–28, 2013. URL: https://doi.org/10.1016/j.comgeo.2012.03.002 , doi:10.1016/j.comgeo.2012.03.002 . Rom Aschner and Matthew J. Katz. Bounded-angle spanning tree: Modeling networks withangular constraints.
Algorithmica , 77(2):349–373, 2017. URL: https://doi.org/10.1007/s00453-015-0076-9 , doi:10.1007/s00453-015-0076-9 . Rom Aschner, Matthew J. Katz, and Gila Morgenstern. Symmetric connectivity with direc-tional antennas.
Comput. Geom. , 46(9):1017–1026, 2013. URL: https://doi.org/10.1016/j.comgeo.2013.06.003 , doi:10.1016/j.comgeo.2013.06.003 . Ahmad Biniaz, Prosenjit Bose, Anna Lubiw, and Anil Maheshwari. Bounded-angle minimumspanning trees. In , pages 14:1–14:22, 2020. URL: https://doi.org/10.4230/LIPIcs.SWAT.2020.14 , doi:10.4230/LIPIcs.SWAT.2020.14 . Paz Carmi, Matthew J. Katz, Zvi Lotker, and Adi Rosén. Connectivity guarantees forwireless networks with directional antennas.
Comput. Geom. , 44(9):477–485, 2011. URL: https://doi.org/10.1016/j.comgeo.2011.05.003 , doi:10.1016/j.comgeo.2011.05.003 . Timothy M. Chan. Euclidean bounded-degree spanning tree ratios.
Discret. Com-put. Geom. , 32(2):177–194, 2004. URL: . . Ashur and M. Katz XX:15 Sándor P. Fekete, Samir Khuller, Monika Klemmstein, Balaji Raghavachari, and Neal E.Young. A network-flow technique for finding low-weight bounded-degree spanning trees.
J.Algorithms , 24(2):310–324, 1997. URL: https://doi.org/10.1006/jagm.1997.0862 , doi:10.1006/jagm.1997.0862 . Raja Jothi and Balaji Raghavachari. Degree-bounded minimum spanning trees.
Discret.Appl. Math. , 157(5):960–970, 2009. URL: https://doi.org/10.1016/j.dam.2008.03.037 , doi:10.1016/j.dam.2008.03.037 . Samir Khuller, Balaji Raghavachari, and Neal E. Young. Low-degree spanning trees ofsmall weight.
SIAM J. Comput. , 25(2):355–368, 1996. URL: https://doi.org/10.1137/S0097539794264585 , doi:10.1137/S0097539794264585 . Christos H. Papadimitriou and Umesh V. Vazirani. On two geometric problems related to thetraveling salesman problem.
J. Algorithms , 5(2):231–246, 1984. URL: https://doi.org/10.1016/0196-6774(84)90029-4 , doi:10.1016/0196-6774(84)90029-4doi:10.1016/0196-6774(84)90029-4