English

A New Algorithm for Euclidean Shortest Paths in the Plane

Computational Geometry 2021-02-26 v1 Data Structures and Algorithms

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(nlogn)O(n\log n) time and O(nlogn)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(nlogn)O(n\log n). In this paper, we present a new algorithm of O(n+hlogh)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+hlogh)\Omega(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(logn)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.

Keywords

Cite

@article{arxiv.2102.12589,
  title  = {A New Algorithm for Euclidean Shortest Paths in the Plane},
  author = {Haitao Wang},
  journal= {arXiv preprint arXiv:2102.12589},
  year   = {2021}
}

Comments

To appear in STOC 2021

R2 v1 2026-06-23T23:29:25.831Z