Elsevier

Computers & Operations Research

Volume 50, October 2014, Pages 154-160
Computers & Operations Research

A lower bound for the quickest path problem

https://doi.org/10.1016/j.cor.2014.04.015Get rights and content

Abstract

The point-to-point quickest path problem is a classical network optimization problem with numerous applications, including that of computing driving directions. In this paper, we define a lower bound on the time-to-target which is both accurate and fast to compute. We show the potential of this bound by embedding it into an A algorithm. Computational results on three large European metropolitan road networks, taken from the OpenStreetMap database, show that the new lower bound allows us to achieve an average reduction of 14.36%. This speed-up is valuable for a typical web application setting, where a server needs to answer a multitude of quickest path queries at the same time. Even greater computing time reductions (up to 28.06%) are obtained when computing paths in areas with moderate speeds, e.g. historical city centers.

Introduction

The determination of shortest or quickest paths on road networks is the basic ingredient of driving directions computation as well as of logistic planning and traffic simulation. In this paper we study one of the most common variants of the problem, where the goal is to determine a least duration point-to-point path in a directed graph.

Let G=(V,A) be a graph, where V is a node set and A is an arc set. We assume that each node iV corresponds to a point in a plane P. With each arc (i,j)A are associated a curve along P, a non-negative constant travel time tij, a positive length lij and a speed νij=lij/tij.

Given a path p=(s=i1,i2,,ik=d) from an origin sV to a destination dV, its traversal time zp is defined as h=1ktihih+1. We aim to determine a path p such that zp is minimum. Let z be such minimum duration.

The quickest path problem (QPP) can be solved by means of the classical Dijkstra׳s algorithm [1]. Unfortunately, the algorithm is far too slow for a typical web application setting, where a server needs to answer several quickest path queries in a fraction of a second on graphs with millions of nodes. This has motivated a plethora of algorithms and speed-up techniques in the past decade. We refer the reader to Delling et al. [2] and Sommer [3] for in-depth reviews. In the following, we survey only those papers that are more directly related to our contribution.

When dealing with the QPP, we can define a function z̲(i,d) that gives a lower bound on the minimum travel time from node i to target d. This bound can be used in an A algorithm [8], a best-first search that associates with each node i a label equal to the known distance from the starting node s to the current node i plus the lower bound on the time-to-target z̲(i,d). It has been proved [5] that an A search is equivalent to Dijkstra׳s algorithm with reduced travel times t̲ij=tijz̲(i,d)+z̲(j,d). On the other hand, Dijkstra׳s algorithm can be seen as an A procedure with a null lower bound. This implies that an A algorithm with a nonnegative lower bound function visits no more vertices than the Dijkstra׳s algorithm.

In an Euclidean graph, a trivial lower bound z̲T(i,d) is based on the Euclidean distance between i and d and the average speed νG=max(i,j)Aνij of the fastest road anywhere in the network. Let xi and yi be the coordinates of node i within a Cartesian coordinate system. Then,z̲T(i,d)=(xixd)2+(yiyd)2νG.Since this is a very conservative estimation, the speed up (with respect to Dijkstra׳s algorithm) is rather small [4].

In this paper, we introduce a relaxation whose solution can be any curve from i to d in the plane. We show the potential of this bound by embedding it into an A algorithm which is tested on large metropolitan graphs. In Section 2, we describe the new lower bounding procedure. In Section 3, we evaluate the quality and the computing time of the new lower bound and whether it is beneficial for quickest path computations on large graphs. This is followed by the conclusions.

Section snippets

A lower bound

Let R be a rectangle in the plane P with vertices A, B, C and D such that (Fig. 1)xsxA=xB<xC=xDxdysyA=yD<yC=yByd

The length of opposite sides are W=xCxA and H=yCyA. With rectangle R is associated a set of arcs AR made up of the arcs whose corresponding curve has a nonempty intersection with the interior int(R) of R. LetνR=max(i,j)ARνijbe the maximum speed in rectangle AR, where νRνG. In the following, we determine a lower bound on z as the traversal time z̲(z) of a least duration

Computational results

Our computational experiments aimed at evaluating the quality and the computing time of the new lower bound and whether it is beneficial for quickest path computations on large graphs. The new and the Euclidean lower bounds were both embedded in an A unidirectional algorithm. The lower bounding procedures were coded in C++ and embedded into the unidirectional A algorithm implementation of Boost Graph library [6]. The codes were run on a MacBook Pro with a 2.53-GHz Intel Core 2 Duo processor

Conclusions

In this paper, we have introduced a new lower bound for the quickest path problem on Euclidean networks. Computational results on three large European metropolitan road networks, taken from the OpenStreetMap database, show that the lower bound is both accurate and fast to compute. In particular, we were able to achieve, even in the worst case, an average reduction of 3.56% in computing time because of the reduced computational effort required by our procedure with respect to the Euclidean

Acknowledgments

This research was partially supported by the Ministero dell׳Istruzione, dell׳ Università e della Ricerca Scientifica (MIUR) of Italy (Progetto PRIN 2009). This support is gratefully acknowledged.

References (8)

  • E.W. Dijkstra

    A note on two problems in connexion with graphs

    Numer Math

    (1959)
  • D. Delling et al.

    Engineering route planning algorithms

  • C. Sommer

    Shortest-path queries in static networks

    ACM Comput Surv

    (2014)
  • Goldberg AV, Harrelson C. Computing the shortest path: A⁎ search meets graph theory. In: Proceedings of the 16th annual...
There are more references available in the full text version of this article.

Cited by (0)

View full text