Geometric shortest path containers [online]

Abstract

In this paper, we consider Dijkstra\u27s algorithm for the single source single target shortest path problem in large sparse graphs. The goal is to reduce the response time for on-line queries by using precomputed information. Due to the size of the graph, preprocessing space requirements can be only linear in the number of nodes. We assume that a layout of the graph is given. In the preprocessing, we determine from this layout a geometric object for each edge containing all nodes that can be reached by a shortest path starting with that edge. Based on these geometric objects, the search space for on-line computation can be reduced significantly. Shortest path queries can then be answered by Dijkstra\u27s algorithm restricted to edges where the corresponding geometric object contains the target. We present an extensive experimental study comparing the impact of different types of objects. The test data we use are real-world traffic networks, the typical field of application for this scenario. Furthermore, we present new algorithms as well as an empirical study for the dynamic case of this problem, where edge weights are subject to change and the geometric containers have to be updated. We evaluate the quality and the time for different update strategies that guarantee correct shortest paths. Finally, we present a software framework in C++ to realize the implementations of all of our variants of Dijkstra\u27s algorithm. A basic implementation of the algorithm is refined for each modification and - even more importantly - these modifications can be combined in any possible way without loss of efficiency

    Similar works