Table of Contents
Fetching ...

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.

Enhanced Methods for the Weight Constrained Shortest Path Problem

TL;DR

The paper tackles the Weight Constrained Shortest Path Problem () on very large graphs by introducing two -based methods, and , 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.
Paper Structure (39 sections, 20 theorems, 3 equations, 23 figures, 7 tables, 10 algorithms)

This paper contains 39 sections, 20 theorems, 3 equations, 23 figures, 7 tables, 10 algorithms.

Key Result

theorem 1

WC-A* returns a node corresponding to a cost-optimal solution path for the WCSPP.

Figures (23)

  • Figure 1: Setup($d$)
  • Figure 2: ExP($x,d$) in ($f_1,f_2$) ord.
  • Figure 3: ESU($x,d$) in ($f_1,f_2$) ord.
  • Figure 4: Constrained search of WC-A*/BA*
  • Figure 5: Left: An example graph with cost on the edges, and with (state identifier, h, ub) inside the states. Right: Status of WC-A* in every iteration (It.): nodes in the $\mathit{Open}$ list at the beginning of each iteration, nodes pruned by the algorithm in each iteration, the (updated) value of the global upper bound $\overline{f_1}$ and also the secondary cost of the best-known solution $f^{sol}_2$ at the end of each iteration. The search is conducted in the forward direction and in the $(f_1,f_2)$ order. The symbol $\uparrow$ beside nodes denotes the expanded min-cost node in the iteration. The second table shows the status of the parent arrays of the states when the search terminates (see Section \ref{['sec:practicall']} for details).
  • ...and 18 more figures

Theorems & Definitions (45)

  • definition 1
  • definition 2
  • definition 3
  • definition 4
  • definition 5
  • definition 6
  • definition 7
  • theorem 1
  • proof
  • theorem 2
  • ...and 35 more