Results 1  10
of
27
Computing the shortest path: A* search meets graph theory
, 2005
"... We study the problem of finding a shortest path between two vertices in a directed graph. This is an important problem with many applications, including that of computing driving directions. We allow preprocessing the graph using a linear amount of extra space to store auxiliary information, and usi ..."
Abstract

Cited by 98 (4 self)
 Add to MetaCart
We study the problem of finding a shortest path between two vertices in a directed graph. This is an important problem with many applications, including that of computing driving directions. We allow preprocessing the graph using a linear amount of extra space to store auxiliary information, and using this information to answer shortest path queries quickly. Our approach uses A ∗ search in combination with a new graphtheoretic lowerbounding technique based on landmarks and the triangle inequality. We also develop new bidirectional variants of A ∗ search and investigate several variants of the new algorithms to find those that are most efficient in practice. Our algorithms compute optimal shortest paths and work on any directed graph. We give experimental results showing that the most efficient of our new algorithms outperforms previous algorithms, in particular A ∗ search with Euclidean bounds, by a wide margin on road networks. We also experiment with several synthetic graph families.
Reach for A∗: Efficient pointtopoint shortest path algorithms
 IN WORKSHOP ON ALGORITHM ENGINEERING & EXPERIMENTS
, 2006
"... We study the pointtopoint shortest path problem in a setting where preprocessing is allowed. We improve the reachbased approach of Gutman [16] in several ways. In particular, we introduce a bidirectional version of the algorithm that uses implicit lower bounds and we add shortcut arcs which reduc ..."
Abstract

Cited by 59 (5 self)
 Add to MetaCart
We study the pointtopoint shortest path problem in a setting where preprocessing is allowed. We improve the reachbased approach of Gutman [16] in several ways. In particular, we introduce a bidirectional version of the algorithm that uses implicit lower bounds and we add shortcut arcs which reduce vertex reaches. Our modifications greatly reduce both preprocessing and query times. The resulting algorithm is as fast as the best previous method, due to Sanders and Schultes [27]. However, our algorithm is simpler and combines in a natural way with A∗ search, which yields significantly better query times.
Geometric SpeedUp Techniques for Finding Shortest Paths in Large Sparse Graphs
, 2003
"... In this paper, we consider Dijkstra's algorithm for the single source single target shortest paths problem in large sparse graphs. The goal is to reduce the response time for online queries by using precomputed information. For the result of the preprocessing, we admit at most linear space. We as ..."
Abstract

Cited by 53 (14 self)
 Add to MetaCart
In this paper, we consider Dijkstra's algorithm for the single source single target shortest paths problem in large sparse graphs. The goal is to reduce the response time for online queries by using precomputed information. For the result of the preprocessing, we admit at most linear space. We assume that a layout of the graph is given. From this layout, in the preprocessing, we determine for each edge a geometric object containing all nodes that can be reached on a shortest path starting with that edge. Based on these geometric objects, the search space for online computation can be reduced significantly. We present an extensive experimental study comparing the impact of different types of objects. The test data we use are traffic networks, the typical field of application for this scenario.
Smoothed Analysis of Three Combinatorial Problems
 Proc. of the 28th Int. Symp. on Mathematical Foundations of Computer Science (MFCS), volume 2747 of Lecture Notes in Computer Science
, 2003
"... Smoothed analysis combines elements over worstcase and average case analysis. For an instance x the smoothed complexity is the average complexity of an instance obtained from x by a perturbation. The smoothed complexity of a problem is the worst smoothed complexity of any instance. Spielman and ..."
Abstract

Cited by 22 (1 self)
 Add to MetaCart
Smoothed analysis combines elements over worstcase and average case analysis. For an instance x the smoothed complexity is the average complexity of an instance obtained from x by a perturbation. The smoothed complexity of a problem is the worst smoothed complexity of any instance. Spielman and Teng introduced this notion for continuous problems. We apply the concept to combinatorial problems and study the smoothed complexity of three classical discrete problems: quicksort, lefttoright maxima counting, and shortest paths. This opens a vast eld of nice analyses (using for example generating functions in the discrete case) which should lead to a better understanding of complexity landscapes of algorithms.
Combining SpeedUp Techniques for ShortestPath Computations
 In Proc. 3rd Workshop on Experimental and Efficient Algorithms. LNCS
, 2004
"... Computing a shortest path from one node to another in a directed graph is a very common task in practice. This problem is classically solved by Dijkstra's algorithm. Many techniques are known to speed up this algorithm heuristically, while optimality of the solution can still be guaranteed. In m ..."
Abstract

Cited by 21 (6 self)
 Add to MetaCart
Computing a shortest path from one node to another in a directed graph is a very common task in practice. This problem is classically solved by Dijkstra's algorithm. Many techniques are known to speed up this algorithm heuristically, while optimality of the solution can still be guaranteed. In most studies, such techniques are considered individually.
Shortest Path Algorithms: Engineering Aspects
 In Proc. ESAAC ’01, Lecture Notes in Computer Science
, 2001
"... We review shortest path algorithms based on the multilevel 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 ..."
Abstract

Cited by 20 (3 self)
 Add to MetaCart
We review shortest path algorithms based on the multilevel 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.
Computing Shortest Paths with Comparisons and Additions
 SODA
, 2002
"... We present an undirected allpairs shortest paths (APSP) algorithm which runs on a pointer machine in time O(mnot(m, n)) while making O(ran log a(m, n)) comparisons and additions, where m and n are the number of edges and vertices, respectively, and a(ra, n) is Tarjan's inverseAckermann function. ..."
Abstract

Cited by 19 (7 self)
 Add to MetaCart
We present an undirected allpairs shortest paths (APSP) algorithm which runs on a pointer machine in time O(mnot(m, n)) while making O(ran log a(m, n)) comparisons and additions, where m and n are the number of edges and vertices, respectively, and a(ra, n) is Tarjan's inverseAckermann function. This improves upon all previous comparison & additionbased APSP algorithms when the graph is sparse, i.e., when m = o(n log n). At the heart of our APSP algorithm is a new singlesource shortest paths algorithm which runs in time O(ma(m,n) + nloglogr) on a pointer machine, where r is the ratio of the maximumtominimum edge length. So long as r < 2 '~°(a) this algorithm is faster than any implementation of Dijkstra's classical algorithm in the comparisonaddition model. For directed graphs we give an O(ra + nlogr)time comparison & additionbased SSSP algorithm on a pointer machine. Similar algorithms assuming integer weights or the RAM model were given earlier.
A shortest path algorithm for realweighted undirected graphs
 in 13th ACMSIAM Symp. on Discrete Algs
, 1985
"... Abstract. We present a new scheme for computing shortest paths on realweighted undirected graphs in the fundamental comparisonaddition model. In an efficient preprocessing phase our algorithm creates a linearsize structure that facilitates singlesource shortest path computations in O(m log α) ti ..."
Abstract

Cited by 12 (3 self)
 Add to MetaCart
Abstract. We present a new scheme for computing shortest paths on realweighted undirected graphs in the fundamental comparisonaddition model. In an efficient preprocessing phase our algorithm creates a linearsize structure that facilitates singlesource shortest path computations in O(m log α) time, where α = α(m, n) is the very slowly growing inverseAckermann function, m the number of edges, and n the number of vertices. As special cases our algorithm implies new bounds on both the allpairs and singlesource shortest paths problems. We solve the allpairs problem in O(mnlog α(m, n)) time and, if the ratio between the maximum and minimum edge lengths is bounded by n (log n)O(1) , we can solve the singlesource problem in O(m + nlog log n) time. Both these results are theoretical improvements over Dijkstra’s algorithm, which was the previous best for real weighted undirected graphs. Our algorithm takes the hierarchybased approach invented by Thorup. Key words. singlesource shortest paths, allpairs shortest paths, undirected graphs, Dijkstra’s
Experimental Evaluation of a New Shortest Path Algorithm (Extended Abstract)
, 2002
"... We evaluate the practical eciency of a new shortest path algorithm for undirected graphs which was developed by the rst two authors. This algorithm works on the fundamental comparisonaddition model. Theoretically, this new algorithm outperforms Dijkstra's algorithm on sparse graphs for the al ..."
Abstract

Cited by 12 (4 self)
 Add to MetaCart
We evaluate the practical eciency of a new shortest path algorithm for undirected graphs which was developed by the rst two authors. This algorithm works on the fundamental comparisonaddition model. Theoretically, this new algorithm outperforms Dijkstra's algorithm on sparse graphs for the allpairs shortest path problem, and more generally, for the problem of computing singlesource shortest paths from !(1) different sources. Our extensive experimental analysis demonstrates that this is also the case in practice. We present results which show the new algorithm to run faster than Dijkstra's on a variety of sparse graphs when the number of vertices ranges from a few thousand to a few million, and when computing singlesource shortest paths from as few as three different sources.