Shortest Paths with Single-Point Visibility Constraint

Similar documents
Touring a Sequence of Polygons

Touring a Sequence of Polygons

xy-monotone path existence queries in a rectilinear environment

Routing Definition 4.1

Lecture 14: Minimum Spanning Tree I

CERIAS Tech Report EFFICIENT PARALLEL ALGORITHMS FOR PLANAR st-graphs. by Mikhail J. Atallah, Danny Z. Chen, and Ovidiu Daescu

Universität Augsburg. Institut für Informatik. Approximating Optimal Visual Sensor Placement. E. Hörster, R. Lienhart.

Karen L. Collins. Wesleyan University. Middletown, CT and. Mark Hovey MIT. Cambridge, MA Abstract

Generic Traverse. CS 362, Lecture 19. DFS and BFS. Today s Outline

Shortest Paths Problem. CS 362, Lecture 20. Today s Outline. Negative Weights

Today s Outline. CS 561, Lecture 23. Negative Weights. Shortest Paths Problem. The presence of a negative cycle might mean that there is

Algorithmic Discrete Mathematics 4. Exercise Sheet

Delaunay Triangulation: Incremental Construction

Topics. Lecture 37: Global Optimization. Issues. A Simple Example: Copy Propagation X := 3 B > 0 Y := 0 X := 4 Y := Z + W A := 2 * 3X

Minimum congestion spanning trees in bipartite and random graphs

Exploring Simple Grid Polygons

On successive packing approach to multidimensional (M-D) interleaving

Quadrilaterals. Learning Objectives. Pre-Activity

arxiv: v3 [cs.cg] 1 Oct 2018

Chapter S:II (continued)

arxiv: v1 [cs.ds] 27 Feb 2018

Contents. shortest paths. Notation. Shortest path problem. Applications. Algorithms and Networks 2010/2011. In the entire course:

Hassan Ghaziri AUB, OSB Beirut, Lebanon Key words Competitive self-organizing maps, Meta-heuristics, Vehicle routing problem,

else end while End References

A SIMPLE IMPERATIVE LANGUAGE THE STORE FUNCTION NON-TERMINATING COMMANDS

New Structural Decomposition Techniques for Constraint Satisfaction Problems

Advanced Encryption Standard and Modes of Operation

MAT 155: Describing, Exploring, and Comparing Data Page 1 of NotesCh2-3.doc

An Intro to LP and the Simplex Algorithm. Primal Simplex

1 The secretary problem

Shortest Path Routing in Arbitrary Networks

Stochastic Search and Graph Techniques for MCM Path Planning Christine D. Piatko, Christopher P. Diehl, Paul McNamee, Cheryl Resch and I-Jeng Wang

Localized Minimum Spanning Tree Based Multicast Routing with Energy-Efficient Guaranteed Delivery in Ad Hoc and Sensor Networks

Lemma 1. A 3-connected maximal generalized outerplanar graph is a wheel.

DAROS: Distributed User-Server Assignment And Replication For Online Social Networking Applications

Markov Random Fields in Image Segmentation

Maneuverable Relays to Improve Energy Efficiency in Sensor Networks

A note on degenerate and spectrally degenerate graphs

This article appeared in a journal published by Elsevier. The attached copy is furnished to the author for internal non-commercial research and

Laboratory Exercise 6

Planning of scooping position and approach path for loading operation by wheel loader

A Multi-objective Genetic Algorithm for Reliability Optimization Problem

AUTOMATIC TEST CASE GENERATION USING UML MODELS

A Linear Interpolation-Based Algorithm for Path Planning and Replanning on Girds *

Handling Degenerate Cases in Exact Geodesic Computation on Triangle Meshes

Brief Announcement: Distributed 3/2-Approximation of the Diameter

Representations and Transformations. Objectives

Cutting Stock by Iterated Matching. Andreas Fritsch, Oliver Vornberger. University of Osnabruck. D Osnabruck.

Motivation: Level Sets. Input Data Noisy. Easy Case Use Marching Cubes. Intensity Varies. Non-uniform Exposure. Roger Crawfis

Operational Semantics Class notes for a lecture given by Mooly Sagiv Tel Aviv University 24/5/2007 By Roy Ganor and Uri Juhasz

Today s Outline. CS 362, Lecture 19. DFS and BFS. Generic Traverse. BFS and DFS Wrapup Shortest Paths. Jared Saia University of New Mexico

CENTER-POINT MODEL OF DEFORMABLE SURFACE

See chapter 8 in the textbook. Dr Muhammad Al Salamah, Industrial Engineering, KFUPM

A Novel Feature Line Segment Approach for Pattern Classification

Variable Resolution Discretization in the Joint Space

CS201: Data Structures and Algorithms. Assignment 2. Version 1d

Edits in Xylia Validity Preserving Editing of XML Documents

Mirror shape recovery from image curves and intrinsic parameters: Rotationally symmetric and conic mirrors. Abstract. 2. Mirror shape recovery

Connected Placement of Disaster Shelters in Modern Cities

A Boyer-Moore Approach for. Two-Dimensional Matching. Jorma Tarhio. University of California. Berkeley, CA Abstract

3D SMAP Algorithm. April 11, 2012

A Fast Association Rule Algorithm Based On Bitmap and Granular Computing

Drawing Lines in 2 Dimensions

Performance of a Robust Filter-based Approach for Contour Detection in Wireless Sensor Networks

A New Approach to Pipeline FFT Processor

x y z Design variable positions A

On the Use of Shadows in Stance Recovery

Using Partial Evaluation in Distributed Query Evaluation

Multi-Target Tracking In Clutter

Shortest-Path Routing in Arbitrary Networks

SIMIT 7. Component Type Editor (CTE) User manual. Siemens Industrial

CORRECTNESS ISSUES AND LOOP INVARIANTS

Distributed Packet Processing Architecture with Reconfigurable Hardware Accelerators for 100Gbps Forwarding Performance on Virtualized Edge Router

Bottom Up parsing. Bottom-up parsing. Steps in a shift-reduce parse. 1. s. 2. np. john. john. john. walks. walks.

Multicast with Network Coding in Application-Layer Overlay Networks

Competitive Online Searching for a Ray in the Plane

SLA Adaptation for Service Overlay Networks

Lecture Outline. Global flow analysis. Global Optimization. Global constant propagation. Liveness analysis. Local Optimization. Global Optimization

IMPLEMENTATION OF AREA, VOLUME AND LINE SOURCES

An Approach to a Test Oracle for XML Query Testing

Sequencing and Counting with the multicost-regular Constraint

Key Terms - MinMin, MaxMin, Sufferage, Task Scheduling, Standard Deviation, Load Balancing.

Motion Control (wheeled robots)

Distribution-based Microdata Anonymization

Refining SIRAP with a Dedicated Resource Ceiling for Self-Blocking

Distance Optimal Formation Control on Graphs with a Tight Convergence Time Guarantee

CS 467/567: Divide and Conquer on the PRAM

Greedy but Safe Replanning under Kinodynamic Constraints

AN ALGORITHM FOR RESTRICTED NORMAL FORM TO SOLVE DUAL TYPE NON-CANONICAL LINEAR FRACTIONAL PROGRAMMING PROBLEM

Using Mouse Feedback in Computer Assisted Transcription of Handwritten Text Images

A Sparse Shared-Memory Multifrontal Solver in SCAD Software

Floating Point CORDIC Based Power Operation

The Set Constraint/CFL Reachability Connection in Practice

Interface Tracking in Eulerian and MMALE Calculations

3D MODELLING WITH LINEAR APPROACHES USING GEOMETRIC PRIMITIVES

ES205 Analysis and Design of Engineering Systems: Lab 1: An Introductory Tutorial: Getting Started with SIMULINK

Optimal Multi-Robot Path Planning on Graphs: Complete Algorithms and Effective Heuristics

UC Berkeley International Conference on GIScience Short Paper Proceedings

/06/$ IEEE 364

Uninformed Search Complexity. Informed Search. Search Revisited. Day 2/3 of Search

Transcription:

Shortet Path with Single-Point Viibility Contraint Ramtin Khoravi Mohammad Ghodi Department of Computer Engineering Sharif Univerity of Technology Abtract Thi paper tudie the problem of finding a hortet path between two point in preence of ingle-point viibility contraint. In thi type of contraint, there hould be at leat one point on the output path from which a fixed viewpoint i viible. The problem i tudied in variou domain including imple polygon, polygonal domain, and polyhedral urface. The method i baed on partitioning the boundary of the viibility region of the viewpoint into a number of interval. Thi i done from the combinatorial tructure of hortet path from ource and detination to the point on the boundary. Our reult for the cae of imple polygon i optimal with O(n) time bound. The running time for the cae of polygonal domain, convex and non-convex polyhedral urface are O(n 2 ), O(n 2 ), and O(n 3 ) repectively. Keyword: computational geometry, hortet path, viibility. 1 Introduction Finding a hortet path between two point i a baic problem in computational geometry and ha many application in different area uch a motion planning and navigation. The problem ha been tudied over variou geometric domain uch a imple polygon [1], polygonal domain [2, 3], and polyhedral urface [4, 5, 6]. Alo, everal variation exit depending on the metric ued for computing ditance, and different contraint applied to the olution path. Example of uch retriction are curvature contraint [7], or altitude contraint [8]. The viibility contraint are le tudied o far. In thi type of contraint, the path i required to atify ome viibility propertie, e.g. the entire or part of the path hould be viible from a given viewpoint. Application for thi contraint are mainly in communication ytem where direct viibility i needed, or in guarding problem. An example of a motion planning problem combined with viibility contraint can be found in [9] in which the problem of locating a continuouly-moving target uing a group of guard moving inide a imple polygon i tudied. Single-point viibility contraint require the path to include at leat one point from which a given viewpoint i viible. In thi paper, we tudy the problem of finding a hortet path with ingle-point viibility contraint in everal domain, including imple polygon, polygonal domain, and polyhedral urface. The algorithm we propoe for the cae of imple polygon and polygonal domain run in O(n) and O(n 2 ) time bound repectively. The author have tudied the cae of polyhedral urface in [10] and propoed an algorithm with O(n 2 log n) and O(n 3 log n) time bound for convex and non-convex cae repectively. The extra O(n) factor in the latter cae come from the fact that the viibility region for a viewpoint on a non-convex urface ha O(n) component of O(n) edge. In thi paper, we improve the time bound for both cae. We do thi for the convex cae by a more accurate analyi of the previou algorithm to obtain a running time of O(n 2 ). Alo, an improvement to the algorithm for the non-convex cae yield a O(n 3 ) time bound. For the cae of imple polygon, the author have tudied a more general verion of the problem in which the goal i to find the hortet path in preence of polygon meet contraint [11]. In thi type of problem, the path i contrained to have non-empty interection with a target polygon inide the input imple polygon. The problem i olved in O(n) time where n i the number of vertice in ramtin@mehr.harif.edu ghodi@harif.edu 1

both target and input polygon. Viibility contraint can be viewed a a pecial cae of polygon meet contraint if we conider the viibility polygon of the viewpoint a the target polygon. So, the problem tudied in thi paper for the cae of imple polygon i olvable by the method of [11], but the cae i included in thi paper too to how how the general approach preented to olve the other two cae can be ued to olve the cae of imple polygon. Note that thi approach olve the cae for imple polygon in a more imple way by conidering pecial propertie of viibility polygon. If we have to viit multiple viewpoint during motion along the path, we face a related problem called TSP with Neighborhood in which multiple polygonal region, called neighborhood, are given and the goal i to find a tour that viit every neighborhood. The problem i NP-hard [12], and everal approximation algorithm have been preented for different cae [13, 14, 15]. Recently, Dror et. al [16] have preented an algorithm for the problem of finding a hortet path that viit k given convex polygon in a given order. Alo, they have hown that the problem i NP-hard for the cae of non-convex polygon. The approache ued in thi paper for different domain have imilar tructure, o we formulate them in a generic form in ection 2, then dicu iue pecific to the cae of imple polygon, polygonal domain, and polyhedral urface in ection 3, 4, and 5 repectively. 2 The General Approach In thi ection, we conider the general approach for finding a hortet path between two point with the contraint that at leat one point on the path i viible from a given viewpoint. Let P be the geometric domain of the problem under conideration. We conider P a a et of point, V p a the viibility region of the given viewpoint p P, and B p a the boundary of V p. In all domain conidered in thi paper, B p conit of a number of line egment. The et P V p conit of a number of connected et of point, called inviible region of the domain. We call a path between two point and t in P a p-viible path if it ha non-empty interection with V p. Our goal i to compute a hortet path p-viible path between and t. Note that in polygonal domain and polyhedral urface, there may be no unique hortet path between two point, o there may be everal hortet p-viible path between and t in thoe cae. In our algorithm, we concentrate on finding one of thee path. Let q be the firt point viible from p, when walking along a hortet p-viible path from to t. Obviouly, q lie omewhere on B p, and the ubpath from to q and from q to t are locally optimal. So, our problem reduce to finding a point q with thi property. The main idea of the algorithm i to partition B p into a et of interval uch that for each interval I, we can eaily find the point q(i) I whoe total hortet ditance to and t i minimum among all point on I. Then q i the one with the minimum total hortet ditance. To do thi, we ue the notion of interval of optimality previouly ued in work on thi topic [4]. A connected et of point I on B p i an interval of optimality with repect to a point x P, if the hortet path from x to any point inide I have a fixed combinatorial tructure. We denote the et of all uch interval by L x. When it i clear from the context, we may ue interval intead of the term interval of optimality. To partition B p, we compute L and L t and merge the endpoint of the interval in the two et to obtain a et of interval denoted by L,t (Fig. 1). Interval in L (rep. L t ) can be found by interecting B p with the edge of the hortet path map of (rep. t), although computing the entire et of interval may not be neceary. For the cae of polyhedral urface, we ue a ubdiviion of the urface giving the ame information a the hortet path map for the two dimenional cae. Baed on the above definition, we ketch the generic algorithm for computing a hortet p-viible path between and t a the following: 1. Compute B p (or the relevant portion of it). 2. Compute the et L,t on the relevant ubet of B p. 3. For each interval I L,t, find the point q(i) which ha the minimum total ditance from and t. 4. Let q be the point with the minimum total ditance from and t among {q(i) : I L,t }. 2

V p q I u v t Figure 1: In two dimenional domain, an interval of optimality I L,t (hown with heavy olid line) i a connected ubet of B p uch that hortet path from (rep. t) to it point pae through u (rep. v) a the lat vertex. q(i) I i the point with minimum total hortet path ditance to and t. p x y e z Figure 2: A imple polygon with a viewpoint p inide it. The haded area i V p and there are ix inviible region in the polygon. The hortet path between x and z i already p-viible while the hortet p-viible path between x and y touche e and return. 5. Report a hortet path from to q appended by a hortet path from q to t. The firt two tep in the above algorithm depend on the pecific geometric domain of the problem, which we conider in the ucceeding ection. 3 Simple Polygon For the cae of imple polygon, many hortet path problem have linear algorithm due to the fact that there i exactly one taut-tring between any two point in a imple polygon that can be found uing dual of a triangulation for the polygon, which i a tree. In the method preented by Guiba et al. [1], one can contruct the hortet path map of a given ource point uing a DFS traveral of the mentioned tree. The method maintain a funnel-like tructure during thi traveral to contruct the hortet path map. We will conider how to ue thi tructure to find the interval of optimality on the relevant portion of B p in linear time. In thi cae, P i uppoed to be a imple polygon with n edge. B p i alo a imple polygon whoe edge are extenion of egment connecting p to the vertice of P viible from p. Hence, each edge of B p decompoe P into two part, one contain V p and the other i an inviible region (Fig. 2). If either or t lie inide or on the boundary of V p, the hortet path between and t i already p-viible. The ame i true if and t lie in two different inviible region (like the point x and z in Fig. 2). Thi i due to the fact that the only way for the path to exit from an inviible region i to cro an edge of V p. So, we can aume that the point and t are both in one inviible region. We name thi inviible region W. Note that teting the above condition can be done in O(n) total time. Baed on the above aumption, we can retrict the computation to the relevant portion of B p 3

u 4 u 3 u 2 u 1 a w 1 w 2 e Figure 3: Interval of optimality on the edge e obtained by running a hortet path algorithm in the polygon W. w 3 which i a ingle edge e common to V p and W. It can be eaily verified that in thi cae, the hortet p-viible path doe not enter V p and jut touche V p and return (like the path between x and y in Fig. 2). The reaon i obviou, ince we can take a hortcut along e between the point that the path enter V p and the point that it exit from. So, our problem i to find the et of interval of optimality on the edge e. Since the hortet path doe not exit W, we can find the interval on e eaily uing the hortet path algorithm of [1] to contruct the hortet path map of a imple polygon. We conider W a the input polygon to the mentioned algorithm with a the ource point. During the DFS traveral, we finally viit the boundary edge e (Fig. 3). Auming the funnel-like tructure maintained during the traveral ha the form [u l,u l 1,...,u 1,a,w 1,...,w k ] at that time with a = u 0 = w 0 a it cup (thu e = u l w k ), the ray emanating from u i (rep. from w i ) and paing through u i+1 (rep. through w i+1 ) partition e into k +l 1 interval. Each interval ha the property that the lat polygon vertex on the hortet path from to all of it point i the ame. Thee interval form the et L. Computing the et L,t for thi cae i eay now. We have to compute L and L t uing the method mentioned above, and a merging proce i required to obtain L,t from the computed interval. Auming the hortet Euclidean ditance from and t to all vertice of P have already been computed, we have the following lemma: Lemma 3.1 Let I be an interval in L,t. One can find the point q(i) on I with minimum total ditance to and t in contant time. Proof. I ha the property that the lat vertice of the hortet path from and t to an arbitrary point on I are the ame for all point of I. Let u (rep. v) be the lat vertex on hortet path form (rep. t) to the point of I. To find q(i), we can reflect v about the line upporting I and connect the reflected point to u. If the egment obtained in thi way interect I, the interection point will be q(i). Otherwie, q(i) will be one of the endpoint of I depending on which ide of I lie the interection point between the egment and the line upporting I. Baed on the above dicuion, the following tep are taken to compute the hortet p-viible path in a imple polygon: 1. If p i viible from either or t, report the hortet path between and t. 2. Compute the viibility polygon of p (V p ). 3. Compute the inviible region in which and t lie. 4. If the inviible region of and t are different, report the hortet path between and t, otherwie, name the inviible region in which both and t lie, a W. 5. Run the hortet path algorithm in the imple polygon W twice, auming and t a the ource point each time. A the reult of thi tep, the following information i generated: Shortet ditance from both and t to every vertex of P, and 4

p t Figure 4: The hortet p-viible path between and t (hown with dot) croe part of V p (lighthaded) while and t are in one inviible region and the hortet path between them (dahed line) doe not cro V p. Dark haded polygon are obtacle. The two et L and L t. 6. Compute L,t by merging the endpoint of the interval in L and L t. 7. For each interval I L,t find the point q(i) which ha the minimum total ditance from and t. Let q be the point among all q(i) that ha the minimum total ditance. 8. Report the hortet path from to q appended by the hortet path from q to t. To analyze the running time of the algorithm, oberve that the check in tep 1 of the above algorithm can be eaily done in linear time. The viibility polygon computation in tep 2 can be done uing the linear time algorithm of Lee [17, 18]. To compute the inviible region in which (rep. t) lie (tep 3), we can travere the boundary of the inviible region, tarting from the interection of the p (rep. pt) directed half-line and the boundary of P. Thi can be done in linear time auming that we have the vertice of P in order. Step 5 i calling the hortet path algorithm of Guiba et al. [1] twice and can be done in O(n) time. Since the funnel tructure i tored in a finger earch tree [19] which i baed on the B-tree data tructure, we can obtain the orted lit of interval in L and L t both in O(n) time. Therefore, L,t can be computed in linear time (tep 6). Finally, the minimum point q can be computed in O(n) time according to lemma 3.1. Each tep of the algorithm ue at mot O(n) pace, hence the overall algorithm need linear time and pace. Thu, we have the following reult for the cae of imple polygon: Theorem 3.1 Given a pair of point and t and a viewpoint p inide a imple polygon, the hortet p-viible path from to t inide the polygon can be computed in O(n) time and O(n) pace. 4 Polygonal Domain In thi cae, P i uppoed to be a polygonal domain with total number of n edge. The problem i to find a hortet obtacle-avoiding p-viible path between and t. We aume that the domain i bounded by a given imple polygon with a number of (imple, non-overlapping) polygonal obtacle inide. By free pace we mean the et of point inide or on the bounding polygon minu the interior of the obtacle. The hortet path map of the free pace can be computed uing the algorithm of Herhberger and Suri [3] in the wort-cae optimal time O(nlog n) uing O(nlog n) pace, where n i the total number of vertice of the domain. The ubdiviion can be ued to anwer ingle-ource hortet path querie uing claic point-location algorithm in logarithmic time. A tated earlier, the main challenge in a particular domain i to find the et of interval of optimality efficiently. Taking the ame approach a the cae of imple polygon, we mut find the inviible region in which and t lie (W), and run a hortet path algorithm (uch a [3]) to contruct the hortet path map of W and take the interval made on the edge common to W and V p. However, unlike the cae of imple polygon, the boundary between W and V p may conit of more than one edge. So, there may be cae that the only hortet p-viible path between and t enter V p from one edge and exit from another, while and t both lie in one inviible region W and the only hortet path between them lie completely inide W (Fig. 4). Baed on the above obervation, we ue the general approach preented in Section 2 without major modification for the cae of polygonal domain. To compute L and L t, we compute the 5

f 1 f 2 e 1 f 3 e 2 e 3 f k e k t f k+1 Figure 5: Shortet path from to t unfolded along it edge equence hortet path map of the domain twice with repect to the point and t, and find the interection of the two map with B p. To find the interection, we can ue known algorithm for ubdiviion overlay uch a the algorithm of Finke and Hinrich [20] which olve the problem in optimal time O(n + k) where k i the number of interection which i O(n 2 ) in the wort cae. So, the method compute L and L t in O(n 2 ) time. Note that to compute L,t, we have to merge the endpoint of the interval in L and L t which require having the interval in each et in orted order. The algorithm of Finke and Hinrich produce the output ubdiviion in a quad view data tructure [21] which allow ordered traveral of the interval in L or L t uing the operation provided for traveral of vertex ring and edge ring in the output ubdiviion. Now we analyze the running time of the algorithm in thi cae. Computing the viibility polygon can be done uing the optimal algorithm of Heffernan and Mitchell [22] which require O(n+h log h) time (h i the number of obtacle in the domain which i O(n) in wort cae). Contructing the hortet path map take O(nlog n) time and the ame pace. Computing L and L t i done in O(n 2 ) baed on the preceding lemma. Finally, the minimum point q can be computed in O(n 2 ) time, ince the ize of L,t i O(n 2 ), and the property tated in lemma 3.1 hold in thi cae too. Thu, we have the following reult for the cae of polygonal domain: Theorem 4.1 Given a pair of point and t and a viewpoint p inide a polygonal domain, a hortet p-viible path from to t inide the free pace can be computed in O(n 2 ) time and the ame pace. 5 Polyhedral Surface In thi ection, we conider the geometric domain of polyhedral urface, i.e. P i the urface of a polyhedron. In the cae of convex polyhedra, V p i a connected region whoe boundary conit of O(n) edge of P. In non-convex cae, V p i a et of poibly diconnected region of total complexity of O(n 2 ). A the complexity of the viibility region of a point on a (poibly non-convex) polyhedron i quadratic in ize of the polyhedron and the algorithm for finding the viibility map are uperquadratic in general [23], we aume the viibility region of the point to be een i determined through a preproceing tage and focu on finding a hortet p-viible path. The problem of finding a hortet path between two point on the urface of a polyhedron i well tudied. Epecially Chen and Han [5] preent a method for building a ubdiviion of the urface which can be ued for finding a hortet path from a fixed ource to a given query point efficiently. The ubdiviion can be built in O(n 2 ) time. The bet known algorithm for finding the hortet path on polyhedral urface i [6] which find a hortet path in O(nlog 2 n) uing the wavefront propagation method. 5.1 Shortet Path on a Polyhedron We briefly review the related terminology borrowed from [4]. Two face f and f are aid to be edge-adjacent if they hare a common edge e. A equence of edge-adjacent face i a lit of one or more face F = (f 1,f 2,...,f k+1 ) uch that f i i edge-adjacent to f i+1 (haring a common edge e i ). We refer to the (poibly empty) lit of edge E = (e 1,e 2,...,e k ) a an edge equence and to the vertex of face f 1 oppoite e 1 a the root of E (Fig. 5). Each face ha a two dimenional coordinate ytem aociated with it. If face f and f are edge-adjacent haring edge e, we define the planar unfolding of face f onto face f a the image of point of f when rotated about the line through e into the plane of f uch that the point of f fall on the oppoite ide of e to point of f. Extending thi notation, we ay that we unfold an edge 6

a c b d y x Figure 6: ab i an interval in L x and cb i an interval in L x,y. equence E = (e 1,e 2,...,e k ) a follow: Rotate f 1 around e 1 until it plane coincide with that of f 2, rotate f 1 and f 2 around e 2 until their plane coincide with that of f 3, continue in thi way until all face (f 1,f 2,...,f k ) lie in the plane of f k+1. We ay a path π connect the edge equence E = (e 1,e 2,...,e k ) if π conit of egment which join interior point of e 1,e 2,...,e k (in that order). A path on P i called geodeic if it i locally optimal and cannot be hortened by mall perturbation. The following lemma characterize uch path: Lemma 5.1 (Mitchell, Mount and Papadimitriou [4]) The general form of a geodeic path i a path which goe through an alternating equence of vertice and (poibly empty) edge equence uch that the unfolded image of the path along any edge equence i a traight line egment and the angle of the path paing through a vertex i greater than or equal to π. The general form of an optimal path i the ame a that of a geodeic path, except that no edge can appear in more than one edge equence and each edge equence mut be imple. 5.2 Computing the Shortet p-viible path Conider a maximal et of point on B p whoe hortet path to a point x connect the ame edge equence. Such point form an interval that belong to L x. The et L x,y i defined imilarly (Fig. 6). To compute the et L x we ue a ubdiviion preented in [5] which decompoe the urface to a number of region uch that a hortet path from x to a point inide one region ha a fixed combinatorial tructure (i.e., connect the ame edge-equence). Thi ubdiviion play a role imilar to hortet path map in two dimenion. To obtain the ubdiviion, we cut the urface of P along the hortet path from x to all of the vertice of P. The reulting urface can be laid out on a common plane. The layout obtained in thi manner i called the inward layout of P (alo called tar unfolding [24]). The vertice of thi polygon are the vertice of P together with the image of the ource point x under different unfolding and the edge are hortet path from the ource to the vertice of P. A ubdiviion of the inward layout can be obtained by contructing the Voronoi diagram on the layout with repect to the image of the ource point (Fig. 7). Thi ubdiviion ha the property that the point in the ame region are cloer to the correponding image of the ource than to other image, and their hortet path from the ource pa through the ame edge equence. The et L x i obtained by interecting B p with the edge of the ubdiviion mentioned above conidering x a the ource point. To bound the number of interval in L x, oberve that the ubdiviion ha two kind of edge that are to be interected with B p : hortet path to vertice (cut) and the edge of the Voronoi diagram (ridge). The number of thee edge i O(n). In the convex cae, the edge of B p are edge of P too, and may have O(n 2 ) interection with cut and ridge in the wort cae. In contrat, for the non-convex polyhedra, B p ha O(n) component, each with O(n) edge, which are not necearily part of the edge of P. In thi cae, each component may have O(n 2 ) interection with cut and ridge, reulting in O(n 3 ) interection in general. So, the ize of L x will be O(n 2 ) in convex and O(n 3 ) in non-convex cae. Note that it can be hown that thee bound are tight (Fig. 8 how a convex cae). 7

1 2 3 8 4 7 6 5 Figure 7: The inward layout of a box. Solid line are the edge of the ubdiviion that are part of polyhedron edge. Dahed line are edge of the Voronoi diagram (ridge) and dotted line are hortet path from image of the ource to vertice (cut). p x (a) (b) Figure 8: (a) A diamond polyhedron which ha O(n) face (b) Diamond polyhedron with a number of face added to it. 8

Table 1: Summary of time and pace complexity of the algorithm in variou domain Domain Time Space Simple Polygon O(n) O(n) Polygonal Domain O(n 2 ) O(n 2 ) Convex Polyhedral Surface O(n 2 ) O(n 2 ) Non-convex Polyhedral Surface O(n 3 ) O(n 3 ) For the non-convex cae, the inward layout may overlap itelf. The algorithm for computing Voronoi diagram, in thi cae, i lightly different and i given in [5]. In thi cae, an interval in L x ha the property that there i a vertex v of the polyhedron uch that every hortet path from x to a point on the interval pae through v a the lat vertex, and the edge equence from v to point on the interval i the ame. A the firt part of the path i fixed among the point on interval, given an interval I L,t, we can till find the point q(i) whoe total ditance from and t i minimum in contant time provided that when computing the interval, we tore the ditance to peudo-ource aociated with the interval. Following the general approach tated before, thee tep are to be taken to compute a hortet p-viible path between and t: 1. If p i viible from either or t, report a hortet Euclidean path between and t. 2. Run a hortet path algorithm on the urface P twice, auming and t a the ource point each time, to find the hortet ditance from both and t to every vertex of P. A a reult of thi tep, two ubdiviion of the urface are built with repect to and t. 3. Compute the et L,t. 4. For each interval I L,t find the point q(i) which ha the minimum total ditance from and t. Let q be the point among all q(i) that ha the minimum total ditance. 5. Report a hortet path from to q appended by a hortet path from q to t. To analyze the running time of the algorithm, oberve that the check in tep 1 of the above algorithm can be done in time proportional to the ize of the viibility region which i le than the time bound tated for the whole algorithm. Computing the ubdiviion with repect to and t take O(n 2 ) time for both cae (tep 2). Analyzing tep 3 (computing L,t ) hould be done eparately for the cae of convex and non-convex polyhedra. For the convex cae, V p conit of one or more face of the polyhedron, o it boundary conit of polyhedron edge. Hence, for an arbitrary x, the ize of L x will be O(n 2 ). Uing the algorithm of Chen and Han, we can find thee interval in O(n 2 ) time, ince the algorithm keep track of the interection of hortet path to vertice with the edge of the polyhedron. Furthermore, the interval obtained thi way are in orted order ince the algorithm keep the hortet path to the vertice orted in angular order around the ource point x. Hence, the total time to find L and L t i O(n 2 ) in thi cae. Computing L,t i done by merging the endpoint of the interval in L and L t which alo need O(n 2 ) time. For the non-convex cae, V p may be diconnected, with total complexity of O(n 2 ) edge (not necearily part of the edge of P). In thi cae, we cannot ue the information about the interection between the edge of B p with thoe of P obtained by the hortet path algorithm. To compute L x, we have to interect the edge of B p with cut and ridge, yielding to maximum of O(n 3 ) interval. Thi take O(n 3 ) time uing the ame method a the cae of polygonal domain. Thu, finding L,t can be done in O(n 3 ) time. Finally, the minimum point q can be computed in O(n 2 ) (rep. O(n 3 )) time for the convex (rep. non-convex) cae. It can be eaily verified that the pace complexity of the algorithm i O(n 2 ) (rep. O(n 3 )). Thu, we have the following reult for the cae of polyhedral urface: 9

Theorem 5.1 Given a pair of point and t, a viewpoint p, and the viibility region of the viewpoint V p on the urface of a polyhedron, a hortet p-viible path from to t can be computed in O(n 2 ) time for the convex cae and O(n 3 ) for the non-convex cae. 6 Concluion We tudied the problem of finding a hortet path between two point with ingle-point viibility contraint in variou domain ummarized in Table 1. The time bound for the firt cae i the ame a the bound for the tandard hortet path problem (without contraint), o thi bound cannot be improved any further. The cae of polygonal domain and polyhedral urface may be improved though. The cae for polygonal domain can be tudied further to ee if it i not neceary to contruct the entire et of interval of optimality. Alo, it i poible to improve the cae for the polyhedral urface due to exitence of the ubquadratic algorithm of Kapoor [6] for finding hortet path on polyhedral urface that ue the wavefront propagation method. There may be everal extenion that can be conidered. One extenion i to ue other metric for ditance computation (e.g. link-ditance or weighted region) while having the viibility contraint. For ome cae, it i poible to ue the ame framework a we ued in the current paper, i.e. contructing hortet path map according to the metric ued and finding the et of interval of optimality on the boundary. However, it i poible that for ome metric, there may be more pecific and more efficient algorithm. Another extenion i to contrain the path to meet an arbitrary general region, not necearily a viibility region. Generalization of our algorithm to thi cae i traightforward for ome domain (e.g. polygonal domain), ince we have not ued pecial propertie about viibility region in thoe domain. Other domain (e.g. imple polygon) require more tudy. Acknowledgment: The author would like to thank the anonymou referee for hi/her valuable comment. Reference [1] L. J. Guiba, J. Herhberger, D. Leven, M. Sharir, and R. E. Tarjan. Linear-time algorithm for viibility and hortet path problem inide triangulated imple polygon. Algorithmica, 2:209 233, 1987. [2] J. S. B. Mitchell. Shortet path among obtacle in the plane. Internat. J. Comput. Geom. Appl., 6:309 332, 1996. [3] J. Herhberger and S. Suri. An optimal algorithm for Euclidean hortet path in the plane. SIAM J. Comput., 28(6):2215 2256, 1999. [4] J. S. B. Mitchell, D. M. Mount, and C. H. Papadimitriou. The dicrete geodeic problem. SIAM J. Comput., 16:647 668, 1987. [5] J. Chen and Y. Han. Shortet path on a polyhedron. Internat. J. Comput. Geom. Appl., 6:127 144, 1996. [6] S. Kapoor. Efficient computation of geodeic hortet path. In Proc. 32th Annu. ACM Sympo. Theory Comput., page 770 779, 1999. [7] J. D. Boionnat, A. Cérézo, and J. Leblond. Shortet path of bounded curvature in the plane. Internat. J. Intell. Syt., 10:1 16, 1994. [8] M. De Berg and M. Van Kreveld. Trekking in the alp without freezing or getting tired. Algorithmica, 18:306 323, 1997. [9] A. Efrat, L. J. Guiba, S. Har-Peled, D. C. Lin, J. S. Mitchell, and T. M. Murali. Sweeping imple polygon with a chain of guard. In Proc. 11th ACM-SIAM Sympo. Dicrete Algorithm (SODA 2000), page 927 936, 2000. 10

[10] R. Khoravi, M. Ghodi, and M. Taghdiri. Shortet point-viible path on polyhedral urface. In Proc. of the 10th International Conference on Computing and Information (ICCI 2000). Unpublihed. [11] R. Khoravi and M. Ghodi. Shortet path in imple polygon with polygon-meet contraint. Inform. Proce. Lett., 91:171 176, 2004. [12] J. Gudmundon and C. Levcopoulo. Hardne reult for TSP with neighborhood. Technical Report LU-CS-TR:2000-216, Department of Computer Science, Lund Univerity, Sweden, 2000. [13] C. Mata and J. S. Mitchell. Approximation algorithm for geometric tour and network deign problem. In Proc. 11th Annu. ACM Sympo. Comput. Geom., page 360 369, 1995. [14] J. Gudmundon and C. Levcopoulo. A fat approximation algorithm for TSP with neighborhood and red-blue eparation. Lecture Note in Computer Science, 1627:473 482, 1999. [15] A. Dumitrecu and J. S. B. Mitchell. Approximation algorithm for TSP with neighborhood in the plane. In Sympoium on Dicrete Algorithm, page 38 46, 2001. [16] M. Dror, A. Efrat, A. Lubiw, and J. S. B. Mitchell. Touring a equence of polygon. In Proc. 35th ACM Sympo. Theory Comput., 2003. [17] D. T. Lee. Viibility of a imple polygon. Comput. Viion Graph. Image Proce., 22:207 221, 1983. [18] B. Joe and R. B. Simpon. Correction to Lee viibility polygon algorithm. BIT, 27:458 473, 1987. [19] L. J. Guiba, E. McCreight, M. Pla, and J. Robert. A new repreentation for linear lit. In Proc. 9th Annu. ACM Sympo. Theory Comput., page 49 60, 1977. [20] U. Finke and K. Hinrich. Overlaying imply connected planar ubdiviion in linear time. In Proc. 11th Annu. ACM Sympo. Comput. Geom., page 119 126, 1995. [21] U. Finke and K. H. Hinrich. The quad view data tructure: a repreentation for planar ubdiviion. In Proc. 6th Sympo. Advance in Spatial Databae, number 951 in Lecture Note Comput. Sci., page 29 46, 1995. [22] P. J. Heffernan and J. S. B. Mitchell. An optimal algorithm for computing viibility in the plane. SIAM J. Comput., 24(1):184 201, 1995. [23] J. O Rourke. Viibility. In J. E. Goodman and J. O Rourke, editor, Handbook of Dicrete and Computational Geometry, chapter 25, page 467 480. CRC Pre LLC, 1997. [24] P. K. Agarwal, B. Aronov, J. O Rourke, and C. Schevon. Star unfolding of a polytope with application. Technical Report 031, Dept. Comput. Sci., Smith College, Northampton, MA, July 1993. 11