Generalized Sweeping Line Spanners

We present sweeping line graphs, a generalization of $\Theta$-graphs. We show that these graphs are spanners of the complete graph, as well as of the visibility graph when line segment constraints or polygonal obstacles are considered. Our proofs use general inductive arguments to make the step to the constrained setting. These same arguments could apply to other spanner constructions in the unconstrained setting, removing the need to find separate proofs that they are spanning in the constrained and polygonal obstacle settings.


Introduction
A geometric graph G is a graph whose vertices are points in the plane and whose edges are line segments between pairs of points.Every edge in the graph has weight equal to the Euclidean distance between its two endpoints.The distance between two vertices u and v in G, denoted by δ G (u, v), or simply δ(u, v) when G is clear from the context, is defined as the sum of the weights of the edges along the shortest path between u and v in G.A subgraph H of G is a t-spanner of G (for t ≥ 1) if for each pair of vertices u and v, δ H (u, v) ≤ t • δ G (u, v).The smallest t for which H is a t-spanner is the spanning ratio or stretch factor of H.The graph G is referred to as the underlying graph of H.The spanning properties of various geometric graphs have been studied extensively in the literature (see [9,16] for an overview).The spanning ratio of a class of graphs is the supremum over the spanning ratios of all members of that graph class.Since spanners preserve the lengths of all paths up to a factor of t, these graphs have applications in the context of geometric problems, including motion planning and optimizing network costs and delays.
We introduce a generalization of an existing geometric spanner (Θ-graphs) which we call sweeping line spanners.We show that these graphs are spanners, also when considering line segment obstacles or polygonal obstacles during its construction.We show this using a very general method that we conjecture applies to other geometric spanners as well, meaning that such proofs do not have to be reinvented for different spanner constructions.
Clarkson [12] and Keil [15] independently introduced Θ-graphs as follows: for each vertex u, we partition the plane into k disjoint cones with apex u.Each cone has aperture equal to θ = 2π k (see Figure 1) and the orientation of these cones is identical for every vertex.The Θ-graph is constructed by, for each cone with apex u, connecting u to the vertex v whose projection onto the bisector of the cone is closest to u (see Figure 2).When k cones are used, we denote the resulting Θ-graph by the Θ k -graph.We note that while Θ-graphs can be defined using an arbitrary line in the cone instead of the bisector (see Chapter 4 of [16]), the bisector is by far the most commonly used construction and the spanning ratios mentioned in the following paragraph only apply when the bisector is used in the construction process.Ruppert and Seidel [17] upperbounded the spanning ratio of these graphs (when there are at least 7 cones) by 1/(1 − 2 sin(θ/2)), when θ < π/3.Bonichon et al. [3] showed that the Θ 6 -graph has a tight spanning ratio of 2, i.e., it has a matching upper and lower bound of 2. Other recent results include a tight spanning ratio of 1 + 2 sin(θ/2) for Θ-graphs with 4m + 2 cones, where m ≥ 1 and integer, and improved upper bounds for the other families of Θ-graphs [5].When there are fewer than 6 cones, most inductive arguments break down.Hence, it was only recently that upper bounds on the spanning ratio of the Θ 5 -graph and the Θ 4 -graph were determined: 50 + 22 √ 5 ≈ 9.960 for the Θ 5 -graph [8] and [2].These bounds were recently improved to 5.70 for the Θ 5 -graph [7] and 17 for the Θ 4 -graph [4].Constructions similar to those demonstrated by El Molla [14] for Yao-graphs show that Θ-graphs with fewer than 4 cones are not spanners.In fact, until recently it was not known that the Θ 3 -graph is connected [1].
An alternative way of describing the Θ-graph construction is that for each cone with apex u, we visualize a line perpendicular to the bisector of the cone that sweeps outwards from the apex u.The Θ-graph is then constructed by connecting u to the first vertex v in the cone encountered by the sweeping line as it moves outwards from u (see Figure 3).The sweeping line graph generalizes this construction by allowing the sweeping line to be at an angle γ to the line perpendicular to the bisector of the cone (see Figure 4, a more precise definition follows in Section 2).When γ ∈ [0, π−3θ 2 ) we show that the resulting graph is a spanner whose spanning ratio depends only on θ and γ.We note that this angle γ implies that the line perpendicular to the sweeping line can be outside the cone associated with that sweeping line, which is not supported in the common Θ-graph (using bisectors) or the more general ones described in [16].For example, when 10 cones are used (i.e., θ = π/5) the construction in [16] allows for an angle up to θ/2 = π/10, while our construction allows the far larger value of 7π/20 and this difference increases as the number of cones increases (i.e., θ decreases).
Pushing the generalization of these graphs even further, we consider spanners in two more general settings by introducing line segment constraints and polygonal obstacles.Specifically, given a set P of points in the plane, let S be a set of line segments connecting pairs of vertices in P (not every vertex in P needs to be an endpoint of a constraint in S).We refer to S as line segment constraints, or simply constraints.The set of line segment constraints is planar, i.e. no two constraints intersect properly.Two vertices u and v can see each other if and only if either the line segment uv does not properly intersect any constraint or uv is itself a constraint.If two vertices u and v can see each other, the line segment uv is a visibility edge (this notion can be generalized to apply to arbitrary points that can see each other).The visibility graph of P with respect to a set of constraints S, denoted by V is(P, S), has P as vertex set and all visibility edges defined by vertices in P as edge set.In other words, it is the complete graph on P minus all edges that properly intersect one ore more constraints in S. The aim of this generalization is to construct a spanner of V is(P, S) such that no edge of the spanner properly intersects any constraint.In other words, to construct a spanner of V is(P, S).
Polygonal obstacles generalize the notion of line segment constraints by allowing the constraints to be simple polygons instead of line segments.In this situation, S is a finite set of simple polygonal obstacles where each corner of each obstacle is a vertex in V , such that no two obstacles intersect.We assume that each vertex is part of at most one polygonal obstacle and occurs at most once along its boundary, i.e., the obstacles are vertex-disjoint simple polygons.Note that V can also contain vertices that do not lie on the corners of the obstacles.The definitions of visibility edge and visibility graph are analogous to the ones for line segment constraints.
In the context of motion planning amid obstacles, Clarkson [12] showed how to construct a linear-sized (1 + )-spanner of V is(P, S).Subsequently, Das [13] showed how to construct a spanner of V is(P, S) with constant spanning ratio and constant degree.More recently, the constrained Θ 6 -graph was shown to be a 2-spanner of V is(P, S) [6] when considering line segment constraints.This result was recently generalized to polygonal obstacles [18].Most related to this paper is the result by Bose and van Renssen [10], who generalized the results from [5] to the setting with line segment constraints, without increasing the spanning ratios of the graphs.
In this paper, we examine the sweeping line graph in the setting without constraints (or the unconstrained setting), with line segment constraints (or the constrained setting), and with polygonal obstacles.First, we generalize the spanning proof of the Θ-graph given in the book by Narasimhan and Smid [16] to the sweeping line graph in the unconstrained setting.Next, we extend the proof to the constrained setting and finally apply it to the case of polygonal obstacles.In all three cases, we prove that the spanning ratio is upperbounded by . The most interesting aspect of our approach is that the step from the unconstrained to the constrained and polygonal obstacle settings is very general and could apply to other spanner constructions in the unconstrained setting as well, making it a step towards a general condition of which spanners in the unconstrained setting can be proven to be spanners in the presence of obstacles.

Preliminaries
Throughout this paper, the notation |pq| refers to the Euclidean distance between p and q.We also emphasize that a point can be any point in the plane, while a vertex is restricted to being one of the points in the point set P .
Before we formally define the sweeping line graph, we first need a few other notions.A cone is the region in the plane between two rays that emanate from the same point, called the apex of the cone.Let k ≥ 7 and define θ = 2π k .If we rotate the positive x-axis by angles i • θ, 0 ≤ i < k, then we get k rays.Each pair of consecutive rays defines a cone whose apex is at the origin.We denote the collection of these k cones by ζ k .Let C be a cone of ζ k .For any point p in the plane, we define C p to be the cone obtained by translating C such that its apex is at p.
Next, given an angle θ for a particular cone and an angle γ ∈ [0, π−3θ 2 ), we give the definition of the sweeping line: For any vertex x in a cone, let the sweeping line be the line through the vertex x that is at an angle of γ to the line perpendicular to the bisector of the cone.We then define x γ to be the intersection of the left-side of the cone and this sweeping line (see Figure 5).Finally, we define the sweeping line graph: Definition 1 (Sweeping line graph).Given a set of points P in the plane, an integer k ≥ 7, θ = 2π k , and γ ∈ [0, π−3θ 2 ).The sweeping line graph is defined as follows: 1.The vertices of the graph are the vertices of P .
2. For each vertex u of S and for each cone C of ζ k , such that the translated cone C u contains one or more vertices of P \ {u}, the spanner contains the undirected edge (u, r), where r is the vertex in C u ∩ S \ {u}, which minimizes |ur γ |.This vertex r is referred to as the closest vertex in this cone of u.In the remainder of the paper, we use |ur γ | when measuring the closeness between a vertex r and the apex u of a cone that contains it.
For ease of exposition, we only consider point sets in general position: no two vertices lie on a line parallel to one of the rays that define the cones, no two vertices lie on a line parallel to the sweeping line of any cone, and no three points are collinear.
Using the structure of the sweeping line graph, we define a simple algorithm called sweepingrouting to construct a path between any two vertices s and t.The name comes from the fact that this is also a 1-local routing algorithm on the sweeping line graph.Let t be the destination of the routing algorithm and let u be the current vertex (initially u = s).If there exists a direct edge to t, follow this edge.Otherwise, follow the edge to the closest vertex in the cone of u that contains t.
Lemma 4. Let a and b be positive reals and θ ∈ (0 Proof.By Lemma 3, we know that 0 < cos( and thus Using that (cos( θ 2 + γ) − sin θ) > 0 from Lemma 2, we obtain: Proof.To prove this, we show that cos Proof.We observe that cos( ) corresponds to the shifted cos κ function.To prove the lemma, we distinguish between two cases: Case 1: ) corresponds to translating cos κ to the right by θ 2 − γ.Therefore, for κ ∈ ( θ 2 − γ, θ] the function is decreasing, so we can apply an argument analogous to that in Case 1 to prove the result in this domain.

Main Geometric Lemma
Now that we have our auxiliary lemmas, we are ready to prove the main geometric lemma that we use throughout our later proofs.Lemma 8. Let k ≥ 7 be an integer, θ = 2π k , and γ ∈ [0, π−3θ 2 ).Let p and q be two distinct points in the plane and let C be the cone of ζ k such that q ∈ C p .Let r be a point in C p such that it is at least as close to p as q is to p. Then |rq| ≤ |pq| − (cos( θ 2 + γ) − sin θ)|pr|.
Proof.If r = q then the claims holds.We assume in the rest of the proof that r = q.Let be the line through p and q.Let s be the intersection of and the sweeping line through r.Let a and b be the intersection of the sweeping line through r with the left and right side of the cone respectively.Let x be the intersection of the right side of the cone and the line through a perpendicular to the bisector of the cone.Finally, let α be the angle between the segments pq and pr and let β be the angle between the segment pr and either the left or right side of the cone such that α and β do not overlap.We have 0 ≤ α, β ≤ θ and 0 ≤ α + β ≤ θ.We distinguish two cases depending on whether r lies to the left or right of .
An argument identical to that of Case 1 completes the proof of this case.

The Unconstrained Setting
Now that we have our tools ready, it is time to prove that the sweeping line graph is a spanner in the unconstrained setting.
Theorem Let k ≥ 7 be an integer, let θ = 2π k , and let γ ∈ [0, π−3θ 2 ).Then the sweeping line construction produces a t-spanner, where t = 1 cos( θ 2 +γ)−sin θ .Proof.Let u and w be two distinct vertices of P .We consider the path u = v 0 , v 1 , v 2 , ... that is constructed by the sweeping-routing algorithm.We start by showing that this path terminates at w. Let i ≥ 0 and assume that v i = w.Hence, vertex v i+1 exists.Consider the three vertices v i , v i+1 , and w.Let C be the cone such that w ∈ C u .By the construction of the sweeping line graph, v i+1 is at least as close to u as w is to u.Hence, by applying Lemma 8 followed by Lemma 2 we obtain: Hence, the vertices v 0 , v 1 , v 2 , ... on the path starting at v are pairwise distinct, as each vertex on this path lies strictly closer to w than any of its predecessors.Since the set P is finite, this implies that the algorithm terminates.Therefore, the algorithm constructs a path between u and w.
We now prove an upper bound on the length of this path.Let m be the index such that for each i such that 0 ≤ i < m.Therefore, the path between u and w has length completing the proof.
In addition to showing that the graph is a spanner, the above proof shows that the sweepingrouting algorithm constructs a bounded length path, thus we obtain a local competitive routing algorithm.
Corollary 10.Let k ≥ 7 be an integer, let θ = 2π k , and let γ ∈ [0, π−3θ 2 ).Then for any pair of vertices u and w the sweeping-routing algorithm produces a path from u to w of length at most

The Constrained Setting
Next, we generalize the sweeping line graph to a more general setting with the introduction of line segment constraints.Recall that is a set of points in the plane and that S is a set of line segments connecting two vertices in P (not every vertex in P needs to be an endpoint of a constraint in S).The set of constraints is planar, i.e. no two constraints intersect properly.
Let vertex u be an endpoint of a constraint c and let the other endpoint be v.Let C be the cone of ζ k such that v ∈ C u .The line through c splits C u into two subcones and for simplicity, we say that v is contained in both of these.In general, a vertex u can be an endpoint of several constraints and thus a cone can be split into several subcones.For ease of exposition, when a cone C u is not split, we consider C u itself to be a single subcone.We use C j u to denote the j-th subcone of C u .
Recall that for any vertex x in a cone, we defined x γ to be the intersection of the left-side of the cone and the sweeping line through x.We define the constrained sweeping line graph (see Figure 8): Definition 11 (Constrained sweeping line graph).Given a set of points P in the plane, a plane set S of line segment constraints connecting pairs of vertices in P , an integer k ≥ 7, θ = 2π k , and γ ∈ [0, π−3θ 2 ).The constrained sweeping line graph is defined as follows: 1.The vertices of the graph are the vertices of P .
2. For each vertex u of P and for each subcone C j u that contains one or more vertices of P \ {u} visible to u, the spanner contains the undirected edge (u, r), where r is the vertex in C j u ∩ P \ {u}, which is visible to u and minimizes |ur γ |.This vertex r is referred to as the closest visible vertex in this subcone of u.To prove that the above graph is a spanner, we need three lemmas.A proof of Lemma 12 can be found in [11].
Lemma 12. Let u, v, and w be three arbitrary points in the plane such that uw and vw are visibility edges and w is not the endpoint of a constraint intersecting the interior of triangle uvw.Then there exists a convex chain of visibility edges (different from the chain consisting of uw and wv) from u to v in triangle uvw, such that the polygon defined by uw, wv and the convex chain is empty and does not contain any constraints.Lemma 13.Let u and w be two distinct vertices in the constrained sweeping line graph such that uw is a visibility edge and let C the cone of ζ k such that w ∈ C u .Let v 0 be the closest visible vertex in the subcone of C u that contains w.Let be the line through u and w.Let s be the intersection of and the sweeping line through v 0 .Then v 0 s is a visibility edge.
Proof.We use a proof by contradiction (see Figure 9 for an example layout).Assume v 0 s is not a visibility edge.Then there must be a line segment constraint intersecting v 0 s.This implies that one of its endpoints lies in uv 0 s, as uw and uv 0 are visibility edges and thus the constraint cannot pass through them.
However, such an endpoint would imply that there exists a vertex that is visible to u and closer to u than v 0 (in particular the first vertex hit by the sweeping line starting from u), contradicting that v 0 is the closest visible vertex.Therefore, no constraint intersects v 0 s.u w v 0 γ s γ Figure 9: An example layout of p, q, v 0 , and s.
The following lemma ensures that we can apply induction later.Lemma 14.Let k ≥ 7 be an integer, let θ = 2π k , and let γ ∈ [0, π−3θ 2 ).Let u and w be two distinct vertices in the constrained sweeping line graph and let C be the cone of ζ k such that w ∈ C u .Let v 0 be a vertex in C u such that it is the closest visible vertex to u.Let be the line through uw and let s be the intersection of and the sweeping line through v 0 .Then |v 0 s| < |uw|, |sw| < |uw|, and |v 0 w| < |uw|.
Proof.Refer to Figure 9 for an example layout.
Next, since sw is contained in uw, it follows that |sw| < |uw|.
We are now ready to prove that the constrained sweeping line graph is a spanner of the visibility graph.
Theorem 15.Let k ≥ 7 be an integer, let θ = 2π k , and let γ ∈ [0, π−3θ 2 ).Let u and w be two distinct vertices in the plane that can see each other.There exists a path connecting u and w in the constrained sweeping line graph of length at most 1 cos( θ them.Our inductive hypothesis is the following: δ(u, w) ≤ 1 cos( θ 2 +γ)−sin θ |uw|, where u and w are two distinct vertices can see each other and δ(u, w) is the length of the shortest path between them in the constrained sweeping line graph.
Base case: In this case, u and w are the Euclidean closest visible pair.If there exists an edge between u and w, then δ(u, w) = |uw| ≤ 1 cos( θ 2 +γ)−sin θ |uw|, so the induction hypothesis holds.It remains to show that, indeed, there exists an edge between the Euclidean closest visible pair.We prove this using contradiction.Assume that there is no edge between u and w.Then there must exist a vertex v 0 in the subcone C j u that contains w that has an edge to u in the constrained sweeping line graph.Let be the line through uw.Let s be the intersection of and the sweeping line through v 0 .Note that sw is a visibility edge, due to uw being a visibility edge, and v 0 s is a visibility edge, by Lemma 13.Therefore, by applying Lemma 12, there exists a convex chain v 0 , v 1 , ..., v m−1 , v m = w of visibility edges from v 0 to w inside v 0 sw.
By applying Lemma 14 using u, w, and v 0 , we infer that all sides of v 0 sw have length less than the Euclidean distance between u and w.Since the convex chain is contained in this triangle, it follows that any pair of consecutive vertices along it has a smaller Euclidean distance than the Euclidean distance between u and w.This contradicts that uw is the closest Euclidean pair of visible vertices.
Induction step: We assume that the induction hypothesis holds for all pairs of vertices that can see each other and whose Euclidean distance is smaller than the Euclidean distance between u and w.
If uw is an edge in the constrained sweeping line graph, the induction hypothesis follows by the same argument as in the base case.If there is no edge between u and w, let v 0 be the closest visible vertex to u (using the sweeping line) in the subcone C j u that contains w.By construction, (u, v 0 ) is an edge of the graph.Let be the line passing through u and w.Let s be the intersection of and the sweeping line through v 0 (see Figure 9).By definition, δ(u, w) ≤ |uv 0 | + δ(v 0 , w).
We know that sw is a visibility edge, since uw is a visibility edge, and we know v 0 s is a visibility edge by Lemma 13.Therefore, by Lemma 12 there exists a convex chain v 0 , ..., v m = w of visibility edges inside v 0 sw connecting v 0 and w.Applying Lemma 14 to the points u, v 0 , and w, we infer that each side of v 0 sw has length smaller than |uw|.Therefore, we can apply induction to every visibility edge along the convex chain from v 0 to w, as each has length smaller than |uw|.Therefore, (|v 0 s| + |sw|) (using the fact that the chain is convex) Finally, we apply Lemma 8, using r = v 0 , q = s, and p = u.

Polygonal Obstacles
Finally, we generalize the result from the previous section to more complex obstacles.Recall that in this setting S is a finite set of polygonal obstacles where each corner of each obstacle is a vertex in P , such that no two obstacles intersect, and that each vertex is part of at most one polygonal obstacle and occurs at most once along its boundary.
As in the constrained setting, the line segment between two visible vertices is called a visibility edge and the visibility graph of a point set P and a set of polygonal obstacles S is the complete graph on P excluding all the edges that properly intersect some obstacle.Cones that are split are considered to be subcones of the original cone.Note that since S consists of vertex-disjoint simple polygons, a cone can be split into at most two subcones.
By focusing on the subcones, the polygonal-constrained sweeping line graph is defined analogously to the constrained sweeping line graph: for each subcone C j u of each vertex u, we add an undirected edge between u and the closest vertex in that subcone that can see u, where the distance is measured along the left side of the original cone of u (not the left side of the subcone).
We now introduce modifications to Lemmas 12 and 13 to make them suited for polygonal obstacles.A proof of Lemma 16 can be found in [18].Lemma 16.Let u, v, and w be three points where (w, u) and (u, v) are both visibility edges and u is not a vertex of any polygonal obstacle P where the open polygon P of P intersects wuv.The area A, bounded by (w, u), (u, v), and a convex chain formed by visibility edges between w and v inside wuv, does not contain any vertices and is not intersected by any obstacles.Lemma 17.Let u and w be two distinct vertices in the polygonal-constrained sweeping line graph such that uw is a visibility edge and let C be the cone of ζ k such that w ∈ C u .Let v 0 be the closest visible vertex in the subcone of C u that contains w.Let be the line through u and w.Let s be the intersection of and the sweeping line through v 0 .Then v 0 s is a visibility edge.
Proof.This proof is analogous to the proof of Lemma 13.
Using these two modified lemmas, we can prove that the polygonal-constrained sweeping line graph is a spanner of the visibility graph.
Theorem 18.Let k ≥ 7 be an integer, let θ = 2π k , and let γ ∈ [0, π−3θ 2 ).Let u and w be two distinct vertices in the plane that can see each other.There exists a path connecting u and w in the polygonal-constrained sweeping line graph of length at most 1 cos( θ

Conclusion
We showed that the sweeping line construction produces a spanner in the unconstrained, constrained, and polygonal constrained settings.These graphs are a generalization of Θ-graphs thus we also showed that every Θ-graph with at least 7 cones is a spanner in the presence of polygonal obstacles.We also note that the proof in the unconstrained case immediately implied a local routing algorithm with competitive ratio equal to (the current upper bound of) the spanning ratio.
Our proofs rely on Lemma 8, which bounds the length of the inductive part of our path.We conjecture that any proof strategy that uses induction must satisfy a condition similar to Lemma 8 in order to upper bound the spanning ratio.An analogous argument could then be applied to prove the construction to be a spanner in all three settings using the methods from this paper (i.e., finding a vertex v 0 satisfying the conditions of Lemmas 13 and 14).This would greatly simplify spanner construction for the constrained and polygonal obstacle settings, by putting the focus on the simpler unconstrained setting.In particular, we conjecture that the strategy described in this paper can be applied to generalize the known results for Yao-graphs.

Figure 1 :
Figure 1: The plane around u is split into 10 cones.

Figure 2 :
Figure 2: Vertex v is the vertex with the projection closest to u.

Figure 3 :Figure 4 :
Figure 3: The sweeping line of a cone in a Θ-graph.The sweeping line is a thick black segment inside the cone and grey dotted outside, as vertices outside the cone as ignored.

Figure 5 :
Figure 5: Defining the point x γ for any vertex x.

Figure 6 :
Figure 6: The points and angles defined for Case 1.

Figure 7 :
Figure 7: The points and angles defined for Case 2.

Figure 8 :
Figure 8: The edges in a cone of the constrained sweeping line graph.The thick red segment represents a constraint.The sweeping line of a subcone is a thick black segment inside the subcone and grey dotted outside, as vertices outside the subcone as ignored.