Skip to main content

Advertisement

Log in

Minimizing the Diameter of a Spanning Tree for Imprecise Points

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

We study the diameter of a spanning tree, i.e., the length of its longest simple path, under the imprecise points model, in which each point is assigned its own occurrence region instead of an exact location. We prove that the minimum diameter of a spanning tree of n points each of which is selected from its respective disk (or axis-parallel square) is polynomial-time computable, contrasting with the fact that minimizing the cost of a spanning tree, i.e. the sum of its edge lengths, for imprecise points is known to be NP-hard. This difference is very interesting since for exact points minimizing the cost seems faster than minimizing the diameter [\(O(n\log n)\) versus almost cubic running time]. As the first work regarding the minimum diameter of a spanning tree for imprecise points, our main objective is to investigate essential properties that distinguish the problem from NP-hard instead of minimizing the running time [\(O(n^9)\) for general disks or \(O(n^6)\) for unit ones]. Our algorithm mainly utilizes farthest-site Voronoi diagrams for disks and axis-parallel squares, and these diagrams would have their own merits.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Similar content being viewed by others

Explore related subjects

Discover the latest articles and news from researchers in related subjects, suggested using machine learning.

References

  1. Aggarwal, A., Guibas, L.J., Saxe, J.B., Shor, P.W.: A linear-time algorithm for computing the Voronoi diagram of a convex polygon. Discret. Comput. Geom. 4, 591–604 (1989)

    Article  MathSciNet  MATH  Google Scholar 

  2. Aurenhammer, F., Klein, R., Lee, D.: Voronoi Diagrams and Delaunay Triangulations. World Scientific, Singapore (2013)

    Book  MATH  Google Scholar 

  3. Borwein, J.M., Borwein, P.B.: Pi and the AGM: A Study in Analytic Number Theory and Computational Complexity, vol. 23. Wiley, New York (1987)

    MATH  Google Scholar 

  4. Buchin, K., Löffler, M., Morin, P., Mulzer, W.: Preprocessing imprecise points for Delaunay triangulation: simplified and extended. Algorithmica 61(3), 674–693 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  5. Chan, T.M.: Semi-online maintenance of geometric optima and measures. SIAM J. Comput. 32(3), 700–716 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  6. Cheong, O., Everett, H., Glisse, M., Gudmundsson, J., Hornus, S., Lazard, S., Lee, M., Na, H.: Farthest-polygon voronoi diagrams. Comput. Geom. 44(4), 234–247 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  7. Clarkson, K.L., Shor, P.W.: Application of random sampling in computational geometry, II. Discret. Comput. Geom. 4, 387–421 (1989)

    Article  MathSciNet  MATH  Google Scholar 

  8. De Berg, M., Van Kreveld, M., Overmars, M., Schwarzkopf, O.C.: Computational Geometry. Springer, Berlin (2000)

    Book  MATH  Google Scholar 

  9. Devillers, O.: Delaunay triangulation of imprecise points, preprocess and actually get a fast query time. J. Comput. Geom. 2(1), 30–45 (2011)

    MathSciNet  MATH  Google Scholar 

  10. Disser, Y., Mihalák, M., Montanari, S., Widmayer, P.: Rectilinear shortest path and rectilinear minimum spanning tree with neighborhoods. In: ISCO, pp. 208–220 (2014)

  11. Dorrigiv, R., Fraser, R., He, M., Kamali, S., Kawamura, A., López-Ortiz, A., Seco, D.: On minimum-and maximum-weight minimum spanning trees with neighborhoods. In: Proceedings of 10th International Workshop on Approximation and Online Algorithms, pp. 93–106 (2012)

  12. Ezra, E., Mulzer, W.: Convex hull of points lying on lines in time after preprocessing. Comput. Geom. 46(4), 417–434 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  13. Fiala, J., Kratochvíl, J., Proskurowski, A.: Systems of distant representatives. Discret. Appl. Math. 145(2), 306–316 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  14. Gudmundsson, J., Haverkort, H.J., Park, S., Shin, C., Wolff, A.: Facility location and the geometric minimum-diameter spanning tree. Comput. Geom. 27(1), 87–106 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  15. Guibas, L.J., Salesin, D., Stolfi, J.: Constructing strongly convex approximate hulls with inaccurate primitives. Algorithmica 9(6), 534–560 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  16. Ho, J., Lee, D.T., Chang, C., Wong, C.K.: Minimum diameter spanning trees and related problems. SIAM J. Comput. 20(5), 987–997 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  17. Jadhav, S., Mukhopadhyay, A., Bhattacharya, B.K.: An optimal algorithm for the intersection radius of a set of convex polygons. J. Algorithms 20(2), 244–267 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  18. Klein, R.: Concrete and Abstract Voronoi Diagrams. Lecture Notes in Computer Science, vol. 400. Springer, Berlin (1989)

    Book  Google Scholar 

  19. Klein, R., Lingas, A.: Hamiltonian abstract Voronoi diagrams in linear time. In: Proceedings of 5th International Symposium on Algorithms and Computation, pp. 11–19 (1994)

  20. Liu, C., Montanari, S.: Minimizing the diameter of a spanning tree for imprecise points. In: Proceedings of 26th International Symposium on Algorithms and Computation, pp. 381–392 (2015)

  21. Löffler, M., Mulzer, W.: Unions of onions: preprocessing imprecise points for fast onion decomposition. J. Comput. Geom. 5(1), 1–13 (2014)

    MathSciNet  MATH  Google Scholar 

  22. Löffler, M., Snoeyink, J.: Delaunay triangulation of imprecise points in linear time after preprocessing. Comput. Geom. 43(3), 234–242 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  23. Löffler, M., van Kreveld, M.J.: Largest and smallest convex hulls for imprecise points. Algorithmica 56(2), 235–269 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  24. Löffler, M., van Kreveld, M.J.: Largest bounding box, smallest diameter, and related problems on imprecise points. Comput. Geom. 43(4), 419–433 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  25. Mehlhorn, K., Meiser, S., Rasch, R.: Furthest site abstract voronoi diagrams. Int. J. Comput. Geom. Appl. 11(6), 583–616 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  26. Overmars, M.H., van Leeuwen, J.: Maintenance of configurations in the plane. J. Comput. Syst. Sci. 23(2), 166–204 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  27. Sharir, M.: The clarkson–shor technique revisited and extended. Comb. Probab. Comput. 12(2), 191–201 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  28. Spriggs, M.J., Keil, J.M., Bespamyatnikh, S., Segal, M., Snoeyink, J.: Computing a (1+\(\epsilon \))-approximate geometric minimum-diameter spanning tree. Algorithmica 38(4), 577–589 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  29. van Kreveld, M.J., Löffler, M., Mitchell, J.S.B.: Preprocessing imprecise points and splitting triangulations. SIAM J. Comput. 39(7), 2990–3000 (2010)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chih-Hung Liu.

Additional information

A preliminary version appeared in Proc. International Symposium on Algorithms and Computation (ISAAC) 2015 [20]. This work was partially supported by DFG (Kl 655/19) as part of a D-A-CH project.

This work was conducted when Chih-Hung Liu worked at University of Bonn and visited ETH Zürich. He has moved to ETH Zürich since July 2016.

Appendices

Appendix 1: Implementation of Elementary Operations

1.1 Fact 1

We distinguish cases according to the location of \(t\in e\):

  1. 1.

    \(t\in D_p\cap D_q\): Any point \(t\in e\cap (D_p\cap D_q)\) satisfies \(d(t, D_p)+d(t, D_q)=0\), and \(e\cap (D_p\cap D_q)\) can be computed in O(1) time.

  2. 2.

    \(t\in D_p\setminus D_q\) (resp. \(t\in D_q\setminus D_t\)): \(d(t, D_p)+d(t, D_q)=d(t, D_q)=|{\overline{tc_q}}|-r_q\) (resp. \(d(t, D_p)+d(t, D_q)=d(t, D_p)=|{\overline{tc_p}}|-r_p\)), and thus the location of t minimizing \(d(t, D_p)+d(t, D_q)\) can be trivially computed in O(1) time.

  3. 3.

    \(t\not \in D_p\cup D_q\): \(d(t, D_p)+d(t, D_q)=|{\overline{tc_p}}|+|{\overline{tc_q}}|-r_p-r_q\). We discuss below how to compute t minimizing \(d(t, D_p)+d(t, D_q)\) for this case in O(1) time.

For the sake of simplicity, we use p to denote \(c_p\), q to denote \(c_q\) and, since \(r_p\) and \(r_q\) are fixed, we attempt to minimize \(|{\overline{pt}}|+|{\overline{qt}}|\). Such a point \(t\in e\) can be located either in the interior of e or at one of its endpoints. In the latter case we can easily find the endpoint of e resulting in the smallest value by checking both of them. In the former case, if e and the segment \({\overline{pq}}\) intersect, then t is trivially the intersection point. Otherwise we distinguish between the cases where e is a line segment, a circular arc, or a hyperbolic arc.

Fig. 13
figure 13

Reflection on a segment (left) and on a circular arc (right)

If e is a line segment, it is well-known that the line perpendicular to e and passing through t bisects the angle \(\angle ptq\) (Fig. 13a). This point can be computed in O(1) time as the intersection between \({\overline{p'q}}\) and e, where \(p'\) is the reflection point of p with respect to the line passing through e.

If e is a circular arc, the line passing through t and the center c of the circle induced by e bisects the angle \(\angle ptq\) (Fig. 13b). To compute this point we adopt the Newton–Raphson method. In order to do so, we formulate a function f(z) such that \(f(z)=0\) if and only if a ray shot from p in the direction (1, z) first hits e, then reflects on e, and finally passes through q. In other words, if \(f(z)=0\), then t is the first intersection between e and the ray shot from p along the direction (1, z).

For simplicity, assume that e induces a unit circle C with center \(c=(h, k)\). Let \((x_p+\tau ,y_p+z\tau ), \tau \ge 0\) be the ray shooting from \(p=(x_p,y_p)\) in the direction (1, z). This ray hits C at the point \((x_p+f_1(z),y_p+f_1(z)z)\) such that

$$\begin{aligned} a&= x_p-h,\, b =y_p-k,\\ f_1(z)&=\frac{-(2a+2bz)-\sqrt{4(1-a^2)z^2+8abz+(1-b^2)}}{2(z^2+1)}. \end{aligned}$$

After hitting C the ray reflects at \((x_p+f_1(z),y_p+f_1(z)z)\) and continues in the direction \((x_p+f_1(z)+\tau ,y_p+f_1(z)z+f_3(z)\tau ), \tau \ge 0\), where

$$\begin{aligned} f_2(z)&=\frac{2(b-az)f_1(z)}{(b+f_1(z)z)^2+(a+f_1(z))^2},\\ f_3(z)&=\frac{-(a+f_1(z))f_2(z)-f_1(z)z}{(b+f_1(z)z)f_2(z)-f_1(z)}. \end{aligned}$$

Since the ray will pass through \(q=(x_q,y_q)\), we have \((y_q-y_p)-f_1(z)(z-f_3(z))-f_3(z)(x_q-x_p) = 0\). Thus, we can set f as

$$\begin{aligned} f(z)&= (y_q-y_p)-f_1(z)(z-f_3(z))-f_3(z)(x_q-x_p). \end{aligned}$$

To apply the Newton–Raphson method we need an interval \([z_l,z_r]\) containing the root \(z_0\) of f(z) and such that for every \(z\in [z_l,z_0)\) and \(z\in (z_0,z_r]\) it holds \(f'(z)\ne 0\). We can pick as \(z_l\) and \(z_r\) two distinct values such that the rays shot from p along the directions \((1, z_l)\) and \((1, z_r)\) are tangent to C.

For the analysis of the running time, since all the sub-functions of f have a second derivative in the interval \([z_l,z_r]\), f also has a second derivative in \([z_l,z_r]\). It is well-known if f has a second derivative in \([z_l,z_r]\), the convergence rate of the Newton–Raphson method is quadratic in \([z_l,z_r]\). According to the time complexity analysis for the Newton–Raphson method by Borwein and Borwein [3], if the convergence rate is quadratic the root \(z_0\) can be found in O(M(m)) bit-operations, where M(m) is the number of bit-operations required to multiply two m-bits words. By the standard assumption of using the RAM model of computation, the multiplication between two numbers is considered a constant-time operation. The time required to find a point t on a circular arc e minimizing \(|{\overline{pt}}|+|{\overline{qt}}|\) is therefore also in O(1).

In the case where e is a hyperbolic arc, a reflection property similar to the circular arc case holds. The above method can be generalized in a straightforward fashion for hyperbolic arcs.

1.2 Fact 2

We denote the circles induced by \(e_1\) and \(e_2\) respectively as \(C_1\) and \(C_2\), their centers respectively as \(c_1=(h_1, k_1)\) and \(c_2=(h_2, k_2)\), and their radii respectively as \(r_1\) and \(r_2\). We distinguish four cases depending on the locations of \(s\in e_1\) and \(t\in e_2\).

  1. 1.

    \(s\in D_p\) and \(t\in D_q\): \(d(s, D_p)+|{\overline{st}}|+d(t, D_q)= |{\overline{st}}|\), and the locations of s and t to minimize \(|{\overline{st}}|\) can be trivially computed in O(1) time

  2. 2.

    \(s\in D_p\) but \(t\not \in D_q\): \(d(s, D_p)+|{\overline{st}}|+d(t, D_q)= |{\overline{st}}|+d(t, D_q)\), and the locations of s and t to minimize \(|{\overline{st}}|+d(t, D_q)\) can be computed in O(1) time by Fact 1 where s is replaced with \(C_1\).

  3. 3.

    \(t\in D_q\) but \(s\not \in D_p\): It is symmetric to the second case.

  4. 4.

    \(s\not \in D_p\) and \(t\not \in D_q\): \(d(s, D_p)+|{\overline{st}}|+d(t, D_q)= |{\overline{c_pt}}|+|{\overline{st}}|+|{\overline{tc_q}}|\). We discuss below how to compute st minimizing \(d(t, D_p)+|{\overline{st}}|+d(t, D_q)\) for this case in O(1) time.

We use p to denote \(c_p\), q to denote \(c_q\), and assume that \(C_1\) and \(C_2\) are unit circles. We distinguish three possibilities for the locations of \(s\in \text{ cl }(e_1)\) and \(t\in \text{ cl }(e_2)\):

  1. 1.

    Both s and t are endpoints of their corresponding arcs: We can then check all 4 possibilities and find the one resulting in the smallest value.

  2. 2.

    Either s or t is is an endpoint of its corresponding arc: We can then apply the Newton–Raphson method presented in Sect. 1 for each endpoint and find the one resulting in the smallest value. For example, if s is an endpoint of \(e_1\), we find a point \(t\in C_2\) minimizing \(|{\overline{st}}|+|{\overline{tq}}|\).

  3. 3.

    Both s and t lie in the interior of their corresponding arcs: We propose the method below to compute their locations in O(1) time.

We distinguish between the cases where the segment \({\overline{pq}}\) intersects both \(C_1\) and \(C_2\), where it intersects only one among \(C_1\) and \(C_2\), and where it intersects neither \(C_1\) nor \(C_2\).

If \({\overline{pq}}\) intersects both \(C_1\) and \(C_2\) the points s and t can be computed by setting s as one of the two intersections between \({\overline{pq}}\) and \(C_1\) and t as one of the two intersections between \({\overline{pq}}\) and \(C_2\).

Fig. 14
figure 14

Reflection on two circular arcs

If \({\overline{pq}}\) intersects neither \(C_1\) nor \(C_2\) then the line passing through \(c_1\) and s will bisect \(\angle qst\) and the line passing through \(c_2\) and t will bisect \(\angle stq\) (Fig. 14). We design a Newton–Raphson method algorithm similar to the one in Sect. 1 to compute s and t in O(1) time. Again, we formulate a function f(z) such that \(f(z)=0\) if and only if a ray shot from \(p=(x_p, y_p)\) in the direction (1, z) first reflects on \(C_1\), then reflects on \(C_2\), and finally passes through \(q=(x_q, y_q)\). In other words, if \(f(z)=0\), then s is the first intersection between \(e_1\) and the ray shot from p along the direction (1, z), and t is the first intersection between \(e_2\) and the ray reflecting at s. The function f can be defined in a similar way as in the previous case:

$$\begin{aligned} f(z) \,=\,&((f_3(z)+f_6(z))f_7(z)+f_6(z)f_5(z))x_q\\&+((f_4(z)+f_6(z)f_5(z))f_7(z)-f_6(z))y_q\\&-((f_4(z)+f_6(z)f_5(z))f_7(z)-f_6(z))(y_p+f_1(z)z+f_6(z)f_5(z))\\&-((f_3(z)+f_6(z))f_7(z)+f_6(z)f_5(z))(x_p+f_1(z)+f_6(z)), \end{aligned}$$

where

$$\begin{aligned} a&= x_p-h_1, \, b =y_p-k_1,\\ f_1(z)&= \frac{-(2a+2bz)-\sqrt{4(1-a^2)z^2+8abz+(1-b^2)}}{2(z^2+1)},\\ f_2(z)&=\frac{2(b-az)f_1(z)}{(b+f_1(z)z)^2+(a+f_1(z))^2},\\ f_3(z)&=(x_p-h_2)+f_1(z),\\ f_4(z)&=(y_p-k_2)+f_1(z)z,\\ f_5(z)&=\frac{-(a+f_1(z))f_2(z)-f_1(z)z}{(b+f_1(z)z)f_2(z)-f_1(z)},\\ f_6(z)&= \tfrac{-(2f_3(z)+2f_4(z)f_5(z))- \sqrt{4(1-f_3(z)^2)f_5(z)^2+8f_3(z)f_4(z)f_5(z)+(1-f_4(z)^2)}}{2(f_5(z)^2+1)},\\ f_7(z)&= \frac{2(f_4(z)-f_3(z)f_5(z))f_6(z)}{(f_4(z)+f_6(z)f_5(z))^2+(f_3(z)+f_6(z))^2}. \end{aligned}$$

The Newton–Raphson method requires an interval \([z_l,z_r]\) containing the root \(z_0\) of f such that for every \(z\in [z_l,z_0)\) and \(z\in (z_0,z_r]\), \(f'(z)\ne 0\). We can pick two distinct values as \(z_l\) and \(z_r\) such that the rays shot from p along the directions \((1, z_l)\) and \((1, z_r)\) will first reflect at \(C_1\) and then be tangent to \(C_2\). Since also in this case all the sub-functions of f have a second derivative in \([z_l,z_r]\), the Newton–Raphson method converges to the root \(z_0\) in O(1) time.

For the last case, assume without loss of generality that \({\overline{pq}}\) intersects only \(C_1\). If \({\overline{pt}}\) passes through \(C_1\), then we can set t as any of the two intersection between \({\overline{pt}}\) and \(C_1\), while the point s can be computed using the Newton–Raphson method in Sect. 1. If \({\overline{pt}}\) does not pass through \(C_1\), we can instead use the Newton–Raphson method in this section.

Appendix 2: Proofs for Farthest-Disk Voronoi Diagrams

Proof of Theorem 2

Proof

Mehlhorn et al. [25] prove that if the bisecting curve system satisfies several properties, the resulting farthest-site Voronoi diagram is a tree and has O(n) faces. After removing from \({\mathcal {D}}\) all disks that contains another disk, the bisectors among the remaining disks will satisfy these properties. Note that, using the amended bisectors, if a disk D contains another one then \(\text{ FV }(D, {\mathcal {D}})\) is empty; thus, the removal of D will not change \(\text{ FV }({\mathcal {D}})\), implying that \(\text{ FV }({\mathcal {D}})\) has O(n) faces and is a tree.

To analyze the structural complexity of \({\mathcal {FV}}_2({\mathcal {D}})\), since this complexity is proportional to the number of vertices of \({\mathcal {FV}}_2({\mathcal {D}})\) plus the number of unbounded edges (by Euler’s formula), we will bound the two numbers, respectively.

We mainly adopt the well-known Clarkson-and-Shor technique [7, 27]: Let S be a set of n objects, and let A(S) be a set of configurations with respect to S. For example, S is a set of n points, and A(S) is a set of circles spanned by points of S. Each configuration of A(S) is assigned two disjoint subsets of S as its defining set and conflict set, respectively. For instance, the defining set of a circle is the set of points that span it, and the conflict set of a circle is the set of points in its interior. Let \(C_i(S)\) be the set of configurations in A(S) whose conflict sets consist of i objects, \(C_{\le i}(S)\) be \(\bigcup _{0\le j\le i}C_j(S)\), \(N_i(S)\) be \(|N_i(S)|\), and \(N_{\le i}(S)\) be \(|C_{\le i}(S)|\). We also use d denote the maximum cardinality of the define set of a configuration over A(S), and use \(N_i(n)\) (resp. \(N_{\le i}(n)\)) denote the maximum of \(N_i(S)\) (resp. \(N_{\le i}(S)\)), over all sets S of n objects of this kind. The Clarkson-and-Shor technique is the following formula:

$$\begin{aligned} N_{\le k}(S)=O(k^d N_0(n/k)). \end{aligned}$$

Now, we analyze the number of vertices of \({\mathcal {FV}}_2({\mathcal {D}})\). For simplicity, we assume that the degree of each Voronoi vertex is exactly three; actually, without this assumption, the number of vertices will not be larger. Each vertex of \(\text{ FV }_1({\mathcal {D}})\) is the center of a circle which is tangent to three disks in \({\mathcal {D}}\) and whose exterior does not fully contain any other disk in \({\mathcal {D}}\), and each vertex of \({\mathcal {FV}}_2({\mathcal {D}})\) is the center of a circle which is tangent to three disks in \({\mathcal {D}}\) and whose exterior fully contains at most one other disk in \({\mathcal {D}}\), i.e., zero or one. Therefore, let S be \({\mathcal {D}}\) and A(S) be the set of circles that are tangent to three disks in \({\mathcal {D}}\). For each circle in A(S), let its defining set be the three disks tangent to it, and its conflict set be the disks that fully lies in its exterior. Under these circumstances, \(N_0(S)\) is the number of vertices of \(\text{ FV }_1({\mathcal {D}})\), and \(N_{\le 1}(S)\) is the number of vertices of \({\mathcal {FV}}_2({\mathcal {D}})\). Since d is trivially 3 and \(N_0(n)\) is O(n), we have

$$\begin{aligned} N_{\le 1}(S)=N_{\le 1}(n)=O(k^dN_0(n/k))=O(1^3N_0(n))=O(n). \end{aligned}$$

We continue to derive the number of unbounded edges of \({\mathcal {FV}}_2({\mathcal {D}})\). An unbounded endpoint of \(\text{ FV }_1({\mathcal {D}})\) corresponds to a hyperplane which is tangent to two disks and does not fully contain any other disk in one of its two half-spaces, and an unbounded endpoint of \({\mathcal {FV}}_2({\mathcal {D}})\) corresponds to a hyperplane which is tangent to two disks and fully contains at most one other disk in one of its two half-spaces. Then, we can define S similar to the case for vertices. Since d is trivially 2 and \(N_0(n)\) is O(n), we have

$$\begin{aligned} N_{\le 1}(S)=N_{\le 1}(n)=O(k^dN_0(n/k))=O(1^2N_0(n))=O(n). \end{aligned}$$

\(\square \)

Proof of Theorem 3

Proof

Cheong et al. [6] proposes a divide-and-conquer algorithm computing farthest-polygon Voronoi diagrams in \(O(n\log ^3 n)\) time. If we first remove from \({\mathcal {D}}\) all disks containing another one (for example, with a simple plane-sweep technique running in \(O(n\log n)\) time), the algorithm is also applicable to \({\mathcal {D}}\), even under the modified bisectors. Since a disk containing another one does not have regions in \(\text{ FV }({\mathcal {D}})\), we can thus compute \(\text{ FV }({\mathcal {D}})\) in \(O(n\log ^3 n)\) time.

Moreover, one of the \(O(\log n)\) factors in the running time comes from the handling of closed merge curves. In the “divide” stage, if we separate the disks according to the x-coordinates of their centers, there will be no closed merge curve at all. Therefore, \(\text{ FV }({\mathcal {D}})\) can be computed in \(O(n\log ^2 n)\) time. To compute \({\mathcal {FV}}_2({\mathcal {D}})\) we further partition each nonempty \(\text{ FV }(D, {\mathcal {D}})\) according to \(\text{ FV }({\mathcal {D}}\setminus \{D\})\). Since \(\text{ FV }({\mathcal {D}})\) has O(n) faces, the computation of \({\mathcal {FV}}_2({\mathcal {D}})\) takes \(O(n)\cdot O(n\log ^2 n)=O(n^2\log ^2 n)\) time. Finally, if \({\mathcal {D}}\) consists of unit disks, then \(\text{ FV }({\mathcal {D}})=\text{ FV }(\mathcal {C})\) and \({\mathcal {FV}}_2({\mathcal {D}})={\mathcal {FV}}_2(\mathcal {C})\). Ho et al. [16] showed how to compute these diagrams in \(O(n\log n)\) time.\(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Liu, CH., Montanari, S. Minimizing the Diameter of a Spanning Tree for Imprecise Points. Algorithmica 80, 801–826 (2018). https://doi.org/10.1007/s00453-017-0292-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-017-0292-6

Keywords

Profiles

  1. Chih-Hung Liu