LLong plane trees ∗ Sergio Cabello † , Michael Hoffmann ‡ , Katharina Klost ,Wolfgang Mulzer § , and Josef Tkadlec [email protected] kathklost,mulzer } @inf.fu-berlin.de [email protected] [email protected] Abstract
Let P be a finite set of points in the plane in general position. For any spanning tree T on P ,we denote by | T | the Euclidean length of T . Let T OPT be a plane (that is, noncrossing) spanningtree of maximum length for P . It is not known whether such a tree can be found in polynomialtime. Past research has focused on designing polynomial time approximation algorithms, usinglow diameter trees. In this work we initiate a systematic study of the interplay between theapproximation factor and the diameter of the candidate trees. Specifically, we show three results.First, we construct a plane tree T ALG with diameter at most four that satisfies | T ALG | ≥ δ · | T OPT | for δ > . d ≥ d ) achieved by a longest plane tree with diameter at most d (compared to alongest general plane tree). Geometric network design is a common and well-studied task in computational geometryand combinatorial optimization [16, 19, 23, 24]. In this family of problems, we are given aset P of points in general position, and our task is to connect P into a (geometric) graphthat has certain favorable properties. Not surprisingly, this general question has captivatedthe attention of researchers for a long time, and we can find a countless number of variants,depending on which restrictions we put on the graph that connects P and which criteria ofthis graph we would like to optimize. Typical graph classes of interest include matchings,paths, cycles, trees, or general plane ( noncrossing ) graphs, i.e., graphs, whose straight-lineembedding on P does not contain any edge crossings. Typical quality criteria include thetotal edge length [2, 13, 22, 27], the maximum length (bottleneck) edge [5, 15], the maximumdegree [3, 9, 17, 30], the dilation [16, 25, 28], or the stabbing number [26, 32] of the graph. ∗ This research was started at the 3rd DACH Workshop on Arrangements and Drawings, August 19–23, 2019, in Wergenstein (GR), Switzerland, and continued at the 16th European Research Weekon Geometric Graphs, November 18–22, 2019, in Strobl, Austria. We thank all participants of theworkshops for valuable discussions and for creating a conducive research atmosphere. † Supported by the Slovenian Research Agency (P1-0297, J1-9109, J1-8130, J1-8155, J1-1693, J1-2452). ‡ Supported by the Swiss National Science Foundation within the collaborative DACH project
Arrange-ments and Drawings as SNSF Project 200021E-171681. § Supported in part by ERC StG 757609. a r X i v : . [ c s . C G ] J a n Long plane trees
Many famous problems from computational geometry fall into this general setting. Forexample, if our goal is to minimize the total edge length, while restricting ourselves to paths,trees, or triangulations, respectively, we are faced with the venerable problems of findingan optimum TSP tour [19], a Euclidean minimum spanning tree [13], or a minimum weighttriangulation [27] for P . These three examples also illustrate the wide variety of complexityaspects that we may encounter in geometric design problems: the Euclidean TSP problem isknown to be NP-hard [29], but it admits a PTAS [2, 22]. On the other hand, it is possible tofind a Euclidean minimum spanning tree for P in polynomial time [13] (even though, curiously,the associated decision problem is not known to be solvable by a polynomial-time Turingmachine). The minimum weight triangulation problem is also known to be NP-hard [27], butthe existence of a PTAS is still open; however, a QPTAS is known [31].In this work, we are interested in the interaction of two specific requirements for a geometricdesign problem, namely the two desires of obtaining a plane graph and of optimizing the totaledge length. For the case that we want to minimize the total edge length of the resultinggraph, these two goals are often in perfect harmony: the shortest Euclidean TSP tour andthe shortest Euclidean minimum spanning tree are automatically plane, as can be seem by asimple application of the triangle inequality. In contrast, if our goal is to maximize the totaledge length, while obtaining a plane graph, much less is known.This family of problems was studied by Alon, Rajagopalan, and Suri [1], who consideredthe problems of computing a longest plane matching, a longest plane Hamiltonian path, anda longest plane spanning tree for a planar point set P in general position. Alon et al. [1]conjectured that these three problems are all NP-hard, but as far as we know, this is stillopen. The situation is similar for the problem of finding a maximum weight triangulation for P : here, we have neither an NP-hardness proof, nor a polynomial time algorithm [10]. If weomit the planarity condition, then the problem of finding a longest Hamiltonian path (the geometric maximum TSP problem ) is known to be NP-hard in dimension three and above,while the two-dimensional case remains open [4]. On the other hand, we can find a longest(typically not plane) tree on P in polynomial time, using classic greedy algorithms [12]. Longest plane spanning trees.
We focus on the specific problem of finding a longest plane(i.e. noncrossing) tree for a given set P of n ≥ P are collinear). Such a tree is necessarily spanning. The generalposition assumption was also used in previous work on this problem [1, 14]. Without it, oneshould specify whether overlapping edges are allowed, an additional complication that wewould like to avoid.If P is in convex position, then the longest plane tree for P can be found in polynomial timeon a real RAM, by adapting standard dynamic programming methods for plane structureson convex point sets [18, 20]. On the other hand, for an arbitrary point set P , the problem isconjectured—but not known—to be NP-hard [1]. For this reason, past research has focusedon designing polynomial-time approximation algorithms. Typically, these algorithms proceedby constructing several “simple” spanning trees for P of small diameter and by arguing thatat least one of these trees is sufficiently long. One of the first such results is due to Alonet al. [1]. They showed that a longest star (a plane tree with diameter two) on P yields a0 . P . Alon et al. [1]also argued that this bound is essentially tight for point sets that consist of two large clustersfar away from each other. Dumitrescu and Tóth [14] refined this algorithm by adding twoadditional families of candidate trees, now with diameter four. They showed that at leastone member of this extended range of candidates constitutes a 0 . . Cabello et al. 3 was further improved to 0 .
503 by Biniaz et al. [7]. In all these results, the approximationfactor is analyzed by comparing with the length of a longest (typically not plane) spanningtree. Such a tree may be up to π/ > . plane tree, and by considering certain trees with diameter five in additionto stars, we could recently push the approximation factor to 0 .
512 [8]. This was subsequentlyimproved even further to 0 .
519 [6].
Our results.
We study the interplay between the approximation factor and the diameter ofthe candidate trees.Our first result is a polynomial-time algorithm to find a tree that has diameter at mostfour and guarantees an approximation factor of roughly 0 . (cid:73) Theorem 1.
For any finite point set P in general position (no three points collinear), wecan compute in polynomial time a plane tree of Euclidean length at least f · | T OPT | , where | T OPT | denotes the length of a longest plane tree on P and f > . is the fourth smallestreal root of the polynomial P ( x ) = −
80 + 128 x + 504 x − x − x + 1096 x + 256 x . The algorithm “guesses” the longest edge of a longest plane tree and then constructs sixcertain trees – four stars and two more trees that contain the guessed edge and have diameterat most four. We argue that one of these six trees is sufficiently long. The polynomial P ( x )comes from optimizing the constants used in the proof.Our second result characterizes the longest plane tree for convex points sets. (cid:73) Theorem 2. If P is convex then every longest plane tree is a zigzagging caterpillar. A caterpillar is a tree T that contains a path S , called spine , so that every vertex of T \ S is adjacent to a vertex in S . A tree T that is straight-line embedded on a convex pointset P is a zigzagging caterpillar if its edges split the convex hull of P into faces that are alltriangles.The converse of Theorem 2 holds as well. (cid:73) Theorem 3.
For any caterpillar C there exists a convex point set P such that the uniquelongest tree for P is isomorphic to C . In particular, the diameter of a (unique) longest plane tree can be arbitrarily large. As aconsequence, we obtain an upper bound on the approximation factor BoundDiam( d ) thatcan be achieved by a plane tree of diameter at most d . (cid:73) Theorem 4.
For each d ≥ there exists a convex point set P so that every plane tree ofdiameter at most d on P is at most BoundDiam( d ) ≤ − d + 1)( d + 2)(2 d + 3) = 1 − Θ(1 /d ) times as long as the length | T OPT | of a longest (general) plane tree on P . For small values of d we have better bounds. For d = 2 it is easy to see thatBoundDiam(2) ≤ /
2: Put two groups of roughly half of the points sufficiently far from eachother. For d = 3 we can show BoundDiam(3) ≤ / Long plane trees (cid:73)
Theorem 5.
For every ε > there exists a convex point set such that each longest planetree of diameter three is at most (5 /
6) + ε times as long as each longest (general) plane tree. Our third result are polynomial time algorithms for finding a longest plane tree amongthose of diameter at most three and among a special class of trees of diameter at most four.Note that in contrast to diameter two, the number of spanning trees of diameter at mostthree is exponential in the number of points. (cid:73)
Theorem 6.
For any set P of n points in general position, a longest plane tree of diameterat most three on P can be computed in O ( n ) time. (cid:73) Theorem 7.
For any set P of points in general position and any three specified points onthe boundary of the convex hull of P , we can compute in polynomial time the longest planetree such that each edge is incident to at least one of the three specified points. The algorithms are based on dynamic programming. Even though the length | T OPT | ofa longest plane tree of diameter at most three can be computed in polynomial time, wedo not know the corresponding approximation factor BoundDiam(3). The best bounds weare aware of are 1 / ≤ BoundDiam(3) ≤ /
6. The lower bound follows from [1], the upperbound is from Theorem 5. We conjecture that | T OPT | actually gives a better approximationfactor than the tree constructed in Theorem 1—but we are unable to prove this.Finally, a natural way to design an algorithm for the longest plane spanning tree problemis the following local search heuristic [33]: start with an arbitrary plane tree T , and whileit is possible, apply the following local improvement rule: if there are two edges e , f on P such that ( T \ { e } ) ∪ { f } is a plane spanning tree for P that is longer than T , replace e by f . Once no further local improvements are possible, output the current tree T . Our fourthresult (see Lemma 21) shows that for some point sets, this algorithm fails to compute theoptimum answer as it may “get stuck” in a local optimum. This suggests that a natural localsearch approach does not yield an optimal algorithm for the problem. Let
P ⊂ R be a set of |P| = n points in the plane. Henceforth we assume that P is ingeneral position: no three points are collinear. For any spanning tree T on P , we denote by | T | the Euclidean length of T . Let T OPT be a plane (that is, noncrossing) spanning tree ofmaximum length for P .Similar to the existing algorithms [1, 6–8, 14], we make extensive use of stars. The star S p rooted at some point p ∈ P is the tree that connects p to all other points of P .At several places we talk about “flat” point sets. A point set P is flat if diam( P ) ≥ y -coordinates of all its points are essentially negligible, meaning that their absolutevalues are bounded by an infinitesimal ε >
0. For flat point sets, we can estimate the lengthof each edge as the difference between the x -coordinates of its endpoints, because the errorcan be made arbitrarily small by taking ε → D ( p, r ) refers to a closed disk with center p and radius r , while ∂D ( p, r ) is itsboundary: a circle of radius r centered at p . f . = 0 . In this section we present a polynomial time algorithm that yields an f -approximation ofthe longest plane tree for f . = 0 . f = approximation for flat point sets. . Cabello et al. 5 The algorithm considers trees T a,b , for a, b ∈ P , that are defined as follows (see Figure 1):Let P a be the points of P closer to a than to b and let P b = P \ P a . First, connect a to everypoint in P b . Second, connect each point of P a \ { a } to some point of P b without introducingcrossings. One possible, systematic way to do the second step is the following: The rays −→ av for v ∈ P b together with the ray opposite to −→ ab partition the plane into convex wedges withcommon apex a . Each such convex wedge W contains a point b W ∈ P b on the bounding raythat forms the smaller (convex) angle with −→ ab . Within each wedge W we can then connectall points of W ∩ ( P a \ { a } ) to b W . The construction gives a plane tree because we add starswithin each convex wedge and the interiors of the wedges are pairwise disjoint. Note that T a,b and T b,a are different in general. Also, if P a = { a } , then T a,b = T b,a is the star S a . aS a T a,b a b Figure 1
A tree S a and a tree T a,b . Given the above definition of the trees T a,b , consider the following (polynomial-time)algorithm that constructs a tree T ALG : Algorithm
AlgSimple( P ) : For each point a ∈ P , consider the star S a . For every pair of points a, b ∈ P , consider the tree T a,b . Let T ALG be the longest of those n + n ( n −
1) = n trees. Output T ALG .Given multiple trees which all contain a common edge ab we device a way to comparethe weights of the trees, by considering the edges separately. For this we direct all edgestowards the edge ab and assign each point its unique outgoing edge. The edge ab remainsundirected. Denote the length of the edge assigned to p = a, b in a fixed tree T by ‘ T ( p ).The main result of this section (Theorem 1) states that for any point set P we have | T ALG | > . · | T OPT | . The proof is rather involved. To illustrate our approach, we firstshow a stronger result for a special case when the point set P is flat: namely that in thosecases we have | T ALG | ≥ ·| T cr | , where T cr is the longest (possibly crossing) tree. The followingobservation shows that the constant is tight: (cid:73) Observation 8.
There is an infinite family of point sets P , P , . . . where P n has n + 1points and lim n →∞ | T OPT || T cr | ≤ T OPT T cr p p p n Figure 2
The point set P n consisting of n + 1 points with equally spaced x -coordinates 0 , , . . . , n ,with its best plane and crossing spanning trees. Long plane trees
Proof.
The point set P n = p , . . . , p n is a flat point set where all points lie evenly spaced ona convex arc with x -coordinates 0 , . . . , n , as shown in Figure 2. Then the optimal plane treeis a star at either p or p n and thus has length: | T OPT | = n X i =1 i = ( n + 1) n p , . . . , p b n/ c are connected to p n and the rest is connected to p as shown on the right side in Figure 2. This gives a totallength of | T cr | ≥ n − X i = d n/ e i + n − l n m ≥ n − l n m ≥ n − n − n →∞ | T OPT || T cr | ≤ lim n →∞ n + n n − n − = 23as claimed. (cid:74)(cid:73) Theorem 9.
Suppose P is flat. Then | T ALG | ≥ | T cr | ≥ | T OPT | . Proof.
Since | T cr | ≥ | T OPT | , it suffices to prove the first inequality. Denote the diameter of P by ab (see Figure 3). Consider four trees S a , T a,b , T b,a , S b . It suffices to show that thereis a β such that (1 / − β ) | S a | + β | T a,b | + β | T b,a | + (1 / − β ) | S b | ≥ · | T cr | . Here we fix β = and equivalently show: | S a | + 2 | T a,b | + 2 | T b,a | + | S b | ≥ · | T cr | a bp (cid:48) p Figure 3
By triangle inequality and symmetry we have k pb k + k pp k ≥ k p b k = k pa k . Note that all four trees on the left-hand side include edge ab and since ab is a diameter,we can without loss of generality assume that T cr contains it too. Thus we can use thenotation ‘ T ( p ) as defined above. Assume the following holds for all p ∈ P \ { a, b } , ‘ S a ( p ) + 2 ‘ T a,b ( p ) + 2 ‘ T b,a ( p ) + ‘ S b ( p )6 ≥ · ‘ T cr ( p ) (1)then summing up over all points p ∈ P \ { a, b } and adding k ab k to both sides yields thedesired result.Without loss of generality, suppose that k pa k ≥ k pb k and let p be the reflection of p aboutthe perpendicular bisector of ab . Since P is flat, we have ‘ T cr ( p ) ≤ max {k pa k , k pb k} = k pa k . . Cabello et al. 7 Moreover, ‘ T b,a ( p ) ≥ k pp k / ‘ T a,b ( p ) = k pa k . Using the triangle inequality in bpp ,the left-hand side of (1) is thus at least k pa k + 2 k pa k + k pp k + k pb k ≥ k bp k + 3 k pa k · k pa k ≥ · ‘ T cr ( p )as desired. (cid:74) Now we use a similar approach to show the main theorem of this section: (cid:73)
Theorem 1.
For any finite point set P in general position (no three points collinear), wecan compute in polynomial time a plane tree of Euclidean length at least f · | T OPT | , where | T OPT | denotes the length of a longest plane tree on P and f > . is the fourth smallestreal root of the polynomial P ( x ) = −
80 + 128 x + 504 x − x − x + 1096 x + 256 x . Proof.
We outline the proof strategy, referring to lemmas that will be proved later in thissection. Without loss of generality, suppose P has diameter 2. Consider the longest edge ab of T OPT and denote its length by 2 d (we have d ≤ u and v be the points realizing the diameter. If 2 d ≤ /f , then we can show(Lemma 10) that either S u or S v is long enough. Hence from now on, we can assume that2 df > P lies inside the lens D ( a, ∩ D ( b, a and b are in the interior ofthe lens. Without loss of generality, suppose that a = ( − d,
0) and b = ( d, far region and the truncated lens , as follows and depicted in Figure 4.Let s, s be the points on the y -axis such that k sa k = k sb k = k s a k = k s b k = 2 df . Wetake s to be the one above the x -axis. Since 2 df >
1, the circles k = ∂D ( s, k sa k ) and k = ∂D ( s , k s a k ) intersect the boundary of the lens. The far region then consists of pointsin the lens above k and of points below k . Note that for the points c in the far region thetriangle abc is acute-angled and its circumradius R satisfies R ≥ df . d dc df kp a p b p u p = [ x, y ] a bs vu O (cid:124) (cid:123)(cid:122) (cid:125) (cid:124) (cid:123)(cid:122) (cid:125) Figure 4
The lens is split into the far region (green) and the truncated lens. Long plane trees
Next, we argue that if P contains a point c in the far region, then one of the three stars S a , S b or S c is long enough (Lemma 11). For this, we can restrict our attention to the casewhen c is above the x -axis.Finally, we argue that if all points of P lie in the truncated lens, then one of the trees S a , T a,b , T b,a , S b is long enough. Consider those four trees and T OPT . For these five trees we canagain use the notation ‘ T ( p ) as defined above. Given a real parameter β ∈ (0 , / p, β ) = (1 / − β ) · ‘ S a ( p ) + β · ‘ T a,b ( p ) + β · ‘ T b,a ( p ) + (1 / − β ) · ‘ S b ( p )the weighted average of the lengths of the edges assigned to point p , over the four trees S a , T a,b , T b,a , S b . We aim to find β ∈ (0 , /
2) such that, for each point p = a, b , we haveavg( p, β ) ≥ f · ‘ T OPT ( p ) . (2)In contrast to the proof to Theorem 9 we have to work more to find a suitable β . Belowwe will show that β . = 0 . p ∈ P \ { a, b } and adding k ab k to bothsides, we then deduce that(1 / − β ) · | S a | + β · | T a,b | + β · | T b,a | + (1 / − β ) · | S b | ≥ f · | T OPT | , thus at least one of the four trees S a , T a,b , T b,a , S b has total length at least f · | T OPT | .For proving the inequality (2), we can without loss of generality assume that p = ( x, y )with x, y ≥
0. Let p a be the point with x -coordinate − (2 − d ) on the ray pa and p b be thepoint with x -coordinate 2 − d on the ray pb . When the x -coordinate of p is at least d , thenthe ray pb does not intersect the vertical line with x -coordinate 2 − d and we set p b = b .Additionally, define p u to be the furthest point from p on the portion of the boundary ofthe far region that is contained in the circle k = ∂D ( s, df ). The proof now proceeds in thefollowing steps.We establish the upper bound ‘ T OPT ( p ) ≤ min (cid:8) d, max {k pp a k , k pp b k , k pp u k} (cid:9) (Lemma 12)and thus only have to consider bounds for k pp a k , k pp b k and k pp u k .We show that the term k pp b k in the upper bound on ‘ T OPT ( p ) can be ignored (Lemma 13).We establish a lower bound on avg( p, β ) (Lemma 14).We use the lower bound on avg( p, β ) to identify constraints on β such thatavg( p, β ) ≥ f · min { d, k pp a k} (Lemma 15)avg( p, β ) ≥ f · min { d, k pp u k} (Lemma 16)This reduces the problem to showing that there exists a number β that satisfies both theconstraints coming from Lemma 15 and Lemma 16. The most stringent constraints turn outto be those coming from Lemma 16, namely:2 f − √ − f − ≤ β ≤ − f p f − − f . (3)Straightforward algebra (Lemma 17) shows that for our definition of f , the left-hand sideand the right-hand side of (3) are in fact equal, hence we can set β . = 0 . f = 5 / β < . Cabello et al. 9 To summarize, for the value f . = 0 . β = 1 − f p f − − f . = 0 . p = a, b , we haveavg( p, β ) ≥ f · max (cid:8) min { d, k pp a k} , min { d, k pp u k} (cid:9) ≥ f · min (cid:8) d, max {k pp a k , k pp u k} (cid:9) ≥ f · ‘ T OPT ( p )and the result follows. (cid:74) It remains to prove Lemmas 10 to 17. Unfortunately, the statements of those Lemmasrely on the notation already introduced in the proof of Theorem 1. Thus, to follow the restof this section, one has to understand the concepts and the notation introduced in the proofof Theorem 1. (cid:73)
Lemma 10.
Let P be a point set and the points u and v realize its diameter. Supposethat k uv k = 2 and that each edge of the optimal tree T OPT has length at most /f . Then max {| S u | , | S v |} ≥ f · | T OPT | . Proof.
By the triangle inequality, for any point p ∈ P we have k pu k + k pv k ≥ k uv k . Hence | S u | + | S v | = X p ∈P k pu k + k pv k ≥ n · k uv k = 2 n, implying that max {| S u | , | S v |} ≥ n . On the other hand, since each of the n − T OPT has length at most 1 /f , we get f · | T OPT | ≤ f · ( n − · f ≤ n and we are done. (cid:74)(cid:73) Lemma 11.
Let ab (with k ab k = 2 d ) be the longest edge of T OPT . If P contains a point c in the far region, then max {| S a | , | S b | , | S c |} ≥ f · | T OPT | . Proof.
By the definition of the far region, the triangle abc is acute-angled and its circumradius R satisfies R ≥ df . Let g be the center of mass of the pointset P ≡ P \ { a, b, c } . (Such apoint set may have points below and above the x -axis, but that does not affect the argument.)Then for any point v in the plane we have −→ vg = |P | P p ∈P −→ vp .Since the triangle abc is acute-angled, there exists a vertex v ∈ { a, b, c } of the trianglesuch that k vg k ≥ R . Triangle inequality then gives X p ∈P k vp k ≥ |P | · k vg k ≥ ( n − · R. Together with k va k + k vb k + k vc k ≥ R which holds for any acute-angled triangle, this yields | S v | ≥ ( n − R + 2 R = ( n − · R ≥ ( n − · df ≥ f · | T OPT | , where in the last inequality we used that each edge of T OPT has length at most 2 d . (cid:74) Recall that ab is the longest edge of T OPT , that we assumed a = ( − d, b = ( d,
0) andthat 2 df >
1. Note that the point s has coordinates s = (0 , p (2 df ) − d ). We also notedthat the two circle k = D ( s, k sa k ) always intersect the lens D ( a, ∩ D ( b, k with the boundary of the lens with largest y -coordinate and callthem u and v , where u is to the left of v . Refer to Figure 4 or Figure 6 for an illustration.For each point p = ( x, y ) in the truncated lens with x, y ≥
0, recall that we have definedthe following points: d da bc P g Figure 5
Lemma 11. In the illustration, P consists of 6 points and we can take v = a . Thepoint through three circles is the center of the circle through a, b, c . p a is the point on the ray pa whose x -coordinate equals − (2 − d ); p b is the point on the ray pb whose x -coordinate equals 2 − d , if x ( p ) < d , and p b = b if x ( p ) ≥ d . p u is the the point on the arc of k from u to v that is furthest from p . Thus, if the linethrough sp intersects the arc of k from u to v , then p u is that intersection point, otherwise p u = u . (cid:73) Lemma 12.
For each point p = ( x, y ) in the truncated lens with x, y ≥ we have ‘ T OPT ( p ) ≤ min { d, max {k pp a k , k pp b k , k pp u k}} . Proof. As p lies in the first quadrant, we only have to consider the truncated lens in thisquadrant. Let l and r be the left and right most points of D ( a, ∩ D ( b, r = (2 − d, l = ( d − , D ( l, d ) by E . The remainder of the truncated lens we divide into the part N above the line us and the part S below that line.Note that if p lies in E then k pp a k ≥ k pl k ≥ d , hence the right-hand side equals 2 d .Since the left-hand side is at most 2 d by assumption, the claim is true.So from now on we can assume that p ∈ N ∪ S . This directly implies that p b = b and x ( p b ) = 2 − d . Let p f be the point within the truncated lens furthest from p . Clearly, p f lies on the boundary of the truncated lens. Since ‘ T OPT ( p ) ≤ d by assumption, it suffices toshow that k pp f k ≤ max {k pp a k , k pp b k , k pp u k} . Let t be the top-most point of the truncatedlens. We distinguish 5 cases: p f lies in the third quadrant: Then k pp f k ≤ k pp a k . p f lies in the fourth quadrant: Then k pp f k ≤ k pp b k . p f lies in the first quadrant: Consider the reflection p f of p f about the y -axis. Since x ≥ k pp f k ≥ k pp f k , and the inequality is strict when x >
0. Thus, when x > x = 0, it reduces to the case where p f belongs to thesecond quadrant. . Cabello et al. 11 sa bl Ou df d dt D ( l , d ) k rvENSp u p a p b Figure 6
For p ∈ E we have ‘ T OPT ( p ) ≤ d , for p ∈ N we have ‘ T OPT ( p ) ≤ max {k pp a k , k pu k} and for p ∈ S we have ‘ T OPT ( p ) ≤ max {k pp a k , k pp u k} . p f lies in the second quadrant: a. p f lies on the arc tu (Figure 6): If p lies in N then for any q on the arc tu we have k pq k ≤ k pu k = k pp u k , thus also k pp f k ≤ k pp u k . If p lies in S then, by triangleinequality, k pp f k ≤ k ps k + k sp f k = k ps k + 2 df = k pp u k . b. p f lies on the arc ul : We claim that k pp f k ≤ max {k pl k , k pu k} . Indeed, the per-pendicular bisectors of segments p f l and p f u intersect at b and thus the points forwhich the claim fails all lie in a convex wedge with vertex b that is fully containedin the fourth quadrant, see Figure 7. Since k pl k ≤ k pp a k and k pu k ≤ k pp u k , we get k pp f k ≤ max {k pp a k , k pp u k} . (cid:74)(cid:73) Lemma 13.
Let p = ( x, y ) be any point in the truncated lens with x, y ≥ . If k pp a k ≤ d ,then k pp b k ≤ k pp a k . Proof.
We present a straightforward algebraic proof (we are not aware of a purely geometricproof). The case x = 0 is clear because of symmetry; in that case k pp b k = k pp a k . Thus, weonly consider the case x >
0. Since k pp a k ≤ d , we must have x < d , and therefore p b has x -coordinate 2 − d (and p b = b ).From similar triangles and a Pythagorean theorem we have k pp a k = k pa k · − d + xd + x and k pa k = ( d + x ) + y . Therefore the assumption k pp a k ≤ (2 d ) can be equivalently rewrittenas ( y + ( d + x ) ) · (2 − d + x ) ( d + x ) ≤ d y ≤ (4 d − (2 − d + x ) )( d + x ) (2 − d + x ) . (4)Similarly as with k pp a k , we express k pp b k as k pp b k = ( y + ( d − x ) ) · (2 − d − x ) ( d + x ) (5)and rewrite our goal k pp b k ≤ k pp a k as a bl Ou d d rvp f (cid:107) pp f (cid:107) > max {(cid:107) pl (cid:107) , (cid:107) pu (cid:107)} p Figure 7
The point p f lies on the arc ul . The set of points p such that k pp f k > max {k pl k , k pu k} forms a convex wedge with vertex b fully contained in the fourth quadrant. p = ( x, y ) d x − d − da bp a p b y Figure 8
The situation for Lemma 13. ( y + ( d − x ) ) · (2 − d − x ) ( d − x ) ≤ ( y + ( d + x ) ) · (2 − d + x ) ( d + x ) y · (2 − d − x ) ( d + x ) − (2 − d + x ) ( d − x ) ( d + x ) ( d − x ) ≤ (2 − d + x ) − (2 − d − x ) , which, upon expanding the parentheses and dividing by 4 x > y · − d )(2 d − d − x )( d + x ) ( d − x ) ≤ − d. We plug in the upper bound on y from (4), cancel the term ( d + x ) , and clear thedenominators. This leaves us with proving(4 d − (2 − d + x ) ) · − d )(2 d − d − x ) ≤ (2 − d + x ) · (2 − d )( d − x ) which, upon expanding the parentheses, reduces to0 ≤ (16 d − d + 8 d + 16 d − d ) + x ( − d + 16 d − d ) + dx . (6) . Cabello et al. 13 For any fixed d >
0, the right-hand side Q ( d, x ) is a quadratic function of x with positivecoefficient d > x ) , hence the minimum of Q ( d, x ) is attained when x = 8 d − d + 10 d d = 4 − d + 5 d . Plugging x = 4 − d + 5 d into (6) and expanding the parentheses for the last one time weare left to prove 0 ≤ d − d + 96 d − d ≤ d (1 − d ) which is true since d ≤ (cid:74)(cid:73) Lemma 14.
Let p = ( x, y ) be any point in the plane with x, y ≥ and let β ∈ (0 , / bea real number. Then avg( p, β ) ≥ d · (1 − β ) + x · βd + x · k pa k . Proof.
Unpacking the definition we haveavg( p, β ) ≥ (1 / − β ) · k pa k + β · k pa k + β · x + (1 / − β ) · k pb k . O(cid:96)d d − xxp = ( x, y ) a bp (cid:48) Figure 9
Mirroring p along the y -axis in Lemma 14. Let p = ( − x, y ) be the reflection of p about the y axis (see Figure 9). The triangleinequality k p p k + k pb k ≥ k p b k = k pa k leads to β · x = β · k p p k ≥ β · ( k pa k − k pb k ), andwe obtain avg( p, β ) ≥ · k pa k + 12 β · k pa k + (cid:18) − β (cid:19) · k pb k . Next we claim that k pb k ≥ d − xd + x ·k pa k : Indeed, upon squaring, using the Pythagorean theoremand clearing the denominators this becomes y · dx ≥ k pb k we finally get the desiredavg( p, β ) ≥ (1 + β )( d + x ) + (1 − β )( d − x )2( d + x ) · k pa k = (1 − β ) · d + 2 β · xd + x · k pa k . (cid:74) (cid:73) Lemma 15.
Let p = ( x, y ) be any point in the lens with x, y ≥ . Suppose f − − f ≤ β ≤ · f. Then avg( p, β ) ≥ f · min { d, k pp a k} . Proof.
It suffices to show that: If x ≥ d −
2, then avg( p, β ) ≥ f · d . If x ≤ d −
2, then avg( p, β ) ≥ f · k pp a k .We consider those two cases independently. Using Lemma 14 and the inequalities k pa k ≥ d + x and x ≥ d −
2, we rewriteavg( p, β ) ≥ d · (1 − β ) + x · βd + x · k pa k ≥ d − dβ + (3 d − · β = β (5 d −
4) + d. Hence it suffices to prove β · (5 d − ≥ d (2 f − β and4 ≤ df we get β · (5 d − ≥ β · (5 d − df ) ≥ f − − f · d · (5 − f ) = d (2 f − f − − f are both positive. We have k pp a k = k pa k · − d + xd + x . Using Lemma 14 it suffices to prove d (1 − β ) + x · β ≥ f (2 − d + x ) d (1 − β ) − f (2 − d ) ≥ x ( f − β ) . Since f ≥ β by assumption, the right-hand side is increasing in x and we can plug in3 d − x . This leaves us with proving the inequality d (1 − β ) − f (2 − d ) ≥ (3 d − f − β ) β · (5 d − ≥ d (2 f − , which is the same inequality as in the first case. (cid:74)(cid:73) Lemma 16.
Let p = ( x, y ) be any point in the lens with x, y ≥ . Suppose that β < · f ,that ≤ f ≤ and that f − √ − f − ≤ β ≤ − f p f − − f . Then avg( p, β ) ≥ f · min { d, k pp u k} . Proof.
Because of the lower bound for avg( p, β ) in Lemma 14, to show the statement itsuffices to show that d · (1 − β ) + x · βd + x · k pa k ≥ f · min { d, k pp u k} . (7)We will consider the two cases y ≤ y ( u ) and y > y ( u ) separately. . Cabello et al. 15Case 1: y ≤ y ( u ) Define λ = d · (1 − β )+ x · βd + x · k pa k . We have to show that λ ≥ f · min { d, k pp u k} . Note that λ isan increasing function of y because k pa k is also increasing with y . On the other hand, k pp u k is a decreasing function of y for y ≤ y ( u ): If p u = u , then k pp u k = k ps k + 2 df is decreasingin y , and if p u = u then k pp u k = k pu k decreases when y increases (for y ≤ y ( u )). It followsthat min { d, k pp u k} is a decreasing function of y for y ≤ y ( u ).As min { d, k pp u k} is decreasing and λ is increasing in y , for y ≤ y ( u ), to handle ourcurrent case it suffices to show (7) for y = 0. Now we have k pa k = d + x , so we can rewrite λ as λ = d · (1 − β ) + x · β , which is positive.Let q = ( q x , , q x ≥ x -axis such that k qs k = 2 d (1 − f ). This meansthat for p = q we have k pp u k ≤ k ps k + k sp u k = 2 d (see Figure 10). We further split betweencases depending on whether 0 ≤ x ≤ q x or x > q x . sa bl Ou dfd tk rv d ( − f ) qpp u Figure 10
Lemma 16. Case 1a: ≤ x ≤ q x . We will show that in this case λ ≥ f · k pp u k . The Pythagoreantheorem gives f · k pp u k ≤ f · k ps k + f · k sp u k = f p x + (2 df ) − d + 2 df Therefore, substituting λ , it suffices to show d · (1 − β ) + x · β ≥ f p x + (2 df ) − d + 2 df . (8)When β < · f and f ≤ , the term d · (1 − β ) − df is positive and the last inequalityis equivalent to0 ≥ f · ( x + (2 df ) − d ) − ( d · (1 − β ) + x · β − df ) The right-hand side is a quadratic function of x with positive coefficient f − β by theleading term, hence it suffices to check the inequality (8) for x ∈ { , q x } .For x = 0, we need to check that d (1 − β ) ≥ f ( p d (4 f −
1) + 2 df ), which reducesprecisely to the assumption β ≤ − f p f − − f . For x = q x , the Pythagorean theorem gives ( q x ) = (2 d (1 − f )) + d − (2 df ) = d · (5 − f ),hence q x = d √ − f . The point q has been selected so that k ps k + k sp u k = 2 d , andtherefore the right side of (8) is 2 df . We thus have to verify that d (1 − β ) + d p − f · β ≥ f · d (9) β · (2 p − f − ≥ f − . Since f ≤ /
32, the term in the parentheses on the left-hand side is positive, and afterdividing we obtain precisely the assumption.
Case 1b: q x < x . In this case we show that λ ≥ f · d . Since the term λ is increasing in x and 2 d is constant, we only need to show that λ ≥ f · d for x = q x . However, this wasalready shown in the previous case; see (9). Case 2: y > y ( p u ) In this case we have k pp u k = k pu k ≤ k uv k . Furthermore, because 4 df > d , the intersectionof the line supporting bs with the circle k is outside the lens. That intersection point has x -coordinate − d because of symmetry with respect to s , and since u is above it, we have x ( u ) ≥ − d as well as x ≤ d . So we have min { d, k pp u k} = k pp u k . This means that to show(7) we have to show d (1 − β ) + 2 xβd + x · k pa k ≥ f · k pp u k . As p lies above the horizontal line through u , we get k pa k ≥ k pp u k , thus it suffices to show d (1 − β ) + 2 xβd + x ≥ fd − dβ + 2 xβ ≥ f d + f xd (1 − ( β + f )) ≥ x ( f − β ) x ≤ d · − ( β + f ) f − β As we know x ≤ d this is true for1 − ( β + f ) f − β ≥ − ( β + f ) ≥ f − ββ ≥ f − , where in the last step we used that f > β . The last condition is a looser bound than theleft side of the statement of the lemma as f ≥ and therefore 2 · √ − f − ≤ (cid:74)(cid:73) Lemma 17.
The positive solutions of x − √ − x − − x p x − − x are x = and the fourth smallest root of −
80 + 128 x + 504 x − x − x + 1096 x + 256 x . . Cabello et al. 17 Proof.
We provide a sketch of how to solve it “by hand”. One can also use advanced softwarefor algebraic manipulation. Setting the polynomials q ( x ) = 4 x − q ( x ) = 5 − x , andmultiplying both sides of the equation by the denominator on the left-hand side, we are leftwith the equation 2 x − x = x p q ( x ) − (2 − x ) p q ( x ) − x p q ( x ) q ( x )2 x − x + 2 x p q ( x ) q ( x ) = x p q ( x ) − (2 − x ) p q ( x ) . Squaring both sides, which may introduce additional roots, we get, for some polynomials q ( ) , . . . , q ( ), the equation q ( x ) + q ( x ) p q ( x ) q ( x ) = q ( x ) + q ( x ) p q ( x ) q ( x ) q ( x ) − q ( x ) = (cid:0) q ( x ) − q ( x ) (cid:1)p q ( x ) q ( x ) . Squaring both sides gain, which may introduce additional solutions, we get the polynomial8( x − )( −
80 + 128 x + 504 x − x − x + 1096 x + 256 x ) = 0This polynomial has 7 real roots that can be approximated numerically. The smallest threeroots of this polynomial are negative ( x . = − . x . = − . x . = − . x . = 0 . x . = 0 . x . = 0 . x = , which is also a solution to the originalequation. (cid:74) In this section we present two results for convex point sets. First, we show that if P is aconvex point set then the longest plane tree is a caterpillar (see Theorem 2) and that anycaterpillar could be the unique longest plane tree (see Theorem 3). Second, by looking atsuitable flat convex sets we prove upper bounds on the approximation factor BoundDiam( d )achieved by the longest plane tree among those with diameter at most d . We say that a tree C is a caterpillar if it contains a path P such that each node v ∈ C notlying on P is adjacent to a node on P . Equivalently, a tree is a caterpillar if its edges can belisted in such an order that every two consecutive edges in the list share an endpoint.Throughout this section we consider trees that span a given convex point set P . We saythat (a drawing of) such a tree T is a zigzagging caterpillar if T is a caterpillar and the dualgraph T ? of T is a path. Here a dual graph T ? is defined as follows: Let C be a smoothclosed curve passing through all points of P . The curve bounds a convex region and the n − T split that region into n subregions. The graph T ? has a node for each suchsubregion and two nodes are connected if their subregions share an edge of T (see Figure 11).First we prove that the longest plane tree of any convex set is a zigzagging caterpillar. (cid:73) Theorem 2. If P is convex then every longest plane tree is a zigzagging caterpillar. T T (cid:63) T T T (cid:63) Figure 11
Left: A tree T that spans P but it is not a caterpillar. Middle: A tree T that is acaterpillar but it is not zigzagging. Right: A tree T that is a zigzagging caterpillar – the dual tree T ? is a path. T OPT ab cd a b c dT (cid:63)
OPT
Figure 12
Left: A convex point set with a (fake) longest plane tree T OPT (black) and the dualgraph T ? OPT (blue). Right: If T ? OPT has a node of degree 3 or more, a longer tree can be constructedby replacing one dotted edge of T OPT by a longer edge (of the same color).
Proof.
Let T OPT be a longest plane tree. We prove that T ? OPT is a path by contradiction.Suppose a node v of T ? OPT has degree at least 3 and let ab , bc , cd be three correspondingedges of T OPT (see Figure 12). Since the quadrilateral abcd is convex, by triangle inequalitywe have k ab k + k cd k < k ac k + k bd k . Hence either k ab k < k ac k or k cd k < k bd k (or both).Since T = T OPT ∪ { ac } \ { ab } and T = T OPT ∪ { bd } \ { cd } are both plane trees, at least oneof them is longer than T OPT , a contradiction. (cid:74)
Conversely, for each caterpillar C we will construct a convex set P C whose longest planetree is isomorphic to C . In fact, P C will be not only convex but also a “flat arc”. Formally,we say that a set P of n = m + 1 points a i = ( x i , y i ) satisfying x < · · · < x m +1 is a flat arc if it is flat (that is, the absolute values of all y -coordinates are negligible) and the points a , . . . , a m +1 all lie on the convex hull of P in this order.We call the sequence G ( P ) = { g i } mi =1 = {| x i +1 − x i |} mi =1 the (horizontal) gap sequence .Lastly, given a tree T spanning a flat arc P , we define its cover sequence Cov( T ) = { c i } mi =1 to be a list storing the number of times each gap is “covered”. Formally, c i is the number ofedges of T that contain a point whose x -coordinate lies within the open interval ( x i , x i +1 ),see Figure 13. Note that the gap sequence and the cover sequence determine the length ofthe tree because | T | = P mi =1 c i · g i .Before we prove that any caterpillar can be the longest tree of a flat arc, we first show thatthe cover sequences of zigzagging caterpillars are unimodal (single-peaked) permutations. (cid:73) Lemma 18.
Consider a flat arc P = { a , . . . , a m +1 } and a zigzagging caterpillar T containing the edge a a m +1 . Then the cover sequence Cov( T ) of T is a unimodal permutation . Cabello et al. 19 T Cov( T ): 1 2 5 6 4 3 G ( P ) 1 2 2 3 2 1 a a m +1 Figure 13
Given a flat arc P of n = m + 1 points, we denote by G ( P ) = { g i } mi =1 its gap sequence.Given a tree T spanning P , we denote by Cov( T ) = { c i } mi =1 its cover sequence. Later we show thatthe longest plane tree T OPT of a flat arc P is a zigzagging caterpillar containing the edge a a m +1 and that its cover sequence Cov( T OPT ) is a unimodal (single-peaked) permutation of { , , . . . , m } . of { , , . . . , m } . Proof.
By induction on m . The case m = 1 is clear.Fix m ≥
2. By the definition of a zigzagging caterpillar, the dual graph T ? of T is a path.Since a a m +1 is an edge of T , either a a m or a a m − is an edge of T too. Without loss ofgenerality assume a a m is an edge of T . Then T \ { a a m +1 } is a zigzagging caterpillar on m points a , . . . , a m containing the edge a a m , hence by induction its cover sequence is aunimodal permutation of { , , . . . , m − } . Adding the omitted edge a a m +1 adds 1 to eachof the m − { , , . . . , m } . This completes the proof. (cid:74) Now we are ready to prove that any caterpillar, including a path, can be the longestplane tree of some flat arc. (cid:73)
Theorem 3.
For any caterpillar C there exists a convex point set P such that the uniquelongest tree for P is isomorphic to C . Proof.
We will define a flat arc P C such that the unique longest tree T OPT of P C is isomorphicto C . Consider a flat arc P = { a , . . . , a m +1 } , with a yet unspecified gap sequence { g i } mi =1 .Take the caterpillar C and let T be its drawing onto P that contains the edge a a m +1 andis zigzagging (it is easy to see that such a drawing always exists). By Lemma 18 its coversequence Cov( T ) = { c i } mi =1 is a unimodal permutation of { , , . . . , m } . The total length | T | of T can be expressed as | T | = P mi =1 c i · g i .Now we specify the gap sequence: For i = 1 , . . . , m set g i = c i . It is easy to see that thissequence defines a plane tree T ; see Figure 13. It suffices to show that T coincides with thelongest plane tree T OPT of P .By Theorem 2, T OPT must be a zigzagging caterpillar. Moreover, note that a a m +1 isan edge of T OPT : Indeed, assume otherwise. Since a a m +1 does not cross any other edge,adding it to T OPT produces a plane graph with a single cycle. Since all edges of T OPT areshorter than a a m +1 , omitting any other edge from that cycle creates a longer plane tree, acontradiction.Thus we can apply Lemma 18 to T OPT and learn that the cover sequence of T OPT is someunimodal permutation π of { , , . . . , m } and that its total length | T OPT | can be written as | T OPT | = P mi =1 π i · g i . Since c i and g i match, by rearrangement inequality we have | T OPT | = m X i =1 π i · g i ≤ m X i =1 c i · g i = | T | with equality only if π i = c i for each i . (10) Therefore T OPT = T and we are done. (cid:74) BoundDiam( d ) The algorithms for approximating | T OPT | often produce trees with small diameter. Givenan integer d ≥ P , let T d OPT ( P ) be a longest plane tree spanning P amongthose whose diameter is at most d . One can then ask what is the approximation ratioBoundDiam( d ) = inf P | T d OPT ( P ) || T OPT ( P ) | achieved by such a tree. As before, we drop the dependency on P in the notation and justuse T d OPT and T OPT .When d = 2, this reduces to asking about the performance of stars. A result due to Alon,Rajagopalan and Suri [1, Theorem 4.1] can be restated as BoundDiam(2) = 1 /
2. Below weshow a crude upper bound on BoundDiam( d ) for general d and then a specific upper boundtailored to the case d = 3. Note that Theorem 6 shows that | T OPT | can be computed inpolynomial time. Our proofs in this section use the notions of flat arc, gap sequence andcover sequence defined in Section 4.1. (cid:73) Theorem 4.
For each d ≥ there exists a convex point set P so that every plane tree ofdiameter at most d on P is at most BoundDiam( d ) ≤ − d + 1)( d + 2)(2 d + 3) = 1 − Θ(1 /d ) times as long as the length | T OPT | of a longest (general) plane tree on P . Proof.
Consider a flat arc on d +2 points with gap sequence G = (1 , , , . . . , d +1 , . . . , , , G is unimodal, arguing as in the proof of Theorem 3 we obtain that T OPT is the zigzaggingcaterpillar whose cover sequence is the same unimodal permutation, i.e. a path consisting of d + 1 edges (and diameter d + 1). Moreover, this path is the only optimal plane tree spanningthe flat arc because of Theorem 2 and the rearrangement inequality; see the argument leadingto (10) in the proof of Theorem 3. Therefore, for any other plane spanning tree T = T OPT ,be it a zigzagging caterpillar or not, must have a length that is an integer less than | T OPT | .Using that | T OPT | = P d +1 i =1 i = ( d + 1)( d + 2)(2 d + 3) = d + o ( d ) we obtainBoundDiam( d ) ≤ | T OPT | − | T OPT | = 1 − d + 1)( d + 2)(2 d + 3) . (cid:74) When d = 3, Theorem 4 gives BoundDiam(3) ≤ /
30. By tailoring the point set size,the gap sequence { g i } mi =1 , and by considering flat convex sets that are not arcs we improvethe bound to BoundDiam(3) ≤ / (cid:73) Theorem 5.
For every ε > there exists a convex point set such that each longest planetree of diameter three is at most (5 /
6) + ε times as long as each longest (general) plane tree. Proof.
Consider a flat point set P k +2 consisting of two flat arcs symmetric with respect toa horizontal line, each with a gap sequence(1 , . . . , | {z } k × , k + 1 , , . . . , | {z } k × ) . In other words, P k +2 consists of two diametrically opposite points, four unit-spaced arcs of k points each, and a large gap of length 2 k + 1 in the middle (see Figure 14). . Cabello et al. 21 P k +2 k + 1 T L Figure 14
An illustration of the point set P k +2 when k = 3 with a tree T L (red). On one hand, straightforward counting gives | T OPT | ≥ | T L | = 12 k + 6 k + 1, where T L isthe tree depicted in Figure 14. On the other hand, we claim that any tree T with diameterat most 3 has length at most 10 k + 6 k + 1. ThusBoundDiam(3) ≤ k + 6 k + 112 k + 6 k + 1 , which tends to 5 / k → ∞ .In the rest of this proof we will show that the longest tree T among those with diameterat most 3 on P k +2 has length at most 10 k + 6 k + 1. First, note that as T has diameter atmost 3 it is either a star or it has a cut edge ab whose removal decomposes T into a starrooted at a and a star rooted at b .To add the lengths of the edges of the tree, we will often split the edges across thelarge gap into two parts: one part contained within the left or the right part and withmaximum length k , and one part going across the large gap, with a length between 2 k + 1and 2 k + 1 + k = 3 k + 1.If T is a star, then without loss of generality we can assume that its root a is to the leftof the large gap. Denote the distance from the large gap to a by i (we have 0 ≤ i ≤ k ).Straightforward algebra (see Figure 15) then gives | S a | = ( k − i ) + i ( i + 1) + (2 k + 1) · ( i + 2 k + 1) + k ≤ k ( k + 1) + (2 k + 1)(3 k + 1) + k = 8 k + 6 k + 1 . a ii ( i + 1) k (2 k + 1) · ( i + 2 k + 1) i + 2 k + 1( k − i ) Figure 15
The longest star for P k +2 is short. Now suppose T has diameter 3 and denote its cut edge by ab . If ab is vertical then | T | = | S a | and the above bound applies. In the remaining cases, without loss of generality we a b(cid:96)c a b(cid:96)cc (cid:48) Figure 16
Points on one side of ab are either all connected to a or all to b . aa (cid:48) b Figure 17
Flipping a to a increases the total length. can assume that a is to the left of b . The line ab then splits the remaining points of P k +2 into two arcs – one above ab and the other one below it.We claim that in the longest tree with diameter 3, the points of one arc are either allconnected to a or all to b : For the sake of contradiction, fix an arc and suppose c is therightmost point connected to a . Then by the choice of c everything right of it is connectedto b and by convexity everything to the left of c is connected to a . Let ‘ be the verticalline through the midpoint of ab . If c lies to the left of ‘ , moving c to the left increases thelength of the tree as the distance to b for all points left of ‘ is larger than the distance to a .Otherwise, moving it to the right increases the length of the tree. Thus we either have c = a or c = b as claimed.Since P k +2 is centrally symmetric and we have already dealt with the case when T is astar, we can without loss of generality assume that all points above ab are connected to a and all points below ab are connected to b . Now suppose that a is below the diameter line ‘ of P k +2 and consider the reflection a ∈ P k +2 of a about ‘ . Then the tree T with cut edge a b is longer than T , since in T the points to the left of aa are connected to b rather thanto a and all the other edges have the same length (see Figure 17). Hence we can assume that a lies above ‘ (or on it). Similarly, b lies below ‘ or on it.It remains to distinguish two cases based on whether a and b lie on different sides ofthe large gap or not. Either way, denote the distance from the gap to a and b by i and j , respectively. In the first case, considering the subdivision of the edges as sketched inFigure 18a, straightforward algebra gives: | T | = k + (2 k − j )( i + 2 k + 1) + ( i + 2 k + 1 + j ) + (2 k − i )(2 k + 1 + j ) + k = 10 k + 6 k + 1 − ij ≤ k + 6 k + 1 . Cabello et al. 23 a bi jk k (2 k − j ) · ( i + 2 k + 1)(2 k − i ) · ( j + 2 k + 1) i + 2 k + 1 j + 2 k + 1 i + 2 k + 1 + j (a) Decomposition of the edges for case 1. a i i + 2 k + 1 jk − kj + i + 2 ij (2 k + 1) · ( i + 2 k + 1) k b (b) Decomposition of the edges for case 2. Figure 18
Decomposition of the edges for the upper bounds. with equality if and only if either a or b (or both) lie on the boundary of the large gap. In thesecond case, since a is to the left of b we have i > j and similar algebra, see Figure 18b, gives | T | = ( k − kj + i + 2 ij ) + (2 k + 1)(2 k + 1 + i ) + k . Since the right-hand side is increasing in i and i ≤ k , we get | T | ≤ ( k + k ) + (2 k + 1)(3 k + 1) + k = 8 k + 6 k + 1which is less than the claimed upper bound 10 k + 6 k + 1 by a margin. (cid:74) In Section 5.1 we show that the longest plane tree of diameter at most 3 can be computedin polynomial time. Such a tree may be relevant in providing an approximation algorithmwith a better approximation factor, but its computation is not trivial, even in the case of flatpoint sets.In Section 5.2 we show how to compute in polynomial time a longest plane tree amongthose of the following form: all the points are connected to three distinguished points on theboundary of the convex hull. Again, such a tree may play an important role in designingfuture approximation algorithms, as intuitively it seems to be better than the three starsconsidered in our previous approximation algorithm, when there is a point in the far region.
For any two points a, b of P , a bistar rooted at a and b is a tree that contains the edge ab and where each point in P \ { a, b } is connected to either a or b . Note that stars are alsobistars. In this section we prove the following theorem. (cid:73) Theorem 6.
For any set P of n points in general position, a longest plane tree of diameterat most three on P can be computed in O ( n ) time. Proof.
Note that each bistar has diameter at most 3. Conversely, each tree with diameterthree has one edge uv where each point p ∈ P has distance at most 1 to either u or v . It a bQ ( p, q ) a bpqQ ( p, q ) p q Figure 19
Two examples of valid pairs p, q with their quadrilaterals Q ( p, q ) shaded. follows that all trees with diameter at most three are bistars. In Lemma 20 we show thatfor any two fixed points a , b , the longest plane bistar rooted at a and b can be computed intime O ( n ). By iterating over all possible pairs of roots and taking the longest such planebistar, we find the longest plane spanning tree with diameter at most 3 in time O ( n ). (cid:74) We now describe the algorithm used to find the longest plane bistar rooted at two fixedpoints a and b . Without loss of generality we can assume that the points a and b lie on ahorizontal line with a to the left of b . Furthermore, as we can compute the best plane bistarabove and below the line through a and b independently, we can assume that all other pointslie above this horizontal line. In order to solve this problem by dynamic programming, weconsider a suitable subproblem.The subproblems considered in the dynamic program are indexed by an ordered pair p, q of different points of P such that the edges ap and bq do not cross. A pair p, q satisfyingthese condition is a valid pair . For each valid pair p, q , note that the segments ap , pq , qb and ba form a simple (possibly non-convex) polygon. Let Q ( p, q ) be the portion of this polygonbelow the horizontal line y = min { y ( p ) , y ( q ) } , as shown in Figure 19. We define the value Z ( p, q ) to be the length of the longest plane bistar rooted at a and b on the points in theinterior of Q ( p, q ), without counting k ab k . If there are no points of P within the quadrilateral Q ( p, q ), we set Z ( p, q ) = 0.Consider the case when the quadrilateral Q ( p, q ) contains some points, and let k p,q bethe highest point of P inside of Q ( p, q ). Then we might connect k p,q either to a or to b . Byconnecting it to a , we force all points in the triangle L p,q defined by the edges ap and ak p,q and the line y = y ( k p,q ), to be connected to a . Similarly, when connecting k p,q to b , weenforce the triangle R p,q defined by bq , bk p,q and the line y = y ( k p,q ). See Figure 20 for anillustration. In the former case we are left with the subproblem defined by the valid pair k p,q , q , while in the latter case we are left with the subproblem defined by the valid pair p, k p,q . Formally, for each valid pair p, q we have the following recurrence: Z ( p, q ) = P is in Q ( p, q ),max ( Z ( k p,q , q ) + k ak p,q k + P l ∈ L p,q k al k Z ( p, k p,q ) + k bk p,q k + P r ∈ R p,q k br k otherwise. (cid:73) Lemma 19.
Using Z ( p, q ) for all valid p, q we can find a best plane bistar rooted at a and b . Proof.
Consider a fixed best plane bistar and assume, without loss of generality, that thehighest point is connected to a ; the other case is symmetric. Let q ∗ be the highest point . Cabello et al. 25 a b a qqk p,q p p bL p,q L p,q R p,q R p,q k p,q Figure 20
Fixing k p,k gives two possible triangular regions where edges are fixed. that is connected to b ; if q ∗ does not exist then the bistar degenerates to a star rooted at a .This means that all the points above q ∗ are attached to a . Let p ∗ be the point above q ∗ that,circularly around a , is closest to ab . See Figure 21. Note that p ∗ , q ∗ is a valid pair and allthe points above q ∗ are to the left of ap ∗ . For p ∈ P , denote by L p the set of points in P that, circularly around a , are to the left of ap . Similarly, denote by R q the set of points in P below q and to the right of bq , when sorted circularly around b . See Figure 21, right. Thelength of this optimal plane bistar rooted at a and b is then X l ∈ L p ∗ k al k + X r ∈ R q ∗ k br k + k ap ∗ k + k bq ∗ k + k ab k + Z ( p ∗ , q ∗ ) . On the other hand, each of the values of the form X l ∈ L p k al k + X r ∈ R q k br k + k ap k + k bq k + k ab k + Z ( p, q ) , (11)where p , q is a valid pair of points such that y ( p ) > y ( q ), is the length of a plane, notnecessarily spanning, bistar rooted at a and b . (It is not spanning, if there is some pointabove q and right of ap .)Taking the maximum of | S a | and equation (11) over the valid pairs p, q such that y ( p ) > y ( q ) gives the longest plane bistar for which the highest point is connected to a . Asymmetric formula gives the best plane bistar if the highest point is connected to b . Takingthe maximum of both cases yields the optimal value.The actual edges of the solution can be backtracked by standard methods. (cid:74)(cid:73) Lemma 20.
The algorithm described in the proof of Lemma 19 can be implemented intime O ( n ) . Proof.
A main complication in implementing the dynamic program and evaluating (11)efficiently is finding sums of the form P l ∈ ∆ ∩P k al k or P r ∈ ∆ ∩P k br k , and the highest pointin ∆ ∩ P , where ∆ is a query triangle (with one vertex at a or b ). These type of rangesearching queries can be handled using standard data structures [11, 21]: after preprecessing P in time O ( n polylog n ), any such query can be answered in O (polylog n ) time. Notingthat there are O ( n ) such queries, a running time of O ( n polylog n ) is immediate. Howeverexploiting our specific structure and using careful bookkeeping we can get the running timedown to O ( n ).As a preprocessing step, we first compute two sorted lists L a and L b of P \ { a, b } . Thelist L a is sorted angular at a and L b is sorted by the angle at b . a bq ∗ highest point p ∗ a bq ∗ highest point p ∗ L p ∗ R q ∗ Figure 21
Left: The point p ∗ is the point of P in the shaded region that is angularly around a closest to q ∗ . Right: the regions L p ∗ and R q ∗ are shaded. The region with bars is empty. a bp W K Figure 22
Left: The regions defining W and K for fixed a , b and p . The values P l ∈ L p k al k and P r ∈ R q k br k (as depicted in Figure 21) for all p, q ∈ P can betrivially computed in O ( n ) time: there are O ( n ) such values and for each of them we canscan the whole point set to explicitly get L p or R q in O ( n ) time. There are faster ways ofdoing this, but for our result this suffices.Assuming that the values Z ( p, q ) are already available for all valid pairs p , q , we canevaluate (11) in constant time. For any two points p , q we check whether they form a validpair and whether y ( p ) > y ( q ) in constant time. We can then either evaluate (11) or thesymmetric formula again in constant time. Thus, in O ( n ) time we obtain the optimalsolution.It remains to compute the values Z ( p, q ) for all valid pairs p , q . First, we explain how tocompute all the triples of the form ( p, q, k p,q ) for all valid pairs p, q in O ( n ) time. Then wegroup these triples in a clever way to implement the dynamic program efficiently.We focus on the triples with y ( p ) < y ( q ) and show how to find the triples of the form( p, · , · ) for a fixed p . The case with y ( p ) > y ( q ) and a fixed q is symmetric. Let W be thepoints of P to the right of the ray bp above the horizontal line y = y ( p ). Furthermore let K be the points of P to the right of ap and with y coordinate between y ( a ) and y ( p ). Anillustration of W and K can be found in Figure 22. Any point q with y ( q ) > y ( p ) forms avalid pair p, q if and only if q lies in W . The point k p,q must lie in K by its definition.We use L b to find the triples ( p, · , · ). We iterate through the list in clockwise orderstarting at the ray ba and keep track of the highest k ∗ ∈ K encountered so far. If the currentpoint lies in P \ ( K ∪ W ) we simply skip it. If the current point lies in K we update k ∗ ifnecessary. Finally, if the current point lies in W , we report the triple ( p, q, k ∗ = k p,q ).For a fixed p we only iterate L b once. Thus, for this fixed p the running time for findingall triples ( p, q, k p,q ) with p, q forming a valid pair and y ( p ) < y ( q ) is O ( n ). By the procedure . Cabello et al. 27 we just described and its symmetric procedure on all p ∈ P \ { a, b } we find all the triples( p, q, k p,q ) where p, q is a valid pair in overall O ( n ) time.To compute Z ( p, q ) for all valid pairs using dynamic programing, we also need to computethe corresponding values P l ∈ L p,q k al k and P r ∈ R p,q k br k . Refer to Figure 20 to recall thedefinition of L p,q and R p,q . For the following procedure we shift the focus to the point k .For each point k ∈ P \ { a, b } we collect all triples ( p, q, k = k p,q ), and compute the sums P l ∈ L p,q k al k and P r ∈ R p,q k br k in linear time for each fixed k , as follows.We concentrate on the first type of sum, P l ∈ L p,q k al k , where q has no role, as thesum is defined by p and k . For the following description we assume that L a is sorted incounterclockwise order. We create a (sorted) subsequence L ka of L a containing only thepoints with y coordinate below y ( k ) and an angle at a larger than (cid:94) bak . We iterate over theelements of L a , starting at the successor of k . While iterating we maintain the last elementfrom L ka we have seen and the prefix sum P l k al k of all points l in L ka we encountered so far.When advancing to the next point p in L a there are two possibilities. If p also lies in L ka weadvance in L ka and update the prefix sum. Otherwise, we can report P l ∈ L p,q k al k to be thecurrent prefix sum for all q in a triple ( p, q , k ).For any fixed k this needs at most two iterations through the list L a and can thus beexecuted in O ( n ) time. A symmetric procedure can be carried out for P r ∈ R p,q k br k using L b . As in the case for finding the triples, this results in O ( n ) overall time to compute allrelevant sums P l ∈ L p,q k al k and P r ∈ R p,q k br k .Now we can implement the dynamic program in the straightforward way. Using theprecomputed information we spend O (1) time for each value Z ( p, q ), for a total running timeof O ( n ). (cid:74) Now we show how we can extend the ideas to get a polynomial time algorithm for specialtrees with diameter 4. Given three points a, b, c of P , a tristar rooted at a, b and c is a treesuch that each edge has at least one endpoint at a , b or c . We show the following: (cid:73) Theorem 7.
For any set P of points in general position and any three specified points onthe boundary of the convex hull of P , we can compute in polynomial time the longest planetree such that each edge is incident to at least one of the three specified points. Proof.
Let a, b, c be the specified points on the boundary of the convex hull of P . We have tocompute the longest plane tristar rooted at a, b and c . We assume, without loss of generality,that the edges ac and bc are present in the tristar; the other cases are symmetric. We furtherassume that a and b lie on a horizontal line, with a to the left of b .The regions to the left of ac and to the right of bc , as depicted in Figure 23, can besolved independently of the rest of the instance. Indeed, the presence of the edges ac and bc blocks any edge connecting a point in one of those regions to a point outside the region.Each one of these regions can be solved as plane bistars, one rooted at a, c and one rooted at b, c . It remains to solve the problem for the points enclosed by ac , cb and the portion of theboundary of the convex hull from b to a (clockwise). Let Q be this region. The problem for Q can also be solved independently of the other problems. We assume for the rest of theargument that all points of P are in Q .For solving the problem for Q we will use a variation of the dynamic programming approachfor bistars. For any two points p, q of P , let us write p (cid:22) c q when in the counterclockwiseorder around c we have the horizontal ray through c to the left, then cp and then cq or the a bc Figure 23
The regions cut off by ac and bc can be solved independently as bistars. a b ≺ c rp qp (cid:48) q (cid:48) ca, b a, b, c a, b a b ≺ c p qp (cid:48) q (cid:48) ca, b a, b, c a, br Figure 24
Two examples of valid tuples ( p, p , r, q , q ) with the region Q ( p, r, q ) shaded. Each Q ( p, r, q ) is split into 3 regions telling, for each of them, which roots can be used for that region. segments cp and cq are collinear. (Since we assume general position, the latter case occurswhen p = q .)The subproblems for the dynamic program are defined by a five tuple ( p, p , r, q , q ) ofpoints of P such that p and q are distinct; p (cid:22) c p (cid:22) c r (cid:22) c q (cid:22) c q ; and p and q are contained in the closed triangle cpq .One such five tuple is a valid tuple , see Figure 24. Note that the first and the second conditionimply that ap and bq do not cross. Some of the points may be equal in the tuple; for examplewe may have p = p or p = r or even p = p = r . For each valid tuple ( p, p , r, q , q ), let Q ( p, r, q ) be the points of P contained in Q below the polygonal path ap , pq and qb , andbelow the horizontal line through the lowest of the points p, q, r . Note that the point r isused only to define the horizontal line.For each valid tuple ( p, p , r, q , q ), we define Z ( p, p , r, q , q ) as the length of the optimalplane tristar rooted at a , b , c for the points in the interior of Q ( p, r, q ), without counting k ac k + k bc k , and with the additional restriction that a point k can be connected to c only if p (cid:22) c k (cid:22) c q . This last condition is equivalent to telling that no edge incident to c in thetristar can cross ap or bq . Thus, we are looking at the length of the longest plane graph inwhich each point in the interior of Q ( p, r, q ) must be connected to either a , b or c , and noedge crosses ap or bq .If Q ( p, r, q ) has no points, then Z ( p, p , r, q , q ) = 0. If Q ( p, r, q ) has some point, we find . Cabello et al. 29 a bcp qL p (cid:48) q (cid:48) ≺ c b a bcp q R (cid:48) p (cid:48) q (cid:48) ≺ c bk k G RBQ ( k, r, q ) g Figure 25
The two cases in the recurrence when k ≺ c p . the highest point k = k ( p, r, q ) in Q ( p, r, q ) and consider how it may attach to the roots andwhich edges are enforced by each of these choices. We can always connect k to a or b , as Q ( p, r, q ) is free of obstacles. If p (cid:22) c k (cid:22) c q , then we can connect k to c . If k is connectedto c it only lowers the boundary of the region Q ( · , · , · ) that has to be considered. However if k is connected to a or b , it splits off independent regions, some of them can be attached toonly one of the roots, some of them are essentially a bistar problem rooted at c and one of a, b . To state the recursive formulas precisely, for a region R and roots z, c , let BS z,c ( R ) bethe length of the optimal plane bistar rooted at z, c for the points in R . Such a value can becomputed using Lemma 19.Formally the recurrence for Z ( p, p , r, q , q ) looks as follows. If Q ( p, r, q ) is empty, then Z ( p, p , r, q , q ) = 0. If Q ( p, r, q ) is not empty, let k be the highest point of Q ( p, r, q ); we havethree subcases: Case 1: k ≺ c p . Let L be the points of Q ( p, r, q ) above ak . Let B be the points of Q ( p, r, q )below bk and let G be the points t of Q ( p, r, q ) \ B such that k ≺ c t ≺ c p . Let g bethe point with largest angle at b among the points in G . Then we define R to be theset of all points t in Q ( p, r, q ) \ B with p ≺ c t ≺ c q which are above gb . Finally let R = Q ( p, q, r ) \ ( B ∪ R ), as shown in Figure 25. We get the following recurrence in thiscase: Z ( p, p , r, q , q ) = max ( Z ( k, p , r, q , q ) + k ak k + P l ∈ L k al k BS a,b ( B ) + k bk k + BS b,c ( R ) + P r ∈ R k br k Case 2: p ≺ c k ≺ c q . Let L be the points t of Q ( p, r, q ) above ak such that t ≺ c p andlet L be the points t of Q ( p, r, q ) above ak such that p ≺ c t ≺ c k . Furthermore, let R bethe points t of Q ( p, r, q ) above bk such that k ≺ c t ≺ c q , and let R be the points t of Q ( p, r, q ) above bk such that q ≺ c t ; see Figure 26. We get the following recurrence inthis case: Z ( p, p , r, q , q ) = max Z ( p, p , k, q , q ) + k ck k Z ( k, k, k, q , q ) + k ak k + BS a,c ( L ) + P l ∈ L k al k Z ( p, p , k, k, k ) + k bk k + BS b,c ( R ) + P r ∈ R k br k Case 3: q ≺ c k . The case is symmetric to the case k ≺ c p . a bcp qkLL (cid:48) p (cid:48) q (cid:48) ≺ c Q ( k, k, q ) Figure 26
One of the cases in the recurrence when p ≺ c k ≺ c q . a bcc a c b c (cid:48) Figure 27
Starting Case The values Z ( p, p , r, q , q ) for all valid tuples ( p, p , r, q , q ) can be computed using dynamicprogramming and the formulas described above. The dynamic program is correct by a simplebut tedious inductive argument.Note that we have to compute a few solutions for bistars. In the recursive calls thesehave the form BS z,c ( R ) for z ∈ { a, b } and some region R of constant size description. Moreprecisely, each such region is defined by two points of P (case of L in Figure 26) or byfour points of P (case of R in Figure 25, where it is defined by k, g, q , q ). Thus, we have O ( n ) different bistar problems, and each of them can be solved in polynomial time usingLemma 19.To compute the optimal plane tristar, we add three dummy points to P before we startthe dynamic programming. We add a point c a on the edge ac arbitrarily close to c , a point c b on the edge bc arbitrarily close to c , and a point c between c a and c b , see Figure 27.We perturb the points c a , c and c b slightly to get them into general position. Note that( c a , c a , c , c b , c b ) is a valid tuple. We can now compute Z ( c a , c a , c , c b , c b ) by implementing therecurrence with standard dynamic programming techniques in polynomial time. By adding k ac k , k bc k and the lengths of the independent bistars from Figure 23 to Z ( c a , c a , c , c b , c b ),we get the length of the longest plane tristar rooted at a, b and c . (cid:74) Similar to the proof Theorem 6 we can iterate over all possible triples of specified pointsto find the best plane tristar rooted at the boundary of the convex hull. . Cabello et al. 31
In this section we prove that the following natural algorithm
AlgLocal( P ) based on localimprovements generally fails to compute the longest plane tree. Algorithm
AlgLocal( P ) : Construct an arbitrary plane spanning tree T on P . While there exists a pair of points a , b such that T ∪ ab contains an edge cd with | cd | < | ab | and T ∪ { ab } \ { cd } is plane: a. Set T → T ∪ { ab } \ { cd } . // tree T ∪ ab \ { cd } is longer than T Output T . (cid:73) Lemma 21.
For certain point sets P the algorithm AlgLocal( P ) fails to compute thelongest plane tree. Proof.
We construct a point set P consisting of 9 points to show the claim. The first threepoints of P are the vertices of an equilateral triangle. We assume that two of these verticesare on a horizontal line and denote by x the center of this triangle. Let r be the circumradiusof the triangle.Inside of this triangle, we want to place the vertices of two smaller equilateral triangles,where again the smaller is contained in the larger one. Set α = 17 ◦ , r = r and r = r .We then place the first of the additional triangles on the circle ∂D ( x, r ) in a way that thevertices have an angle of α to the nearest angular bisector of the outer triangle. We place thesecond additional triangle on the circle ∂D ( x, r ) again with an angle to the nearest bisectorof the outer triangle. However this time, the angle is α/
2. This construction is visualized inFigure 28. r r α α x Figure 28
Construction of the point set Now consider the tree on this point set depicted by the solid edges in Figure 29a. Notethat the green, blue and yellow edges are rotational symmetric. The edges depicted in purplein Figure 29a are representative for the possible edges currently not in the tree, which connectthe outer to the inner triangle. However as they are either the smallest edges in the cycle orintersect some edge not in a cycle, the algorithm cannot choose ab to be one of those edges.The possible edges connecting the outer to the middle triangle are depicted in red. Thered edge pq is not in a cycle with the edge it crosses, and thus it is not a possible swapkeeping planarity. For the second red edge and the possible edges connecting the middle tothe inner triangle, it can similarly be seen that they are shorter than any edge of the currenttree. Finally, for the edges along the triangles or the edges connecting the interior and the pr sq (a) A tree which cannot be locally improved (b) A tree where each pair of edges in the samecolor is at least as long as the matching pair inFigure 29a
Figure 29
The algorithm
AlgLocal( P ) can get stuck. middle triangle, it can easily be verified that there will be no strictly smaller edge in theunique cycle closed by them.On the other hand, in the tree depicted in Figure 29b each pair of same colored edges islonger than its counterpart in Figure 29a. Therefore AlgLocal( P ) does not yield a correctresult. (cid:74) We leave several open questions: What is the correct approximation factor of the algorithm
AlgSimple( P ) presented inSection 3? While each single lemma in Section 3 is tight for some case, it is hard tobelieve that the whole analysis, leading to the approximation factor f . = 0 . What is the approximation factor BoundDiam(3) achieved by the polynomial timealgorithm that outputs the longest plane tree with diameter 3? By Theorem 5 it is atmost 5 / / For a fixed diameter d ≥
4, is there a polynomial-time algorithm that outputs the longestplane tree with diameter at most d ? By Theorem 6 we know the answer is yes when d = 3. And Theorem 7 gives a positive answer for special classes of trees with diameter 4.Note that a hypothetical polynomial-time approximation scheme (PTAS) has to considertrees of unbounded diameter because of Theorem 4. It is compatible with our currentknowledge that computing an optimal plane tree of diameter, say, O (1 /ε ) would give aPTAS. Is the general problem of finding the longest plane tree in P? A similar question can beasked for several other plane objects, such as paths, cycles, matchings, perfect matchings,or triangulations. The computational complexity in all cases is open.
References Noga Alon, Sridhar Rajagopalan, and Subhash Suri. Long non-crossing configurations inthe plane.
Fundam. Inform. , 22(4):385–394, 1995. doi:10.3233/FI-1995-2245 . . Cabello et al. 33 Sanjeev Arora. Polynomial time approximation schemes for Euclidean traveling salesmanand other geometric problems.
J. ACM , 45(5):753–782, 1998. URL: https://doi.org/10.1145/290179.290180 , doi:10.1145/290179.290180 . Sanjeev Arora and Kevin L. Chang. Approximation schemes for degree-restricted MSTand red-blue separation problems.
Algorithmica , 40(3):189–210, 2004. URL: https://doi.org/10.1007/s00453-004-1103-4 , doi:10.1007/s00453-004-1103-4 . Alexander I. Barvinok, Sándor P. Fekete, David S. Johnson, Arie Tamir, Gerhard J.Woeginger, and Russell Woodroofe. The geometric maximum traveling salesman prob-lem.
J. ACM , 50(5):641–664, 2003. URL: https://doi.org/10.1145/876638.876640 , doi:10.1145/876638.876640 . Ahmad Biniaz. Euclidean bottleneck bounded-degree spanning tree ratios. In
Proceedingsof the 2020 ACM-SIAM Symposium on Discrete Algorithms, SODA 2020, Salt Lake City,UT, USA, January 5-8, 2020 , pages 826–836. SIAM, 2020. URL: https://doi.org/10.1137/1.9781611975994.50 , doi:10.1137/1.9781611975994.50 . Ahmad Biniaz. Improved approximation ratios for two Euclidean maximum spanning treeproblems. arXiv:2010.03870 , 2020. Ahmad Biniaz, Prosenjit Bose, Kimberly Crosbie, Jean-Lou De Carufel, David Eppstein,Anil Maheshwari, and Michiel Smid. Maximum plane trees in multipartite geometricgraphs.
Algorithmica , 81(4):1512–1534, 2019. URL: http://link.springer.com/10.1007/s00453-018-0482-x , doi:10.1007/s00453-018-0482-x . Sergio Cabello, Aruni Choudhary, Michael Hoffmann, Katharina Klost, Meghana M Reddy,Wolfgang Mulzer, Felix Schröder, and Josef Tkadlec. A better approximation for longestnoncrossing spanning trees. In , 2020. Timothy M. Chan. Euclidean bounded-degree spanning tree ratios.
Discret. Com-put. Geom. , 32(2):177–194, 2004. URL: . Francis Y. L. Chin, Jianbo Qian, and Cao An Wang. Progress on maximum weight triangu-lation. In
Proc. 10th Annu. Int. Conf. Computing and Combinatorics (COCOON) , volume3106 of
Lecture Notes in Computer Science , pages 53–61. Springer, 2004. URL: https://doi.org/10.1007/978-3-540-27798-9_8 , doi:10.1007/978-3-540-27798-9\_8 . Richard Cole and Chee-Keng Yap. Geometric retrieval problems.
Inf. Control. , 63(1/2):39–57, 1984. URL: https://doi.org/10.1016/S0019-9958(84)80040-6 , doi:10.1016/S0019-9958(84)80040-6 . Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.
Introductionto Algorithms . MIT Press, 3rd edition, 2009. URL: http://mitpress.mit.edu/books/introduction-algorithms . Mark de Berg, Otfried Cheong, Marc van Kreveld, and Mark Overmars.
Computational geometry. Algorithms and applications . Springer-Verlag, Berlin, third edition, 2008. URL: https://doi.org/10.1007/978-3-540-77974-2 , doi:10.1007/978-3-540-77974-2 . Adrian Dumitrescu and Csaba D. Tóth. Long non-crossing configurations in theplane.
Discrete Comput. Geom. , 44(4):727–752, 2010. URL: https://doi.org/10.1007/s00454-010-9277-9 , doi:10.1007/s00454-010-9277-9 . Alon Efrat, Alon Itai, and Matthew J. Katz. Geometry helps in bottleneck matchingand related problems.
Algorithmica , 31(1):1–28, 2001. URL: https://doi.org/10.1007/s00453-001-0016-8 , doi:10.1007/s00453-001-0016-8 . David Eppstein. Spanning trees and spanners. In Jörg-Rüdiger Sack and Jorge Urru-tia, editors,
Handbook of Computational Geometry , pages 425–461. North Holland / Else-vier, 2000. URL: https://doi.org/10.1016/b978-044482537-7/50010-3 , doi:10.1016/b978-044482537-7/50010-3 . Andrea Francke and Michael Hoffmann. The Euclidean degree-4 minimum spanning treeproblem is NP-hard. In
Proceedings of the 25th ACM Symposium on Computational Ge-ometry , pages 179–188. ACM, 2009. URL: https://doi.org/10.1145/1542362.1542399 , doi:10.1145/1542362.1542399 . P. D. Gilbert. New results in planar triangulations. Technical Report R–850, Univ. IllinoisCoordinated Science Lab, 1979. Sariel Har-Peled.
Geometric approximation algorithms , volume 173 of
Mathematical Surveysand Monographs . American Mathematical Society, Providence, RI, 2011. URL: https://doi.org/10.1090/surv/173 , doi:10.1090/surv/173 . Gheza Tom Klincsek. Minimal triangulations of polygonal domains.
Ann. Discrete Math. ,9:121–123, 1980. Jirí Matoušek. Range searching with efficient hiearchical cutting.
Discret. Comput.Geom. , 10:157–182, 1993. URL: https://doi.org/10.1007/BF02573972 , doi:10.1007/BF02573972 . Joseph S. B. Mitchell. Guillotine subdivisions approximate polygonal subdivisions: Asimple polynomial-time approximation scheme for geometric TSP, k -MST, and relatedproblems. SIAM J. Comput. , 28(4):1298–1309, 1999. URL: https://doi.org/10.1137/S0097539796309764 , doi:10.1137/S0097539796309764 . Joseph S. B. Mitchell. Shortest paths and networks. In Jacob E. Goodman and
Joseph O’Rourke, editors,
Handbook of Discrete and Computational Geometry , pages 607–641. Chapman and Hall/CRC, 2nd edition, 2004. URL: https://doi.org/10.1201/9781420035315.ch27 , doi:10.1201/9781420035315.ch27 . Joseph S. B. Mitchell and Wolfgang Mulzer. Proximity algorithms. In Jacob E. Goodman,Joseph O’Rourke, and Csaba D. Tóth, editors,
Handbook of Discrete and ComputationalGeometry , chapter 32, pages 849–874. CRC Press, Boca Raton, 3rd edition, 2017. doi:10.1201/9781315119601 . Wolfgang Mulzer. Minimum dilation triangulations for the regular n -gon. Master’s thesis,Freie Universität Berlin, Germany, 2004. Wolfgang Mulzer and Johannes Obenaus. The tree stabbing number is not monotone. In
Proceedings of the 36th European Workshop on Computational Geometry (EWCG) , pages78:1–78:8, 2020. Wolfgang Mulzer and Günter Rote. Minimum-weight triangulation is NP-hard.
J.ACM , 55(2):11:1–11:29, 2008. URL: https://doi.org/10.1145/1346330.1346336 , doi:10.1145/1346330.1346336 . Giri Narasimhan and Michiel Smid.
Geometric spanner networks . Cambridge UniversityPress, Cambridge, 2007. URL: https://doi.org/10.1017/CBO9780511546884 , doi:10.1017/CBO9780511546884 . Christos H. Papadimitriou. The Euclidean traveling salesman problem is NP- complete.
Theor. Comput. Sci. , 4(3):237–244, 1977. URL: https://doi.org/10.1016/ , doi:10.1016/0304-3975(77)90012-3 . Christos H. Papadimitriou and Umesh V. Vazirani. On two geometric problems related tothe traveling 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-4 . Jan Remy and Angelika Steger. A quasi-polynomial time approximation scheme for mini-mum weight triangulation.
J. ACM , 56(3):15:1–15:47, 2009. URL: https://doi.org/10.1145/1516512.1516517 , doi:10.1145/1516512.1516517 . Emo Welzl. On spanning trees with low crossing numbers. In
Data structures andefficient algorithms , volume 594 of
Lecture Notes in Comput. Sci. , pages 233–249.Springer, Berlin, 1992. URL: https://doi.org/10.1007/3-540-55488-2_30 , doi:10.1007/3-540-55488-2_30 . . Cabello et al. 35 David P. Williamson and David B. Shmoys.
The design of approximation algo-rithms . Cambridge University Press, Cambridge, 2011. URL: https://doi.org/10.1017/CBO9780511921735 , doi:10.1017/CBO9780511921735doi:10.1017/CBO9780511921735