Approximating weighted shortest paths on polyhedral surfaces

Mark Lanthier, Anil Maheshwari and Jorg-Rudiger Sack School of Computer Science Carleton University 1125 Colonel By Drive Ottawa, ON, CANADA KIS 5B6 E-mail: {lanthier,maheshwa, sack} @scs.carleton.ca Consider a simple polyhedron T, possibly non-convex, composed of n triangular regions (faces), in which each region has an associated positive weight. The cost of travel through each region is the distance traveled times its weight. We present and experimentally study several algorithms to compute an approximate weighted geodesic shortest path, #(s, t), between two points s and t on the surface of P. Our algorithms are simple, practical, less prone to numerical problems, adaptable to a wide spectrum of weight functions, and use only elementary data structures. An additional feature of our algorithms is that execution time and space utilization can be traded off for accuracy; likewise, a sequence of approximate shortest paths for a given pair of points can be computed with increasing accuracy (and execution time) if desired. Dynamic changes to the polyhedron (removal, insertions of vertices or faces) are easily handled. The key step in these algorithms is the construction of a graph by introducing Steiner points on the edges of the given polyhedron and compute a shortest path in the resulting graph using Dijkstra’s algorithm. Different strategies for Steiner point placement are examined. Our experimental results obtained on Triangular Irregular Networks (TINs) modeling terrains in Geographical Information Systems (GIS) show that a constant number of Steiner points per edge suffice to obtain high-qualit y approximate shortest paths. The time complexity of these algorithms for TINs (obtained using real data and randomly generated data) which we “Rese=ch supported in part by ALMERCO Inc. & NSERC. tFor the full version of this paper see [9]. t See [IO] for an accompanying video. I’wrui<sion 10 m:lkc clIgII:Il Imrd ~.,>pics ,JI atl ,11 p.111 ,)1’ll)is III: IICII: II liM powmal or cl:twrotm usc is gr:tnl<d st IIII<U II 12c pr,>sfldui 11):11(Iw ccq>Ick dre ml mmle or clislriluilcd fiIIprotil or mnmmial iidvanlagt. llle uyl\r}glll nolic~. the IiIlc ot’llw pulll IcNImI ami IIS d.llc NppmI, :IIIC{ noliw is given Il]ul m)pvriglll is 1)) pmllIssItm c>I’lIIC ..\ C’\l. inc. “1’0 copy ulllmvIsL’ w repuhlisll. 10 posi w) smm (N’ 10 rcd!<lrilmic 10 IISIS. reqllmx spmiiic permission and/or Ikc (“”OtVpld[(lllOnCl[ (“i<? 01111> (r) ~: %’KC]:rO1)L.~ Copyri@ 1997 AChl ()-X979 1.87X-’) ‘)7’()(1 S3 >() experimentally investigated is O(n log n). Our analysis bounds the approximate shortest path cost, ~’(S, t), by ~(S, t) + w~== .11,1, where T(S, t) denotes the geodesic shortest path between s and t on the boundary of P, 1. is the longest edge and w~a= is the maximum weight of the faces of T’, respectively. The worst case time complexity is bounded by 0(n5 ). We present an alternate algorithm, using graph spanners, that runs in 0(n3 log n) worst case time and reports an approximate path such that T’(s, t) s ~(n(s, t) + w~~z. Il. l), where ~ >1 is a constant. Already, for planar subdivisions, the best known algorithm for computing exact geodesic weighted shortest path runs in O(ns log n) time and using 0(n4) space, due to Mitchell and Papadimitriou [12]. We are not aware of any adequately documented algorithm for computing approximate weighted shortest paths.

[1]  Jörg-Rüdiger Sack,et al.  Parallel neighbourhood modelling , 1996, GIS '96.

[2]  Joseph O'Rourke,et al.  Shortest Paths on Polyhedral Surfaces , 1985, STACS.

[3]  Neil C. Rowe,et al.  Optimal grid-free path planning across arbitrarily contoured terrain with anisotropic friction and gravity effects , 1990, IEEE Trans. Robotics Autom..

[4]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[5]  Micha Sharir,et al.  Approximating shortest paths on a convex polytope in three dimensions , 1996, SCG '96.

[6]  Subhash Suri,et al.  Practical methods for approximating shortest paths on a convex polytope in R3 , 1995, SODA '95.

[7]  Kenneth L. Clarkson,et al.  Approximation algorithms for shortest path motion planning , 1987, STOC.

[8]  George L. Nemhauser,et al.  Handbooks in operations research and management science , 1989 .

[9]  Yijie Han,et al.  Shortest paths on a polyhedron , 1990, SCG '90.

[10]  Joseph S. B. Mitchell,et al.  The weighted region problem: finding shortest paths through a weighted planar subdivision , 1991, JACM.

[11]  Leonidas J. Guibas,et al.  Optimal shortest path queries in a simple polygon , 1987, SCG '87.

[12]  Joseph S. B. Mitchell,et al.  The Discrete Geodesic Problem , 1987, SIAM J. Comput..

[13]  Jörg-Rüdiger Sack,et al.  Approximating Weighted Shortest Paths on Polyhedral Surfaces , 1997, Symposium on Computational Geometry.

[14]  Micha Sharir,et al.  On shortest paths in polyhedral spaces , 1986, STOC '84.

[15]  Micha Sharir,et al.  Approximating shortest paths on a convex polytope in three dimensions , 1997, JACM.

[16]  D. Mount On Finding Shortest Paths on Convex Polyhedra. , 1985 .

[17]  Boris Aronov,et al.  Star Unfolding of a Polytope with Applications , 1997, SIAM J. Comput..