A Shortest Paths Ranking Algorithm

The ranking of K shortest paths is a classical network optimization problem with a large range of real world applications. Take as an example the constrained shortest path problem, where some complex set of constraints is associated with each path. If these constraints are ignored and paths are listed by increasing order of objective values, the shortest path verifying the given set of constraints is thus determined. The shortest path ranking problem may also occur in the multiobjective shortest path problem. In fact, a procedure for determining the multiobjective shortest path involves the knowledge of a well deened set of paths, namely the set of nondominated paths, which can be computed by a shortest paths ranking algorithm. For the ranking of shortest paths (loopless or not) problem, there are three classes of algorithms. One of them is based on the Principle of Optimality, being Dreyfus' algorithm its most representative one. Another classe comprises the generalizations, due to Shier, of labeling shortest paths algorithms. Finally, the last class encompasses the algorithms based on the path deletion concept, due to one of the authors. A new algorithm belonging to this class is presented. We prove that, in a worst case analysis, its executation time is as good as that of Dreyfus' algorithm that, as far as we know, has been considered the best algorithm for the problem. Computational experiments showing its clearly better performance are also presented. As an example, we report tests on random networks with 1500 nodes and 15000 arcs where the new algorithm to determine 250 paths was about 60 times faster than Dreyfus' algorithm.