Dynamic Programming Approaches for Solving Shortest Path Problem in Transportation: Comparison and Application

This paper seeks to investigate the performance of two different dynamic programming approaches for shortest path problem of transportation road network in different context, including the Bellman’s dynamic programming approach and the Dijkstra’s algorithm. The procedures to implement the two algorithms are discussed in detail in this study. The application of the Bellman’s approach shows that it is computationally expensive due to a lot of repetitive calculations. In comparison, the Dijkstra’s algorithm can effectively improve the computational efficiency of the backward dynamic programming approach. According to whether the shortest path from the node to the original node has been found, the Dijkstra’s algorithm marked the node with permanent label and temporal label. In each step, it simultaneously updates both the permanent label and temporal label to avoid the repetitive calculations in the backward dynamic programming approach. In addition, we also presented an algorithm using dynamic programming theory to solve the K shortest path problem. The K shortest path algorithm is particular useful to find the possible paths for travelers in real-world. The computational performance of the three approaches in large network is explored. This study will be useful for transportation engineers to choose the approaches to solve the shortest path problem for different needs.

[1]  Seth Pettie,et al.  A new approach to all-pairs shortest paths on real-weighted graphs , 2004, Theor. Comput. Sci..

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

[3]  Dorothea Wagner,et al.  Engineering multilevel overlay graphs for shortest-path queries , 2009, JEAL.

[4]  David Bruce Wilson,et al.  A Forward-Backward Single-Source Shortest Paths Algorithm , 2013, 2013 IEEE 54th Annual Symposium on Foundations of Computer Science.

[5]  Husain Aljazzar,et al.  K⁎: A heuristic search algorithm for finding the k shortest paths , 2011, Artif. Intell..

[6]  J. Y. Yen Finding the K Shortest Loopless Paths in a Network , 1971 .

[7]  Daniel Delling,et al.  SHARC: Fast and robust unidirectional routing , 2008, JEAL.

[8]  Karsten Weihe,et al.  Dijkstra's algorithm on-line: an empirical case study from public railroad transport , 2000, JEAL.

[9]  Ratna Babu Chinnam,et al.  Dynamic Routing using Real-time ITS Information , 2018 .

[10]  Mikkel Thorup,et al.  Undirected single-source shortest paths with positive integer weights in linear time , 1999, JACM.

[11]  E. Denardo,et al.  Shortest-Route Methods: 1. Reaching, Pruning, and Buckets , 1979, Oper. Res..

[12]  Richard Bellman,et al.  ON A ROUTING PROBLEM , 1958 .

[13]  David Eppstein,et al.  Finding the k Shortest Paths , 1999, SIAM J. Comput..

[14]  Michel Gendreau,et al.  An exact algorithm for the elementary shortest path problem with resource constraints: Application to some vehicle routing problems , 2004, Networks.

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

[16]  Andrew V. Goldberg,et al.  Shortest Path Algorithms: Engineering Aspects , 2001, ISAAC.

[17]  Michael S. Waterman,et al.  Technical Note - Determining All Optimal and Near-Optimal Solutions when Solving Shortest Path Problems by Dynamic Programming , 1984, Oper. Res..

[18]  Stephen Warshall,et al.  A Theorem on Boolean Matrices , 1962, JACM.

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

[20]  Ratna Babu Chinnam,et al.  Dynamic routing under recurrent and non-recurrent congestion using real-time ITS information , 2012, Comput. Oper. Res..

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

[22]  Raimund Seidel,et al.  On the All-Pairs-Shortest-Path Problem in Unweighted Undirected Graphs , 1995, J. Comput. Syst. Sci..