Engineering Route Planning Algorithms
|
|
- Megan Bond
- 6 years ago
- Views:
Transcription
1 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 Holger Bast, Daniel Delling, Stefan Funke, Sebastian Knopp, Domagoj Matijevic, Jens Maue, Frank Schulz, Dorothea Wagner Algorithm Engineering 2007
2 Sanders/Schultes: Route Planning 2 Shortest Path Problem given a weighted, directed graph G = (V,E) with n = V nodes,? m = E edges, and edge weights w : E N given a source node s V and target node t V Definition: the length w(p) of a path P = u 1,u 2,...,u k is k i=2 w(u i 1,u i ) task: determine the shortest path from s to t in G (if there is any path from s to t)
3 Sanders/Schultes: Route Planning 3 Shortest Path Problem fundamental problem from graph theory intuitive / very natural problem very active field of research required as subroutine by other algorithms many real-world applications e.g., Routenplaner most frequently used search term on google.de for the last years (according to the official statistics)
4 Sanders/Schultes: Route Planning 4 DIJKSTRA s Algorithm the classic solution [1959] O(nlogn+m) (with Fibonacci heaps) not practicable Dijkstra s t for large graphs (e.g. European road network: nodes) bidirectional Dijkstra s t improves the running time, but still too slow
5 Sanders/Schultes: Route Planning 5 Speedup Techniques that are faster than Dijkstra s algorithm require additional data not always available! (e.g., node coordinates) AND / OR preprocess the graph and generate auxiliary data (e.g., signposts ) can take a lot of time; assume static graph and many queries! AND / OR exploit special properties of G (e.g., planar, hierarchical) fail when the given graph has not the desired properties! not a general solution, but can be very efficient for many practically relevant cases
6 Sanders/Schultes: Route Planning 6 Road Networks We concentrate on road networks. several useful properties that can be exploitet many real-world applications some techniques: already applied to railway networks most techniques: open question if they can be applied to other graph types
7 Sanders/Schultes: Route Planning 7 Road Networks Properties large, e.g. n = nodes for Western Europe sparse, i.e., m = Θ(n) edges almost planar, i.e., few edges cross inherent hierarchy, quickest paths use important streets changes are slow/few (only partly true!)
8 Sanders/Schultes: Route Planning 8 Road Networks Applications route planning systems in the internet (e.g. car navigation systems logistics planning traffic simulation
9 Sanders/Schultes: Route Planning 9 Outline 1. short introduction of basic approaches Dijkstra s algorithm / bidirectional search 2. detailed presentation of speedup techniques after Oct 2005 highway hierarchies transit-node routing highway-node routing contraction hierarchies fast queries very fast queries handles dynamic scenarios simplification
10 Sanders/Schultes: Route Planning Approach Highway Hierarchies [SS 05 ] s t
11 Sanders/Schultes: Route Planning 11 Naive Route Planning 1. Look for the next reasonable motorway
12 Sanders/Schultes: Route Planning 12 Naive Route Planning 1. Look for the next reasonable motorway 2. Drive on motorways to a location close to the target
13 Sanders/Schultes: Route Planning 13 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
14 Sanders/Schultes: Route Planning 14 Commercial Approach Heuristic Highway Hierarchy s t complete search in local area search in (sparser) highway network iterate highway hierarchy Defining the highway network: s t use road category (highway, federal highway, motorway,... ) + manual rectifications delicate compromise speed accuracy
15 Sanders/Schultes: Route Planning 15 Our Approach Exact Highway Hierarchy s t complete search in local area search in (sparser) highway network iterate highway hierarchy Defining the highway network: minimal network that preserves all shortest paths s t fully automatic (just fix neighborhood size) uncompromisingly fast
16 Sanders/Schultes: Route Planning 16 Our Approach Exact Highway Hierarchy s t complete search in local area search in (sparser) highway network contract network, e.g., iterate highway hierarchy s t
17 Sanders/Schultes: Route Planning 17 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 = rank s = s 3 N(s) 5 2 6
18 Sanders/Schultes: Route Planning 18 Highway Network N (s) N (t) s t Highway Edge (u,v) belongs to highway network iff there are nodes s and t s.t. (u,v) is on some shortest path from s to t and v N (s) and u N (t)
19 Sanders/Schultes: Route Planning 19 Contraction highway nodes and edges
20 Sanders/Schultes: Route Planning 20 Contraction bypass node
21 Sanders/Schultes: Route Planning 21 Contraction shortcuts
22 Sanders/Schultes: Route Planning 22 Contraction bypass node
23 Sanders/Schultes: Route Planning 23 Contraction
24 Sanders/Schultes: Route Planning 24 Contraction enters component component (of bypassed nodes) leaves component
25 Sanders/Schultes: Route Planning 25 Contraction core
26 Sanders/Schultes: Route Planning 26 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.
27 Sanders/Schultes: Route Planning 27 Example: Karlsruhe Level 0 1 Level 2 Level 3 Level 4
28 Sanders/Schultes: Route Planning 28 Shrinking of the Highway Networks Europe H = 40 H = 60 H = #edges level
29 Sanders/Schultes: Route Planning 29 Fast Construction Challenge Avoid all-pairs shortest-path precomputation. Solution For each node: perform only a local search.
30 Sanders/Schultes: Route Planning 30 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
31 Sanders/Schultes: Route Planning 31 Query Example: from Karlsruhe, Am Fasanengarten 5 to Palma de Mallorca
32 Sanders/Schultes: Route Planning 32 Bounding Box: 20 km Level 0 Search Space
33 Sanders/Schultes: Route Planning 33 Bounding Box: 20 km Level 0 Search Space
34 Sanders/Schultes: Route Planning 34 Bounding Box: 20 km Level 1 Search Space
35 Sanders/Schultes: Route Planning 35 Bounding Box: 20 km Level 1 Search Space
36 Sanders/Schultes: Route Planning 36 Bounding Box: 20 km Level 2 Search Space
37 Sanders/Schultes: Route Planning 37 Bounding Box: 20 km Level 2 Search Space
38 Sanders/Schultes: Route Planning 38 Bounding Box: 20 km Level 3 Search Space
39 Sanders/Schultes: Route Planning 39 Bounding Box: 80 km Level 4 Search Space
40 Sanders/Schultes: Route Planning 40 Bounding Box: 400 km Level 6 Search Space
41 Sanders/Schultes: Route Planning 41 Level 8 Search Space
42 Sanders/Schultes: Route Planning 42 Level 10 Search Space
43 Sanders/Schultes: Route Planning 43 Optimisation: Distance Table Construction: Construct fewer levels. e.g. 4 instead of 9 Compute an all-pairs distance table for the topmost level L entries
44 Sanders/Schultes: Route Planning 44 Distance Table Query: s t Abort the search when all entrance points in the core of level L have been encountered. Use the distance table to bridge the gap. 55 for each direction entries
45 Sanders/Schultes: Route Planning 45 Distance Table: Search Space Example
46 Sanders/Schultes: Route Planning 46 Experiments: Methodology s-t-pairs uniformly at random queries in real applications average value variance? Transit Node Routing (economic variant) Query Time [µs]
47 Sanders/Schultes: Route Planning 47 Experiments: Methodology consider different localities! average value variance? Transit Node Routing (economic variant) Query Time [µs] Dijkstra Rank
48 Sanders/Schultes: Route Planning 48 Experiments: Methodology consider different localities! plot complete spectrum! Transit Node Routing (economic variant) Query Time [µs] Dijkstra Rank
49 Sanders/Schultes: Route Planning 49 Instances W. Europe (PTV) USA/CAN (PTV) #nodes #directed edges #road categories average speeds [km/h]
50 Sanders/Schultes: Route Planning 50 Local Queries (Highway Hierarchies) Query Time [ms] Europe (15 min., 68 B/node) USA/CAN (20 min., 69 B/node) Dijkstra Rank
51 Sanders/Schultes: Route Planning 51 Combination Goal Directed Search (landmarks) [with D. Delling, D. Wagner] About 20 % faster than HHs + distance tables Significant speedup for approximate queries
52 Sanders/Schultes: Route Planning 52 Many-to-Many Routing [with S. Knopp, F. Schulz (PTV AG), D. Wagner] Given: graph G = (V,E) set of source nodes S V set of target nodes T V Task: compute S T distance table containing the shortest path distances S T
53 Sanders/Schultes: Route Planning 53 Applications Logistics vehicle routing problem input for traveling salesman solver Traffic Simulation Preprocessing for Point-to-Point Techniques precomputed cluster distances [MaueSandersMatijevic2006] transit node routing
54 Sanders/Schultes: Route Planning 54 Simple Solutions Example: table in Western Europe apply SSSP algorithm }{{} (e.g. DIJKSTRA) S times s one day apply P2P algorithm }{{} (e.g. highway hierarchies 1 ) S T times ms one day 1 requires about 15 minutes preprocessing time
55 Sanders/Schultes: Route Planning Approach Transit-Node Routing [with H. Bast and S. Funke] s t
56 Sanders/Schultes: Route Planning 56 Example: X X Karlsruhe Copenhagen
57 Sanders/Schultes: Route Planning 57 Example: X X Karlsruhe Berlin
58 Sanders/Schultes: Route Planning 58 Example: X X Karlsruhe Vienna
59 Sanders/Schultes: Route Planning 59 Example: X X Karlsruhe Munich
60 Sanders/Schultes: Route Planning 60 Example: X X Karlsruhe Rome
61 Sanders/Schultes: Route Planning 61 Example: X X Karlsruhe Paris
62 Sanders/Schultes: Route Planning 62 Example: X X Karlsruhe London
63 Sanders/Schultes: Route Planning 63 Example: X X Karlsruhe Brussels
64 Sanders/Schultes: Route Planning 64 Example: X X Karlsruhe Copenhagen
65 Sanders/Schultes: Route Planning 65 Example: X X Karlsruhe Berlin
66 Sanders/Schultes: Route Planning 66 Example: X X Karlsruhe Vienna
67 Sanders/Schultes: Route Planning 67 Example: X X Karlsruhe Munich
68 Sanders/Schultes: Route Planning 68 Example: X X Karlsruhe Rome
69 Sanders/Schultes: Route Planning 69 Example: X X Karlsruhe Paris
70 Sanders/Schultes: Route Planning 70 Example: X X Karlsruhe London
71 Sanders/Schultes: Route Planning 71 Example: X X Karlsruhe Brussels
72 Sanders/Schultes: Route Planning 72 First Observation For long-distance travel: leave current location via one of only a few important traffic junctions, called access points ( we can afford to store all access points for each node) [in Europe: about 10 access points per node on average]
73 Sanders/Schultes: Route Planning 73 Example: X X Karlsruhe Berlin
74 Sanders/Schultes: Route Planning 74 Example: X X Karlsruhe Berlin
75 Sanders/Schultes: Route Planning 75 Example: X X Karlsruhe Berlin
76 Sanders/Schultes: Route Planning 76 Second Observation Each access point is relevant for several nodes. union of the access points of all nodes is small, called transit node set ( we can afford to store the distances between all transit node pairs) [in Europe: about transit nodes]
77 Sanders/Schultes: Route Planning 77 Transit-Node Routing Preprocessing: identify transit-node sett V compute complete T T distance table for each node: identify its access points (mapping A : V 2 T ), store the distances Query (source s and target t given): compute d top (s,t) := min{d(s,u)+d(u,v)+d(v,t) : u A(s),v A(t)}
78 Sanders/Schultes: Route Planning 78 Transit-Node Routing Locality Filter: local cases must be filtered ( special treatment) L : V V {true,false} L(s,t) implies d(s,t) = d top (s,t)
79 Sanders/Schultes: Route Planning 79 Example
80 Sanders/Schultes: Route Planning 80 Related Work separator-based implementation [Müller et al. 2006] determine separator nodes (= transit nodes) partition the graph into small components access points of node u: border nodes of u s component locality filter: same component? grid-based implementation [Bast, Funke, Matijevic 2006] compute geometric subdivision of the network into cells access points: border nodes needed for long-distance travel transit nodes: union of all access points locality filter: less than a certain number of grid cells apart?
81 Sanders/Schultes: Route Planning 81 HH + Distance Table Compute an all-pairs distance table for the core of the topmost level l. transit node sett entries Abort the search when all entrance points in the core of level l have been encountered. 55 for each direction do not search, just perform look-ups Use the distance table to bridge the gap entries
82 Sanders/Schultes: Route Planning 82 HH-based Transit Node Routing Compute an all-pairs distance table for the core of the topmost level l entries }{{} transit node sett Abort the search when all entrance points in the core of level l have been encountered. 55 for each direction do not search, just perform look-ups Use the distance table to bridge the gap entries
83 Sanders/Schultes: Route Planning 83 Missing Pieces 1. locality filter: use geometric disks s u t d(s,t) = d u (s,t) < d top (s,t) L(s,t) := disks of s and t overlap
84 Sanders/Schultes: Route Planning 84 Missing Pieces 2. too many entrance points (55) solution: fall back on comparatively few access points (10) (motivated by the observations from [Bast, Funke, Matijevic 2006]) entrance points topmost level access points
85 Sanders/Schultes: Route Planning 85 Missing Pieces 3. compute top distance table in the original graph solution: many-to-many shortest paths (based on highway hierarchies) T S
86 Sanders/Schultes: Route Planning 86 Second Layer (to deal with medium range queries) secondary transit node sett 2 T secondary access mapping A 2 : V 2 T 2 secondary dist. table { d(u,v) : u,v T 2 d(u,v) d top (u,v) } secondary locality filter L 2 L 2 (s,t) implies d(s,t) = d top (s,t) OR d(s,t) = min{d(s,u)+d(u,v)+d(v,t) : u A 2 (s),v A 2 (t)}
87 Sanders/Schultes: Route Planning 87 Two Concrete Variants Level 5 economical Layer 1 Level 4 generous Layer 1 3 L L2 1 0 L2 L1 (3)
88 Sanders/Schultes: Route Planning 88 Preprocessing for each secondary transit node t T 2 : perform backward highway search stop at primary transit nodes ( set of backward access points) store search space entries (t, u, d(u,t)) arrange search spaces
89 Sanders/Schultes: Route Planning 89 Preprocessing for each secondary transit node s T 2 : perform forward highway search stop at primary transit nodes ( set of forward access points) at each node u and for each search space entry (t,u,d(u,t)): compute distance d u (s,t) := d(s,u)+d(u,t) via u compute distance d top (s,t) via top layer if d u (s,t) < d top (s,t) then add entry d u (s,t) to the secondary distance table ensure that the disks around s and t contain u (use similar procedure for lower layers)
90 Sanders/Schultes: Route Planning 90 Local Queries (Transit-Node Routing, Europe) Query Time [µs] eco: 46 min, 110 B/node gen:164 min, 251 B/node Dijkstra Rank
91 Sanders/Schultes: Route Planning Approach Highway-Node Routing [SS 07 ]
92 Sanders/Schultes: Route Planning 92 Static Route Planning in Road Networks Task: determine quickest route from source to target location? Problem: for large networks, simple algorithms are too slow Assumption: road network does not change Conclusion: use preprocessed data to accelerate source-target-queries (research focus during the last years [ everything told so far]) correctness relies on the above assumption
93 Sanders/Schultes: Route Planning 93 Dynamic Scenarios change entire cost function (e.g., use different speed profile) change a few edge weights (e.g., due to a traffic jam)
94 Sanders/Schultes: Route Planning 94 Constancy of Structure Weaker Assumption: structure of road network does not change (no new roads, road removal = set weight to ) not a significant restriction classification of nodes by importance might be slightly perturbed, but not completely changed (e.g., a sports car and a truck both prefer motorways) performance of our approach relies on that (not the correctness)
95 Sanders/Schultes: Route Planning 95 Overlay Graph [Holzer, Schulz, Wagner, Weihe, Zaroliagis ] graph G = (V,E) is given select node subset S V
96 Sanders/Schultes: Route Planning 96 Overlay Graph [Holzer, Schulz, Wagner, Weihe, Zaroliagis ] graph G = (V,E) is given select node subset S V overlay graph G := (S,E ) where E := {(s,t) S S no inner node of the shortest s-t-path belongs to S}
97 Sanders/Schultes: Route Planning 97 Covering Nodes Definitions: covered branch: contains a node from S covered tree: all branches covered covering nodes: on each branch, the node u S closest to the root s s
98 Sanders/Schultes: Route Planning 98 Query bidirectional perform search in G till search trees are covered by nodes in S t s
99 Sanders/Schultes: Route Planning 99 Query bidirectional perform search in G till search trees are covered by nodes in S continue search only in G t s
100 Sanders/Schultes: Route Planning 100 Covering Nodes Conservative Approach: stop searching in G when all branches are covered big city long distance ferry s can be very inefficient
101 Sanders/Schultes: Route Planning 101 Covering Nodes Aggressive Approach: do not continue the search in G on covered branches s u v fast road slow road can be very inefficient
102 Sanders/Schultes: Route Planning 102 Covering Nodes Stall-on-Demand: do not continue the search in G on covered branches a node v can wake a node u on a covered branch u can stall v i.e., search is not continued from v u s v fast road (if δ(u)+w(u,v) < δ(v)) slow road
103 Sanders/Schultes: Route Planning 103 Static Highway-Node Routing extend ideas from multi-level overlay graphs [HolzerSchulzWagnerWeiheZaroliagis00 07] highway hierarchies [SS05 06] transit node routing [BastFunkeMatijevicSS06 07] use highway hierarchies to classify nodes by importance i.e., select node sets S 1 S 2 S 3... (crucial distinction from previous separator-based approach) construct multi-level overlay graph perform query with stall-on-demand technique
104 Sanders/Schultes: Route Planning 104 Static Highway-Node Routing extend ideas from multi-level overlay graphs [HolzerSchulzWagnerWeiheZaroliagis00 07] highway hierarchies [SS05 06] transit node routing [BastFunkeMatijevicSS06 07] use highway hierarchies to classify nodes by importance i.e., select node sets S 1 S 2 S min (crucial distinction from previous separator-based approach) construct multi-level overlay graph perform query with stall-on-demand technique 3 min, 8 bytes/node 1.1 ms (experiments with a European road network with 18 million nodes)
105 Sanders/Schultes: Route Planning 105 Static Highway-Node Routing (Europe) Query Time [ms] Highway Hierarchies Star (22 min., 76 B/node) Highway Node Routing (19 min., 8 B/node) Dijkstra Rank
106 Sanders/Schultes: Route Planning 106 Dynamic Highway-Node Routing change entire cost function keep the node sets S 1 S 2 S 3... recompute the overlay graphs speed profile default fast car slow car slow truck distance constr. [min] 1:40 1:41 1:39 1:36 3:56 query [ms] #settled nodes
107 Sanders/Schultes: Route Planning 107 Dynamic Highway-Node Routing change a few edge weights server scenario: if something changes, update the preprocessed data structures answer many subsequent queries very fast mobile scenario: if something changes, it does not pay to update the data structures perform single prudent query that takes changed situation into account
108 Sanders/Schultes: Route Planning 108 Dynamic Highway-Node Routing change a few edge weights, server scenario keep the node sets S 1 S 2 S 3... recompute only possibly affected parts of the overlay graphs the computation of the level-l overlay graph consists of S l local searches to determine the respective covering nodes if the initial local search from v S l has not touched a now modified edge (u,x), that local search need not be repeated we manage sets A l u = {v S l v s level-l preprocessing might be affected when an edge (u,x) changes}
109 Sanders/Schultes: Route Planning 109 Dynamic Highway-Node Routing change a few edge weights, server scenario Update Time [ms] add traffic jam cancel traffic jam block road any motorway national regional urban Road Type
110 Sanders/Schultes: Route Planning 110 Dynamic Highway-Node Routing change a few edge weights, mobile scenario keep the node sets S 1 S 2 S 3... keep the overlay graphs use the sets A l u to determine for each node u a reliable level r(u) during a query, at node u do not use edges that have been created in some level > r(u) instead, downgrade the search to level r(u)
111 Sanders/Schultes: Route Planning 111 Level 0 Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7
112 Sanders/Schultes: Route Planning 112 Dynamic Highway-Node Routing change a few edge weights, mobile scenario single pass iterative change set affected query time query time #iterations (motorway edges) queries [ms] [ms] avg max % % % %
113 Sanders/Schultes: Route Planning 113 Summary Highway Hierarchies: Fast routing, fast preprocessing, low space, few tuning parameters, basis for many-to-many, transit-node routing, highway-node routing. Many-to-Many: Huge distance tables are tractable. Subroutine for transit-node routing. Transit-Node Routing: Fastest routing so far. Highway-Node Routing: Simpler HHs, fast routing, very low space, efficiently dynamizable.
114 Sanders/Schultes: Route Planning 114 Summary: A Horse-Race Perspective method first date size space preproc. speedup pub. mm/yy n/10 6 Byte/n [min] separator multi-level [SWW99] 04/99 0.1? > edge flags (basic) [Lau04] 03/ landmark A [GolHar05] 07/04 (18) edge flags [KMS05] 01/ HHs (basic) [SS05] 04/ [GKW06] 10/ adv. reach [GKW06] 08/ adv. HHs [DSSW06] 08/ high-perf. multi-level [Mul06] 06/ transit nodes (gen) [BFMSS07] 10/ highway nodes (mem) [SS07] 01/
115 Sanders/Schultes: Route Planning 115 Conclusion algorithm engineering analysis deduction perf. guarantees realistic models design falsifiable hypotheses induction implementation algorithm libraries real Inputs experiments applications
116 Sanders/Schultes: Route Planning 116 Application: Models structure of a road network is ( almost ) static allow preprocessing edge weights may change unexpectedly time-dependent edge weights point-to-point, many-to-many multi-objective Machine: memory hierarchy parallel
117 Sanders/Schultes: Route Planning 117 Analysis Correctness: for TNR and HNR: not very too difficult for HH: surprisingly difficult (ambigious shortest paths) Worst-Case Bounds: performance relies on certain graph properties: specify them derive worst-case bounds for graphs with the specified properties
118 Sanders/Schultes: Route Planning 118 Analysis Per-Instance Worst-Case Guarantees: Europe Frequency Search Space histogram of (upper bounds on }{{} ) the search space sizes of all possible n2 queries can be computed using a linear number of queries
119 Sanders/Schultes: Route Planning 119 Implementation [covers all mentioned route planning techniques] quite complex ( lines of code (w/o tools)) C++ template mechanism (currently, 23 different instantiations of our Dijkstra template class) standard template library and home-made data structures provide only the required functionality can efficiently handle large data sets thorough checking: asserts, naive reference implementations visualisation
120 Sanders/Schultes: Route Planning 120 Experiments consider different localities! plot complete spectrum! Transit Node Routing (economic variant) Query Time [µs] Dijkstra Rank
121 Sanders/Schultes: Route Planning 121 Instances before 2005: only very small road networks publicly and readily available nodes, but only degree > 2 nodes
122 Sanders/Schultes: Route Planning 122 Instances in 2005: US and Western European road networks obtained composed from a public source (US Census Bureau) provided by a company (PTV AG) for scientific use 18 million nodes 16 million degree > 2 nodes now: widely spread (e.g., DIMACS Implementation Challenge)
123 Sanders/Schultes: Route Planning 123 Open Issues: turn penalties Instances real source-target pairs (we have some many-to-many instances) real traffic reports (edge weight changes) time-dependent edge weights (not only for motorways!) other graph types
124 Sanders/Schultes: Route Planning 124 single point-to-point queries Applications mobile navigation system (built-in, PDA, mobile phone,...) internet route planning service massive amount of point-to-point queries traffic simulations many-to-many queries logistics optimisation ride sharing promising contacts to various companies more to come?
125 Sanders/Schultes: Route Planning 125 Appendix
126 Sanders/Schultes: Route Planning 126 Summary: An Application Perspective HH= highway hierarchy; HNR= highway-node routing Static low-cost mobile route planning: low space HHs or static HNR Dynamic mobile route planning: dynamic HNR (single-shot) Static server-based: transit-node routing Dynamic server-based: dynamic HNR (with updates) Logistics: Many-to-many HHs (HNR when edge weight change often) Microscopic Traffic Simulation: transit-node routing? Macroscopic Traffic Simulation: Many-to-many HHs or HNR
127 Sanders/Schultes: Route Planning 127 Future Work I: More on Static Routing Better choices for transit-node sets or highway-node sets. (use centrality measures, separators, explicit optimization,... ) A hierarchical routing scheme that allows stopping bidirectional search earlier? (competetive with HHs, HNR) Better integration with goal directed methods. (PCDs, A, edge flags, geometric containers) Experiments with other networks. (communication networks, VLSI, social networks, computer games, geometric problems,... ) Specialized preprocessing for one batch of (many-to-many) queries
128 Sanders/Schultes: Route Planning 128 Future Work II: Theory Revisited Correctness proofs Stronger impossibility results (worst case) Analyze speedup techniques for model graphs Characterize graphs for which a particular (new?) speedup technique works well A method with low worst-case query time, but preprocessing might become quadratic?
129 Sanders/Schultes: Route Planning 129 Future Work III: Towards Applications Turn penalties (implicitly represented) Just bigger but more sparse graphs? Parallelization (server scenarios, logistics, traffic simulation) easy (construction, many-to-many, many queries) Mobile platforms adapt to memory hierarchy (RAM flash) data compression
130 Sanders/Schultes: Route Planning 130 Industral Contacts
131 Sanders/Schultes: Route Planning 131 Future Work IV: Beyond Static Routing More dynamic routing (e.g. for transit-node routing) Time-dependent networks (public transportation, traffic-dependent travel time) Preprocessing for an entire spectrum of objective functions Multi-criteria optimization (time, distance, fuel, toll, driver preferences,... ) Approximate traffic flows (Nash-equilibria, (fair) social optima) Traffic steering (road pricing,... ) Stochastic optimization
132 Sanders/Schultes: Route Planning 132 An Algorithm Engineering Perspective Models: Preprocessing, point-to-point, dynamic, many-to-many parallel, memory hierarchy, time dependent, multi-objective,... Design: HHs, HNR, transit nodes,... Analysis: Correctness, per instance. wide open big gap Implementation: tuned, modular, thorough checking, visualization. Experiments: Dijkstra ranks, worst case, cross method.... Instances: Large real world road networks. turn penalties, queries, updates, other network types Algorithm Libraries:??? Applications: Promising contacts, hiring. more should come.
133 Sanders/Schultes: Route Planning 133 Goal-Directed Search s t A [Hart, Nilsson, Raphael 68]: not effective for travel time Geometric Containers [Wagner et al ]: high speedup but quadratic preprocessing time Landmark A [Goldberg et al. 05 ]: precompute distances to 20 landmarks moderate speedups, preprocessing time, space Precomputed Cluster Distances [S, Maue 06]: more space-efficient alternative to landmarks
134 Sanders/Schultes: Route Planning 134 Hierarchical Methods Planar graph (theory) [Fakcharoenphol, Rao, Klein 01 06]: O(nlog 2 n) space and preprocessing time; O( nlogn) query time Planar approximate (theory) [Thorup 01]: O((n log n)/ε) space and preprocessing time; almost constant query time Separator-based multilevel [Wagner et al. 99 ]: works, but does not capitalize on importance induced hierarchy Reach based routing [Gutman 04]: elegant, but initially not so successful Highway hierarchies [SS 05 ]: stay tuned Advanced reach [Goldberg et al. 06 ]: combinable with landmark A Transit-node routing [Bast, Funke, Matijevic, S, S 07 ]: stay tuned
135 Sanders/Schultes: Route Planning 135 Highway-node routing [SS 07 ]: stay tuned
136 Sanders/Schultes: Route Planning 136 Goals bridge gaps between theory and practice accelerate transfer of algorithmic results into applications keep the advantages of theoretical treatment: generality of solutions and reliabiltiy, predictabilty from performance guarantees
137 Sanders/Schultes: Route Planning 137 Canonical Shortest Paths SP : Set of shortest paths SP canonical P = s,...,s,...,t,...,t SP : s t SP
138 Sanders/Schultes: Route Planning 138 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 = rank s = s 3 N(s) 5 2 6
139 Sanders/Schultes: Route Planning 139 Highway Network N (s) N (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 (u,v) is not entirely withinn (s) orn (t)
140 Sanders/Schultes: Route Planning 140 Canonical Shortest Paths N (s 1 ) N (t 1 ) 0 N (s 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.
141 Sanders/Schultes: Route Planning u 1 2 v s 2 0 s t t u v (c) Result of the construction.
142 Sanders/Schultes: Route Planning 142 Contraction highway nodes and edges
143 Sanders/Schultes: Route Planning 143 Contraction bypass node
144 Sanders/Schultes: Route Planning 144 Contraction shortcuts
145 Sanders/Schultes: Route Planning 145 Contraction bypass node
146 Sanders/Schultes: Route Planning 146 Contraction
147 Sanders/Schultes: Route Planning 147 Contraction enters component component (of bypassed nodes) leaves component
148 Sanders/Schultes: Route Planning 148 Contraction core
149 Sanders/Schultes: Route Planning 149 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.
150 Sanders/Schultes: Route Planning 150 Fast Construction of the Highway Network Look for HH-edges only in (modified) local SSSP search trees. Nodes have state active, passive, or mavericks. s 0 is active. Node states are inherited from parents in the SSSP tree. abort condition(p) p becomes passive. mavericks active s 0 f r(s 0 ) passive d(s 0, p) > f r(s 0 ) p becomes maverick. all nodes maverick? stop searching from passive nodes all nodes passive or maverick? stop Result: superset of highway network
151 Sanders/Schultes: Route Planning 151 Local Queries (Highway Hierarchies Star, Europe) exact (22 min., 76 B/node) approx (22 min., 76 B/node) Query Time [ms] Dijkstra Rank
152 Sanders/Schultes: Route Planning 152 Simple Solutions Example: table in Western Europe apply SSSP algorithm }{{} (e.g. DIJKSTRA) S times s one day apply P2P algorithm }{{} (e.g. highway hierarchies 1 ) S T times ms one day 1 requires about 15 minutes preprocessing time
153 Sanders/Schultes: Route Planning 153 pour Solution Example: table in Western Europe many-to-many algorithm based on highway hierarchies 1 one minute s t 1 requires about 15 minutes preprocessing time
154 Sanders/Schultes: Route Planning 154 Main Idea instead of S T bidirectional highway queries perform S + T unidirectional highway queries Algorithm maintain an S T table D of tentative distances T (initialize all entries to ) S
155 Sanders/Schultes: Route Planning 155 for each t T, perform backward search store search space entries (t, u, d(u,t)) arrange search spaces: create a bucket for each u for each s S, perform forward search at each node u, scan all entries (t,u,d(u,t)) and compute d(s, u) + d(u,t), update D[s,t]
156 Sanders/Schultes: Route Planning 156 Different Combinations Europe metric /0 DistTab ALT both preproc. time [min] time total disk space [MB] #settled nodes (176) query time [ms] (0.18) preproc. time [min] dist total disk space [MB] #settled nodes (177) query time [ms] (0.25)
157 Sanders/Schultes: Route Planning 157 Neighbourhood Size Preprocessing Time [min] Memory Overhead per Node [byte] Europe USA/CAN USA Query Time [ms]
158 Sanders/Schultes: Route Planning 158 Number of Levels Europe Memory Overhead per Node [byte] Memory Overhead Query Time Query Time [ms] Number of Levels
159 Sanders/Schultes: Route Planning 159 Contraction Rate Europe # Settled Nodes Settled Nodes Relaxed Edges # Relaxed Edges Contraction Rate
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 informationEngineering 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 informationDynamic 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 informationAccurate 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 informationAccurate 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) Eindhoven, March
More informationHighway 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 informationHighway 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 informationComputing 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 informationCombining 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 informationHighway 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 informationRobust, 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 informationExperimental 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 informationPoint-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 informationCombining 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 informationReach 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 informationEngineering 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 informationRoute 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 informationAlgorithm 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 informationHighway 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 informationHighway 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 information2) 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 informationSHARC: 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 informationA 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 informationContraction 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 informationExperimental 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 informationCar 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 informationarxiv: 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 informationDynamic 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 informationLandmark-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 informationShortest 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 informationEngineering shortest-path algorithms for dynamic networks
Engineering shortest-path algorithms for dynamic networks Mattia D Emidio and Daniele Frigioni Department of Information Engineering, Computer Science and Mathematics, University of L Aquila, Via Gronchi
More informationAdvanced 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 informationShortest 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 informationCustomizable 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 informationReach 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 informationTime-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 informationReach 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 informationR. 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 informationUsing 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 informationRoute Planning in Transportation Networks
Route Planning in Transportation Networks Hannah Bast 1, Daniel Delling 2, Andrew Goldberg 3, Matthias Müller-Hannemann 4, Thomas Pajor 5(B), Peter Sanders 6, Dorothea Wagner 6, and Renato F. Werneck 3
More informationAdvanced Route Planning and Related Topics Freiburg Update
Advanced Route Planning and Related Topics Freiburg Update G. V. Batz, M. Kobitzsch, D. Luxen, P. Sanders, D. Schieferdecker - 0 KIT G. University V. Batz, of the M. StateKobitzsch, of Baden-Wuerttemberg
More informationBidirectional 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 informationEngineering 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 informationTime-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 informationParallel 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 informationCustomizable Route Planning
Customizable Route Planning 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 2 Karlsruhe Institute
More informationRoute 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 informationLocation-Based Services & Route Planning
Praktikum Mobile und Verteilte Systeme Location-Based Services & Route Planning Prof. Dr. Claudia Linnhoff-Popien André Ebert, Sebastian Feld http://www.mobile.ifi.lmu.de WS 2017/18 Praktikum Mobile und
More informationHierarchical 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 informationTransit 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 informationCombining 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 informationMulti-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 informationAlgorithmen II. Peter Sanders, Thomas Worsch, Simon Gog. Übungen: Demian Hespe, Yaroslav Akhremtsev
Sanders, Worsch, Gog: Algorithmen II - 27. November 2017 Algorithmen II Peter Sanders, Thomas Worsch, Simon Gog Übungen: Demian Hespe, Yaroslav Akhremtsev Institut für Theoretische Informatik, Algorithmik
More informationNetwork Analyst Creating Network Datasets. Jay Sandhu Frank Kish
Network Analyst Creating Network Datasets Jay Sandhu Frank Kish Agenda Preparing Street Data for use in a network dataset - One-way streets - Hierarchy - RoadClass attribute Using turns, signposts, and
More informationGraph 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 informationFast and Compact Oracles for Approximate Distances in Planar Graphs
Fast and Compact Oracles for Approximate Distances in Planar Graphs Laurent Flindt Muller 1 and Martin Zachariasen 2 1 Transvision, Vermundsgade 0D, DK-20 Copenhagen, Denmark laurent.flindt.muller@gmail.com
More informationMobile 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 informationEngineering 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 informationUnderstanding 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 informationEngineering 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 informationObjective 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 informationShortest-Path Indices: Establishing a Methodology for Shortest-Path Problems
Shortest-Path Indices: Establishing a Methodology for Shortest-Path Problems Reinhard Bauer, Daniel Delling, and Dorothea Wagner Universität Karlsruhe (TH), 76128 Karlsruhe, Germany, {rbauer,delling,wagner}@ira.uka.de
More informationRoute 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 informationEngineering Multilevel Graph Partitioning Algorithms
Engineering Multilevel Graph Partitioning Algorithms Manuel Holtgrewe, Vitaly Osipov, Peter Sanders, Christian Schulz Institute for Theoretical Computer Science, Algorithmics II 1 Mar. 3, 2011 Manuel Holtgrewe,
More informationCollaboration with: Dieter Pfoser, Computer Technology Institute, Athens, Greece Peter Wagner, German Aerospace Center, Berlin, Germany
Towards traffic-aware aware a routing using GPS vehicle trajectories Carola Wenk University of Texas at San Antonio carola@cs.utsa.edu Collaboration with: Dieter Pfoser, Computer Technology Institute,
More informationOptimal 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 informationExploring Graph Partitioning for Shortest Path Queries on Road Networks
Erschienen in: Proceedings of the 6th GI-Workshop Grundlagen von Datenbanken / Klan, Friederike et al. (Hrsg.). - (CEUR Workshop Proceedings ; 33). - S. 7-76 Exploring Graph Partitioning for Shortest Path
More informationPerformance Analysis of Parallel Speedup Techniques for Shortest Path Queries in Networks of Random and Planar Types
Performance Analysis of Parallel Speedup Techniques for Shortest Path Queries in Networks of Random and Planar Types R.Kalpana Department of CSE Pondicherry Engineering College Puducherry P.Thambidurai
More informationAn Optimal Algorithm for the Indirect Covering Subtree Problem
An Optimal Algorithm for the Indirect Covering Subtree Problem Joachim Spoerhase Lehrstuhl für Informatik I, Universität Würzburg, Am Hubland, 97074 Würzburg, Germany Key words: Graph algorithm, coverage,
More informationAn Extended Shortest Path Problem with Switch Cost Between Arcs
An Extended Shortest Path Problem with Switch Cost Between Arcs Xiaolong Ma, Jie Zhou Abstract Computing the shortest path in a graph is an important problem and it is very useful in various applications.
More informationAlgorithm Engineering
Sanders: Algorithm Engineering Parallel Sorting 1 Algorithm Engineering An Attempt at a Definition Using Parallel (External) Sorting as an Example Peter Sanders Sanders: Algorithm Engineering Parallel
More informationSimon 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 informationAn Introduction to Spatial Databases
An Introduction to Spatial Databases R. H. Guting VLDB Journal v3, n4, October 1994 Speaker: Giovanni Conforti Outline: a rather old (but quite complete) survey on Spatial DBMS Introduction & definition
More informationI/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 informationdoc. RNDr. Tomáš Skopal, Ph.D. Department of Software Engineering, Faculty of Information Technology, Czech Technical University in Prague
Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond course: Searching the Web and Multimedia Databases (BI-VWM) Tomáš Skopal, 2011 SS2010/11 doc. RNDr. Tomáš Skopal, Ph.D. Department of
More informationLecture Summary CSC 263H. August 5, 2016
Lecture Summary CSC 263H August 5, 2016 This document is a very brief overview of what we did in each lecture, it is by no means a replacement for attending lecture or doing the readings. 1. Week 1 2.
More informationMultidimensional (spatial) Data and Modelling (2)
Multidimensional (spatial) Data and Modelling (2) 1 Representative operations on maps l l l l l are operations on layers used in maps (all 2-d). Synonyms f. map: layer, spatial partition Def. properties:
More informationPartitioning of Public Transit Networks
Partitioning of Public Transit Networks [Bachelor s thesis] Matthias Hertel Albert-Ludwigs-Universität Freiburg.09.205 Contents Introduction Motivation Goal 2 Data model 3 Algorithms K-means Merging algorithm
More informationNetwork Analyst Creating Network Datasets
2013 Esri International User Conference July 8 12, 2013 San Diego, California Technical Workshop Network Analyst Creating Network Datasets Colin Childs Alan Hatakeyama Esri UC2013. Technical Workshop.
More informationStudienarbeit 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 informationParallel 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 informationCustomizable 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 informationCSE 100: GRAPH ALGORITHMS
CSE 100: GRAPH ALGORITHMS Dijkstra s Algorithm: Questions Initialize the graph: Give all vertices a dist of INFINITY, set all done flags to false Start at s; give s dist = 0 and set prev field to -1 Enqueue
More informationExternal 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 informationAdvanced Database Systems
Lecture IV Query Processing Kyumars Sheykh Esmaili Basic Steps in Query Processing 2 Query Optimization Many equivalent execution plans Choosing the best one Based on Heuristics, Cost Will be discussed
More informationScalable 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 informationDifferent Optimal Solutions in Shared Path Graphs
Different Optimal Solutions in Shared Path Graphs Kira Goldner Oberlin College Oberlin, OH 44074 (610) 324-3931 ksgoldner@gmail.com ABSTRACT We examine an expansion upon the basic shortest path in graphs
More informationi,4,2 i,4,1 i,3,2 i,2,2 i,3,1 i direct connection; weight = 0 connection with a change; weight =
Electronic Notes in Theoretical Computer Science 50 No. 1 (2001) Proc. ATMOS 2001 URL: http://www.elsevier.nl/locate/entcs/volume50.html 11 pages Web-Based Integrated Timetable Information System for Railways
More informationMultidimensional Data and Modelling - DBMS
Multidimensional Data and Modelling - DBMS 1 DBMS-centric approach Summary: l Spatial data is considered as another type of data beside conventional data in a DBMS. l Enabling advantages of DBMS (data
More informationGeometric Shortest Path Containers
Geometric Shortest Path Containers Dorothea Wagner Thomas Willhalm Christos Zaroliagis February 26, 2004 Abstract In this paper, we consider Dijkstra s algorithm for the single source single target shortest
More informationNetwork Analyst Creating Network Datasets. Colin Childs Alan Hatakeyama
Network Analyst Creating Network Datasets Colin Childs Alan Hatakeyama Agenda Preparing street data for use in a network dataset - Oneway streets - Hierarchy - RoadClass attribute Using turns, signposts,
More informationIntroduction to Parallel & Distributed Computing Parallel Graph Algorithms
Introduction to Parallel & Distributed Computing Parallel Graph Algorithms Lecture 16, Spring 2014 Instructor: 罗国杰 gluo@pku.edu.cn In This Lecture Parallel formulations of some important and fundamental
More informationEngineering Multilevel Graph Partitioning Algorithms
Engineering Multilevel Graph Partitioning Algorithms Peter Sanders, Christian Schulz Institute for Theoretical Computer Science, Algorithmics II 1 Nov. 10, 2011 Peter Sanders, Christian Schulz Institute
More informationBidirectional 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 informationecompass 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 informationLecture Note: Computation problems in social. network analysis
Lecture Note: Computation problems in social network analysis Bang Ye Wu CSIE, Chung Cheng University, Taiwan September 29, 2008 In this lecture note, several computational problems are listed, including
More informationPartitioning Graphs to Speed Up Dijkstra s Algorithm
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/221131524 Partitioning Graphs to Speed Up Dijkstra s Algorithm Conference Paper in Lecture
More informationAll-Pairs Nearly 2-Approximate Shortest-Paths in O(n 2 polylog n) Time
All-Pairs Nearly 2-Approximate Shortest-Paths in O(n 2 polylog n) Time Surender Baswana 1, Vishrut Goyal 2, and Sandeep Sen 3 1 Max-Planck-Institut für Informatik, Saarbrücken, Germany. sbaswana@mpi-sb.mpg.de
More informationarxiv: v1 [cs.ds] 3 Mar 2016
Using Quadrilaterals to Compute the Shortest Path ExtendedAbstract arxiv:1603.00963v1 [cs.ds] 3 Mar 2016 Newton Campbell Jr. Nova Southeastern University nc607@nova.edu March 4, 2016 Abstract We introduce
More informationExternal-Memory Algorithms with Applications in GIS - (L. Arge) Enylton Machado Roberto Beauclair
External-Memory Algorithms with Applications in GIS - (L. Arge) Enylton Machado Roberto Beauclair {machado,tron}@visgraf.impa.br Theoretical Models Random Access Machine Memory: Infinite Array. Access
More information