A nearly optimal algorithm for finding L1shortest paths among polygonal obstacles in the plane

  • Authors:
  • Danny Z. Chen;Haitao Wang

  • Affiliations:
  • Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN;Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN

  • Venue:
  • ESA'11 Proceedings of the 19th European conference on Algorithms
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Given a set of h pairwise disjoint polygonal obstacles of totally n vertices in the plane, we study the problem of computing an L1 (or rectilinear) shortest path between two points avoiding the obstacles. Previously, this problem has been solved in O(n log n) time and O(n) space, or alternatively in O(n + h log1.5 n) time and O(n + h log1.5 h) space. A lower bound of Ω(n + h log h) time and Ω(n) space can be established for this problem. In this paper, we present a nearly optimal algorithm of O(n + h log1+ε h) time and O(n) space for the problem, where ε 0 is an arbitrarily small constant. Specifically, after the free space is triangulated in O(n + h log1+ε h) time, our algorithm finds a shortest path in O(n+ h log h) time and O(n) space. Our algorithm can also be extended to obtain improved results for other related problems, e.g., finding shortest paths with fixed orientations, finding approximate Euclidean shortest paths, etc. In addition, our techniques yield improved results on some shortest path query problems.