Highway Hierarchies Hasten Exact Shortest Path Queries

Similar documents
Accurate High-Performance Route Planning

Accurate High-Performance Route Planning

Highway Hierarchies Star

Engineering Route Planning Algorithms

Route Planning in Road Networks

Engineering Route Planning Algorithms

Dynamic Highway-Node Routing

Highway Hierarchies (Dominik Schultes) Presented by: Andre Rodriguez

Engineering Highway Hierarchies

Reach for A : an Efficient Point-to-Point Shortest Path Algorithm

Point-to-Point Shortest Path Algorithms with Preprocessing

Highway Hierarchies Star

Robust, Almost Constant Time Shortest-Path Queries in Road Networks

Computing Many-to-Many Shortest Paths Using Highway Hierarchies

Route Planning. Reach ArcFlags Transit Nodes Contraction Hierarchies Hub-based labelling. Tabulation Dijkstra Bidirectional A* Landmarks

Experimental Study on Speed-Up Techniques for Timetable Information Systems

Algorithm Engineering for Route Planning: An Update International Symposium on Algorithms and Computation 2011 Dorothea Wagner December 6, 2011

Highway Dimension and Provably Efficient Shortest Paths Algorithms

2) Multi-Criteria 1) Contraction Hierarchies 3) for Ride Sharing

SHARC: Fast and Robust Unidirectional Routing

Time-Dependent Contraction Hierarchies

Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks

Time-Dependent Contraction Hierarchies and Approximation

Parallel Hierarchies for Solving Single Source Shortest Path Problem

arxiv: v1 [cs.ds] 5 Oct 2010

Dynamic Arc-Flags in Road Networks

I/O Efficieny of Highway Hierarchies

Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra s Algorithm

Scalable Computing: Practice and Experience Volume 12, Number 3, pp

R. Kalpana #1 P. Thambidurai *2. Puducherry, India. Karaikal, Puducherry, India

Mobile Route Planning

Landmark-Based Routing in Dynamic Graphs

Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra s Algorithm

Using Multi-Level Graphs for Timetable Information. Frank Schulz, Dorothea Wagner, and Christos Zaroliagis

Route Planning with Flexible Objective Functions

Engineering Multi-Level Overlay Graphs for Shortest-Path Queries

Route Planning in Road Networks with Turn Costs

Car or Public Transport Two Worlds

Reach for A : Efficient Point-to-Point Shortest Path Algorithms

Experimental Study on Speed-Up Techniques for Timetable Information Systems

Reach for A : Efficient Point-to-Point Shortest Path Algorithms

Core Routing on Dynamic Time-Dependent Road Networks

Parallel Time-Dependent Contraction Hierarchies

Understanding Subgoal Graphs by Augmenting Contraction Hierarchies

External Memory Algorithms and Data Structures Fall Project 3 A GIS system

Transit Nodes Lower Bounds and Refined Construction

Shortest-Path Indices: Establishing a Methodology for Shortest-Path Problems

Feasibility Study: Subgoal Graphs on State Lattices

ecompass ecompass TR 006 User-Constrained Multi-Modal Route Planning

Simon Peyton Jones (giving the talk) Andrew Goldberg (who did all the work) Microsoft Research

Shortest Paths: Basics. Algorithms and Networks 2016/2017 Johan M. M. van Rooij Hans L. Bodlaender

Studienarbeit Parallel Highway-Node Routing

Advanced Route Planning in Transportation Networks

Shortest Paths: Algorithms for standard variants. Algorithms and Networks 2017/2018 Johan M. M. van Rooij Hans L. Bodlaender

Bidirectional search and Goal-directed Dijkstra

A Goal-Directed Shortest Path Algorithm Using Precomputed Cluster Distances

Fast and Compact Oracles for Approximate Distances in Planar Graphs

Enabling Efficient and Accurate Large-Scale Simulations of VANETs for Vehicular Traffic Management

Route Planning for Bicycles Exact Constrained Shortest Paths made Practical via Contraction Hierarchy

Hub Label Compression

Scalability of Route Planning Techniques

Evaluating Contraction Hierarchies on Real and Generated Road Networks

Performance Analysis of Parallel Speedup Techniques for Shortest Path Queries in Networks of Random and Planar Types

Engineering Time-Expanded Graphs for Faster Timetable Information

Engineering shortest-path algorithms for dynamic networks

Data Structures for Moving Objects

Hierarchical Hub Labelings for Shortest Paths

CS4800: Algorithms & Data Jonathan Ullman

Point-to-Point Shortest Path Algorithms with Preprocessing

Engineering Multilevel Graph Partitioning Algorithms

Exploring Graph Partitioning for Shortest Path Queries on Road Networks

Customizable Contraction Hierarchies

Better Approximation of Betweenness Centrality

Contraction Hierarchies briefly explained

Visual Traffic Jam Analysis based on Trajectory Data

Partitioning Graphs to Speed Up Dijkstra s Algorithm

Shortest Path Searching for Road Network using A* Algorithm

SILC: Efficient Query Processing on Spatial Networks

Alternative Routes in Road Networks

Optimal Routing Algorithms

Categorical Range queries on Spatial Networks

PHAST: Hardware-Accelerated Shortest Path Trees

Collaboration with: Dieter Pfoser, Computer Technology Institute, Athens, Greece Peter Wagner, German Aerospace Center, Berlin, Germany

Customizable Route Planning in Road Networks

Graph Indexing of Road Networks for Shortest Path Queries with Label Restrictions

Multi-Hop Ride Sharing

Trees, Trees and More Trees

Combining Speed-up Techniques for Shortest-Path Computations

L3 Network Algorithms

Route Planning with Breaks and Truck Driving Bans Using Time-Dependent Contraction Hierarchies

I/O Efficient Algorithms for Exact Distance Queries on Disk- Resident Dynamic Graphs

Tanuj Kr Aasawat, Tahsin Reza, Matei Ripeanu Networked Systems Laboratory (NetSysLab) University of British Columbia

Algorithms for Matching and Predicting Trajectories

Dynamic Routing 1. 1 Introduction. Neil Kalinowski 2 and Carola Wenk 2

Search in Social Networks with Access Control

Generalizing the Optimality of Multi-Step k-nearest Neighbor Query Processing

CS644 Advanced Networks

Customizable Route Planning

Indexing. Jan Chomicki University at Buffalo. Jan Chomicki () Indexing 1 / 25

Combining Speedup Techniques based on Landmarks and Containers

Transcription:

Sanders/Schultes: Highway Hierarchies 1 Highway Hierarchies Hasten Exact Shortest Path Queries Peter Sanders and Dominik Schultes Universität Karlsruhe October 2005

Sanders/Schultes: Highway Hierarchies 2 How do I get there from here? Applications route planning systems in the internet (e.g. www.map24.de) car navigation systems

Sanders/Schultes: Highway Hierarchies 3 Goals exact shortest (i.e. fastest) paths in large road networks fast queries fast preprocessing low space consumption? scale-invariant, i.e., optimised not only for long paths

Sanders/Schultes: Highway Hierarchies 4 Related Work method query prepr. space scale source basic A ++ ++ + [Hart et al. 68] bidirected ++ ++ + [Pohl 71] heuristic hwy hier. + ++ + + [commercial] separator hierarchies o? [Wagner et al. 02] geometric containers ++ + + [Wagner et al. 03] bitvectors ++ o [Lauther... 04] reach based o o + + [Gutman 04] landmarks + ++ [Goldberg et al. 04] highway hierarchies ++ + + + here

Sanders/Schultes: Highway Hierarchies 5 DIJKSTRA s Algorithm not practicable Dijkstra s t for large road networks (e.g. Western Europe: 18 000 000 nodes) bidirectional Dijkstra s t improves the running time, but still too slow

Sanders/Schultes: Highway Hierarchies 6 Commercial Systems 1. Search from the source and target node ( bidirectional ) within a certain radius (e.g. 20 km), consider all roads 2. Continue the search within a larger radius (e.g. 100 km), consider only national roads and motorways 3. Continue the search, consider only motorways fast, but not exact

Sanders/Schultes: Highway Hierarchies 7 Exact Highway Hierarchies complete search within a local area s t search in a (thinner) highway network = minimal graph that preserves all shortest paths contract trees and lines iterate highway hierarchy s t

Sanders/Schultes: Highway Hierarchies 8 A Meaning of Local Dijkstra s Algorithm from node s nodes are settled in a fixed order Dijkstra rank r s (v) of node v = rank w.r.t. this order For a parameter H, d H (s) := d(s,u), where r s (u) = H 9 8 r s = 4 7 1 0 s 3 N 5 (s) 5 2 6 H-neighbourhood of s: N H (s) := {v V d(s,v) d H (s)}

Sanders/Schultes: Highway Hierarchies 9 Highway Network N H (s) N H (t) s t Highway Edge (u,v) belongs to highway network iff there are nodes s and t s.t. (u,v) is on the shortest path from s to t and v N H (s) and u N H (t)

Sanders/Schultes: Highway Hierarchies 10 Construction Example: Western Europe, bounding box around Karlsruhe

Sanders/Schultes: Highway Hierarchies 11 Complete Road Network

Sanders/Schultes: Highway Hierarchies 12 Highway Network

Sanders/Schultes: Highway Hierarchies 13 Attached Treesgy

Sanders/Schultes: Highway Hierarchies 14 2-Coregy

Sanders/Schultes: Highway Hierarchies 15 Contract Linesgy

Sanders/Schultes: Highway Hierarchies 16 Highway Hierarchy: Level 1 and Level 2

Sanders/Schultes: Highway Hierarchies 17 Fast Construction Phase 1: Construction of Partial Shortest Path Trees For each node s 0, perform an SSSP search from s 0. A node s state is either active or passive. active s 0 is active. passive A node inherits the state of its parent in the shortest path tree. s 0 If the abort condition is fulfilled for a node p, p s state is set to passive. The search is aborted when all queued nodes are passive.

Sanders/Schultes: Highway Hierarchies 18 Fast Construction Abort Condition: N H (s 1 ) s 0 s 1 p N H (p) p is set to passive iff N H (s 1 ) N H (p) 1

Sanders/Schultes: Highway Hierarchies 19 Fast Construction, Phase 2 Theorem: The tree roots and leaves encountered in Phase 1 witness all highway edges. The highway edges can be found in time linear in the tree sizes. N H (s 0 ) N H (t 0 ) leaf of partial s 0 t 0 shortest path tree Highway

Sanders/Schultes: Highway Hierarchies 20 Query Bidirectional version of Dijkstra s Algorithm Restrictions: Do not leave the neighbourhood of the entrance point to the current level. Instead: switch to the next level. s N (v) level 1 v level 0 N (s) Do not enter a tree or a line. entrance point to level 0 entrance point to level 1 entrance point to level 2

Sanders/Schultes: Highway Hierarchies 21 Query Theorem: We still find the shortest path.

Sanders/Schultes: Highway Hierarchies 22 Query Example: from Karlsruhe, Am Fasanengarten 5 to Palma de Mallorca

Sanders/Schultes: Highway Hierarchies 23 Bounding Box: 20 km Level 0 Search Space

Sanders/Schultes: Highway Hierarchies 24 Bounding Box: 20 km Level 0 Search Space

Sanders/Schultes: Highway Hierarchies 25 Bounding Box: 20 km Level 1 Search Space

Sanders/Schultes: Highway Hierarchies 26 Bounding Box: 20 km Level 1 Search Space

Sanders/Schultes: Highway Hierarchies 27 Bounding Box: 20 km Level 2 Search Space

Sanders/Schultes: Highway Hierarchies 28 Bounding Box: 20 km Level 2 Search Space

Sanders/Schultes: Highway Hierarchies 29 Bounding Box: 20 km Level 3 Search Space

Sanders/Schultes: Highway Hierarchies 30 Bounding Box: 80 km Level 4 Search Space

Sanders/Schultes: Highway Hierarchies 31 Bounding Box: 400 km Level 6 Search Space

Sanders/Schultes: Highway Hierarchies 32 Level 8 Search Space

Sanders/Schultes: Highway Hierarchies 33 Level 10 Search Space

Sanders/Schultes: Highway Hierarchies 34 Experiments W. Europe (PTV) Our Inputs USA (Tiger Line) 18 029 721 #nodes 24 278 285 22 217 686 #edges 29 106 596 13 #road categories 4 10 130 speed range [km/h] 40 100 2:43 preproc time 1 [h] 4:20 1 using a faster method that computes supersets of the highway networks

Sanders/Schultes: Highway Hierarchies 35 Shrinking of the Highway Networks Europe 10 7 10 6 H = 75 H = 125 H = 175 H = 300 10 5 #edges 10 4 1000 100 10 1 0 2 4 6 8 10 12 14 16 level

Sanders/Schultes: Highway Hierarchies 36 Queries Time Query Time [ms] 0 2 4 6 8 10 12 USA Europe 0 2 4 6 8 10 12 2 12 2 14 2 16 2 18 2 20 2 22 2 24 Dijkstra Rank

Sanders/Schultes: Highway Hierarchies 37 Queries Speedup Speedup (#settled nodes) 2 5 20 200 1000 5000 2 10 100 500 2000 USA Europe 2 12 2 14 2 16 2 18 2 20 2 22 2 24 Dijkstra Rank

Sanders/Schultes: Highway Hierarchies 38 Conclusion exact shortest (i.e. fastest) paths in large road networks highway network e.g. Europe 18 000 000 nodes preserves shortest paths fast queries < 8 ms on average fast preprocessing 3 hours reasonable space consumption 1.8 GB, improvable scale-invariant, i.e., optimised not only for long paths multilevel approach

Sanders/Schultes: Highway Hierarchies 39 Future Work speed up preprocessing (e.g. parallelisation) speed up queries (e.g. combination with goal directed approaches like landmarks, geometric containers, or bit vectors) fast local updates of the highway network (e.g. due to traffic jams) external memory

Sanders/Schultes: Highway Hierarchies 40 Summary of the Results input params constr. query USA Europe Germany #nodes 24 278 285 18 029 721 4 345 567 #edges 29 106 596 22 217 686 5 446 916 #degree 2 nodes 7 316 573 2 375 778 604 540 #road categories 4 13 13 average speeds [km/h] 40 100 10 130 10 130 H 225 125 100 CPU time [h] 4.3 2.7 0.5 #levels 7 11 11 avg. CPU time [ms] 7.04 7.38 5.30 #settled nodes 3 912 4 065 3 286 speedup (CPU time) 2 654 2 645 680 speedup (#settled nodes) 3 033 2 187 658 efficiency 112% 34% 13% main memory usage [MB] 2 443 1 850 466 (346)