Accurate High-Performance Route Planning

Size: px
Start display at page:

Download "Accurate High-Performance Route Planning"

Transcription

1 Sanders/Schultes: Route Planning 1 Accurate High-Performance Route Planning Peter Sanders Dominik Schultes Institut für Theoretische Informatik Algorithmik II Universität Karlsruhe (TH) Eindhoven, March 6, 2005

2 Sanders/Schultes: Route Planning 2 How do I get there from here? Applications route planning systems in the internet (e.g. car navigation systems

3 Sanders/Schultes: Route Planning 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

4 Sanders/Schultes: Route Planning 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? [several groups 02] geometric containers [Wagner et al. 03] bitvectors ++ o [Lauther... 04] landmarks + ++ [Goldberg et al. 04] landmarks + reaches ++ o o o [Goldberg et al. 06] highway hierarchies here

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

6 Sanders/Schultes: Route Planning 6 Naive Route Planning 1. Look for the next reasonable motorway

7 Sanders/Schultes: Route Planning 7 Naive Route Planning 1. Look for the next reasonable motorway 2. Drive on motorways to a location close to the target

8 Sanders/Schultes: Route Planning 8 Naive Route Planning 1. Look for the next reasonable motorway 2. Drive on motorways to a location close to the target 3. Search the target starting from the motorway exit

9 Sanders/Schultes: Route Planning 9 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

10 Sanders/Schultes: Route Planning 10 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 network, e.g., iterate highway hierarchy s t

11 Sanders/Schultes: Route Planning 11 A Meaning of Local choose neighbourhood radius r(s) e.g. distance to the H-closest node for a fixed parameter H define neighbourhood of s: N (s) := {v V d(s,v) r(s)} example for H = r s = s 3 N 5 (s) 5 2 6

12 Sanders/Schultes: Route Planning 12 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 canonical shortest path from s to t and v N (s) and u N (t)

13 Sanders/Schultes: Route Planning 13 Contraction highway nodes and edges

14 Sanders/Schultes: Route Planning 14 Contraction bypass node

15 Sanders/Schultes: Route Planning 15 Contraction shortcuts

16 Sanders/Schultes: Route Planning 16 Contraction bypass node

17 Sanders/Schultes: Route Planning 17 Contraction

18 Sanders/Schultes: Route Planning 18 Contraction enters component component (of bypassed nodes) leaves component

19 Sanders/Schultes: Route Planning 19 Contraction core

20 Sanders/Schultes: Route Planning 20 Contraction Which nodes should be bypassed? Use some heuristic taking into account the number of shortcuts that would be created and the degree of the node.

21 Sanders/Schultes: Route Planning 21 Construction Example: Western Europe, bounding box around Karlsruhe

22 Sanders/Schultes: Route Planning 22 Complete Road Network

23 Sanders/Schultes: Route Planning 23 Highway Network

24 Sanders/Schultes: Route Planning 24 Contracted Network (Core)gy

25 Sanders/Schultes: Route Planning 25 Highway Hierarchy: Level 1 and Level 2

26 Sanders/Schultes: Route Planning 26 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.

27 Sanders/Schultes: Route Planning 27 Fast Construction Abort Condition: N H (s 1 ) s 0 s 1 p N H (p) p is set to passive iff N(s 1 ) N(p) 1

28 Sanders/Schultes: Route Planning 28 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

29 Sanders/Schultes: Route Planning 29 Fast Construction Problem: very long edges, e.g. ferries

30 Sanders/Schultes: Route Planning 30 Faster Construction Solution: An active node v is declared to be a maverick if d(s 0,v) > f r(s 0 ). When all active nodes are mavericks, the search from passive nodes is no longer continued. superset of the highway network mavericks active s 0 f d H (s 0 ) passive

31 Sanders/Schultes: Route Planning 31 Space Consumption Choose neighborhood sizes such that levels shrink geometrically linear space consumption Arbitrarily Small Constant Factor (not implemented): Large H 0 large level-0 radius small higher levels No r( ) needed for level-0 search (under certain assumptions) Mapping to next level by hash table

32 Sanders/Schultes: Route Planning 32 Query Bidirectional version of Dijkstra s Algorithm Restrictions: level 1 N(v) Do not leave the neighbourhood of the entrance point to the current level. s v level 0 N(s) Instead: switch to the next level. Do not enter a component of bypassed nodes. entrance point to level 0 entrance point to level 1 entrance point to level 2

33 Sanders/Schultes: Route Planning 33 Query (bidir. Dijkstra I) Operations on two priority queues Q and Q : void insert(nodeid, key) void decreasekey(nodeid, key) nodeid deletemin() node u has key δ(u) (tentative) distance from the respective source node

34 Sanders/Schultes: Route Planning 34 Query (bidir. Dijkstra II) query(s, t) { Q.insert(s, 0); Q.insert(t, 0); while ( Q Q /0) do { {, }; //select direction u := Q.deleteMin(); relaxedges(, u); } }

35 Sanders/Schultes: Route Planning 35 Query (bidir. Dijkstra III) relaxedges(, u) { } } foreach e = (u,v) E do { k := δ(u) + w(e); if v Q then Q.decreaseKey(v, k); else Q.insert(v, k);

36 Sanders/Schultes: Route Planning 36 Query (Hwy I) Operations on two priority queues Q and Q : void insert(nodeid, key) void decreasekey(nodeid, key) nodeid deletemin() node u has key (δ(u), l(u), gap(u)) (tentative) distance from the respective source node search level gap to the next neighbourhood border lexicographical order: <, <, >

37 Sanders/Schultes: Route Planning 37 Query (Hwy II) query(s, t) { Q.insert(s, (0,0,r 0 (s))); Q.insert(t, (0,0,r 0 (t))); while ( Q Q /0) do { {, }; //select direction u := Q.deleteMin(); relaxedges(, u); } }

38 Sanders/Schultes: Route Planning 38 Query (Hwy III) relaxedges(, u) { foreach e = (u,v) E do { if e enters a component then continue; // Restriction 2 gap := gap(u); if gap = then gap := r l(u) (u); for (l := l(u); w(e) > gap; l++) do gap := r l (u); // leave component // go upwards if l(e) < l then continue; // Restriction 1 k := (δ(u) + w(e), l, gap w(e)); if v Q then Q.decreaseKey(v, k); else Q.insert(v, k); } }

39 Sanders/Schultes: Route Planning 39 Query Theorem: We still find the shortest path.

40 Sanders/Schultes: Route Planning 40 Query Example: from Karlsruhe, Am Fasanengarten 5 to Palma de Mallorca

41 Sanders/Schultes: Route Planning 41 Bounding Box: 20 km Level 0 Search Space

42 Sanders/Schultes: Route Planning 42 Bounding Box: 20 km Level 0 Search Space

43 Sanders/Schultes: Route Planning 43 Bounding Box: 20 km Level 1 Search Space

44 Sanders/Schultes: Route Planning 44 Bounding Box: 20 km Level 1 Search Space

45 Sanders/Schultes: Route Planning 45 Bounding Box: 20 km Level 2 Search Space

46 Sanders/Schultes: Route Planning 46 Bounding Box: 20 km Level 2 Search Space

47 Sanders/Schultes: Route Planning 47 Bounding Box: 20 km Level 3 Search Space

48 Sanders/Schultes: Route Planning 48 Bounding Box: 80 km Level 4 Search Space

49 Sanders/Schultes: Route Planning 49 Bounding Box: 400 km Level 6 Search Space

50 Sanders/Schultes: Route Planning 50 Level 8 Search Space

51 Sanders/Schultes: Route Planning 51 Level 10 Search Space

52 Sanders/Schultes: Route Planning 52 Experiments W. Europe (PTV) USA/CAN (PTV) #nodes #directed edges construction [min] search time [ms] speedup ( DIJKSTRA) 3 316

53 Sanders/Schultes: Route Planning 53 Shrinking of the Highway Networks 1e+08 1e+07 Europe H = 40 H = 60 H = 80 1e #edges level

54 Sanders/Schultes: Route Planning 54 Queries Time Query Time [ms] USA/CAN Europe Dijkstra Rank

55 Sanders/Schultes: Route Planning 55 Queries Speedup Speedup (CPU time) USA/CAN Europe Dijkstra Rank

56 Sanders/Schultes: Route Planning 56 Conclusion exact shortest (i.e. fastest) paths in large road networks highway network preserves shortest paths fast queries 2.5 ms on average fast preprocessing 19 min reasonable space consumption overhead per node: 32 byte, improvable e.g. Europe nodes scale-invariant, i.e., optimised not only for long paths multilevel approach

57 Sanders/Schultes: Route Planning 57 Future Work combination with goal directed approaches fast, local updates on the highway network (e.g. for traffic jams) Implementation for mobile devices (flash access... ) Flexible objective functions...

58 Sanders/Schultes: Route Planning 58

59 Sanders/Schultes: Route Planning 59 Road Network of Europe

60 Sanders/Schultes: Route Planning 60 Road Network USA/Can

61 Sanders/Schultes: Route Planning 61 Worst Case Costs Europe Frequency (* ) #settled nodes

62 Sanders/Schultes: Route Planning 62 Unidirectional Search Histogram USA Frequency (* ) #settled nodes

63 Sanders/Schultes: Route Planning 63 Unidirectional Search Costs By Region xxx xxx xxx xxx xxx xxx xxx xxx easy... difficult

64 Sanders/Schultes: Route Planning 64 Canonical Shortest Paths 0 N(s N(s 1 ) N(t 1 ) 0 ) 0 1 N(v ) u 1 2 v s 2 0 s 1 t 2 1 t u v (a) Construction, started from s 0. N(s 1 ) u 1 v N(t 0 ) 2 2 N(u ) s 2 0 s 1 t 2 1 t u v 0 N(v) (b) Construction, started from s 1.

65 Sanders/Schultes: Route Planning u 1 2 v s 2 0 s t t u v (c) Result of the construction.

Accurate High-Performance Route Planning

Accurate High-Performance Route Planning Sanders/Schultes: Route Planning 1 Accurate High-Performance Route Planning Peter Sanders Dominik Schultes Institut für Theoretische Informatik Algorithmik II Universität Karlsruhe (TH) http://algo2.iti.uka.de/schultes/hwy/

More information

Highway Hierarchies Hasten Exact Shortest Path Queries

Highway Hierarchies Hasten Exact Shortest Path Queries 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

More information

Highway Hierarchies Star

Highway Hierarchies Star Delling/Sanders/Schultes/Wagner: Highway Hierarchies Star 1 Highway Hierarchies Star Daniel Delling Dominik Schultes Peter Sanders Dorothea Wagner Institut für Theoretische Informatik Algorithmik I/II

More information

Highway Hierarchies (Dominik Schultes) Presented by: Andre Rodriguez

Highway Hierarchies (Dominik Schultes) Presented by: Andre Rodriguez Highway Hierarchies (Dominik Schultes) Presented by: Andre Rodriguez Central Idea To go from Tallahassee to Gainesville*: Get to the I-10 Drive on the I-10 Get to Gainesville (8.8 mi) (153 mi) (1.8 mi)

More information

Route Planning in Road Networks

Route Planning in Road Networks Sanders/Schultes: Route Planning 1 Route Planning in Road Networks simple, flexible, efficient Peter Sanders Dominik Schultes Institut für Theoretische Informatik Algorithmik II Universität Karlsruhe (TH)

More information

Engineering Route Planning Algorithms

Engineering Route Planning Algorithms Sanders/Schultes: Route Planning 1 Engineering Route Planning Algorithms Peter Sanders Dominik Schultes Institut für Theoretische Informatik Algorithmik II Universität Karlsruhe (TH) in cooperation with

More information

Engineering Highway Hierarchies

Engineering Highway Hierarchies Engineering Highway Hierarchies Peter Sanders and Dominik Schultes Universität Karlsruhe (TH), 76128 Karlsruhe, Germany, {sanders,schultes}@ira.uka.de Abstract. Highway hierarchies exploit hierarchical

More information

Engineering Route Planning Algorithms

Engineering Route Planning Algorithms Sanders/Schultes: Route Planning 1 Engineering Route Planning Algorithms Peter Sanders Dominik Schultes Institut für Theoretische Informatik Algorithmik II Universität Karlsruhe (TH) in cooperation with

More information

Dynamic Highway-Node Routing

Dynamic Highway-Node Routing Schultes/Sanders: Dynamic Highway-Node Routing 1 Dynamic Highway-Node Routing Dominik Schultes Peter Sanders Institut für Theoretische Informatik Algorithmik II Universität Karlsruhe (TH) http://algo2.iti.uka.de/schultes/hwy/

More information

Computing Many-to-Many Shortest Paths Using Highway Hierarchies

Computing Many-to-Many Shortest Paths Using Highway Hierarchies Computing Many-to-Many Shortest Paths Using Highway Hierarchies Abstract Sebastian Knopp Peter Sanders Dominik Schultes Frank Schulz We present a fast algorithm for computing all shortest paths between

More information

Highway Hierarchies Star

Highway Hierarchies Star DIMACS Series in Discrete Mathematics and Theoretical Computer Science Highway Hierarchies Star Daniel Delling, Peter Sanders, Dominik Schultes, and Dorothea Wagner Abstract. We study two speedup techniques

More information

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

2) Multi-Criteria 1) Contraction Hierarchies 3) for Ride Sharing ) Multi-Criteria ) Contraction Hierarchies ) for Ride Sharing Robert Geisberger Bad Herrenalb, 4th and th December 008 Robert Geisberger Contraction Hierarchies Contraction Hierarchies Contraction Hierarchies

More information

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

Reach for A : an Efficient Point-to-Point Shortest Path Algorithm Reach for A : an Efficient Point-to-Point Shortest Path Algorithm Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Joint with Haim Kaplan and Renato Werneck Einstein

More information

Point-to-Point Shortest Path Algorithms with Preprocessing

Point-to-Point Shortest Path Algorithms with Preprocessing Point-to-Point Shortest Path Algorithms with Preprocessing Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Joint work with Chris Harrelson, Haim Kaplan, and Retato

More information

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

Algorithm Engineering for Route Planning: An Update International Symposium on Algorithms and Computation 2011 Dorothea Wagner December 6, 2011 Algorithm Engineering for Route Planning: An Update International Symposium on Algorithms and Computation 2011 Dorothea Wagner December 6, 2011 FACULTY FOR INFORMATICS INSTITUTE OF THEORETICAL INFORMATICS

More information

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

Route Planning. Reach ArcFlags Transit Nodes Contraction Hierarchies Hub-based labelling. Tabulation Dijkstra Bidirectional A* Landmarks Route Planning Tabulation Dijkstra Bidirectional A* Landmarks Reach ArcFlags Transit Nodes Contraction Hierarchies Hub-based labelling [ADGW11] Ittai Abraham, Daniel Delling, Andrew V. Goldberg, Renato

More information

Highway Dimension and Provably Efficient Shortest Paths Algorithms

Highway Dimension and Provably Efficient Shortest Paths Algorithms Highway Dimension and Provably Efficient Shortest Paths Algorithms Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Joint with Ittai Abraham, Amos Fiat, and Renato

More information

Experimental Study on Speed-Up Techniques for Timetable Information Systems

Experimental Study on Speed-Up Techniques for Timetable Information Systems Experimental Study on Speed-Up Techniques for Timetable Information Systems Reinhard Bauer (rbauer@ira.uka.de) Daniel Delling (delling@ira.uka.de) Dorothea Wagner (wagner@ira.uka.de) ITI Wagner, Universität

More information

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

Robust, Almost Constant Time Shortest-Path Queries in Road Networks Robust, Almost Constant Time Shortest-Path Queries in Road Networks Peter Sanders and Dominik Schultes Universität Karlsruhe (TH), 76128 Karlsruhe, Germany, {sanders,schultes}@ira.uka.de Abstract. When

More information

arxiv: v1 [cs.ds] 5 Oct 2010

arxiv: v1 [cs.ds] 5 Oct 2010 Engineering Time-dependent One-To-All Computation arxiv:1010.0809v1 [cs.ds] 5 Oct 2010 Robert Geisberger Karlsruhe Institute of Technology, 76128 Karlsruhe, Germany geisberger@kit.edu October 6, 2010 Abstract

More information

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

Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra s Algorithm Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra s Algorithm Reinhard Bauer, Daniel Delling, Peter Sanders, Dennis Schieferdecker, Dominik Schultes, and Dorothea Wagner Universität

More information

SHARC: Fast and Robust Unidirectional Routing

SHARC: Fast and Robust Unidirectional Routing SHARC: Fast and Robust Unidirectional Routing Reinhard Bauer Daniel Delling Abstract During the last years, impressive speed-up techniques for Dijkstra s algorithm have been developed. Unfortunately, the

More information

Bidirectional search and Goal-directed Dijkstra

Bidirectional search and Goal-directed Dijkstra Computing the shortest path Bidirectional search and Goal-directed Dijkstra Alexander Kozyntsev October 18, 2010 Abstract We study the problem of finding a shortest path between two vertices in a directed

More information

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

Graph Indexing of Road Networks for Shortest Path Queries with Label Restrictions Graph Indexing of Road Networks for Shortest Path Queries with Label Restrictions Michael Rice University of California, Riverside Riverside, CA 92521 mrice@cs.ucr.edu Vassilis J. Tsotras University of

More information

Time-Dependent Contraction Hierarchies

Time-Dependent Contraction Hierarchies Time-Dependent Contraction Hierarchies G. Veit Batz, Daniel Delling, Peter Sanders, and Christian Vetter Universität Karlsruhe (TH), 76128 Karlsruhe, Germany {batz,delling,sanders,vetter}@ira.uka.de December

More information

Parallel Hierarchies for Solving Single Source Shortest Path Problem

Parallel Hierarchies for Solving Single Source Shortest Path Problem JOURNAL OF APPLIED COMPUTER SCIENCE Vol. 21 No. 1 (2013), pp. 25-38 Parallel Hierarchies for Solving Single Source Shortest Path Problem Łukasz Chomatek 1 1 Lodz University of Technology Institute of Information

More information

Dynamic Arc-Flags in Road Networks

Dynamic Arc-Flags in Road Networks Dynamic Arc-Flags in Road Networks Gianlorenzo D Angelo, Daniele Frigioni, and Camillo Vitale Department of Electrical and Information Engineering, University of L Aquila, Via Gronchi, 18, I 67100, L Aquila,

More information

Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks

Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks Robert Geisberger, Peter Sanders, Dominik Schultes, and Daniel Delling Universität Karlsruhe (TH), 76128 Karlsruhe, Germany,

More information

Time-Dependent Contraction Hierarchies and Approximation

Time-Dependent Contraction Hierarchies and Approximation Time-Dependent Contraction Hierarchies and Approximation Gernot Veit Batz, Robert Geisberger, Sabine Neubauer, and Peter Sanders Karlsruhe Institute of Technology (KIT), 76128 Karlsruhe, Germany {batz,geisberger,sanders}@kit.edu

More information

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

Shortest Paths: Basics. Algorithms and Networks 2016/2017 Johan M. M. van Rooij Hans L. Bodlaender Shortest Paths: Basics Algorithms and Networks 2016/2017 Johan M. M. van Rooij Hans L. Bodlaender 1 Shortest path problem(s) Undirected single-pair shortest path problem Given a graph G=(V,E) and a length

More information

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

Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra s Algorithm Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra s Algorithm Reinhard Bauer, Daniel Delling, Peter Sanders, Dennis Schieferdecker, Dominik Schultes, and Dorothea Wagner Universität

More information

Landmark-Based Routing in Dynamic Graphs

Landmark-Based Routing in Dynamic Graphs Landmark-Based Routing in Dynamic Graphs Daniel Delling and Dorothea Wagner Universität Karlsruhe (TH), 76128 Karlsruhe, Germany {delling,wagner}@ira.uka.de Abstract. Many speed-up techniques for route

More information

A Goal-Directed Shortest Path Algorithm Using Precomputed Cluster Distances

A Goal-Directed Shortest Path Algorithm Using Precomputed Cluster Distances A Goal-Directed Shortest Path Algorithm Using Precomputed Cluster Distances Jens Maue Diplomarbeit Diploma Thesis Department of Computer Science Saarland University, Saarbrücken June 2006 Topic by Prof.

More information

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

Shortest Paths: Algorithms for standard variants. Algorithms and Networks 2017/2018 Johan M. M. van Rooij Hans L. Bodlaender Shortest Paths: Algorithms for standard variants Algorithms and Networks 2017/2018 Johan M. M. van Rooij Hans L. Bodlaender 1 Shortest path problem(s) Undirected single-pair shortest path problem Given

More information

Mobile Route Planning

Mobile Route Planning Mobile Route Planning Peter Sanders, Dominik Schultes, and Christian Vetter Universität Karlsruhe (TH), 76128 Karlsruhe, Germany, {sanders,schultes}@ira.uka.de, veaac@gmx.de Abstract. We provide an implementation

More information

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

Reach for A : Efficient Point-to-Point Shortest Path Algorithms Reach for A : Efficient Point-to-Point Shortest Path Algorithms Andrew V. Goldberg 1 Haim Kaplan 2 Renato F. Werneck 3 October 2005 Technical Report MSR-TR-2005-132 We study the point-to-point shortest

More information

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

External Memory Algorithms and Data Structures Fall Project 3 A GIS system External Memory Algorithms and Data Structures Fall 2003 1 Project 3 A GIS system GSB/RF November 17, 2003 1 Introduction The goal of this project is to implement a rudimentary Geographical Information

More information

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

Scalable Computing: Practice and Experience Volume 12, Number 3, pp Scalable Computing: Practice and Experience Volume 1, Number 3, pp. 83 91. http://www.scpe.org ISSN 1895-1767 c 011 SCPE VEHICLE ROUTING PROBLEMS WITH THE USE OF MULTI-AGENT SYSTEM LUKASZ CHOMATEK AND

More information

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 4 Greedy Algorithms Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 4.5 Minimum Spanning Tree Minimum Spanning Tree Minimum spanning tree. Given a connected

More information

Advanced Route Planning in Transportation Networks

Advanced Route Planning in Transportation Networks Advanced Route Planning in Transportation Networks zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften von der Fakultät für Informatik des Karlsruher Instituts für Technologie genehmigte

More information

Route Planning with Flexible Objective Functions

Route Planning with Flexible Objective Functions Route Planning with Flexible Objective Functions Robert Geisberger, Moritz Kobitzsch and Peter Sanders Karlsruhe Institute of Technology, 76128 Karlsruhe, Germany {geisberger,kobitzsch,sanders}@kit.edu

More information

Car or Public Transport Two Worlds

Car or Public Transport Two Worlds Car or Public Transport Two Worlds Hannah Bast Max-Planck-Institute for Informatics, Saarbrücken, Germany Abstract. There are two kinds of people: those who travel by car, and those who use public transport.

More information

Studienarbeit Parallel Highway-Node Routing

Studienarbeit Parallel Highway-Node Routing Studienarbeit Parallel Highway-Node Routing Manuel Holtgrewe Betreuer: Dominik Schultes, Johannes Singler Verantwortlicher Betreuer: Prof. Dr. Peter Sanders January 15, 2008 Abstract Highway-Node Routing

More information

Parallel Time-Dependent Contraction Hierarchies

Parallel Time-Dependent Contraction Hierarchies Parallel Time-Dependent Contraction Hierarchies Christian Vetter July 13, 2009 Student Research Project Universität Karlsruhe (TH), 76128 Karlsruhe, Germany Supervised by G. V. Batz and P. Sanders Abstract

More information

Route Planning in Road Networks with Turn Costs

Route Planning in Road Networks with Turn Costs Route Planning in Road Networks with Turn Costs Lars Volker July 22, 2008 Abstract In this paper, we will describe the use of edge-based graphs to integrate turn penalties into algorithms used for route

More information

Understanding Subgoal Graphs by Augmenting Contraction Hierarchies

Understanding Subgoal Graphs by Augmenting Contraction Hierarchies Understanding Subgoal Graphs by Augmenting Contraction Hierarchies Tansel Uras and Sven Koenig Department of Computer Science University of Southern California Los Angeles, USA {turas, skoenig}@usc.edu

More information

Engineering Multi-Level Overlay Graphs for Shortest-Path Queries

Engineering Multi-Level Overlay Graphs for Shortest-Path Queries Engineering Multi-Level Overlay Graphs for Shortest-Path Queries MARTIN HOLZER, FRANK SCHULZ, and DOROTHEA WAGNER University of Karlsruhe An overlay graph of a given graph G = (V, E) on a subset S V is

More information

I/O Efficieny of Highway Hierarchies

I/O Efficieny of Highway Hierarchies I/O Efficieny of Highway Hierarchies Riko Jacob Sushant Sachdeva Departement of Computer Science ETH Zurich, Technical Report 531, September 26 Abstract Recently, Sanders and Schultes presented a shortest

More information

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

Reach for A : Efficient Point-to-Point Shortest Path Algorithms Reach for A : Efficient Point-to-Point Shortest Path Algorithms Andrew V. Goldberg Haim Kaplan Renato F. Werneck Abstract We study the point-to-point shortest path problem in a setting where preprocessing

More information

Core Routing on Dynamic Time-Dependent Road Networks

Core Routing on Dynamic Time-Dependent Road Networks Core Routing on Dynamic Time-Dependent Road Networks Daniel Delling Universität Karlsruhe (TH), 76128 Karlsruhe, Germany delling@ira.uka.de Giacomo Nannicini LIX, École Polytechnique, F-91128 Palaiseau,

More information

Bidirectional search and Goal-directed Dijkstra

Bidirectional search and Goal-directed Dijkstra Bidirectional search and Goal-directed Dijkstra Ferienakademie im Sarntal Course 2 Distance Problems: Theory and Praxis Kozyntsev A.N. Fakultät für Informatik TU München 26. September 2010 Kozyntsev A.N.:

More information

CS : Data Structures

CS : Data Structures CS 600.226: Data Structures Michael Schatz Dec 7, 2016 Lecture 38: Union-Find Assignment 10: Due Monday Dec 5 @ 10pm Remember: javac Xlint:all & checkstyle *.java & JUnit Solutions should be independently

More information

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

Route Planning for Bicycles Exact Constrained Shortest Paths made Practical via Contraction Hierarchy Route Planning for Bicycles Exact Constrained Shortest Paths made Practical via Contraction Hierarchy ICAPS 2012 Route Planning for Bicycles - Exact Constrained Shortest Path made Practical via Contraction

More information

Hub Label Compression

Hub Label Compression Hub Label Compression Daniel Delling, Andrew V. Goldberg, and Renato F. Werneck Microsoft Research Silicon Valley {dadellin,goldberg,renatow}@microsoft.com Abstract. The hub labels (HL) algorithm is the

More information

Motivation and Basics Flat networks Hierarchy by dominating sets Hierarchy by clustering Adaptive node activity. Topology Control

Motivation and Basics Flat networks Hierarchy by dominating sets Hierarchy by clustering Adaptive node activity. Topology Control Topology Control Andreas Wolf (0325330) 17.01.2007 1 Motivation and Basics 2 Flat networks 3 Hierarchy by dominating sets 4 Hierarchy by clustering 5 Adaptive node activity Options for topology control

More information

CS4800: Algorithms & Data Jonathan Ullman

CS4800: Algorithms & Data Jonathan Ullman CS4800: Algorithms & Data Jonathan Ullman Lecture 13: Shortest Paths: Dijkstra s Algorithm, Heaps DFS(?) Feb 0, 018 Navigation s 9 15 14 5 6 3 18 30 11 5 0 16 4 6 6 3 19 t Weighted Graphs A graph with

More information

Customizable Route Planning in Road Networks

Customizable Route Planning in Road Networks Customizable Route Planning in Road Networks Daniel Delling 1, Andrew V. Goldberg 1, Thomas Pajor 2, and Renato F. Werneck 1 1 Microsoft Research Silicon Valley {dadellin,goldberg,renatow}@microsoft.com

More information

Experimental Study on Speed-Up Techniques for Timetable Information Systems

Experimental Study on Speed-Up Techniques for Timetable Information Systems Experimental Study on Speed-Up Techniques for Timetable Information Systems Reinhard Bauer, Daniel Delling, and Dorothea Wagner Universität Karlsruhe (TH), 76128 Karlsruhe, Germany, {rbauer,delling,wagner}@ira.uka.de

More information

Hierarchical Hub Labelings for Shortest Paths

Hierarchical Hub Labelings for Shortest Paths Hierarchical Hub Labelings for Shortest Paths Ittai Abraham, Daniel Delling, Andrew V. Goldberg, and Renato F. Werneck Microsoft Research Silicon Valley {ittaia,dadellin,goldberg,renatow}@microsoft.com

More information

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

R. Kalpana #1 P. Thambidurai *2. Puducherry, India. Karaikal, Puducherry, India Re-optimizing the Performance of Shortest Path Queries Using ized Combining Speedup Technique based on Arc flags and Approach R. Kalpana # P. Thambidurai * # Department of Computer Science & Engineering,

More information

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

Using Multi-Level Graphs for Timetable Information. Frank Schulz, Dorothea Wagner, and Christos Zaroliagis Using Multi-Level Graphs for Timetable Information Frank Schulz, Dorothea Wagner, and Christos Zaroliagis Overview 1 1. Introduction Timetable Information - A Shortest Path Problem 2. Multi-Level Graphs

More information

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

Simon Peyton Jones (giving the talk) Andrew Goldberg (who did all the work) Microsoft Research Simon Peyton Jones (giving the talk) Andrew Goldberg (who did all the work) Microsoft Research Well-known algorithms are fast enough on a reasonable computer but A handheld is not a reasonable computer

More information

Combining Speed-up Techniques for Shortest-Path Computations

Combining Speed-up Techniques for Shortest-Path Computations Combining Speed-up Techniques for Shortest-Path Computations Martin Holzer, Frank Schulz, and Thomas Willhalm Universität Karlsruhe Fakultät für Informatik Postfach 6980 76128 Karlsruhe Germany {mholzer,fschulz,willhalm}@ira.uka.de

More information

Multi-Hop Ride Sharing

Multi-Hop Ride Sharing Proceedings of the Sixth International Symposium on Combinatorial Search Multi-Hop Ride Sharing Florian Drews and Dennis Luxen Karlsruhe Institute of Technology Institute of Theoretical Informatics, Algorithmics

More information

Chapter 8 DOMINATING SETS

Chapter 8 DOMINATING SETS Chapter 8 DOMINATING SETS Distributed Computing Group Mobile Computing Summer 2004 Overview Motivation Dominating Set Connected Dominating Set The Greedy Algorithm The Tree Growing Algorithm The Marking

More information

Engineering Time-Expanded Graphs for Faster Timetable Information

Engineering Time-Expanded Graphs for Faster Timetable Information Engineering Time-Expanded Graphs for Faster Timetable Information Daniel Delling, Thomas Pajor, and Dorothea Wagner Department of Computer Science, University of Karlsruhe, P.O. Box 6980, 76128 Karlsruhe,

More information

Chapter 8 DOMINATING SETS

Chapter 8 DOMINATING SETS Distributed Computing Group Chapter 8 DOMINATING SETS Mobile Computing Summer 2004 Overview Motivation Dominating Set Connected Dominating Set The Greedy Algorithm The Tree Growing Algorithm The Marking

More information

Effiziente Algorithmen für ein Fahrplanauskunftsystem

Effiziente Algorithmen für ein Fahrplanauskunftsystem Universität Konstanz Effiziente Algorithmen für ein Fahrplanauskunftsystem Frank Schulz Konstanzer Schriften in Mathematik und Informatik Nr. 11, Januar 2 ISSN 143 3558 c Fakultät für Mathematik und Informatik

More information

Contraction Hierarchies briefly explained

Contraction Hierarchies briefly explained Contraction Hierarchies briefly explained Stefan Funke January 12, 2017 Abstract We give a brief explanation of Contraction Hierachies (CH) as introduced by Geisberger et al. in 2008. 1 Outline of the

More information

Optimal Routing Algorithms

Optimal Routing Algorithms J.S. van der Laan Optimal Routing Algorithms A flow-based approach and speed-up techniques for static networks Master s thesis Supervisor: Dr. F.M. Spieksma Date of exam: 29 November 2017 Mathematisch

More information

Algorithms and Data Structures

Algorithms and Data Structures Algorithms and Data Structures Priority Queues Ulf Leser Special Scenarios for Searching Up to now, we assumed that all elements of a list are equally important and that any of them could be searched next

More information

A Study of Different Parallel Implementations of Single Source Shortest Path Algorithms

A Study of Different Parallel Implementations of Single Source Shortest Path Algorithms A Study of Different Parallel Implementations of Single Source Shortest Path s Dhirendra Pratap Singh Department of Computer Science and Engineering Maulana Azad National Institute of Technology, Bhopal

More information

CS200: Graphs. Rosen Ch , 9.6, Walls and Mirrors Ch. 14

CS200: Graphs. Rosen Ch , 9.6, Walls and Mirrors Ch. 14 CS200: Graphs Rosen Ch. 9.1-9.4, 9.6, 10.4-10.5 Walls and Mirrors Ch. 14 Trees as Graphs Tree: an undirected connected graph that has no cycles. A B C D E F G H I J K L M N O P Rooted Trees A rooted tree

More information

Faster and Dynamic Algorithms For Maximal End-Component Decomposition And Related Graph Problems In Probabilistic Verification

Faster and Dynamic Algorithms For Maximal End-Component Decomposition And Related Graph Problems In Probabilistic Verification Faster and Dynamic Algorithms For Maximal End-Component Decomposition And Related Graph Problems In Probabilistic Verification Krishnendu Chatterjee Monika Henzinger Abstract We present faster and dynamic

More information

Engineering Multi-Level Overlay Graphs for Shortest-Path Queries

Engineering Multi-Level Overlay Graphs for Shortest-Path Queries Engineering Multi-Level Overlay Graphs for Shortest-Path Queries Martin Holzer Frank Schulz Dorothea Wagner Abstract An overlay graph of a given graph G =(V,E) on a subset S V is a graph with vertex set

More information

Priority Queues. 1 Introduction. 2 Naïve Implementations. CSci 335 Software Design and Analysis III Chapter 6 Priority Queues. Prof.

Priority Queues. 1 Introduction. 2 Naïve Implementations. CSci 335 Software Design and Analysis III Chapter 6 Priority Queues. Prof. Priority Queues 1 Introduction Many applications require a special type of queuing in which items are pushed onto the queue by order of arrival, but removed from the queue based on some other priority

More information

Weighted Graph Algorithms Presented by Jason Yuan

Weighted Graph Algorithms Presented by Jason Yuan Weighted Graph Algorithms Presented by Jason Yuan Slides: Zachary Friggstad Programming Club Meeting Weighted Graphs struct Edge { int u, v ; int w e i g h t ; // can be a double } ; Edge ( int uu = 0,

More information

Single-Pass List Partitioning

Single-Pass List Partitioning Single-Pass List Partitioning Leonor Frias 1 Johannes Singler 2 Peter Sanders 2 1 Dep. de Llenguatges i Sistemes Informàtics, Universitat Politècnica de Catalunya 2 Institut für Theoretische Informatik,

More information

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

ecompass ecompass TR 006 User-Constrained Multi-Modal Route Planning Project Number 288094 ecompass eco-friendly urban Multi-modal route PlAnning Services for mobile users STREP Funded by EC, INFSO-G4(ICT for Transport) under FP7 ecompass TR 006 User-Constrained Multi-Modal

More information

Transit Nodes Lower Bounds and Refined Construction

Transit Nodes Lower Bounds and Refined Construction Transit Nodes Lower Bounds and Refined Construction Jochen Eisner Stefan Funke Abstract We reconsider the concept of transit nodes as introduced by Bast et al. [3] and for the first time construct instance

More information

Objective of the present work

Objective of the present work Objective of the present work Optimize Road Network Optimize Airline Network Optimize Rail Network Optimize Computer Network Optimize Social Network Spanners and Emulators For most graph algorithms, the

More information

CMU-Q Lecture 2: Search problems Uninformed search. Teacher: Gianni A. Di Caro

CMU-Q Lecture 2: Search problems Uninformed search. Teacher: Gianni A. Di Caro CMU-Q 15-381 Lecture 2: Search problems Uninformed search Teacher: Gianni A. Di Caro RECAP: ACT RATIONALLY Think like people Think rationally Agent Sensors? Actuators Percepts Actions Environment Act like

More information

CS521 \ Notes for the Final Exam

CS521 \ Notes for the Final Exam CS521 \ Notes for final exam 1 Ariel Stolerman Asymptotic Notations: CS521 \ Notes for the Final Exam Notation Definition Limit Big-O ( ) Small-o ( ) Big- ( ) Small- ( ) Big- ( ) Notes: ( ) ( ) ( ) ( )

More information

Chapter 24. Shortest path problems. Chapter 24. Shortest path problems. 24. Various shortest path problems. Chapter 24. Shortest path problems

Chapter 24. Shortest path problems. Chapter 24. Shortest path problems. 24. Various shortest path problems. Chapter 24. Shortest path problems Chapter 24. Shortest path problems We are given a directed graph G = (V,E) with each directed edge (u,v) E having a weight, also called a length, w(u,v) that may or may not be negative. A shortest path

More information

Graphs. Part II: SP and MST. Laura Toma Algorithms (csci2200), Bowdoin College

Graphs. Part II: SP and MST. Laura Toma Algorithms (csci2200), Bowdoin College Laura Toma Algorithms (csci2200), Bowdoin College Topics Weighted graphs each edge (u, v) has a weight denoted w(u, v) or w uv stored in the adjacency list or adjacency matrix The weight of a path p =

More information

PHAST: Hardware-Accelerated Shortest Path Trees

PHAST: Hardware-Accelerated Shortest Path Trees PHAST: Hardware-Accelerated Shortest Path Trees Daniel Delling, Andrew V. Goldberg, Andreas Nowatzyk, and Renato F. Werneck Microsoft Research Silicon Valley Mountain View, CA, 94043, USA Email: {dadellin,goldberg,andnow,renatow}@microsoft.com

More information

Customizable Contraction Hierarchies

Customizable Contraction Hierarchies Customizable Contraction Hierarchies Julian Dibbelt, Ben Strasser, Dorothea Wagner firstname.lastname@kit.edu Karlsruhe Institute of Technology (KIT) Abstract. We consider the problem of quickly computing

More information

SILC: Efficient Query Processing on Spatial Networks

SILC: Efficient Query Processing on Spatial Networks Hanan Samet hjs@cs.umd.edu Department of Computer Science University of Maryland College Park, MD 20742, USA Joint work with Jagan Sankaranarayanan and Houman Alborzi Proceedings of the 13th ACM International

More information

Single Source Shortest Path

Single Source Shortest Path Single Source Shortest Path A directed graph G = (V, E) and a pair of nodes s, d is given. The edges have a real-valued weight W i. This time we are looking for the weight and the shortest path from s

More information

Shortest path problems

Shortest path problems Next... Shortest path problems Single-source shortest paths in weighted graphs Shortest-Path Problems Properties of Shortest Paths, Relaxation Dijkstra s Algorithm Bellman-Ford Algorithm Shortest-Paths

More information

CSE 502 Class 23. Jeremy Buhler Steve Cole. April BFS solves unweighted shortest path problem. Every edge traversed adds one to path length

CSE 502 Class 23. Jeremy Buhler Steve Cole. April BFS solves unweighted shortest path problem. Every edge traversed adds one to path length CSE 502 Class 23 Jeremy Buhler Steve Cole April 14 2015 1 Weighted Version of Shortest Paths BFS solves unweighted shortest path problem Every edge traversed adds one to path length What if edges have

More information

Trees, Trees and More Trees

Trees, Trees and More Trees Trees, Trees and More Trees August 9, 01 Andrew B. Kahng abk@cs.ucsd.edu http://vlsicad.ucsd.edu/~abk/ How You ll See Trees in CS Trees as mathematical objects Trees as data structures Trees as tools for

More information

Explicit Abstraction & Refinement. Single Agent Search COMP Prof. Nathan Sturtevant Lecture 16. Clique Abstraction (Sturtevant & Buro, 05)

Explicit Abstraction & Refinement. Single Agent Search COMP Prof. Nathan Sturtevant Lecture 16. Clique Abstraction (Sturtevant & Buro, 05) Explicit Abstraction & Refinement Single Agent Search COMP-70- Prof. Nathan Sturtevant Lecture 6 Can t* use implicit abstractions in graph-based domains such as pathfinding Build explicit abstraction Pre-processing

More information

Temporally Adaptive A* Algorithm on Time Dependent Transportation Network

Temporally Adaptive A* Algorithm on Time Dependent Transportation Network Temporally Adaptive A* Algorithm on Time Dependent Transportation Network Nianbo Zheng, Feng Lu Institute of Geographic Sciences and Natural Resources Research Chinese Academy of Sciences Beijing, 100101,

More information

Algorithms and Data Structures

Algorithms and Data Structures Algorithms and Data Structures Graphs: Introduction Ulf Leser This Course Introduction 2 Abstract Data Types 1 Complexity analysis 1 Styles of algorithms 1 Lists, stacks, queues 2 Sorting (lists) 3 Searching

More information

Advanced Algorithm Design and Analysis (Lecture 12) SW5 fall 2005 Simonas Šaltenis E1-215b

Advanced Algorithm Design and Analysis (Lecture 12) SW5 fall 2005 Simonas Šaltenis E1-215b Advanced Algorithm Design and Analysis (Lecture 12) SW5 fall 2005 Simonas Šaltenis E1-215b simas@cs.aau.dk Range Searching in 2D Main goals of the lecture: to understand and to be able to analyze the kd-trees

More information

Course Review for Finals. Cpt S 223 Fall 2008

Course Review for Finals. Cpt S 223 Fall 2008 Course Review for Finals Cpt S 223 Fall 2008 1 Course Overview Introduction to advanced data structures Algorithmic asymptotic analysis Programming data structures Program design based on performance i.e.,

More information

Elementary Graph Algorithms: Summary. Algorithms. CmSc250 Intro to Algorithms

Elementary Graph Algorithms: Summary. Algorithms. CmSc250 Intro to Algorithms Elementary Graph Algorithms: Summary CmSc250 Intro to Algorithms Definition: A graph is a collection (nonempty set) of vertices and edges A path from vertex x to vertex y : a list of vertices in which

More information

Algorithms for Graph Visualization Layered Layout

Algorithms for Graph Visualization Layered Layout Algorithms for Graph Visualization INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze 5.12.2016 1 Example Which are the properties? Which aesthetic ctireria are usefull? 2 Given:

More information

Intersection Acceleration

Intersection Acceleration Advanced Computer Graphics Intersection Acceleration Matthias Teschner Computer Science Department University of Freiburg Outline introduction bounding volume hierarchies uniform grids kd-trees octrees

More information