Who would have thought? Dijkstra’s algorithm for the Single Source Shortest Path (SSSP) problem is a classic algorithm that a computer science student learns in a basic course on computer algorithms. And now there is a new algorithm which beats “Dijkstra” in time complexity. Technology happens, sometimes due to new theory (or science). Algorithm complexity is part of computer science theory, but an algorithm for SSSP can have practical applications for navigation and network optimization, as in path planning on road networks to minimize distance (or time) of travel. The SSSP algorithm determines the distance from a source node to every other node in a connected graph where each directed edge has a weight. If there are m edges and n nodes, the classic Dijkstra algorithm has complexity O( m +nlogn ). The new algorithm, which was presented at the most recent annual STOC conference and is published here, has complexity O( m log2/3 n ), which is better for typical graphs (where the number of edges is bounded by a constant times n ). Robert Tarjan (a famous computer scientist at Princeton University) is quoted as saying that “it is an amazing result” in an article about the paper in Quanta Magazine. The lead author of the result, Ran Duan of Tsinghua University, traces his interest in the problem of improving on the Dijkstra algorithm to his graduate work at the University of Michigan fifteen years ago. The result could lead to other advances in graph theory, and should provide practical advances for certain applications in the near future.
