## Shortest Path Algorithms: Engineering Aspects (2001)

Venue: | In Proc. ESAAC ’01, Lecture Notes in Computer Science |

Citations: | 20 - 3 self |

### BibTeX

@INPROCEEDINGS{Goldberg01shortestpath,

author = {Andrew Goldberg},

title = {Shortest Path Algorithms: Engineering Aspects},

booktitle = {In Proc. ESAAC ’01, Lecture Notes in Computer Science},

year = {2001},

pages = {502--513},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

We review shortest path algorithms based on the multi-level bucket data structure [6] and discuss the interplay between theory and engineering choices that leads to e#cient implementations. Our experimental results suggest that the caliber heuristic [17] and adaptive parameter selection give an e#cient algorithm, both on typical and on hard inputs, for a wide range of arc lengths.

### Citations

1582 | A note on two problems in connexion with graphs
- Dijkstra
- 1959
(Show Context)
Citation Context ...e lower bound provided by breadth-first search. 2 The Multi-Level Bucket Data Structure Assuming that the reader is familiar with the labeling method [11, 12] (see also [27]) and Dijkstra's algorithm =-=[9]-=-, we review the MLB algorithm and related results. For more details, see [5, 6, 17]. The MLB structure B implements the priority queue operations insert, decrease-key, and extract-min. The bucket stru... |

816 |
Flows in networks
- Ford, Fulkerson
- 1962
(Show Context)
Citation Context ...ions and show how close their performance is to the lower bound provided by breadth-first search. 2 The Multi-Level Bucket Data Structure Assuming that the reader is familiar with the labeling method =-=[11, 12]-=- (see also [27]) and Dijkstra's algorithm [9], we review the MLB algorithm and related results. For more details, see [5, 6, 17]. The MLB structure B implements the priority queue operations insert, d... |

594 |
Fibonacci heaps and their uses in improved network optimization algorithms
- Fredman, Tarjan
- 1987
(Show Context)
Citation Context ...al, let U denote the maximum arc length. Let C denote the ratio between the biggest and the smallest nonzero arc lengths. In the pointer model of computation, one can get an O(m + n log n) time bound =-=[13]-=-. In a RAM model with word operations, the fastest currently known algorithms achieve the following bounds: O(m+ n(log U log log U) 1/3 ) [26], O(m+ n( # log n)) [25], O(m log log U) [19], and O(m log... |

165 | Trans-dichotomous algorithms for minimum spanning trees and shortest paths - Fredman, Willard - 1994 |

165 | Efficient algorithms for shortest paths in sparse networks - Johnson, B - 1977 |

146 | Shortest paths algorithms: Theory and experimental evaluation
- Cherkassky, Goldberg, et al.
- 1994
(Show Context)
Citation Context ... (without the independence assumption). Below we refer to the algorithm of [17] as the smart queue algorithm. Computational work on the NSP problem has received a lot of attention as well; see, e.g., =-=[3, 4, 8, 15, 18, 16, 31]-=-. This work leads to the general agreement that the problem can be solved well in practice. However, this work does not show how close existing NSP algorithm implementations are to a practical lower b... |

108 | Faster algorithms for the shortest path problem
- Ahuja, Mehlhorn, et al.
- 1990
(Show Context)
Citation Context ...n on NSP algorithms based on the multi-level bucket (MLB) data structure and its variants. This data structure was originally proposed by Denardo and Fox [6]. Enhancements to it have been proposed in =-=[1, 5]-=-. For a long time, the folklore, originating from the original paper [6] and the fact that computer memories were small, was that the MLB data structure was not competitive in practice. The work of Ch... |

92 | Algorithm 360: shortest path forest with topological ordering - Dial - 1969 |

64 |
Shortest paths algorithms
- Gallo, Pallottino
(Show Context)
Citation Context ... (without the independence assumption). Below we refer to the algorithm of [17] as the smart queue algorithm. Computational work on the NSP problem has received a lot of attention as well; see, e.g., =-=[3, 4, 8, 15, 18, 16, 31]-=-. This work leads to the general agreement that the problem can be solved well in practice. However, this work does not show how close existing NSP algorithm implementations are to a practical lower b... |

49 |
Priority queues: Small, monotone and trans-dichotomous
- Raman
- 1996
(Show Context)
Citation Context ... get an O(m + n log n) time bound [13]. In a RAM model with word operations, the fastest currently known algorithms achieve the following bounds: O(m+ n(log U log log U) 1/3 ) [26], O(m+ n( # log n)) =-=[25]-=-, O(m log log U) [19], and O(m log log n) [29]. In the special case when the graph is undirected, Thorup's algorithm [28] runs in linear time. The average-case results for the NSP problem are interest... |

48 | Negative-cycle detection algorithms
- Cherkassky, Goldberg
- 1999
(Show Context)
Citation Context ... (without the independence assumption). Below we refer to the algorithm of [17] as the smart queue algorithm. Computational work on the NSP problem has received a lot of attention as well; see, e.g., =-=[3, 4, 8, 15, 18, 16, 31]-=-. This work leads to the general agreement that the problem can be solved well in practice. However, this work does not show how close existing NSP algorithm implementations are to a practical lower b... |

43 |
A computational analysis of alternative algorithms and labelling techniques for shortest path trees. Networks 9
- Dial, Glover, et al.
- 1974
(Show Context)
Citation Context |

38 |
Network Flow Theory
- Ford
- 1956
(Show Context)
Citation Context ...ions and show how close their performance is to the lower bound provided by breadth-first search. 2 The Multi-Level Bucket Data Structure Assuming that the reader is familiar with the labeling method =-=[11, 12]-=- (see also [27]) and Dijkstra's algorithm [9], we review the MLB algorithm and related results. For more details, see [5, 6, 17]. The MLB structure B implements the priority queue operations insert, d... |

34 | A simple shortest path algorithm with linear average time
- Goldberg
- 2001
(Show Context)
Citation Context ...lti-level bucket data structure [6] and discuss the interplay between theory and engineering choices that leads to e#cient implementations. Our experimental results suggest that the caliber heuristic =-=[17]-=- and adaptive parameter selection give an e#cient algorithm, both on typical and on hard inputs, for a wide range of arc lengths. 1 Introduction The three most common ways to evaluate algorithm perfor... |

28 | Shortest-Paths on arbitrary directed graphs in linear Average-Case time
- Meyer
- 2001
(Show Context)
Citation Context ...23] shows that under relatively weak assumptions on the input distribution, the average-case bound on the binary heap implementation of Dijkstra's algorithm is better than the worst-case bound. Mayer =-=[21]-=- shows that the problem can be solved in linear average time if input arc lengths are independent and uniformly distributed. Goldberg [17] shows that a simple modification of the algorithm of [6] yiel... |

24 | Improved shortest paths on the word RAM
- Hagerup
(Show Context)
Citation Context ...) time bound [13]. In a RAM model with word operations, the fastest currently known algorithms achieve the following bounds: O(m+ n(log U log log U) 1/3 ) [26], O(m+ n( # log n)) [25], O(m log log U) =-=[19]-=-, and O(m log log n) [29]. In the special case when the graph is undirected, Thorup's algorithm [28] runs in linear time. The average-case results for the NSP problem are interesting because they appl... |

22 |
Computational study of an improved shortest path algorithm, Networks 14
- Glover, Glover, et al.
- 1984
(Show Context)
Citation Context |

22 | H.: An empirical analysis of algorithms for constructing a minimum spanning tree
- Moret, Shapiro
- 1991
(Show Context)
Citation Context ...he set F needed by the caliber heuristic. The adaptive variant of the code, sq-a, uses the same procedure to set k and # as mb-a does. 4 Experimental Methodology and Setup Following Moret and Shapiro =-=[22]-=-, we use a baseline code -- breadth-first search (bfs) in our case --- and measure running times of our shortest path codes on an input relative to the bfs running time on this input. Our BSF code com... |

17 | Design and implementation of an ecient priority queue - Boas, Kaas, et al. - 1977 |

17 |
monotone priority queues
- Buckets, lists
- 1999
(Show Context)
Citation Context ...n on NSP algorithms based on the multi-level bucket (MLB) data structure and its variants. This data structure was originally proposed by Denardo and Fox [6]. Enhancements to it have been proposed in =-=[1, 5]-=-. For a long time, the folklore, originating from the original paper [6] and the fact that computer memories were small, was that the MLB data structure was not competitive in practice. The work of Ch... |

15 |
Shortest-route methods: 1
- Denardo, Fox
- 1979
(Show Context)
Citation Context ..., InterTrust Technologies Corp. 4750 Patrick Henry Dr., Santa Clara, CA 95054, USA. goldberg@intertrust.com Abstract. We review shortest path algorithms based on the multi-level bucket data structure =-=[6]-=- and discuss the interplay between theory and engineering choices that leads to e#cient implementations. Our experimental results suggest that the caliber heuristic [17] and adaptive parameter selecti... |

14 | Implementations of Dijkstra's Algorithm Based on Multi-Level Buckets
- Goldberg, Silverstein
- 1995
(Show Context)
Citation Context ...et heuristic, and the sq code adds the caliber heuristic. Next we discuss these codes and engineering considerations involved in their development. Our implementation of mb is very similar to that of =-=[18]-=-, except in the details of the insert operation. The previous implementation maintained a range of distance values for each level, updating the ranges when the value ofschanged. To insert a vertex, on... |

12 |
A theorem on the expected complexity of Dijkstra’s shortest path algorithm
- Noshita
- 1985
(Show Context)
Citation Context ...[28] runs in linear time. The average-case results for the NSP problem are interesting because they apply to natural input distributions or to potentially practical algorithms. In particular, Noshita =-=[23]-=- shows that under relatively weak assumptions on the input distribution, the average-case bound on the binary heap implementation of Dijkstra's algorithm is better than the worst-case bound. Mayer [21... |

11 |
Economical algorithms for finding shortest paths in a network, in: Transportation Modeling Systems
- Dinic
- 1978
(Show Context)
Citation Context ... infinity if no arc enters v. We say that a distance label of a labeled vertex is exact if the label is equal to the distance from the source to the vertex. The following caliber lemma is implicit in =-=[10, 26]-=- and explicitly stated in [17]. The lemma allows us to relax Dijkstra's minimum distance label selection rule while maintaining the invariant that each vertex is scanned at most once. Lemma 1. Suppose... |

4 | Fast Algorithms for Shortest Paths and Sorting - Raman - 1996 |