Fast query structures in anisotropic media

Size: px
Start display at page:

Download "Fast query structures in anisotropic media"

Transcription

1 Fast query structures in anisotropic media Radwa El Shawi 1,2 and Joachim Gudmundsson 1,2 1 School of Information Technology, University of Sydney 2 NICTA, Sydney, Australia. {radwa.elshawi,joachim.gudmundsson}@sydney.edu.au Abstract. We study the minimum cost path problem in an environment where the cost is direction-dependent (anisotropic). This problem arise in sailing, robotics, aircraft navigation, and routing of autonomous vehicles, where the cost is affected by the direction of waves, winds or slope of the terrain. We present an approximation algorithm to find a minimum cost path for a point robot moving in a planar subdivision, where each face is assigned a translational flow that reflects the cost of travelling within this face. In addition we consider the nearest neighbor problem in an anisotropic media that is given a planar subdivision together with a set Z of m sites, a query point q, find the nearest site in Z from q. Our main contribution is a data structure that given a subdivision with translational flows returns a (1 + )-approximate minimum cost path in the subdivision between any two query points in the plane. 1 Introduction The (geometric) shortest path problem is one of the fundamental problems studied in computer science. An important special case is to determine the minimum cost path between a source point x and a destination point t in a geometric environment. In many cases the environment is modelled as a triangular subdivision. Different metrics may be used in all faces of the subdivision to represent some additional mechanical constraints such as friction, flow or steepness. In this paper we assume that the problem is given as a planar triangular subdivision where each face r defined by the subdivision is assigned a translational flow defined by a vector f r. We will use the same notations and definitions as in [18]. That is, each face r is also assigned a non-negative real number b r giving the maximum Euclidean norm of the control velocity that the robot can apply within r. We define ρ r to be the ratio between b r and f r. Assume we are considering the movement of a robot. The robot is a point with a given initial position and also a given final position. Within each face r of the subdivision, the robot can apply, at each time τ and in any direction, a translational control velocity vector v(τ) of bounded Euclidean norm v(τ) = b r. NICTA is funded by the Australian Government as represented by the Department of Broadband, Communications and the Digital Economy and the Australian Research Council through the ICT Centre of Excellence program.

2 However, the actual velocity of the robot at time τ is given by the sum of its control velocity vector v(τ) and the translational flow velocity f r of region r, see Fig. 1. In this paper we focus on the flow path optimization problem [18] which aims to find an optimal path of movement of the robot from the initial to the final position of minimum cost (time duration). In addition we will also consider the nearest neighbor queries and its variant include the k nearest neighbor query. The flow path optimization problem has a wide range of applications (see also [18]), for example: Navigating a vessel on the ocean through regions with different currents. In particular finding a path with minimum fuel consumption from a source point to a destination point. Finding a quickest path on a terrain where going up or down affects the maximum speed. Finding a cheapest path (in terms of fuel consumption) for an aircraft moving through regions with different wind conditions. The direction-dependent structure of the problem results in an asymmetric cost function, where the cost of traversing a straight line segment ab, is not necessarily equal to that of a reversed link ba. Thus, the cost function is not a metric, consequently restricting the set of mathematical tools available to us. The second problem we consider is the nearest neighbor query. This problem is well studied in the literature, and its variant include the k-nearest neighbor query [5]. The nearest neighbor query in a anisotropic media is formally defined as follows. Given a query point q R 2, a set Z of m sites or service stations, and a planar triangular subdivision T. The problem is to find a closest site z Z q with minimum cost from q. 1.1 Previous work Optimal path planning problems have been studied for a long time. In the following we discuss the most relevant work and refer the interested reader to the survey by Mitchell [14]. In the weighted subdivision problem [15], a point robot moves within a planar subdivision, each face f of the subdivision is assigned a weight w > 0. The cost of a path within a face f is the length of this path multiplied by w. Let n denote the number of vertices of the triangular subdivision. The first approximation algorithm for the weighted subdivision problem was presented by Mitchell and Papadimitriou [15]. Their algorithm used a continuous Dijkstra method to find an optimal path between any source point and destination point. The complexity of their algorithm is O(n 8 M), where M is a function in several parameters including a parameter specifying the degree of the precision. In 1997 Mata and Mitchell [13] presented a (1+) approximation algorithm. The algorithm is based on constructing a relatively sparse graph, a pathnet, that links selected pairs of subdivision vertices (and critical points of entry ) with locally optimal paths. 2

3 The running time of this algorithm is O( n3 N 2 w max w min ), where N is the maximum coordinate of the vertices and w max (w min ) is the maximum (minimum) weight of a triangular region. Other algorithms for the weighted subdivision problem discretize the polygonal subdivision by placing Steiner points along the edges of the subdivision and then finding a minimum cost path in a graph whose nodes are Steiner points or vertices of the subdivision and whose edges are line segments. Then an optimal path is computed on the resulting graph. In particular, Lanthier et al. [12] presented a (1 + )-approximation algorithm based on uniform discretization for the polygonal regions which adds m = O(n 2 ) points on each edge and then they constructed a spanner graph in which they computed the approximate path. The time complexity of this algorithm is O( n3 log n), as the graph has O(n3 ) vertices and O(n 3 /) edges. This was later improved by Aleksandrov et al. [2] who proposed a logarithmic discretization scheme. The running time of their algorithm L is O(kn log kn), where k = O(log t r ) and L denotes the length of the longest edge in the subdivision. Here r is used to represent the minimum distance from w any point to the boundary of the regions adjacent to it and t = 1+ max w min sin(θ, min) where θ min is the minimum angle in the subdivision. In the above weighted subdivision model metrics are isotropic, while we in many cases would like to model anisotropic costs for example the effect of current, wind or any other types of forces. Only a handful papers considered the problem of finding the minimum cost path in anisotropic media. Papadakis and Perakis [17] gave heuristics for related problems such as minimal time vessel routing among ocean currents. Rowe [19] discussed optimal path planning for a mobile robot with direction dependent forces (friction and gravity) using a state space representation. However, no theoretical bounds were given in [19]. Reif and Sun [18] gave an approximation algorithm for the motion planning in the presence of uniform flows. The anisotropy was introduced as a uniform flow assigned to each face in the subdivision. Then, the actual velocity of an object is defined to be the sum of a flow vector and a control velocity. The complexity of their algorithm is O( n c skew ( c skew + log n) ), where C skew is defined as follows. Let λ = max{c f /c f : adjacent faces f and f }, where c f and c f are the maximum control velocities applied in regions f and f respectively. Then C skew = Θ( λ(wmin+1) θ ). min(w min 1) In 2008 Cheng et al. [8] considered the case when distances in each face of the subdivision are measured using a asymmetric convex function that has the following property: its unit disk contains a unit Euclidean disk, and is contained in a Euclidean disk with radius ρ. The running time of their algorithm is O( ρ2 n 3 log ρ log ρn 2 ). Note that this bound does not depend on any other parameters; in particular it does not depend on the minimum angle in the subdivision. For the shortest path query version one usually considers two settings. In the fixed source query version, the source is fixed and the query specifies the destination or vice versa. The second version is what is sometimes called the two-point query problem, the query specifies both the source and the destination. 3

4 In the case of the weighted region problem on polyhedral surfaces, Lanthier et al. [12] presented a data structure that can answer a two-point query in O(log n) time. However the approximation error is additive O(W L), where W is the maximum weight of the faces and L is the length of the longest edge in the surface. Aleksandrov et al. [1] presented improved results for answering fixed-source and two-point queries on weighted polyhedral surfaces of arbitrary genus. The result was recently improved again by Djidjev and Sommer [9]. They presented a data structure that answers (1 + )approximate distance queries using O( n log 2 n 3/2 ) log2 1 )) space, O( n log 3 n 2 log2 1 ) preprocessing time, and O( 1 log 1 + log log n) query time. Cheng et al. [8] presented a data structure to answer approximate shortest path queries from a fixed source in a planar subdivision. Distances in a face are measured using a possibly asymmetric convex distance function, and the convex distance functions can be different for different faces. Given a real number (0, 1), a (1 + )-approximate minimum cost query can be answered in O(log ρn ) time. The data structure can be constructed in O( ρ2 n 3 (log ρn 2 )2 ) time using O( ρ2 n 3 log ρn 2 ) space. To the best of our knowledge this paper presents the first (1+)-approximate for the two-point query problem in anisotropic regions and presents the first (1 + )-approximate for the nearest neighbor query problem. 1.2 Problem formulation In the following we describe the problem setting and the algorithm by Reif and Sun [18]. For any two points p, q R 2, we denote by pq the closed, oriented straight line segment from p to q. We denote by pq the Euclidean distance between p and q. And let τ(p, q) denote the minimum cost path between two points p and q in the Euclidean plane. We next show how to compute an optimal path from a source point u to a destination point u both lying inside a face r of the subdivision. Reif and Sun [18] showed that an optimal path is simple, piecewise linear and it only changes direction on the boundary between two faces. Let r = ABC be a triangular face with flow f r and let β = BAC, as shown in Fig. 1. Let u be a point on AB with distance d to A and let u be a point on AC with distance d to A. Let α be the angle between BA and f r and let θ be the angle u ua. For a robot to travel along a minimum cost path from a source point u to a destination point u, it needs to apply a control velocity v r with magnitude b r. Referring to Fig. 1 we can draw a virtual triangle uu u such that u uu = α θ, uu = τ(u, u ) f r and u u = τ(u, u ) b r. In the triangle uu u, the vector uu represents the transactional flow velocity, u u represents the control velocity of a robot in region r and uu represents the composite vector of the robot movement. The following lemma (refer to Fig. 1) describes how an optimal path is computed. Lemma 1 (Adapted from Lemma 1 in [18]). The face-wise optimal path from u to u can be achieved by adopting a control velocity with maximum magni- 4

5 C fr b r τ(u, u ) u φ u d B τ f r u α θ d β A Fig. 1. Illustrating the notations used in Lemma 1. tude b r and an angle of φ = arcsin( sin(α θ) ρ r ) from uu. Further, the cost τ(u, u ) l of this path is b r(cos φ+cos(α θ)/ρ, where l = r) uu = d 2 + d 2 2dd cos β. In this paper we make three contributions. First we show that a small modification to the algorithm by Reif and Sun [18] improves the running time of their algorithm by roughly a factor of c skew (Section 2). However, the main contribution of the paper is a data structure for the query version of the problem (Section 3). That is, preprocess the input such that an approximate minimum cost path between two query points x and t can be answered efficiently. The third contribution is an approximation algorithm to answer the nearest neighbor query (Section 4), that is given a subdivision with translational flows returns a (1 + ɛ)-approximate nearest site with minimum cost path. We conclude with some remarks and open problems in Section 5. 2 An efficient (1 + ) approximation algorithm We consider a simple improvement of Reif and Sun s [18] construction. In their paper they transform the geometric continuous problem into a graph problem on a directed graph G(V, E) as follows. Place Steiner points on the boundary of the triangular regions (this step will be described in more details below). The vertex set V of the graph G corresponds to the set of Steiner points plus the given start and endpoints, that is, for every Steiner point (or start and endpoint) p there is a vertex v p V. Sometimes we will abuse the notation and refer to v p as both a vertex in V and a Steiner point in the plane, or p as a Steiner point in the plane and a vertex in V. Two vertices v p and v q in V are connected by a directed edge of weight τ(p, q) if and only if p and q belong to the same face of the subdivision. Hence G has a quadratic number of edges. On the resulting graph, a minimum cost path is computed using Dijkstra s algorithm. The path was proven, in [18], to be an approximate shortest path. In order to reduce the complexity of the graph, we show how one can use the well-separated pair decomposition (WSPD) [2] to determine which pairs should 5

6 be connected. Thus instead of a quadratic number of edges only a linear number is needed, which results in an improvement of the running time. We show that there exists a path between v x and v t in G with cost (1 + γ) times the cost of an optimal path in G between v s and v t, where γ is a positive constant given as part of the input. u 1,2 u 1,j e v 1 v 2 u 1,1 u 1,j 1 u e Fig. 2. Adding Steiner points on a boundary edge. 2.1 Placing Steiner points To compute a γ-good path i.e., a path whose cost is at most (1 + γ) times the cost of an optimal path, we use the same logarithmic discretization schema used by Reif and Sun [18] to place Steiner point along the boundary segments of the subdivision. Note that if the robot is traveling on the shared boundary between two regions, it can be considered as traveling inside either region, whichever is more favorable; the robot can always move by an infinitesimal distance into that region, and then travel inside that region along the boundary before eventually moving back onto the boundary. Let τ min (u) denote the minimum cost of travelling along a straight line path between u on a boundary edge and any point on a boundary edge not incident to u. For any boundary edge e, let u e denote the point on the boundary edge e with maximum τ min (u). This discretization scheme places a higher number of Steiner points in the portions of e closer to the endpoints, and a smaller number of Steiner points in portions closer to u e. The intuition is that if a segment along an optimal path intersects an edge e at a point close to u e, the segment will be relatively long. Therefore, it is always possible to find an approximate segment (a segment connecting two Steiner points) that neighbours the optimal segment. Further, 6

7 the cost of this approximate segment is not more than (1 + γ) times the cost of an optimal segment. Next we describe in more detail how the Steiner points are placed on the boundary edges. For a more thorough description see [18]. Let b e be the lesser of the maximum composite velocities of a robot travelling in either direction on e. For any vertex v, we use R v to give a lower bound on the cost of travelling (on any possible path) between v and any point on a boundary edge not incident to v. For any boundary edge e = v 1 v 2, u e divides edge e into two segments v 1 u e and u e v 2, as shown in Fig. 2. The first Steiner point u i,1 is placed on segment v i u e with distance b e R vi γ to vertex v i. The subsequent Steiner point u i,j is placed between u i,j 1 and u e with a distance γb e τ min (u i,j 1 ) to u i,j 1. We continue adding Steiner points until no more Steiner point can be added on v i u e. That is, if u i,j is the last Steiner point added, no more Steiner point is inserted on segment v i u e if v i u i,j + γb e τ min (u i,j ) v i u e. Finally, we add u e as a Steiner point on e. Throughout this paper we use σ = c skew γ. Theorem 1 (Adapted from Theorem 5 in [18]). For the discretization scheme in [18], the total number of Steiner points added to the triangular subdivision is O(n σ log σ). 2.2 Constructing the graph Given a source point s, a destination point t, a positive real value, and a triangular subdivision T, we will show how to build a graph G = (V, E ). Consider the face r T containing s. Triangulate r into three (possibly degenerate) triangles with apex at s. Then place Steiner points in geometric progression along the boundary of the subdivision (as described in Section 2.1), including the three new edges. Once the Steiner points are placed, we can construct a weighted directed graph G = (V, E ). The vertex set V of the graph G corresponds to the set of Steiner points, that is, for every Steiner point (or start and endpoint) p there is a vertex v p V. Let G = (V, E) denote the graph constructed by Reif and Sun [18]. In this graph two vertices v p and v q in V are connected by a directed edge of weight τ(p, q) if and only if p and q belong to the same face of the subdivision. Hence G has a quadratic number of edges. Our aim is to construct a graph G that closely approximates the distance in G while only having a linear number of edges in each region. We will show how the WSPD [7] can help us to achieve the goal. Definition 1 ([7]). Let s > 0 be a real number, and let A and B be two finite sets of points in R d. We say that A and B are well-separated with respect to s, if there are two disjoint d-dimensional balls C A and C B, having the same radius, such that (i) C A contains the bounding box R(A) of A, (i) C B contains the bounding box R(B) of B, and (ii) the minimum distance between C A and C B is at least s times the radius of C A. The parameter s will be referred to as the separation constant. The next lemma follows easily from Definition 1. 7

8 Lemma 2 ([7]). Let A and B be two finite sets of points that are well-separated w.r.t. s, let x and p be points of A, and let y and q be points of B. Then (i) xy (1 + 2/s) xq, (i) xy (1 + 4/s) pq, and (ii) px (2/s) pq. Definition 2 ([7]). Let S be a set of n points in R d, and let s > 0 be a real number. A well-separated pair decomposition (WSPD) for S with respect to s is a sequence of pairs of non-empty subsets of S, (A 1, B 1 ),..., (A m, B m ), such that 1. A i B i =, for all i = 1,..., m, 2. for any two distinct points p and q of S, there is exactly one pair (A i, B i ) in the sequence, such that (i) p A i and q B i, or (ii) q A i and p B i, 3. A i and B i are well-separated w.r.t. s, for 1 i m. The integer m is called the size of the WSPD. Callahan and Kosaraju showed that a WSPD of size m = O(s d n) can be computed in O(s d n + n log n) time. u q u φ q x α φ p f r f r p α θ Fig. 3. Illustrating the proof of Lemma 3. The following lemma is straight-forward but included for completeness. Lemma 3. Let A and B be two finite sets of Steiner points that are wellseparated w.r.t. s and let x and p be points of A, and let q be a point of B (see figure 3). Then τ(x, p) 4 s τ(p, q) and τ(p, x) 4 s τ(p, q). Proof. Let u p be the control velocity applied to travel from x to p within the face r and let u q be the control velocity applied to travel from p to q within r. Let b r be the maximum Euclidean norm of the control velocity that the robot can apply within r. In the triangle xu p we have τ(x, p) = u p b r and τ(p, q) = u q b r. (1) From (1) we have τ(x, p) τ(p, q) = u p u q (2) 8

9 In the triangle pu q, u q is greater than u p which follows from the definition of ρ r (see section 1.2). From (1) and (2) we get τ(x, p) τ(p, q) 2 xp pq 4 s pq = 4 pq s thus τ(x, p) 4 τ(p, q). s This concludes the proof of the first part of the lemma. The second part can be shown using similar arguments. Let V j be the set of Steiner points along the boundary of face r j, 1 j m. For each face r j, compute a WSPD {(A i, B i )} k i=1 of V j with respect to a separation constant s = 32 γ. Next, construct the graph G = (V, E ), where E is constructed as follows. For each well-separated pair {(A i, B i )} in r j, pick two arbitrary points a A i and b B i as representative points. Add the directed edges (a j, b j ) and (b j, a j ) to E with weights τ(a j, b j ) and τ(b j, a j ) respectively. Lemma 4. The graph G has O(σn log σ) vertices and O(s d σn log σ) edges and can be built in O((s d σn log σ) log(σn log σ)) time. Proof. The graph G has O(σn log σ) vertices according to the discretization scheme used in [18]. The number of edges is linear with respect to the number of vertices. The WSPD can be computed in time O((s d σn log σ) log(σn log σ)). By simply running Dijkstra s algorithm [10], implemented using Fibonacci heaps, on G gives the following theorem. Theorem 2. A minimum cost path between s and t in G can be computed in O(s d (σn log σ) log(σn log σ)) time using O(σn log σ) space. Our algorithm improves the time complexity of the algorithm by Reif and Sun algorithm [18] by roughly a factor of c skew γ. The reason for the improvement is the use of the WSPD as it reduces the complexity of the number of edges from quadratic to linear within a region. 2.3 Bounding the approximation error Let G and G be the two graphs as described above. Recall that V is the set of Steiner points on the boundary of the subdivision and E is constructed by connecting every pair of Steiner points on the same face of the subdivision (including s and t). Also recall that E is constructed by connecting every pair of representative points in the WSPD in the same region. Here we analyze how well a shortest path in G approximates a shortest path in G from a given source point s to a given destination point t. Let P be an optimal path between s and t in the continuous space with cost of D(P) and let P 1 be a minimal cost path in G between v s and v t in V. Denote the cost of P 1 by D(P 1 ) and let S = {b 1, b 2,..., b m 1, b m } be the vertices visited by P 1 in order of occurrence. Let δ G (u, v) and δ G (u, v) denote be the cost of an optimal path in G and G, respectively, between two vertices u and v in V. The following theorem is adapted from Theorem 6 in [18]. 9

10 Theorem 3 (Adapted from Theorem 6 in [18]). For any piecewise linear path P from a source point s V to a destination point t V, there exist a discrete path P 1 from s to t in G such that D(P 1 ) (1 + γ) D(P). Consider each segment b i b i+1, 1 i < m, along P 1. Recall that b i, b i+1 must be vertices in V but they may not be connected by an edge in G. However, for every pair b i, b i+1 there exists a well-separated pair (A, B) such that a i, b i A, a i+1, b i+1 B and, a i and a i+1 are connected by a directed edge in G. In the next lemma we will show that for every segment along P 1 there exists a path in G between b i and b i+1 that is almost as good as the direct path between b i and b i+1. Lemma 5. Let v p and v q be any pair of vertices in V whose corresponding Steiner points p and q lie in the same face r, it holds that δ G (v p, v q ) ( s ) δ G (v p, v q ), where s > 16 is the separation constant of the WSPD. Proof. The proof is done by induction on the Euclidean distance between p and q. We know that there exists a well-separated pair (A, B) such that p A and q B, and that there exists an edge from v p to v q in G with p A and q B. If the separation constant for the WSPD is s then we have that pp 2 s p q and q q 2 s p q, which follows from Lemma 2. Base case: Assume that (p, q) is the closest pair of Steiner points. In this case there exists a well-separated pair {(A, B)} such that A = {p} and B = {q}, otherwise (p, q) could not be the closest pair. Hence the claim holds since p = p and q = q, thus, there must be an edge in G from v p to v q. Induction hypothesis: Assume that the lemma holds for all Steiner point pairs closer than pq to each other. Induction step: According to Lemma 2, pp < p q and q q < p q. According to the induction hypothesis there is a path δ G (v p, v p ) with cost at most (1 + 32/s) δ G (v p, v p ) and a path δ G (v q, v q ) with cost at most (1 + 32/s) δ G (v q, v q ). Also, recall that the cost of the edge (v p, v q) in G is δ G (v p, v q ) = τ(p, q ). We get: δ G (v p, v q ) δ G (v p, v p ) + δ G (v p, v q ) + δ G (v q, v q ) < (1 + 32/s) δ G (v p, v p ) + (δ G (v p, v p ) + δ G (v p, v q ) + δ G (v q, v q )) +(1 + 32/s) δ G (v q, v q ) (2 + 32/s) τ(p, p ) + τ(p, q) + (2 + 32/s) τ(q, q) 4/s (2 + 32/s) τ(p, q) + τ(p, q) + 4/s (2 + 32/s) τ(p, q) (1 + 16/s + 256/s 2 ) δ G (v p, v q ) < (1 + 32/s) δ G (v p, v q ) From Lemma 5, we can now establish the following theorem: Theorem 4. For any piecewise linear path P from a source point p V to a destination point q V, we have δ G (p, q) (1 + ) D(P). 10

11 Proof. m δ G (p, q) (1 + 32/s) δ G (b j, b j+1 ) j=1 = (1 + 32/s) δ G (p, q) (1 + 32/s)(1 + γ)d(p) By setting s = /32 and γ = /4 the theorem follows since < 1. 3 Shortest Path Queries In this section we turn our attention to the query version. We present a data structure that, given two query points x and t, and a positive real value, returns a path in T between x and t of cost at most (1 + ) times the cost of an optimal path between x and t. We will start with the simpler case, when t is already known in advance and we are only given the source point x and > 0 as part of the query. Then, in Section 3.3 we show how to generalize it to the general case. 3.1 The preprocessing and the query In this subsection we will present the data structure, describe the preprocessing and show how a query is answered. Preprocessing In the preprocessing step we need to build three data structures, denoted M, N and P. M[ ] : In Section 2.2 we showed how to build a graph G given a triangular subdivision and two points x and t. Build the same graph, again denoted G (V, E ), but without including the source point x. Then compute the minimum cost path in G, using Dijkstra s shortest path algorithm [10], from every vertex in V to t. Note that this can be done by a single call to Dijkstra s algorithm from t to all other vertices in V provided that the directions of all edges have been reversed. The costs are stored in a vector M, such that for a vertex v V the entry M[v] stores the cost of the minimum cost path in G from v to t. According to Lemma 4 the complexity of G is linear with respect to the number of vertices, thus it takes O(s d (σn log σ) log(σn log σ)) time and requires O(σn log σ) space to build M[ ] [10]. For reasons that will become clear below we set s = max{16, /64} and γ = /4. N r [, ] : The second structure is an angle restricted nearest neighbor querying structure for each face r in the subdivision. Let κ 9 be a constant (to be defined below) and let θ = 2π/κ. If we rotate the positive x-axis by iθ, 0 i < κ, then we get κ rays, denoted r 1,..., r κ. Each pair of successive rays r i and r i+1, 11

12 1 i < κ, defines a cone X i whose apex is at the origin. The cone obtained by translating X i such that its apex is at a point q is denoted X i (q). Given a set S of n points in the plane we build a data structure N[q, i] that given a query point q R 2 and an integer i, 0 i < κ, returns a point x of S within the cone X i (q) whose orthogonal projection onto the bisector of X i (q) is the smallest. It has been shown (see for example Section in [16] or Lemma 2 in [4]) that such a structure can be preprocessed in O(κn log n) time into a data structure of size O(κn) such that queries can be answered in O(log n) time. For our purposes we will set κ = 50/. P[ ] : Finally, the triangular subdivision is preprocessed for efficient point location queries as described in Chapter 6.1 in [3], which can be performed in time O(σn log σ) log(σn log σ)). That is, given a query point q the data structure P returns the triangle in the subdivision that contains q. Theorem 5. Given a positive constant, the preprocessing requires O(s d ( c skew n ) log( c skew n )) time and O( c skew n ) space. x s x θ s X i (x) Fig. 4. (a) Partitioning the plane into κ cones with apex at x. (b) Selecting the point within X i(x) whose orthogonal projection onto the bisector of X i(x) is the smallest. Query As a query we are given a point x in the plane. Perform a point location query P[x] to determine which face r contains x. If x and t lie in the same region or in adjacent regions, then the approximate path from x to t is the direct path between them and can be computed as in Section 1.2. Note that if x and t are neither in the same region nor in adjacent regions, then according to Lemma 14 in [18] the approximate path from x to t can not be the direct path (it must go through Steiner points) and in this case we do the following. For each i, 1 i < κ perform an angle constrained nearest neighbor query N r [x, i], as shown in Fig. 4. Consider a cone X i (x). We have two cases: (1) X i (x) contains a point of V, or (2) X i (x) is empty of Steiner points. 12

13 Recall that the data structure M stores the minimum cost path to t from every vertex in V. Thus, our task is to find a good vertex v p in V such that τ(x, p) + M[v p, t] approximates D(P). Case 1: For each non empty cone X i (x), 1 i < κ, let v(i) := N r [x, i], see Fig. 4. Next, compute the cost of the minimum cost path P i in G between v x and v t via v(i), that is, τ(x, v(i)) + M[v(i)]. Case 2: For each empty cone X i (x), 1 i < κ, let CB be a boundary edge of face r that intersects with X i (x), as shown in Fig. 5. Let r 1 be the region that shares a boundary edge CB with face r. Let c 1 and c 2 be the points of intersection between the two boundaries of X i (x) and CB, such that c 1 is closer, or as close, to x as c 2, as shown in Fig. 5. Note that c 1 and c 2 may or may not correspond to vertices in V. For each cone X i (c 1 ), 1 j < κ, let v(j) := N r [x, j]. Compute the cost of the minimum cost path in G between v x and v t via v(j), that is, τ(x, c 1 ) + τ(c 1, v(j))+m[v(j)]. The path of smallest cost among these paths is denoted P i,j, that is P i is the path that minimizes τ(x, c 1) + τ(c 1, v(j)) + M[v(j)] among all v(j). To conclude the query structure reports the path, denoted P, between x and t that has the minimum cost among all computed paths, that is, P is the path with the smallest cost among all paths P i, 1 i κ. The approximation bound and the query time will be proven in the next section. C D A b 1 c 1 x r X i r 1 b 4 a 2 a 1 c 2 b 2 b 3 B Fig. 5. Handling the case of the empty cone X i. 13

14 3.2 Approximation bound We establish the following lemma that provides a bound on the error of using a discrete path to approximate an optimal path. As mentioned earlier, we have two cases for the query either (1) the cone where the first edge along P lies in contains a Steiner point, or (2) the cone where the first edge along P lies in is empty. In the following we show that D(P ) (1 + ) D(P) for the two cases. C u u fr x 2 γ 2 x 1 x 3 B θ1 θ 2 γ 1 α x α θ 2 θ1 φ 2 φ 1 β A Fig. 6. Illustrating the notations in the proof of Lemma 6. Lemma 6. Let X i (x) be the cone where the first segment along P is contained. If X i (x) contains a Steiner point then the data structure returns a path P such that D(P ) (1 + ) D(P). Proof. We will prove the lemma by comparing the cost of P to the cost of a minimum cost path, denoted P 1, in G(V, E) similar to the proof of Lemma 5. We will need some notations to prove the lemma, see also Fig. 6 for an illustration. Let r = ABC be the triangular face containing the source point x. The flow in r is f r and it has a fixed maximum Euclidean norm b r. Let β = BAC and let xu be the first segment along P 1 and let xu be the first segment along P such that u and u lie in the cone X i (x). Let α be the angle between BA and fr, let θ 2 be the angle between BA and the ray containing xu and let θ 1 be the angle between BA and the ray containing xu. Let x 3 be the perpendicular projection of point u on xu if applicable. In the triangle xx 1 x 3 the vector x 1 x 3 represents the control velocity of a robot travelling from x to x 3 in region r. In the triangle xx 2 u the vector x 2 u represents the control velocity of a robot travelling from x to u within r. Let φ 1 = x 1 x 3 x and let φ 2 = x 2 u x. ). Let γ 1 = xx 1 u and γ 2 = xx 2 u. We have D(P 1 ) = τ(x, u )+δ G (u, t) and D(P ) = τ(x, u )+δ G (u, t). Since P is the path from u to t with the smallest cost we have (from Lemma 5 and According to Lemma 1, φ 1 = arcsin( sin(α θ1) ρ r ) and φ 2 = arcsin( sin(α θ2) ρ r 14

15 Theorem 4): D(P ) τ(x, u ) + τ(u, x 3 ) + τ(x 3, u ) + (1 + 32/s)... δ G (u, t) (3) Now we need to compare τ(x, u ) + τ(u, x 3 ) against τ(x, x 3 ). In the triangle xx 1 x 3 we have x 1 x 3 = τ(x, x 3 ) b r, hence and in xx 2 u we have From (4) and (5) we have τ(x, x 3 ) = x 1x 3 b r (4) τ(x, u ) = x 2u b r and τ(u, x 3 ) < u x 3 b r. (5) τ(x, u ) + τ(u, x 3 ) τ(x, x 3 ) < x 2u x 1 x 3 + u x 3 x 1 x 3 (6) In the following we will evaluate x2u x 1x 3 and u x 3 x 1x 3. First we bound u x 3 x 1x 3. Since ρ r > 1, as mentioned in Section 1.2, and ρ r = br f r, it follows that in xx 1x 3 we have x 1 x 3 > xx 1. Again we have x 1 x 3 > 1 2 xx 3 and hence: u x 3 x 1 x 3 < 2 u x 3 xx 3 (7) By applying Law of Sine on xu x 3, we get the following: u x 3 xx 3 = sin(θ 2 θ 1 ) cos(θ 2 θ 1 ). (8) From (7), (8) we have u x 3 x 1 x 3 < 2 sin(θ 2 θ 1 ) cos(θ 2 θ 1 ). (9) Now we will evaluate x2u x 1x 3. By applying Law of Sine on xx 1x 3, we get: x 1 x 3 = xx 3 sin(α θ 1). (10) sin(γ 1 ) Similarly, for xx 2 u, we can use Law of Sine to get the following equation: x 2 u = xu sin(α θ 2). (11) sin(γ 2 ) 15

16 From (10) and (11) we have x 2 u x 1 x 3 = xu xx 3 sin(α θ 2) sin(γ 1 ) sin(α θ 1 ) sin(γ 2 ). (12) In the right angle triangle xx 3 u, we have which together with (12) gives: From (6), (9) and (14) we get τ(x, u ) + τ(u, x 3 ) τ(x, x 3 ) xx 3 = xu cos(θ 2 θ 1 ) (13) x 2 u x 1 x 3 = sin(α θ 2 ) sin(γ 1 ) sin(α θ 1 ) cos(θ 2 θ 1 ) sin(γ 2 ). (14) < sin(α θ 2 ) sin(γ 1 ) sin(α θ 1 ) cos(θ 2 θ 1 ) sin(γ 2 ) +2 sin(θ 2 θ 1 ) cos(θ 2 θ 1 ). (15) The term 2 sin(θ2 θ1) cos(θ 2 θ 1) is less than which follows from the fact that the spanning angle θ sin(α θ = θ 2 θ 1 < 2π/κ and κ = 50/. In addition the term ( 2) sin(γ 1) sin(α θ ) 1) cos(θ 2 θ 1) sin(γ 2) 1, hence τ(x, u ) + τ(u, x 3 ) < (1 + /2) τ(x, x 3 ). (16) C x 4 φ 3 u A fr x 5 x x 3 1 α φ 1 x θ α 1 Fig. 7. Comparing τ(x, u ) versus τ(x, x 3) + τ(x 3, u ) B It remains to proof that τ(x, u ) = τ(x, x 3 ) + τ(x 3, u ). In xu x 5, the vector x 5 u represents the control velocity of a robot travelling from x to u (see Fig. 7). In triangle x 3 x 4 u, x 4 u represents the control velocity of a robot travelling from x 3 to u. Let φ 3 = x 5 u x. According to Lemma 1 φ 3 = arcsin( sin(α θ1) ρ r ). As shown in Fig. 7, τ(x, x 3 ) and τ(x 3, u ) lie on the same straight line, that 16

17 means that they share θ 1. Since φ is function in θ, then φ 1 = φ 3 as well, that means that x 1 x 3 and x 5 u are parallel and hence we have In the triangle x 3 x 4 u we have: From (17) and (18) we get: From (16) and (19) we get; From (3) and (20) we get: τ(x, x 3 ) = x 1x 3 b r = x 5x 4 b r. (17) τ(x 3, u ) = x 4u b r. (18) τ(x, x 3 ) + τ(x 3, u ) = τ(x, u ). (19) τ(x, u ) + τ(u, x 3 ) + τ(x 3, u ) (1 + /2) τ(x, u ). (20) D(P ) (1 + /2) τ(x, u ) + (1 + 16/s) δ G (u, t) < (1 + /2) D(P 1 ). (21) Putting together Theorem 3 and equation (21) we get D(P ) (1 + γ) (1 + /2) D(P ). And by putting γ = /4 we get D(P ) < (1 + ) D(P ). This finishes the proof. It remains to consider Case 2, if the cone where the first segment along P lies in is empty. Assume without loss of generality that b 1 and b 2 are the Steiner points closest to c 1 and c 2 respectively on the boundary edge CB as shown in Fig. 5. Let a 1,..., a m be the points along P where P bends. The following lemma is adapted from Lemma 14 in [18]. Recall that the construction of the set of Steiner points is described in Section 2.1. Lemma 7 (Adapted from Lemma 14 in [18]). Let r = BCD be a face containing a path segment a i a i+1 of an optimal path P. Assume that a i lies between two Steiner points b 1 and b 2 on the boundary edge CB and a i+1 lies between two Steiner points b 3 and b 4 on the boundary edge DB, as shown in Fig. 5. Recall that u e is the point on the boundary edge e with maximum τ min (u). Given a positive constant φ and a destination point t in V then, if b 1 lies between C and u e then τ(b 1, b 3 ) < (1 + φ) τ(a 1, a 2 ) and δ G (b 3, t) < (1 + φ) τ(a 2, t) otherwise τ(b 2, b 4 ) < (1 + φ) τ(a 1, a 2 ) and δ G (b 4, t) < (1 + φ) τ(a 2, t). Lemma 8. Let X i (x) be a cone that contains the first segment along P. If X i (x) is empty then there exists a path P in G such that D(P ) (1 + ) D(P). 17

18 Proof. According to the construction of P we have D(P ) = τ(x, c 1 )+τ(c 1, v(j))+ δ G (v(j), v t ) while the optimal path can be described as D(P) = τ(x, a 1 ) + τ(a 1, a 2 ) + τ(a 2, t). The proof is divided into parts. In the first part we prove that τ(x, c 1 ) (1+ ) τ(x, a 1 ) and in the second part we prove that τ(c 1, v(j))+δ G (v(j), v t ) (1+ ) (τ(a 1, a 2 ) + τ(a 2, t)). The first part can be proved using the same arguments used in Lemma 6 so we will omit it here. The second part can be proved as follows. Without loss of generality we assume that b 1 lies between C and u e, and using Lemma 7 we have: τ(b 1, b 3 ) < (1 + φ) τ(a 1, a 2 ) and δ G (v b3, v t ) < (1 + φ) τ(a 2, t). (22) Recall that to compute the second segment, denoted (c 1, v(j)), along P we partition the face r 1 into κ cones with apex at c 1. Then using the same arguments as in Lemma 6 together with (22), we can prove the following: τ(c 1, v(j)) < (1 + φ) τ(a 1, a 2 ). (23) From Lemma 7 and Theorem 4 we get: δ G (v b3, v t ) < (1 + ) τ(a 2, t). Using exactly the same argument we can prove that δ G (v b4, v t ) < (1 + ) τ(a 2, t), which also implies that δ G (v(j), v t ) < (1 + ) τ(a 2, t). (24) By setting φ = and then using (23) and (24) we get: τ(c 1, v(j)) + δ G (v(j), v t ) < (1 + ) (τ(a 1, a 2 ) + τ(a 2, t)) (25) Finally putting together the first and second part of the proof we obtain the desired result D(P ) (1 + ) D(P). Theorem 6. Given a planar triangular subdivision T of complexity n with a translational flow, a point t R 2 and a positive constant, one can preprocess T in O(( c skew n ) ) log( c skew n )) time using O(( c skew n ) ) space such that given a query point x R 2 a (1 + )-approximate minimum cost path between s and t can be calculated in O(1/ 2 log( c skew n )) time. 3.3 General case In this section we turn our attention to the general query version when we are given two query points s and t in R 2 and our goal is to find a minimum cost path between x and t. The idea is the same as in the previous section. That is we perform the exact same preprocessing steps as in the previous section (omitting the source point x and the destination point t), but with the exception that M contains all-pair shortest costs. Using Johnson s algorithm [11] the all-pairs shortest paths can be computed in O(s d ( c skew n O(( c skew n ) 2 ) space. 18 ) 2 ) log( c skew n )) using

19 The query is performed as in the previous section, however, for both x and t one needs to find a good next point along the path. That is, instead of only searching for a point in each cone X i (x), we also need to search for a good point in each X i (t) and then try all combinations of the two. This will add a factor of 1/ 2 to the bounds in Theorem 6. By putting together the results, we obtain the following theorem: Theorem 7. Given a planar triangular subdivision T of complexity n with a translational flow and a positive constant, one can preprocess T in time O(( c skew n ) 2 ) log( c skew n )) using O(( c skew n ) 2 ) space such that given two query points x and t a (1 + )-approximate minimum cost path between x and t can be calculated in O(1/ 4 log( c skew n )) time. 4 Nearest neighbor query In this section we show how the structure we presented in the previous section easily can be modified for other problems. We consider the nearest neighbor(nn) and the k-nearest neighbor. We show how the data structure in Section 3 can be modified to answer (1 + )-nearest neighbor queries in anisotropic media. That is, given a planar triangular subdivision T, a set Z of m sites and a constant > 0, preprocess T and Z into a data structure such that given a query point q R 2, a (1 + ɛ)- approximately nearest site in Z is returned. 4.1 Preprocessing and query The preprocessing is done in almost the same way as in Section 3.1 but with the exception that the graph differs slightly than in Section 3.1 as follows. First omit the source point s and then for every site z i Z, we do the following. Triangulate the face r containing the z i into three (possibly degenerate) triangles with apex at z i. Then place Steiner points in geometric progression along the boundary of the subdivision (as described in Section 2.1), including the three new edges. Once the Steiner points are placed, we can construct a weighted directed graph G = (V, E ). Then for every non cite vertex in V compute the minimum cost path in G to every cite vertex, using Dijkstra s shortest path algorithm [10]. Note that this can be done by calling Dijkstra s m times. Then for each non cite vertex store in matrix M the cost of the minimum cost path among the computed paths. The query is done in almost the same way as in Section 3.1. Note that the approximate nearest cite is τ(x, p) + M[v p ], where M[v p ] is the minimum cost of the path from v p to any site. Using the same arguments as in the proof of Theorem 6 we can conclude: Theorem 8. Given a planar triangular subdivision T of complexity n with a translational flow, a point t R 2 and a positive constant, one can preprocess T in O(m ( c skew n log( c skew ) + m) log( c skew n log( c skew ) + m)) time using O(( c skew n ) log( c skew ) + m) space such that given a query point x R 2 a 19

20 (1 + )-approximate minimum cost path between s and t can be calculated in O(1/ 2 log( c skew n + m)) time. The above approach can also be extended to the case when one wants to report the approximate k nearest neighbors. 4.2 Preprocessing and query The preprocessing is almost the same as done with the nearest neighbor query. The only difference is that for each non cite vertex p in G we store in matrix M 2 the minimum cost path to all cites ordered according to their closeness from p. This step can be done in O(m ( c skew n log( c skew )+m) log( c skew n log( c skew )+m)) time using O(( m c skew n ) log( c skew ) + m) space. The query is done in almost the same way as in Section 3.1. The only difference is instead of computing the path minimum cost path from a good vertex to a destination point t, we compute the minimum cost path from each good vertex to each site. Finally, sort all the computed paths with respect to their increasing distance from q. Finally report the k approximate nearest neighbors. Using the same arguments as in the proof of Theorem 6 we can conclude: Theorem 9. Given a planar triangular subdivision T of complexity n with a translational flow, a point t R 2 and a positive constant, one can preprocess T in O(m ( c skew n log( c skew ) + m) log( c skew n log( c skew ) + m)) time using O(( c skew n ) log( c skew ) + m) space such that given a query point x R 2 a (1 + )-approximate minimum cost path between s and t can be calculated in O(1/ 2 m(log( c skew n ) + m)) time. 5 Concluding Remarks We considered the problem of computing a minimum cost path in a subdivision with a translational flow. In the basic case we presented an algorithm that slightly improves the running time of the algorithm by Reif and Sun [18]. Our main contribution is an effective data structure for the query version of the problem. There are many open problems remaining. For example, can one develop a more efficient data structure that has a smaller dependency on the triangulation? We believe our construction can be generalized to higher dimensions, but at what cost? References 1. L. Aleksandrov, H. N. Djidjev, H. Guo, A. Maheshwari, D. Nussbaum and J. R. Sack. Algorithms for approximate shortest path queries on weighted polyhedral surfaces. Discrete and Computational Geometry, 44(4): , L. Aleksandrov, M. Lanthier, A. Maheshwari and J.-R. Sack. An epsilon- Approximation for Weighted Shortest Paths on Polyhedral Surfaces. In Proceedings of the 6th Scandinavian Workshop on Algorithm Theory,

21 3. M. de Berg, O. Cheong, M. van Kreveld and M. Overmars. Computational Geometry: Algorithms and Applications. (3rd edition). Springer-Verlag, Heidelberg, P. Bose, J. Gudmundsson and P. Morin. Ordered theta graphs. Computational geometry Theory & Applications, 28(1):11 18, N. Roussopoulos, S. Kelley, and F. Vincent. Nearest Neighbor Queries. In Proceedings of the ACM SIGMOD International Conference on Management of Data, 71-79, Z. Chen, H. Shen, X. Zhou and J. Yu. Monitoring path nearest neighbor in road networks. Proceedings of the ACM SIGMOD International Conference on Management of Data, , P. B. Callahan and S. R. Kosaraju. A decomposition of multidimensional point sets with applications to k-nearest-neighbors and n-body potential fields. Journal of the ACM, 42:67 90, S.-W. Cheng, H.-S. Na, A. Vigneron and Y. Wang. Approximate Shortest Paths in Anisotropic Regions. SIAM Journal on Computing, 38(3): , H. Djidjev and C. Sommer. Approximate Distance Queries for Weighted Polyhedral Surfaces. In Proceedings of the 19th Annual European Symposium on Algorithms, pages , E. W. Dijkstra. A note on two problems in connexion with graphs. Numerische Mathematik, 1: , D. B. Johnson Efficient algorithms for shortest paths in sparse networks. Journal of the ACM, 24(1):1-13, M. Lanthier, A. Maheshwari and J.-R. Sack. Approximating Shortest Paths on Weighted Polyhedral Surfaces. Algorithmica 30(4): , C. Mata and J. Mitchell. A New Algorithm for Computing Shortest Paths in Weighted Planar Subdivisions. In Proceedings of the 13th Symposium on Computational Geometry, , J. Mitchell. Geometric shortest paths and network optimization. Handbook of Computational Geometry, , J. Mitchell and C. Papadimitriou. The weighted region problem: Finding shortest paths through a weighted planar subdivision. Journal of the ACM, 38(1):18 73, G. Narasimhan and M. Smid Geometric Spanner Networks. Cambridge University Press, N. Papadakis and A. Perakis. Deterministic Minimal Time Vessel Routing. Journal of Operations Research, 38(3): , J. Reif and Z. Sun. Movement Planning in the Presence of Flows. Algorithmica, 39(2): , N. Rowe. Obtaining Optimal Mobile-Robot Paths with Nonsmooth Anisotropic Cost Functions Using Qualitative-State Reasoning. International Journal of Robotics Research, 16(3): ,

Improved algorithms for constructing fault-tolerant spanners

Improved algorithms for constructing fault-tolerant spanners Improved algorithms for constructing fault-tolerant spanners Christos Levcopoulos Giri Narasimhan Michiel Smid December 8, 2000 Abstract Let S be a set of n points in a metric space, and k a positive integer.

More information

Spanners of Complete k-partite Geometric Graphs

Spanners of Complete k-partite Geometric Graphs Spanners of Complete k-partite Geometric Graphs Prosenjit Bose Paz Carmi Mathieu Couture Anil Maheshwari Pat Morin Michiel Smid May 30, 008 Abstract We address the following problem: Given a complete k-partite

More information

Finding Shortest Path on Land Surface

Finding Shortest Path on Land Surface Finding Shortest Path on Land Surface Lian Liu, Raymond Chi-Wing Wong Hong Kong University of Science and Technology June 14th, 211 Introduction Land Surface Land surfaces are modeled as terrains A terrain

More information

An Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem

An Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem An Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem Ahmad Biniaz Anil Maheshwari Michiel Smid September 30, 2013 Abstract Let P and S be two disjoint sets of n and m points in the

More information

Applications of Geometric Spanner

Applications of Geometric Spanner Title: Name: Affil./Addr. 1: Affil./Addr. 2: Affil./Addr. 3: Keywords: SumOriWork: Applications of Geometric Spanner Networks Joachim Gudmundsson 1, Giri Narasimhan 2, Michiel Smid 3 School of Information

More information

arxiv: v1 [cs.cg] 4 Dec 2007

arxiv: v1 [cs.cg] 4 Dec 2007 Spanners of Complete k-partite Geometric Graphs Prosenjit Bose Paz Carmi Mathieu Couture Anil Maheshwari Pat Morin Michiel Smid November 6, 018 arxiv:071.0554v1 [cs.cg] 4 Dec 007 Abstract We address the

More information

An Approximation Algorithm for Shortest Descending Paths

An Approximation Algorithm for Shortest Descending Paths University of Waterloo Technical Report CS-2007-14 An Approximation Algorithm for Shortest Descending Paths Mustaq Ahmed and Anna Lubiw David R. Cheriton School of Computer Science University of Waterloo,

More information

Approximation algorithms for the bottleneck stretch factor problem

Approximation algorithms for the bottleneck stretch factor problem Approximation algorithms for the bottleneck stretch factor problem Giri Narasimhan Michiel Smid December 8, 2000 Abstract The stretch factor of a Euclidean graph is the maximum ratio of the distance in

More information

Approximating geometric bottleneck shortest paths

Approximating geometric bottleneck shortest paths Approximating geometric bottleneck shortest paths Prosenjit Bose Anil Maheshwari Giri Narasimhan Michiel Smid Norbert Zeh February 18, 2004 Abstract In a geometric bottleneck shortest path problem, we

More information

Monotone Paths in Geometric Triangulations

Monotone Paths in Geometric Triangulations Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation

More information

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem Chapter 8 Voronoi Diagrams 8.1 Post Oce Problem Suppose there are n post oces p 1,... p n in a city. Someone who is located at a position q within the city would like to know which post oce is closest

More information

The Geometry of Carpentry and Joinery

The Geometry of Carpentry and Joinery The Geometry of Carpentry and Joinery Pat Morin and Jason Morrison School of Computer Science, Carleton University, 115 Colonel By Drive Ottawa, Ontario, CANADA K1S 5B6 Abstract In this paper we propose

More information

Notes on Binary Dumbbell Trees

Notes on Binary Dumbbell Trees Notes on Binary Dumbbell Trees Michiel Smid March 23, 2012 Abstract Dumbbell trees were introduced in [1]. A detailed description of non-binary dumbbell trees appears in Chapter 11 of [3]. These notes

More information

Packing Two Disks into a Polygonal Environment

Packing Two Disks into a Polygonal Environment Packing Two Disks into a Polygonal Environment Prosenjit Bose, School of Computer Science, Carleton University. E-mail: jit@cs.carleton.ca Pat Morin, School of Computer Science, Carleton University. E-mail:

More information

Connected Components of Underlying Graphs of Halving Lines

Connected Components of Underlying Graphs of Halving Lines arxiv:1304.5658v1 [math.co] 20 Apr 2013 Connected Components of Underlying Graphs of Halving Lines Tanya Khovanova MIT November 5, 2018 Abstract Dai Yang MIT In this paper we discuss the connected components

More information

APPROXIMATING THE MAXMIN AND MINMAX AREA TRIANGULATIONS USING ANGULAR CONSTRAINTS. J. Mark Keil, Tzvetalin S. Vassilev

APPROXIMATING THE MAXMIN AND MINMAX AREA TRIANGULATIONS USING ANGULAR CONSTRAINTS. J. Mark Keil, Tzvetalin S. Vassilev Serdica J. Computing 4 00, 3 334 APPROXIMATING THE MAXMIN AND MINMAX AREA TRIANGULATIONS USING ANGULAR CONSTRAINTS J. Mark Keil, Tzvetalin S. Vassilev Abstract. We consider sets of points in the two-dimensional

More information

A Reduction of Conway s Thrackle Conjecture

A Reduction of Conway s Thrackle Conjecture A Reduction of Conway s Thrackle Conjecture Wei Li, Karen Daniels, and Konstantin Rybnikov Department of Computer Science and Department of Mathematical Sciences University of Massachusetts, Lowell 01854

More information

Computational Geometry

Computational Geometry Lecture 12: Lecture 12: Motivation: Terrains by interpolation To build a model of the terrain surface, we can start with a number of sample points where we know the height. Lecture 12: Motivation: Terrains

More information

arxiv: v1 [cs.cg] 8 Jan 2018

arxiv: v1 [cs.cg] 8 Jan 2018 Voronoi Diagrams for a Moderate-Sized Point-Set in a Simple Polygon Eunjin Oh Hee-Kap Ahn arxiv:1801.02292v1 [cs.cg] 8 Jan 2018 Abstract Given a set of sites in a simple polygon, a geodesic Voronoi diagram

More information

Lecture 3: Art Gallery Problems and Polygon Triangulation

Lecture 3: Art Gallery Problems and Polygon Triangulation EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified

More information

Computational Geometry

Computational Geometry Lecture 1: Introduction and convex hulls Geometry: points, lines,... Geometric objects Geometric relations Combinatorial complexity Computational geometry Plane (two-dimensional), R 2 Space (three-dimensional),

More information

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013 CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013 Reading: Today s materials is presented in part in Computational Geometry: Algorithms and Applications (3rd

More information

Ice-Creams and Wedge Graphs

Ice-Creams and Wedge Graphs Ice-Creams and Wedge Graphs Eyal Ackerman Tsachik Gelander Rom Pinchasi Abstract What is the minimum angle α > such that given any set of α-directional antennas (that is, antennas each of which can communicate

More information

CS 860 Fall Lecture 6. Anna Lubiw, U. Waterloo. one more paper on dynamic graphs (connectivity rather than shortest paths)

CS 860 Fall Lecture 6. Anna Lubiw, U. Waterloo. one more paper on dynamic graphs (connectivity rather than shortest paths) one more paper on dynamic graphs (connectivity rather than shortest paths) Efficient edge splitting-off algorithms maintaining all-pairs edge-connectivities LC Lau, CK Yung - Integer Programming and Combinatorial

More information

Lecture 15: The subspace topology, Closed sets

Lecture 15: The subspace topology, Closed sets Lecture 15: The subspace topology, Closed sets 1 The Subspace Topology Definition 1.1. Let (X, T) be a topological space with topology T. subset of X, the collection If Y is a T Y = {Y U U T} is a topology

More information

Parameterized Complexity of Independence and Domination on Geometric Graphs

Parameterized Complexity of Independence and Domination on Geometric Graphs Parameterized Complexity of Independence and Domination on Geometric Graphs Dániel Marx Institut für Informatik, Humboldt-Universität zu Berlin, Unter den Linden 6, 10099 Berlin, Germany. dmarx@informatik.hu-berlin.de

More information

Aggregate-Max Nearest Neighbor Searching in the Plane

Aggregate-Max Nearest Neighbor Searching in the Plane CCCG 2013, Waterloo, Ontario, August 8 10, 2013 Aggregate-Max Nearest Neighbor Searching in the Plane Haitao Wang Abstract We study the aggregate nearest neighbor searching for the Max operator in the

More information

Finding a minimum-sum dipolar spanning tree in R 3

Finding a minimum-sum dipolar spanning tree in R 3 Finding a minimum-sum dipolar spanning tree in R 3 Steven Bitner and Ovidiu Daescu Department of Computer Science University of Texas at Dallas Richardson, TX 75080, USA Abstract In this paper we consider

More information

1 Appendix to notes 2, on Hyperbolic geometry:

1 Appendix to notes 2, on Hyperbolic geometry: 1230, notes 3 1 Appendix to notes 2, on Hyperbolic geometry: The axioms of hyperbolic geometry are axioms 1-4 of Euclid, plus an alternative to axiom 5: Axiom 5-h: Given a line l and a point p not on l,

More information

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls 1/60 Geometric Algorithms Lecture 1: Introduction Convex Hulls Geometric algorithms scope 2/60 Geometry algorithms (practice): Study of geometric problems that arise in various applications and how algorithms

More information

arxiv: v2 [cs.cg] 24 Jul 2011

arxiv: v2 [cs.cg] 24 Jul 2011 Ice-Creams and Wedge Graphs Eyal Ackerman Tsachik Gelander Rom Pinchasi Abstract arxiv:116.855v2 [cs.cg] 24 Jul 211 What is the minimum angle α > such that given any set of α-directional antennas (that

More information

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality Planar Graphs In the first half of this book, we consider mostly planar graphs and their geometric representations, mostly in the plane. We start with a survey of basic results on planar graphs. This chapter

More information

Line Arrangement. Chapter 6

Line Arrangement. Chapter 6 Line Arrangement Chapter 6 Line Arrangement Problem: Given a set L of n lines in the plane, compute their arrangement which is a planar subdivision. Line Arrangements Problem: Given a set L of n lines

More information

3 School of Computer Science Carleton University, ON, Canada. School of Computer Science Carleton University,

3 School of Computer Science Carleton University, ON, Canada. School of Computer Science Carleton University, Title: Name: Affil./Addr. 1: Affil./Addr. 2: Affil./Addr. 3: Keywords: SumOriWork: Geometric Spanners Joachim Gudmundsson 1, Giri Narasimhan 2, Michiel Smid 3 School of Information Technologies, The University

More information

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994)

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994) Discrete Comput Geom 12:29-34 (1994) G 6i try 9 1994 Springer-Verlag New York Inc. On the Number of Minimal 1-Steiner Trees* B. Aronov, 1 M. Bern, 2 and D. Eppstein 3 Computer Science Department, Polytechnic

More information

On Computing the Centroid of the Vertices of an Arrangement and Related Problems

On Computing the Centroid of the Vertices of an Arrangement and Related Problems On Computing the Centroid of the Vertices of an Arrangement and Related Problems Deepak Ajwani, Saurabh Ray, Raimund Seidel, and Hans Raj Tiwary Max-Planck-Institut für Informatik, Saarbrücken, Germany

More information

A technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects

A technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects A technique for adding range restrictions to generalized searching problems Prosenjit Gupta Ravi Janardan y Michiel Smid z August 30, 1996 Abstract In a generalized searching problem, a set S of n colored

More information

Three Dimensional Geometry. Linear Programming

Three Dimensional Geometry. Linear Programming Three Dimensional Geometry Linear Programming A plane is determined uniquely if any one of the following is known: The normal to the plane and its distance from the origin is given, i.e. equation of a

More information

Rubber bands. Chapter Rubber band representation

Rubber bands. Chapter Rubber band representation Chapter 1 Rubber bands In the previous chapter, we already used the idea of looking at the graph geometrically, by placing its nodes on the line and replacing the edges by rubber bands. Since, however,

More information

Approximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks

Approximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks Approximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks Ambreen Shahnaz and Thomas Erlebach Department of Computer Science University of Leicester University Road, Leicester LE1

More information

Basics of Computational Geometry

Basics of Computational Geometry Basics of Computational Geometry Nadeem Mohsin October 12, 2013 1 Contents This handout covers the basic concepts of computational geometry. Rather than exhaustively covering all the algorithms, it deals

More information

Testing Euclidean Spanners

Testing Euclidean Spanners Testing Euclidean Spanners Frank Hellweg Melanie Schmidt Christian Sohler Department of Computer Science Technical University of Dortmund 44227 Dortmund, Germany Abstract In this paper we develop a property

More information

GEOMETRIC SEARCHING PART 1: POINT LOCATION

GEOMETRIC SEARCHING PART 1: POINT LOCATION GEOMETRIC SEARCHING PART 1: POINT LOCATION PETR FELKEL FEL CTU PRAGUE felkel@fel.cvut.cz https://cw.felk.cvut.cz/doku.php/courses/a4m39vg/start Based on [Berg] and [Mount] Version from 3.10.2014 Geometric

More information

arxiv: v1 [cs.cg] 24 Jul 2018

arxiv: v1 [cs.cg] 24 Jul 2018 Does a robot path have clearance c? Ovidiu Daescu and Hemant Malik University of Texas at Dallas, Richardson TX 75080, USA {daescu, malik}@utdallas.edu arxiv:1807.09392v1 [cs.cg] 24 Jul 2018 Abstract.

More information

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007 CS880: Approximations Algorithms Scribe: Chi Man Liu Lecturer: Shuchi Chawla Topic: Local Search: Max-Cut, Facility Location Date: 2/3/2007 In previous lectures we saw how dynamic programming could be

More information

On the perimeter of k pairwise disjoint convex bodies contained in a convex set in the plane

On the perimeter of k pairwise disjoint convex bodies contained in a convex set in the plane On the perimeter of k pairwise disjoint convex bodies contained in a convex set in the plane Rom Pinchasi August 2, 214 Abstract We prove the following isoperimetric inequality in R 2, conjectured by Glazyrin

More information

Preferred directions for resolving the non-uniqueness of Delaunay triangulations

Preferred directions for resolving the non-uniqueness of Delaunay triangulations Preferred directions for resolving the non-uniqueness of Delaunay triangulations Christopher Dyken and Michael S. Floater Abstract: This note proposes a simple rule to determine a unique triangulation

More information

Straight-Line Drawings of 2-Outerplanar Graphs on Two Curves

Straight-Line Drawings of 2-Outerplanar Graphs on Two Curves Straight-Line Drawings of 2-Outerplanar Graphs on Two Curves (Extended Abstract) Emilio Di Giacomo and Walter Didimo Università di Perugia ({digiacomo,didimo}@diei.unipg.it). Abstract. We study how to

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpenCourseWare http://ocw.mit.edu 6.854J / 18.415J Advanced Algorithms Fall 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advanced

More information

2 Geometry Solutions

2 Geometry Solutions 2 Geometry Solutions jacques@ucsd.edu Here is give problems and solutions in increasing order of difficulty. 2.1 Easier problems Problem 1. What is the minimum number of hyperplanar slices to make a d-dimensional

More information

Acute Triangulations of Polygons

Acute Triangulations of Polygons Europ. J. Combinatorics (2002) 23, 45 55 doi:10.1006/eujc.2001.0531 Available online at http://www.idealibrary.com on Acute Triangulations of Polygons H. MAEHARA We prove that every n-gon can be triangulated

More information

Sparse Hypercube 3-Spanners

Sparse Hypercube 3-Spanners Sparse Hypercube 3-Spanners W. Duckworth and M. Zito Department of Mathematics and Statistics, University of Melbourne, Parkville, Victoria 3052, Australia Department of Computer Science, University of

More information

Pebble Sets in Convex Polygons

Pebble Sets in Convex Polygons 2 1 Pebble Sets in Convex Polygons Kevin Iga, Randall Maddox June 15, 2005 Abstract Lukács and András posed the problem of showing the existence of a set of n 2 points in the interior of a convex n-gon

More information

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9.

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9. II.4 Surface Simplification 37 II.4 Surface Simplification In applications it is often necessary to simplify the data or its representation. One reason is measurement noise, which we would like to eliminate,

More information

Planar Point Location

Planar Point Location C.S. 252 Prof. Roberto Tamassia Computational Geometry Sem. II, 1992 1993 Lecture 04 Date: February 15, 1993 Scribe: John Bazik Planar Point Location 1 Introduction In range searching, a set of values,

More information

An Optimal Bound for the MST Algorithm to Compute Energy Efficient Broadcast Trees in Wireless Networks. Qassem Abu Ahmad February 10, 2008

An Optimal Bound for the MST Algorithm to Compute Energy Efficient Broadcast Trees in Wireless Networks. Qassem Abu Ahmad February 10, 2008 An Optimal Bound for the MST Algorithm to Compute Energy Efficient Broadcast Trees in Wireless Networks Qassem Abu Ahmad February 10, 2008 i Contents 1 Introduction 1 2 Main Results 2 3 An Optimal bound

More information

Optimal detection of intersections between convex polyhedra

Optimal detection of intersections between convex polyhedra 1 2 Optimal detection of intersections between convex polyhedra Luis Barba Stefan Langerman 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Abstract For a polyhedron P in R d, denote by P its combinatorial complexity,

More information

On Minimum Weight Pseudo-Triangulations

On Minimum Weight Pseudo-Triangulations On Minimum Weight Pseudo-Triangulations Oswin Aichholzer Franz Aurenhammer Thomas Hackl Bettina Speckmann Abstract In this note we discuss some structural properties of minimum weight pseudo-triangulations.

More information

Shape Modeling and Geometry Processing

Shape Modeling and Geometry Processing 252-0538-00L, Spring 2018 Shape Modeling and Geometry Processing Discrete Differential Geometry Differential Geometry Motivation Formalize geometric properties of shapes Roi Poranne # 2 Differential Geometry

More information

3. Voronoi Diagrams. 3.1 Definitions & Basic Properties. Examples :

3. Voronoi Diagrams. 3.1 Definitions & Basic Properties. Examples : 3. Voronoi Diagrams Examples : 1. Fire Observation Towers Imagine a vast forest containing a number of fire observation towers. Each ranger is responsible for extinguishing any fire closer to her tower

More information

Geometric Streaming Algorithms with a Sorting Primitive (TR CS )

Geometric Streaming Algorithms with a Sorting Primitive (TR CS ) Geometric Streaming Algorithms with a Sorting Primitive (TR CS-2007-17) Eric Y. Chen School of Computer Science University of Waterloo Waterloo, ON N2L 3G1, Canada, y28chen@cs.uwaterloo.ca Abstract. We

More information

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Technical Report UU-CS-2008-042 December 2008 Department of Information and Computing Sciences Utrecht

More information

Smallest Intersecting Circle for a Set of Polygons

Smallest Intersecting Circle for a Set of Polygons Smallest Intersecting Circle for a Set of Polygons Peter Otfried Joachim Christian Marc Esther René Michiel Antoine Alexander 31st August 2005 1 Introduction Motivated by automated label placement of groups

More information

Lecture 5: Duality Theory

Lecture 5: Duality Theory Lecture 5: Duality Theory Rajat Mittal IIT Kanpur The objective of this lecture note will be to learn duality theory of linear programming. We are planning to answer following questions. What are hyperplane

More information

On Covering a Graph Optimally with Induced Subgraphs

On Covering a Graph Optimally with Induced Subgraphs On Covering a Graph Optimally with Induced Subgraphs Shripad Thite April 1, 006 Abstract We consider the problem of covering a graph with a given number of induced subgraphs so that the maximum number

More information

Touring a Sequence of Line Segments in Polygonal Domain Fences

Touring a Sequence of Line Segments in Polygonal Domain Fences Touring a Sequence of Line Segments in Polygonal Domain Fences Amirhossein Mozafari mozafari@alum.sharif.edu Alireza Zarei zarei@sharif.edu Abstract In this paper, we consider the problem of touring a

More information

(Master Course) Mohammad Farshi Department of Computer Science, Yazd University. Yazd Univ. Computational Geometry.

(Master Course) Mohammad Farshi Department of Computer Science, Yazd University. Yazd Univ. Computational Geometry. 1 / 17 (Master Course) Mohammad Farshi Department of Computer Science, Yazd University 1392-1 2 / 17 : Mark de Berg, Otfried Cheong, Marc van Kreveld, Mark Overmars, Algorithms and Applications, 3rd Edition,

More information

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

Notes in Computational Geometry Voronoi Diagrams

Notes in Computational Geometry Voronoi Diagrams Notes in Computational Geometry Voronoi Diagrams Prof. Sandeep Sen and Prof. Amit Kumar Indian Institute of Technology, Delhi Voronoi Diagrams In this lecture, we study Voronoi Diagrams, also known as

More information

The angle measure at for example the vertex A is denoted by m A, or m BAC.

The angle measure at for example the vertex A is denoted by m A, or m BAC. MT 200 ourse notes on Geometry 5 2. Triangles and congruence of triangles 2.1. asic measurements. Three distinct lines, a, b and c, no two of which are parallel, form a triangle. That is, they divide the

More information

Computational Geometry

Computational Geometry Planar point location Point location Introduction Planar point location Strip-based structure Point location problem: Preprocess a planar subdivision such that for any query point q, the face of the subdivision

More information

Math 5593 Linear Programming Lecture Notes

Math 5593 Linear Programming Lecture Notes Math 5593 Linear Programming Lecture Notes Unit II: Theory & Foundations (Convex Analysis) University of Colorado Denver, Fall 2013 Topics 1 Convex Sets 1 1.1 Basic Properties (Luenberger-Ye Appendix B.1).........................

More information

Computing intersections in a set of line segments: the Bentley-Ottmann algorithm

Computing intersections in a set of line segments: the Bentley-Ottmann algorithm Computing intersections in a set of line segments: the Bentley-Ottmann algorithm Michiel Smid October 14, 2003 1 Introduction In these notes, we introduce a powerful technique for solving geometric problems.

More information

Lecture-12: Closed Sets

Lecture-12: Closed Sets and Its Examples Properties of Lecture-12: Dr. Department of Mathematics Lovely Professional University Punjab, India October 18, 2014 Outline Introduction and Its Examples Properties of 1 Introduction

More information

Minimum-Link Watchman Tours

Minimum-Link Watchman Tours Minimum-Link Watchman Tours Esther M. Arkin Joseph S. B. Mitchell Christine D. Piatko Abstract We consider the problem of computing a watchman route in a polygon with holes. We show that the problem of

More information

APPROXIMATING THE AVERAGE STRETCH FACTOR OF GEOMETRIC GRAPHS

APPROXIMATING THE AVERAGE STRETCH FACTOR OF GEOMETRIC GRAPHS APPROXIMATING THE AVERAGE STRETCH FACTOR OF GEOMETRIC GRAPHS Siu-Wing Cheng, Christian Knauer, Stefan Langerman, and Michiel Smid Abstract. Let G be a geometric graph whose vertex set S is a set of n points

More information

Mesh Generation through Delaunay Refinement

Mesh Generation through Delaunay Refinement Mesh Generation through Delaunay Refinement 3D Meshes Mariette Yvinec MPRI 2009-2010, C2-14-1, Lecture 4b ENSL Winter School, january 2010 Input : C : a 2D PLC in R 3 (piecewise linear complex) Ω : a bounded

More information

Computational Geometry Algorithmische Geometrie

Computational Geometry Algorithmische Geometrie Algorithmische Geometrie Panos Giannopoulos Wolfgang Mulzer Lena Schlipf AG TI SS 2013 !! Register in Campus Management!! Outline What you need to know (before taking this course) What is the course about?

More information

Distance Preserving Terrain Simplification An Experimental Study

Distance Preserving Terrain Simplification An Experimental Study Distance Preserving Terrain Simplification An Experimental Study Boaz Ben-Moshe 1 Matthew J. Katz 2 Igor Zaslavsky 2 1 Department of Computer Science College of Judea and Samaria, Ariel 44837, Israel benmo@yosh.ac.il

More information

Minimum Bounding Boxes for Regular Cross-Polytopes

Minimum Bounding Boxes for Regular Cross-Polytopes Minimum Bounding Boxes for Regular Cross-Polytopes Salman Shahid Michigan State University shahids1@cse.msu.edu Dr. Sakti Pramanik Michigan State University pramanik@cse.msu.edu Dr. Charles B. Owen Michigan

More information

Flexible Coloring. Xiaozhou Li a, Atri Rudra b, Ram Swaminathan a. Abstract

Flexible Coloring. Xiaozhou Li a, Atri Rudra b, Ram Swaminathan a. Abstract Flexible Coloring Xiaozhou Li a, Atri Rudra b, Ram Swaminathan a a firstname.lastname@hp.com, HP Labs, 1501 Page Mill Road, Palo Alto, CA 94304 b atri@buffalo.edu, Computer Sc. & Engg. dept., SUNY Buffalo,

More information

Generalized barycentric coordinates

Generalized barycentric coordinates Generalized barycentric coordinates Michael S. Floater August 20, 2012 In this lecture, we review the definitions and properties of barycentric coordinates on triangles, and study generalizations to convex,

More information

Min-Cost Multicast Networks in Euclidean Space

Min-Cost Multicast Networks in Euclidean Space Min-Cost Multicast Networks in Euclidean Space Xunrui Yin, Yan Wang, Xin Wang, Xiangyang Xue School of Computer Science Fudan University {09110240030,11110240029,xinw,xyxue}@fudan.edu.cn Zongpeng Li Dept.

More information

Testing Euclidean Minimum Spanning Trees in the Plane

Testing Euclidean Minimum Spanning Trees in the Plane Testing Euclidean Minimum Spanning Trees in the Plane Artur Czumaj Christian Sohler Department of Computer Science Heinz Nixdorf Institute University of Warwick Computer Science Department Coventry CV4

More information

all the vertices). between u and v in the subgraph is at most t necessary to endow them with additional properties,

all the vertices). between u and v in the subgraph is at most t necessary to endow them with additional properties, The Visibility Graph Contains a Bounded-Degree Spanner Gautam Das Abstract Given a collection of polygonal obstacles with n vertices on the place, and any t > 1, we present an O(n log n) time algorithm

More information

Optimal Region for Binary Search Tree, Rotation and Polytope

Optimal Region for Binary Search Tree, Rotation and Polytope Optimal Region for Binary Search Tree, Rotation and Polytope Kensuke Onishi Mamoru Hoshi 2 Department of Mathematical Sciences, School of Science Tokai University, 7 Kitakaname, Hiratsuka, Kanagawa, 259-292,

More information

Byzantine Consensus in Directed Graphs

Byzantine Consensus in Directed Graphs Byzantine Consensus in Directed Graphs Lewis Tseng 1,3, and Nitin Vaidya 2,3 1 Department of Computer Science, 2 Department of Electrical and Computer Engineering, and 3 Coordinated Science Laboratory

More information

Approximate Shortest Routes for Frontier Visibility under Limited Visibility

Approximate Shortest Routes for Frontier Visibility under Limited Visibility Approximate Shortest Routes for Frontier Visibility under Limited Visibility Xia Chen 1, Fajie Li 1, and Reinhard Klette 2 1 College of Computer Science and Technology, Huaqiao University Xiamen, Fujian,

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra Apex graphs with embeddings of face-width three Bojan Mohar Department of Mathematics University of Ljubljana Jadranska 19, 61111 Ljubljana Slovenia bojan.mohar@uni-lj.si Abstract Aa apex graph is a graph

More information

EXTREME POINTS AND AFFINE EQUIVALENCE

EXTREME POINTS AND AFFINE EQUIVALENCE EXTREME POINTS AND AFFINE EQUIVALENCE The purpose of this note is to use the notions of extreme points and affine transformations which are studied in the file affine-convex.pdf to prove that certain standard

More information

Parallel and perspective projections such as used in representing 3d images.

Parallel and perspective projections such as used in representing 3d images. Chapter 5 Rotations and projections In this chapter we discuss Rotations Parallel and perspective projections such as used in representing 3d images. Using coordinates and matrices, parallel projections

More information

In what follows, we will focus on Voronoi diagrams in Euclidean space. Later, we will generalize to other distance spaces.

In what follows, we will focus on Voronoi diagrams in Euclidean space. Later, we will generalize to other distance spaces. Voronoi Diagrams 4 A city builds a set of post offices, and now needs to determine which houses will be served by which office. It would be wasteful for a postman to go out of their way to make a delivery

More information

Wolfgang Mulzer Institut für Informatik. Planar Delaunay Triangulations and Proximity Structures

Wolfgang Mulzer Institut für Informatik. Planar Delaunay Triangulations and Proximity Structures Wolfgang Mulzer Institut für Informatik Planar Delaunay Triangulations and Proximity Structures Proximity Structures Given: a set P of n points in the plane proximity structure: a structure that encodes

More information

Gergonne and Nagel Points for Simplices in the n-dimensional Space

Gergonne and Nagel Points for Simplices in the n-dimensional Space Journal for Geometry and Graphics Volume 4 (2000), No. 2, 119 127. Gergonne and Nagel Points for Simplices in the n-dimensional Space Edwin Koźniewsi 1, Renata A. Górsa 2 1 Institute of Civil Engineering,

More information

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Abstract We present two parameterized algorithms for the Minimum Fill-In problem, also known as Chordal

More information

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example).

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example). 98 CHAPTER 3. PROPERTIES OF CONVEX SETS: A GLIMPSE 3.2 Separation Theorems It seems intuitively rather obvious that if A and B are two nonempty disjoint convex sets in A 2, then there is a line, H, separating

More information

Discharging and reducible configurations

Discharging and reducible configurations Discharging and reducible configurations Zdeněk Dvořák March 24, 2018 Suppose we want to show that graphs from some hereditary class G are k- colorable. Clearly, we can restrict our attention to graphs

More information

d(γ(a i 1 ), γ(a i )) i=1

d(γ(a i 1 ), γ(a i )) i=1 Marli C. Wang Hyperbolic Geometry Hyperbolic surfaces A hyperbolic surface is a metric space with some additional properties: it has the shortest length property and every point has an open neighborhood

More information