Accelerating Dijkstra's Algorithm Using Multiresolution Priority Queues

Multiresolution priority queues are recently introduced data structures that can trade-off a small bounded error for faster performance. When used to implement the frontier set in label setting algorithms, they provide a new mathematical approach to classic graph problems such as the computation of shortest paths or minimum spanning trees. To understand how they work, this paper presents a mathematical study of multiresolution label setting algorithms. The theory is general in that the classic mathematical results respond to the particular case where the problem's resolution is infinitely small. The concept of multiresolution helps break the information theoretic barriers of the problem by achieving lower time complexity at the cost of introducing a bounded error. Such error is proven independent of the graph size, a relevant feature in uniform-cost search algorithms where graphs can be infinitely large. Properly tuned, Dijkstra's multiresolution algorithm delivers an amortized cost of $O(\vert V\vert +\vert E\vert)$, where $V$ and $E$ are the set of vertices and edges, respectively. Benchmarks show speedups of 53% and 26% when applied to Dijkstra's and A* algorithms on a graph of US roads with 87,575 vertices and 121,961 edges.