Efficient Fastest-Path Computations in Road Maps

In the age of real-time online traffic information and GPS-enabled devices, fastest-path computations between two points in a road network modeled as a directed graph, where each directed edge is weighted by a "travel time" value, are becoming a standard feature of many navigation-related applications. To support this, very efficient computation of these paths in very large road networks is critical. Fastest paths may be computed as minimal-cost paths in a weighted directed graph, but traditional minimal-cost path algorithms based on variants of the classic Dijkstra algorithm do not scale well, as in the worst case they may traverse the entire graph. A common improvement, which can dramatically reduce the number of traversed graph vertices, is the A* algorithm, which requires a good heuristic lower bound on the minimal cost. We introduce a simple, but very effective, heuristic function based on a small number of values assigned to each graph vertex. The values are based on graph separators and computed efficiently in a preprocessing stage. We present experimental results demonstrating that our heuristic provides estimates of the minimal cost which are superior to those of other heuristics. Our experiments show that when used in the A* algorithm, this heuristic can reduce the number of vertices traversed by an order of magnitude compared to other heuristics.

[1]  Peter Sanders,et al.  Goal-directed shortest-path queries using precomputed cluster distances , 2010, JEAL.

[2]  Dieter Pfoser,et al.  Optimizing Landmark-Based Routing and Preprocessing , 2013, IWCTS '13.

[3]  Andrew V. Goldberg,et al.  Computing the shortest path: A search meets graph theory , 2005, SODA '05.

[4]  Peter Sanders,et al.  Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks , 2008, WEA.

[5]  Robert E. Tarjan,et al.  Fibonacci heaps and their uses in improved network optimization algorithms , 1984, JACM.

[6]  Edmond Chow,et al.  A Graph Search Heuristic for Shortest Distance Paths , 2005, AAAI 2005.

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

[8]  Ben Strasser,et al.  Customizable Contraction Hierarchies , 2014, SEA.

[9]  Vipin Kumar,et al.  A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs , 1998, SIAM J. Sci. Comput..

[10]  Andrew V. Goldberg,et al.  Customizable Route Planning in Road Networks , 2017, Transp. Sci..

[11]  Nathan R. Sturtevant,et al.  Euclidean Heuristic Optimization , 2011, AAAI.

[12]  Dorothea Wagner,et al.  Landmark-Based Routing in Dynamic Graphs , 2007, WEA.

[13]  Andrew V. Goldberg,et al.  Route Planning in Transportation Networks , 2015, Algorithm Engineering.

[14]  T. K. Satish Kumar,et al.  The FastMap Algorithm for Shortest Path Computations , 2017, ISAIM.

[15]  R. Tarjan,et al.  A Separator Theorem for Planar Graphs , 1977 .

[16]  Andrew V. Goldberg,et al.  Customizable Route Planning , 2011, SEA.

[17]  Peter Sanders,et al.  Exact Routing in Large Road Networks Using Contraction Hierarchies , 2012, Transp. Sci..

[18]  Ben Strasser,et al.  Customizable Contraction Hierarchies , 2014, SEA.

[19]  Nils J. Nilsson,et al.  A Formal Basis for the Heuristic Determination of Minimum Cost Paths , 1968, IEEE Trans. Syst. Sci. Cybern..