w
https://www.microsoft.com/en-us/research/wp-content/uploads/2011/05/crp-sea.pdf
1 Introduction
The past decade has seen a great deal of research on finding point-to-point shortest paths on road networks [7]. Although Dijkstra’s algorithm [10] runs in almost linear time with very little overhead, it still takes a few seconds on continentalsized graphs. Practical algorithms use a two-stage approach: preprocessing takes a few minutes (or even hours) and produces a (linear) amount of auxiliary data, which is then used to perform queries in real time. Most previous research focused on the most natural metric, driving times. Real-world systems, however, often support other natural metrics as well, such as shortest distance, walking, biking, avoid U-turns, avoid/prefer freeways, or avoid left turns.
We consider the customizable route planning problem, whose goal is to perform real-time queries on road networks with arbitrary metrics. Such algorithms can be used in two scenarios: they may keep several active metrics at once (to answer queries for any of them), or new metrics can be generated on the fly. A system with these properties has obvious attractions. It supports real-time traffic updates and other dynamic scenarios, allows easy customization by handling any combination of standard metrics, and can even provide personalized driving directions (for example, for a truck with height and weight restrictions). To implement such a system, we need an algorithm that allows real-time queries, has fast customization (a few seconds), and keeps very little data for each metric. Most importantly, it must be robust: all three properties must hold for any metric. No existing algorithm meets these requirements.