A New Algorithm for Euclidean Shortest Paths in the Plane

preprint2021arXivOpen access

Abstract

Given a set of pairwise disjoint polygonal obstacles in the plane, finding an obstacle-avoiding Euclidean shortest path between two points is a classical problem in computational geometry and has been studied extensively. Previously, Hershberger and Suri [SIAM J. Comput. 1999] gave an algorithm of O(nlog⁡n)O(n\log n) time and O(nlog⁡n)O(n\log n) space, where nn is the total number of vertices of all obstacles. Recently, by modifying Hershberger and Suri's algorithm, Wang [SODA 2021] reduced the space to O(n)O(n) while the runtime of the algorithm is still O(nlog⁡n)O(n\log n). In this paper, we present a new algorithm of O(n+hlog⁡h)O(n+h\log h) time and O(n)O(n) space, provided that a triangulation of the free space is given, where hh is the number of obstacles. The algorithm, which improves the previous work when h=o(n)h=o(n), is optimal in both time and space as Ω(n+hlog⁡h)Ω(n+h\log h) is a lower bound on the runtime. Our algorithm builds a shortest path map for a source point ss, so that given any query point tt, the shortest path length from ss to tt can be computed in O(log⁡n)O(\log n) time and a shortest ss-tt path can be produced in additional time linear in the number of edges of the path.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.