Enhanced Methods for the Weight Constrained Shortest Path Problem
Saman Ahmadi, Guido Tack, Daniel Harabor, Philip Kilby, Mahdi Jalili
TL;DR
The paper tackles the Weight Constrained Shortest Path Problem ($WCSPP$) on very large graphs by introducing two $A^*$-based methods, $WC-A^*$ and $WC-EBBA^*_{par}$, that outperform prior state-of-the-art algorithms in time and memory. It develops a unified framework for constrained two-criteria search, including dominance pruning, early solution updates, and both unidirectional and parallel bidirectional variants, with careful attention to initialization and queue design. A thorough empirical evaluation against CSP, Pulse, RC-BDA*, BiPulse, and related WCSPP/BOSPP methods demonstrates substantial speedups, especially on large maps, and reveals that bucket-based priority queues with minimal or no tie-breaking often yield the best practical performance. The work also emphasizes memory efficiency through compact backtracking and provides actionable guidance on initialization order and queue choice, guiding future constrained A* solver design for large-scale WCSPP instances.
Abstract
The classic problem of constrained pathfinding is a well-studied, yet challenging, topic in AI with a broad range of applications in various areas such as communication and transportation. The Weight Constrained Shortest Path Problem (WCSPP), the base form of constrained pathfinding with only one side constraint, aims to plan a cost-optimum path with limited weight/resource usage. Given the bi-criteria nature of the problem (i.e., dealing with the cost and weight of paths), methods addressing the WCSPP have some common properties with bi-objective search. This paper leverages the recent state-of-the-art techniques in both constrained pathfinding and bi-objective search and presents two new solution approaches to the WCSPP on the basis of A* search, both capable of solving hard WCSPP instances on very large graphs. We empirically evaluate the performance of our algorithms on a set of large and realistic problem instances and show their advantages over the state-of-the-art algorithms in both time and space metrics. This paper also investigates the importance of priority queues in constrained search with A*. We show with extensive experiments on both realistic and randomised graphs how bucket-based queues without tie-breaking can effectively improve the algorithmic performance of exhaustive A*-based bi-criteria searches.
