Dijkstra’s algorithm and L-concave function maximization
Dijkstra’s algorithm is a well-known algorithm for the single-source shortest path problem in a directed graph with nonnegative edge length. We discuss Dijkstra’s algorithm from the viewpoint of discrete convex analysis, where the concept of discrete convexity called L-convexity plays a central role. We observe first that the dual of the linear programming (LP) formulation of the shortest path problem can be seen as a special case of L-concave function maximization. We then point out that the steepest ascent algorithm for L-concave function maximization, when applied to the LP dual of the shortest path problem and implemented with some auxiliary variables, coincides exactly with Dijkstra’s algorithm.
KeywordsShortest path problem Dijkstra’s algorithm Discrete concave function Steepest ascent algorithm
Mathematics Subject Classification (2010)90C27 68Q25
- 8.Kalaba, R.: On some communication network problems. In: Bellman, R., Hall, M. Jr (eds.) Proceedings of Symposia in Applied Mathematics, vol. 10, pp. 261–280. American Mathematical Society, Providence (1960)Google Scholar
- 11.Murota, K.: Algorithms in discrete convex analysis. IEICE Trans. Syst. Inf. E83–D, 344–352 (2000)Google Scholar
- 16.Schrijver, A.: Combinatorial Optimization: Polyhedra and Efficiency. Springer, Berlin (2003)Google Scholar