CG:YRF, Chapel Hill, NC, USA, June 16-20, 2012 Beacon-based structures in polygonal domains Michael Biro∗ Jie Gao† Justin Iwerks∗ Abstract We consider beacon-based point-to-point routing and coverage problems motivated by sensor-network applications. A beacon b is a point that can be activated to effect a ‘gravitational pull’ toward itself everywhere in a polygonal domain P . We demonstrate polynomial-time algorithms to compute the attraction region of a beacon, the inverse attraction region of a point and a connected polygonal region, and the beacon kernel of a polygon. We establish a polynomial-time algorithm for routing from a point s to a point t using a discrete set of candidate beacons, as well as a 2-approximation and a PTAS for routing between unrestricted beacons placed in P . 1 Introduction The model of beacon-based routing in this paper is an analog of geographical greedy routing in sensor networks. In geographical routing [3, 6], each node is given a Euclidean coordinate and a message is delivered to the neighbor with minimum Euclidean distance to the destination. When sensor distribution is very dense (i.e., close to infinity), geographical routing will always follow the straight line toward the destination, or, when the message hits the network boundary, may follow a boundary edge to greedily minimize the distance to the destination. This is precisely the model of beacon based routing in this paper, with the destination as a beacon. Our model is also related to a family of routing schemes in sensor networks that use landmarks [4, 5, 7]. Here, a subset of nodes, called landmarks, first flood the network such that each node records the distance to each landmark. For routing toward a destination, a function based on the distance vector to the landmarks is used to select the next hop. The one most similar to our model is adopted in [7], where the message is routed toward one landmark until the current node is an equal distance away from the landmark as the destination. At this point, a new landmark is selected. We examine the algorithmic structures for determining landmark placement in order to support this type of routing. ∗ Department of Applied Mathematics and Statistics, Stony Brook University, mbiro@ams.stonybrook.edu, jiwerks@ams.stonybrook.edu, jsbm@ams.stonybrook.edu † Department of Computer Science, Stony Brook University, jgao@cs.stonybrook.edu, ikost@cs.stonybrook.edu Irina Kostitsyna† Joseph S. B. Mitchell∗ In our model [2], a beacon can occupy a point location on the interior or the boundary of P , ∂P . When a beacon is activated, all points p ∈ P move along straight lines toward b until they either reach b or make contact with ∂P . If contact is made with ∂P , p will follow along ∂P as long as its straight line distance to b decreases monotonically. p may alternate between moving in a straight line path toward b on the interior of P and following along ∂P . If p is unable to move so that its distance to b decreases monotonically, we say p is ‘stuck’ and has reached a local minimum or dead point on ∂P (see Figure 1). If p reaches b we say that b attracts p. Two points are routed if there is a sequence of beacons that can be activated and then deactivated, one at a time in order, such that a point beginning at a source s would visit each beacon in the sequence after it is activated and terminate at a destination t, which we always assume to be a beacon itself. x y b Figure 1: x and y are dead points with respect to the beacon b. 2 Our Results The first problem we consider is computing, for a given beacon b, the subset of the polygon P that b attracts. This is called the attraction region of b, A(b). To compute A(b) we find the split vertices of the polygon P , which are reflex vertices of P that may contribute an edge to the boundary of the attraction region. These split edges have one endpoint at a split vertex v and the other at the first intersection with ∂P of the ray cen→ − tered at v in the direction bv. Split edges, along with This is an abstract of a presentation given at CG:YRF 2012. It has been made public for the benefit of the community and should be considered a preprint rather than a formally reviewed paper. Thus, this work is expected to appear in a conference with formal proceedings and/or in a journal. 1st Computational Geometry Young Researchers Forum, 2012 edges and pieces of edges of P , form the boundary of the attraction region of b [1]. The attraction region algorithms use a triangulation of P to compute the split edges that form the boundary of the attraction region. If we begin at a vertex of A(b) and traverse the boundary of P , following along split edges when encountered, we obtain the attraction region of b. gives a 2-approximation to the minimum beacon path in P in time O(n3 ). This approach can be iterated into a PTAS for minimum beacon paths. Theorem 1 The attraction region of a beacon b in a simple polygon P with n vertices can be computed in O(n) time. The attraction region of a beacon b in a polygon P with n vertices and h holes can be computed in time O(nh + n log n). Theorem 5 The beacon kernel of a polygon P can be computed in time O(n2 ). Using this attraction-region algorithm, we find a minimum beacon path between two points s, t, where beacons are chosen from a discrete set of m candidates. A minimum beacon path from s to t is the smallest possible collection of points b1 , b2 , . . . , bk in P with the property that b1 attracts s, bi+1 attracts bi for i = 1, . . . , k − 1, and t attracts bk . The algorithm constructs a digraph G whose vertices are the candidate locations and which has the edge (u, v) if u ∈ A(v). The minimum beacon path is then given by the shortest s−t path in G. Theorem 2 A minimum beacon path from s to t, chosen from a set of m candidate locations in a polygon P , can be found in time O(mn + m2 ) for simple polygons, and O(mnh + m2 log h) for polygons with holes. Next, we compute, for a given point p in a simple polygon P , the beacon locations that attract p. This subset of P is called the inverse attraction region of p, IA(p). To find the inverse attraction region, build an arrangement of lines given by edge extensions, perpendiculars to reflex vertex edges, and lines from p through the vertices of P . IA(p) is a subset of the faces of this arrangement. Expanding on this, we compute the inverse attraction region of a connected polygonal region R, |R| = m, by building a similar arrangement with mn lines through all vertices of R and P [1]. Theorem 3 The inverse attraction region of a point p in a polygon P with n vertices can be computed in O(n2 ) time. Furthermore, the inverse attraction region of a connected polygonal region R, |R| = m, in P can be computed in time O(m2 n2 ). Using this algorithm we can approximate a minimum beacon path by building an inverse attraction graph on a triangulation and then placing two beacons for every vertex on the shortest s − t path in the graph. Theorem 4 Doubling the shortest path in the inverse attraction graph of a triangulation of the polygon P Using the arrangement from the inverse attraction region algorithm, we can also find the beacon kernel of a polygon P , i.e., all beacons b that attract the entire polygon. 3 Conclusion We have developed several algorithms to compute structures to aid in beacon routing. Using these algorithms we can approximate minimum beacon paths for general beacons and find exact paths for discrete beacon sets in polynomial time. Future work will attempt to find an exact algorithm for computing a minimum beacon path in polynomial time or show that finding a minimum beacon path is NP-hard. References [1] M. Biro, J. Gao, J. Iwerks, I. Kostitsyna, J. S. B. Mitchell. Beacon-based structures in polygonal domains. Technical Report, 2012. [2] M. Biro, J. Gao, J. Iwerks, I. Kostitsyna, J. S. B. Mitchell. Beacon based routing and coverage. 21st Fall Workshop on Computational Geometry, 2011. [3] P. Bose, P. Morin, I. Stojmenovic, J. Urritia. Routing with guaranteed delivery in ad hoc wireless networks. Wireless Networks, 7(6):609–616, 2001. [4] Q. Fang, J. Gao, L. Guibas, V. de Silva, L. Zhang. GLIDER: Gradient landmark-based distributed routing for sensor networks. Proc. of the 24th Conference of the IEEE Communication Society (INFOCOM’05), 339– 350, March, 2005 [5] R. Fonseca, S. Ratnasamy, J. Zhao, C. T. Ee, D. Culler, S. Shenker, I. Stoica. Beacon vector routing: scalable point-to-point routing in wireless sensornets. Proc. of the 2nd Symposium on Networked Systems Design and Implementation, (NSDI’05), 329–342, May, 2005. [6] B. Karp, H. Kung. GPSR: Greedy perimeter stateless routing for wireless networks. Proc. of the ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom), 243–254, 2000. [7] A. Nguyen, N. Milosavljevic, Q. Fang, J. Gao, L. J. Guibas. Landmark selection and greedy landmarkdescent routing for sensor networks. Proc. of the 26th Annual IEEE Conference on Computer Communications (INFOCOM’07), 661–669, May, 2007. [8] B. Chazelle. Triangulating a simple polygon in linear time. Discrete Comput. Geom., Volume 6, Issue 5, 485524, 1991.