Bidirectional Dijkstra's Algorithm is Instance-Optimal

Bernhard Haeupler, Richard Hladík, Václav Rozhoň, Robert E. Tarjan, Jakub Tětek

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Scopus citations

Abstract

While Dijkstra's algorithm has near-optimal time complexity for the problem of finding the shortest st-path, in practice, other algorithms are often superior on huge graphs. A prominent such example is the bidirectional search, which executes Dijkstra's algorithm from both endpoints in parallel and stops when these executions meet. In this paper, we give a strong theoretical justification for the use of such bidirectional search algorithms. We prove that for weighted multigraphs, both directed and undirected, a careful implementation of bidirectional search is instance-optimal with respect to the number of edges it explores. That is, we prove that no correct algorithm can outperform our implementation of bidirectional search on any single instance by more than a constant factor. For unweighted graphs, we show that bidirectional search is instace-optimal up to a factor of O(∆) where ∆ is the maximum degree of the graph. We also show that this is the best possible.

Original languageEnglish (US)
Title of host publication8th SIAM Symposium on Simplicity of Algorithms, SOSA 2025
EditorsIoana-Oriana Bercea, Rasmus Pagh
PublisherSociety for Industrial and Applied Mathematics Publications
Pages202-215
Number of pages14
ISBN (Electronic)9781611978315
StatePublished - 2025
Event8th SIAM Symposium on Simplicity of Algorithms, SOSA 2025 - New Orleans, United States
Duration: Jan 13 2025Jan 15 2025

Publication series

Name8th SIAM Symposium on Simplicity of Algorithms, SOSA 2025

Conference

Conference8th SIAM Symposium on Simplicity of Algorithms, SOSA 2025
Country/TerritoryUnited States
CityNew Orleans
Period1/13/251/15/25

All Science Journal Classification (ASJC) codes

  • Computational Theory and Mathematics
  • Computational Mathematics
  • Numerical Analysis
  • Theoretical Computer Science

Fingerprint

Dive into the research topics of 'Bidirectional Dijkstra's Algorithm is Instance-Optimal'. Together they form a unique fingerprint.

Cite this