On the Shortest Separating Cycle

12/03/2019 ∙ by Adrian Dumitrescu, et al. ∙ University of Wisconsin-Milwaukee 0

According to a result of Arkin  (2016), given n point pairs in the plane, there exists a simple polygonal cycle that separates the two points in each pair to different sides; moreover, a O(√(n))-factor approximation with respect to the minimum length can be computed in polynomial time. Here the following results are obtained: (I) We extend the problem to geometric hypergraphs and obtain the following characterization of feasibility. Given a geometric hypergraph on points in the plane with hyperedges of size at least 2, there exists a simple polygonal cycle that separates each hyperedge if and only if the hypergraph is 2-colorable. (II) We extend the O(√(n))-factor approximation in the length measure as follows: Given a geometric graph G=(V,E), a separating cycle (if it exists) can be computed in O(m+ nlogn) time, where |V|=n, |E|=m. Moreover, a O(√(n))-approximation of the shortest separating cycle can be found in polynomial time. Given a geometric graph G=(V,E) in R^3, a separating polyhedron (if it exists) can be found in O(m+ nlogn) time, where |V|=n, |E|=m. Moreover, a O(n^2/3)-approximation of a separating polyhedron of minimum perimeter can be found in polynomial time. (III) Given a set of n point pairs in convex position in the plane, we show that a (1+ε)-approximation of a shortest separating cycle can be computed in time n^O(ε^-1/2). In this regard, we prove a lemma on convex polygon approximation that is of independent interest.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Given a set of pairs of points in the plane with no common elements, , a shortest separating cycle is a plane cycle (a closed curve, a.k.a. tour) of minimum length that contains inside exactly one point from each of the pairs. The problem Shortest Separating Cycle is that of finding such a cycle, given the input pairs. It was introduced by Arkin et al. [3] motivated by applications in data storage and retrieval in distributed sensor networks. The authors gave a -factor approximation for the general case and better approximations for some special cases. On the other hand, using a reduction from Vertex Cover, they showed that the problem is hard to approximate for a factor of unless , and is hard to approximate for a factor of assuming the Unique Games Conjecture; see, e.g., [24, Ch. 16] for technical background.

The assumption that no point appears more than once, i.e., , is sometimes necessary for the existence of a separating cycle; i.e., there are instances of sets of pairs with common elements and no separating cycle; see for instance Fig. 2 (the edges in these graphs represent pairs of input points). For convenience, points on the boundary of the cycle are considered inside; it is easy to see that requiring points to lie strictly in the interior or also on the boundary are equivalent variants in regards to the existence of a separating cycle. Moreover, the equivalence is almost preserved in the length measure: given any positive , and a separating cycle for pairs, enclosing (after relabeling each pair, if needed), with some of the points of on its boundary, a separating cycle of length at most can be constructed, having all points of in its interior.

In this paper we study the extension of the concept of separating cycle to arbitrary graphs and hypergraphs, and to higher dimensions; in the original version introduced by Arkin et al. [3], the input graph is a matching, i.e., it consists of edges with no common endpoints; see Fig. 1 for an example. Two instances with and respectively point pairs that do not admit separating cycles are illustrated in Fig. 2

; the common reason is that both graphs contain odd cycles and odd cycles do not admit separating cycles.

Figure 1: A shortest separating cycle for a matching.

We observe that for arbitrary input graphs, one cannot use the algorithm from [3]. That algorithm (in [3, Subsec. 3.5]) first computes a minimum-size square containing at least one point from each pair, and then computes a constant-factor approximation of a shortest cycle (tour) of the points contained in , in the form of a simple polygon. In the end, this tour is refined to a separating cycle of the given set of point pairs with only a small increase in length. Here we note that there exist instances, such as that in Fig. 2 (right), for which there is no separating cycle confined to ; moreover, the length of a shortest separating cycle can be arbitrarily larger than any function of and , and so a new approach is needed for the general version with arbitrary input graphs, or its extension to hypergraphs; i.e., the current -factor approximation does not carry through to these settings.

Figure 2: Left and center: instances with no separating cycle. Right: instance where the minimum axis-parallel square (or rectangle) that contains at least one point from each pair does not lead to a solution; a solution is indicated by the red cycle.

We first show that a planar geometric graph admits a separating cycle (for all its edge-pairs) if and only if it is bipartite. This result can be extended to hypergraphs in . Given a geometric hypergraph on points in with no singleton edges111A singleton edge is an edge with one vertex., there exists a simple polyhedron that separates each hyperedge if and only if the hypergraph is -colorable.

Definitions and notations.

A hypergraph is a pair , where is finite set of vertices, and is a family of subsets of , called edges. is said to be -colorable if there is a -coloring of such that no edge is monochromatic; see, e.g., [2, Ch. 1.3].

For a polygonal cycle , let and denote the interior and exterior of , respectively; and denote its boundary. Consider a geometric hypergraph on points in the plane with no singleton edges. A polygonal cycle is said to be a separating cycle for if (i)  is simple (i.e., with no self-intersections); and (ii) each edge of has points inside (in its interior or on its boundary) and points in the exterior of ; that is, for each edge , both and are nonempty.

A simple polygonal cycle is said to have zero area, if , for a sufficiently small given . Similarly, a polyhedron is is said to have zero volume, if , for a sufficiently small given .

For , let denote the ball (i.e., disk in the plane) of radius . For two convex bodies, and let denote their Minkowski sum, namely .

Preliminaries and related work.

Let be a finite set of points in the plane. According to an old result of Few [11], the length of a minimum spanning path (resp., minimum spanning tree) of any points in the unit square is at most (resp., ). Both upper bounds are constructive; for example, the construction of a short spanning path works as follows. Lay out about equidistant horizontal lines, and then visit the points layer by layer, with the path alternating directions along the horizontal strips. In particular, the length of the minimum spanning tree of any points in the unit square is bounded from above by the same expression. An upper bound with a slightly better multiplicative constant for a path was derived by Karloff [19]. Fejes Tóth [10] had observed earlier that for points of a regular hexagonal lattice in the unit square, the length of the minimum spanning path is asymptotically equal to , where . As such, the maximum length of the minimum spanning tree of any points in the unit square is , for a small constant (close to ). The upper bound also holds for points in a convex polygon of diameter , in particular for points in a rectangle of diameter . In every dimension , Few showed that the maximum length of a shortest path (or tree) through points in the unit cube is ; the upper bound is again constructive and extends to rectangular boxes of diameter .

The topic of “separation” has appeared in multiple interpretations; here we only give a few examples: [1, 6, 7, 13, 15, 16, 17]. Some results on watchman tours relying on Few’s bounds can be found in [8]; others can be be found in [4]. For instance, in the problem of finding a separating cycle for a given set of segment pairs, that we study here, it is clear that the edges of the cycle must hit all of the given segments. As such, this problem is related to the classic problem of hitting a set of segments by straight lines [16]. In a broader context, coloring of geometric hypergraphs has been studied, e.g., in [23].

2 Separating cycles for graphs and hypergraphs

By adapting results on hypergraph -colorability to a geometric setting, we obtain the following.

Theorem 1.

Let be a geometric hypergraph on points in the plane with no singleton edges. Then admits a separating cycle if and only if is -colorable.

Proof.

For the direct implication, assume that is a separating cycle: then for each , both and are nonempty. Color the points in the interior of by red and those in its exterior by blue. As such, the hypergraph is -colorable.

We now prove the converse implication. Let be a partition of the points into red and blue points, such that no edge in is monochromatic. We construct a simple polygonal cycle containing only the red points in its interior. To this end, we first compute a minimum spanning tree for the points in ; is non-crossing [22, Ch. 6], however there could be blue points contained in edges of . Replace each such edge with a two-segment polygonal path connecting the same pair of points and lying very close to the original segment, and so that is not incident to any other point.

The resulting tree, is still non-crossing and spans all points in . By doubling the edges of and adding short connection edges, if needed, construct a simple polygonal cycle of zero area that contains it and lies very close to it; as such, contains all red points and none of the blue points, as required. ∎

Since hypergraph -colorability is NP-complete [14], Theorem 1 yields the following.

Corollary 1.

Given a geometric hypergraph on points in the plane with no singleton edges, the problem of deciding whether admits a separating cycle is NP-complete.

We next present an approximation algorithm for computing a shortest separating cycle of a geometric graph. A key fact in our algorithm is the following observation.

Lemma 1.

Let be connected bipartite graph. Then (apart from a color flip), admits a unique -coloring.

Proof.

Recall that a graph is bipartite if and only if it contains no odd cycle [18, Ch. 3.3]. Consider an arbitrary vertex and color it red. Then the color of any other vertex, say , is uniquely determined by the parity of the length of the shortest path from to in : red for even length and blue for odd length. Indeed, the vertices are colored alternately on any path, and since any cycle has even length, all lengths of paths from to have the same parity, as required. ∎

Let be the input geometric graph no isolated vertices, where , . Let denote the connected components of , where , for .

Theorem 2.

(i) Given a geometric graph , a separating cycle (if it exists) can be computed in time, where , . (ii) Further, a -approximation of the shortest separating cycle can be found in polynomial time.

Proof.

(i) The graph is first tested for bipartiteness and the input instance is declared infeasible if the test fails (by Theorem 1). This test takes time; see, e.g., [18, Ch. 3.3]. We subsequently assume that is bipartite, with vertices colored by red and blue: . Then the algorithm constructs a plane spanning tree of the red points (for instance, a minimum spanning tree or a strictly monotone path), and outputs a simple cycle by doubling its edges and avoiding the blue points on its edges by bending those edges as indicated in the proof of Theorem 1.

To this end, the following parameters are computed: For each red point , is the minimum distance to a blue point. For each edge of , is the minimum distance from to a blue point ( if is incident to a blue point); and is the minimum nonzero distance from to a blue point ( if no blue point is close to , as explained below). The set of values , , are used for doubling , and the set of values , , are used to determine the separating cycle in the vicinity of red vertices; here we omit the details. The set of values , , and , , can be determined using point location for the blue points (as query points) in a planar triangulated subdivision containing the edges of , all in time [5, Ch. 6]. The overall time complexity of the algorithm is .

(ii) The algorithm above is modified as follows; the first step is the same bipartiteness test. The algorithm -colors the vertices in each connected component by red and blue: , for . By Lemma 1, the -coloring of each component is unique (apart from a color flip). The initial coloring of a component may be subsequently subject to a color flip if the algorithm so later decides. Obviously, the coloring of each component is done independently of the others.

Then, the algorithm guesses the diameter of OPT, as determined by one of the pairs of points in (by trying all such pairs). In each iteration, the algorithm may compute a separating cycle and record its length; the shortest cycle found in the process will be output by the algorithm; some iterations may be abandoned earlier, without the need for this calculation.

Consider the iteration in which the guess is correct, with pair ; we may assume for concreteness that is a horizontal segment of unit length; refer to Fig 3. As such, we have that . In this iteration, the algorithm computes a separating cycle whose length is bounded from above by . First, the algorithm computes a rectangle of unit width and height centered at the midpoint of . By the diameter assumption, OPT is contained in . In the next step the algorithm computes a separating cycle containing only red points in in its interior (however, the initial coloring of some of the components may be flipped, as needed). Note that any separating cycle must contain for each component either all red points or all blue points but not a mix of two colors. By Lemma 1, the coloring of each component is unique (modulo a color flip) and so for each component at least one of its color classes is entirely contained in . As such, all points in not contained in can be discarded from further consideration.

Figure 3: Left: input bipartite graph. Center: a separating cycle can be computed from the MST of the red points (after color flips). Right: a shortest separating cycle.

Each of the components , is checked against this containment condition: if a component is found where neither of its two color classes lies in , the algorithm abandons this iteration (and assumed diameter pair, ). For each component : (i) if , then the coloring of this component remains unchanged, regardless of whether or . (ii) if and , then the coloring of this component is flipped: , so that after the color flip.

Once the recoloring of components is complete, the algorithm computes a minimum spanning tree of the red points in . Its length is bounded from above by the length of the spanning tree computed by Few’s algorithm. Since the number of red points does not exceed , we have . Finally, is converted into a separating cycle by a factor of at most increase in length, for any given , as in the proof of part (i). Recalling that , it follows that is a -factor approximation of a shortest separating cycle. ∎

An instance on which our algorithm—as well as that of Arkin et al. [3]—performs poorly appears in Fig. 4.

Figure 4: An instance for which the -approximation ratio is tight; the left and respectively the right segment endpoints are each enclosed in a unit square and form the vertices of a uniform grid. Left: a shortest separating cycle. Right: a minimum spanning tree of the red points (as basis for the separating cycle constructed by the algorithm).

3 Separating cycles for matchings in convex position in the plane

A matching of point pairs is said to be in convex position if the points are in convex position. In this section we develop a polynomial time approximation scheme (PTAS) for this setting; given point pairs in convex position and , the algorithm computes a -approximation of a shortest separating cycle. Denoting an optimal solution by OPT, note that OPT is a convex polygon with vertices. Moreover, observe that a shortest separating cycle is a shortest TSP tour for the set of neighborhood pairs , ; see [20, Sec. 7.4] for an overview of the traveling salesman problem (TSP).

Theorem 3.

Given a set of point pairs in convex position, a -approximation of a shortest separating cycle can be computed in time .

We need the following technical lemma for convex polygon approximation. Our lemma is clearly of independent interest; while it answers a basic question, we could not find such a result in the literature; there exist however related results, see, e.g., [12].

Lemma 2.

Given a convex polygon and any , there exists a subpolygon with vertices, such that . Apart from the constant factor, this bound cannot be improved.

Proof.

Observe that the number of vertices of does not depend on the number of vertices of , it only depends on . We will assume without loss of generality that . Let be the vertices of labeled clockwise.

First construct a subpolygon iteratively. Set and include into . Scan clockwise until we find the first vertex, such that at least one vertex among is at distance at least from the chord . Include into . Set and continue in the same manner, scan clockwise until we find the first vertex, such that at least one vertex among is at distance at least from the chord , and so on. Suppose that the scanning ends after phases; then has either or vertices; see Fig. 5 (left). Note that the last side of can be unconstrained, i.e., with no guarantee of a vertex of at distance at least from it.

Figure 5: Convex polygon approximation; here , . is drawn in blue lines. is drawn in magenta lines. The angles are shaded (left side of figure): , , and so on.

Each side of is a chord or side of . A side of is said to be short if its length is at most and long otherwise. Write , where and are the number of short and long sides of , respectively.

Since , we have by the classic isoperimetric inequality. Since is a subpolygon of , we have by the triangle inequality; thus . This further implies that .

When scanning clockwise, let be a side of that is a nontrivial chord of ; let denote the angle made by the chord with the first clockwise edge of on the boundary of . By convexity, the angles corresponding to all nontrivial chords of that are edges in are pairwise non-overlapping if their apices are placed at a common point; see Fig. 5 (left). As such,

(1)

Recall that , for . Consider any short side that is a chord of ; we thus have

(2)

It follows from (1) and (2) that

Consequently,

To obtain we further subdivide each polygonal arc of spanned by edges of (with the possible exception of the last arc) as follows: the arc is subdivided at , that is, this vertex is included along with and into . Observe that has at most

vertices. (In particular, has at most vertices, if is sufficiently small.) In addition, by construction, ’s enlargement contains : recall that vertices in are iteratively chosen so that the corresponding arcs of are minimally breaking the inclusion property stated in the lemma, and so the subdivision of each arc described above will satisfy this property. In particular, each vertex of is at distance at most from the corresponding side of .

The case of a regular polygon shows that the bound is tight. Let be a regular -gon inscribed in a circle of unit radius, and be a subpolygon, such that every vertex of is at distance at most from the corresponding side of . Let be the center angle spanned by the longest edge of ; for simplicity, assume that the number of vertices of on the corresponding polygonal arc is odd (the other case is similar). The distance condition requires , which solves to . This implies that the number of vertices of is , as required. ∎

Remark.

If , i.e., is a suitable approximation as required in Lemma 2, then , and consequently,

Indeed, , from which the inclusion follows.

Assume now that is the unknown convex polygon OPT. Set . By convexity, contains exactly one point from each pair; as such, . The algorithm finds a subpolygon satisfying the property in Lemma 2 by generating all subpolygons with at most vertices. It does so by generating all subsets of at most segments; for a subset of segments, it goes through all possible endpoint selections (one point from each pair). The reason is that the shortest separating cycle of some endpoints (one point from each pair) may be an infeasible candidate for ; see Fig. 6, but generating shortest separating cycles for each choice of endpoints will yield a feasible candidate, as required by Lemma 2.

Figure 6: Left: a set of seven pairs with points in convex position. Right: the shortest separating cycle for the pairs , , (drawn in red) is an infeasible candidate, i.e., does not contain the optimal convex polygon . On the other hand, (drawn in blue) is a valid candidate.

Algorithm A1.

  • Step 1: Set . Generate all subsets of at most segments.

  • Step 2: For a subset of size , go through all endpoint selections (one point from each pair).

  • Step 3: For a subset of points as described above, if contains at least one point from each of the input pairs, keep one such point from each pair (if both points of a pair are enclosed, choose one arbitrarily); then compute the perimeter of the convex polygon made by these points, i.e., the length of the separating cycle. Otherwise skip this subset.

  • Step 4: Return the cycle of minimum length from among those computed in Step 3.

The running time of Algorithm A1 is determined by the number of candidates examined, namely

The algorithm correctness follows from Lemma 2; indeed, is contained in

namely the enlargement of one of the candidates that are generated. The length of the separating cycle that is returned is bounded from above by the perimeter of the enlargement. We employ the following standard fact.

Lemma 3.

Let be a planar convex body. Then .

Proof.

Let denote the width of in direction , i.e., the minimum width of a strip of parallel lines enclosing , whose lines are orthogonal to direction . According to Cauchy’s surface area formula [21, pp. 283–284], for any planar convex body , we have

(3)

Observe that the width of in direction is , for any . Using the stated formula we have

as required. ∎

By Lemma 3, the length of the separating cycle returned by Algorithm A1 is bounded from above (for sufficiently small) by

The required approximation follows by rescaling , and this completes the proof of Theorem 3.

4 Concluding remarks

Remark 1.

If the input is a set of pairs so that the corresponding graph is bipartite, it admits a separating cycle by Theorem 1. (If the corresponding graph is not bipartite, no separating cycle exists.) Similarly, if the input is a -colorable hypergraph, it admits a separating cycle. For illustration, we recall some common instances of -colorable hypergraphs. A hypergraph is called -uniform if all have . A random -coloring argument gives that any -uniform hypergraph with fewer than edges is -colorable [2, Ch. 1.3]; as such, by Theorem 1, it admits a separating cycle. Slightly better bounds have been recently obtained; see [2, Ch. 3.5]. Similarly, let be a hypergraph in which every edge has size at least and assume that every edge intersects at most other edges, i.e., the maximum degree in is at most . If (here is the base of the natural logarithm), then by the Lovász Local Lemma, can be -colored [2, Ch. 5.2] and so by Theorem 1, it admits a separating cycle; moreover, if a -coloring is given, it can be used to obtain a separating cycle. While testing for -colorability can be computationally expensive in a general setting (recall that hypergraph -colorability is NP-complete [14]), it can be always achieved in exponential time.

Remark 2.

Theorem 2 generalizes to -dimensional polyhedra. A polyhedron in -space is a simply connected solid bounded by piecewise linear -dimensional manifolds. The perimeter of a polyhedron is the total length of the edges of (as in [8]).

For part (i), a method similar to that used in the planar case can be used to construct a separating polyhedron in (or ). However, since computing minimum spanning trees in is more expensive [9, Ch. 9], we employ a slightly different approach (in particular, this approach is also applicable to the planar case). We may assume a coordinate system so that no pair of points have the same -coordinate. First, the points in are colored by red or blue as a result of the bipartiteness test, in time. The algorithm then computes a (spanning tree of the red points in the form of a) -monotone polygonal path spanning the red points; this step takes time. From , it then obtains a -monotone polygonal path spanning the red points and not incident to any blue point ( if no blue points are incident to edges of ); is constructed in time.

To this end, and all blue points are projected onto the plane. Let denote the projection function. Note that is -monotone and that the projection of a blue point can be incident to at most one edge of ; given , such an edge can be determined in time by binary search. Checking the projection points against corresponding edges of allows for testing whether the original edges of are incident to the respective blue points. Further, this test allows replacing each such edge with a two-segment polygonal path connecting the same pair of points and lying very close to the original segment, and so that is not incident to any other point; see Fig 7. Such a replacement can be executed in time per edge. Finally the algorithm computes a polyhedron of zero volume that contains ; as such, the polyhedron contains all red points but no blue points; this step takes time.

Figure 7: Replacing two edges of the -monotone path spanning the red points.

For part (ii), instead of a rectangle based on segment as an assumed diameter pair, the algorithm works with a rectangular box where is parallel to a side of the box and is incident to its center. The upper bound on the perimeter of the separating polyhedron follows from Few’s bound mentioned in the preliminaries: it is roughly three times the length of a shortest path (or tree) spanning the red points.

Theorem 4.

(i) Given a geometric graph in , a separating polyhedron (if it exists) can be found in time, where , . (ii) Further, a -approximation of a separating polyhedron of minimum perimeter can be found in polynomial time.

We offered a characterization of geometric hypergraphs that admit separating cycles and gave several approximation algorithms. We conclude with the following questions regarding the shortest separating cycle in the plane.

  1. Can the approximation factor for the general version of the problem be improved?

  2. Can sharper results be obtained for plane (noncrossing) geometric graphs? For the case of a plane matching?

  3. What is the computational complexity of the problem for matchings in convex position? Does the problem admit a polynomial-time algorithm?

Acknowledgment.

The author is grateful to an anonymous reviewer for his careful reading of the manuscript and pertinent remarks.

References

  • [1] N. Alon, Z. Füredi, and M. Katchalski, Separating pairs of points by standard boxes, European Journal of Combinatorics 6(3) (1985), 205–210.
  • [2] N. Alon and J. Spencer, The Probabilistic Method, 4th edition, Wiley, Tel Aviv and New York, 2015.
  • [3] E. Arkin, J. Gao, A. Hesterberg, J. S. B. Mitchell, and J. Zeng, The shortest separating cycle problem, Proc. 14th International Workshop on Approximation and Online Algorithms (WAOA 2016), vol. 10138 of Lecture Notes in Computer Science, 2016, pp. 1–13.
  • [4] E. M. Arkin, J. S. B. Mitchell and C. D. Piatko, Minimum-link watchman tours, Information Processing Letters 86 (2003), 203–207.
  • [5] M. de Berg, O. Cheong, M. van Kreveld, and M. Overmars, Computational Geometry: Algorithms and Applications, 3rd edition, Springer, 2008.
  • [6] S. Cabello and P. Giannopoulos, The complexity of separating points in the plane, Algorithmica 74(2) (2016), 643–663.
  • [7] G. Călinescu, A. Dumitrescu, H. Karloff, and P.-J. Wan, Separating points by axis-parallel lines, International Journal of Computational Geometry & Applications 15(6) (2005), 575–590.
  • [8] A. Dumitrescu and C. D. Tóth, Watchman tours for polygons with holes, Computational Geometry: Theory and Applications, 45 (2012), 326–333.
  • [9] D. Eppstein, Spanning trees and spanners, in J.-R. Sack and J. Urrutia (editors), Handbook of Computational Geometry, pages 425–461, Elsevier Science, Amsterdam, 2000.
  • [10] L. Fejes Tóth, Über einen geometrischen Satz, Mathematische Zeitschrift 46 (1940), 83–85.
  • [11] L. Few, The shortest path and shortest road through points, Mathematika 2 (1955), 141–144.
  • [12] R. Fleischer, K. Mehlhorn, G. Rote, E. Welzl, and C.-K. Yap, Simultaneous inner and outer approximation of shapes, Algorithmica 8(5-6) (1992), 365–389.
  • [13] R. Freimer, J.S.B. Mitchell, and C. Piatko, On the complexity of shattering using arrangements. Extended abstract in Proc. of the 2nd Canadian Conference on Computational Geometry (CCCG 1990), 1990, pp. 218–222. Technical Report 91-1197, Dept. of Comp. Sci., Cornell University, April, 1991.
  • [14] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H. Freeman and Co., New York, 1979.
  • [15] D. R. Gaur, T. Ibaraki, and R. Krishnamurti, Constant ratio approximation algorithm for the rectangle stabbing problem and the rectilinear partitioning problem, Journal of Algorithms 43 (2002), 138–152.
  • [16] R. Hassin and N. Megiddo, Approximation algorithms for hitting objects with straight lines, Discrete Applied Mathematics 30(1) (1991), 29–42.
  • [17] F. Hurtado, M. Noy, P. A. Ramos, and C. Seara, Separating objects in the plane with wedges and strips, Discrete Applied Mathematics 109 (2001), 109–138.
  • [18] D. Jungnickel, Graphs, Networks and Algorithms, Springer Verlag, Berlin, 1999.
  • [19] H. J. Karloff, How long can a Euclidean traveling salesman tour be? SIAM Journal on Discrete Mathematics 2 (1989), 91–99.
  • [20] J. S. B. Mitchell, Geometric shortest paths and network optimization, in J.-R. Sack and J. Urrutia (editors), Handbook of Computational Geometry, pages 633–701, Elsevier Science, Amsterdam, 2000.
  • [21] J. Pach and P. K. Agarwal, Combinatorial Geometry, John Wiley, New York, 1995.
  • [22] F. P. Preparata and M. I. Shamos, Computational Geometry, Springer-Verlag, New York, 1985.
  • [23] S. Smorodinsky, On the chromatic number of geometric hypergraphs, SIAM Journal on Discrete Mathematics 21(3) (2007), 676–687.
  • [24] D. Williamson and D. Shmoys, The Design of Approximation Algorithms, Cambridge University Press, 2011.