Algorithm Engineering of SSSP With Negative Edge Weights

📅 2025-02-17
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This work addresses the single-source shortest paths (SSSP) problem on directed graphs with negative-weight edges. We present the first engineered implementation and deep optimization of the near-linear-time theoretical algorithm by Bringmann, Cassis, and Fischer (FOCS’23), whose original formulation prioritizes asymptotic complexity over practical efficiency. To bridge this gap, we introduce three key adaptations: (i) empirically guided parameter tuning; (ii) lightweight, cache-friendly data structures; and (iii) a composite algorithmic framework integrating hierarchical graph decomposition, dynamic label propagation, and adaptive graph contraction. Implemented in high-performance C++ using benchmark-driven development, our solution achieves up to 100× speedup over the classic Goldberg–Radzik (SODA’93) algorithm on the most challenging instances. These results empirically validate the practical efficacy of modern near-linear SSSP theory and fill a critical gap in its engineering deployment.

Technology Category

Application Category

📝 Abstract
Computing shortest paths is one of the most fundamental algorithmic graph problems. It is known since decades that this problem can be solved in near-linear time if all weights are nonnegative. A recent break-through by [Bernstein, Nanongkai, Wulff-Nilsen '22] presented a randomized near-linear time algorithm for this problem. A subsequent improvement in [Bringmann, Cassis, Fischer '23] significantly reduced the number of logarithmic factors and thereby also simplified the algorithm. It is surprising and exciting that both of these algorithms are combinatorial and do not contain any fundamental obstacles for being practical. We launch the, to the best of our knowledge, first extensive investigation towards a practical implementation of [Bringmann, Cassis, Fischer '23]. To this end, we give an accessible overview of the algorithm, discussing what adaptions are necessary to obtain a fast algorithm in practice. We manifest these adaptions in an efficient implementation. We test our implementation on a benchmark data set that is adapted to be more difficult for our implementation in order to allow for a fair comparison. As in [Bringmann, Cassis, Fischer '23] as well as in our implementation there are multiple parameters to tune, we empirically evaluate their effect and thereby determine the best choices. Our implementation is then extensively compared to one of the state-of-the-art algorithms for this problem [Goldberg, Radzik '93]. On the hardest instance type, we are faster by up to almost two orders of magnitude.
Problem

Research questions and friction points this paper is trying to address.

Practical implementation of SSSP algorithm
Optimization of algorithm parameters
Performance comparison with state-of-the-art
Innovation

Methods, ideas, or system contributions that make the work stand out.

Randomized near-linear time algorithm
Reduced logarithmic factors significantly
Efficient implementation with parameter tuning
🔎 Similar Papers
No similar papers found.
A
A. Cassis
Saarland University and Max Planck Institute for Informatics, Saarland Informatics Campus, Saarbrücken, Germany
Andreas Karrenbauer
Andreas Karrenbauer
Senior Researcher, Max Planck Institute for Informatics, Saarland Informatics Campus, Saarbrucken
Discrete OptimizationAlgorithm EngineeringInteger ProgrammingComputational Interaction
A
Andr'e Nusser
Université Côte d’Azur, CNRS, Inria, France
P
Paolo Luigi Rinaldi
Max Planck Institute for Informatics and Saarland University, Saarland Informatics Campus, Saarbrücken, Germany