Engineering Route Planning Algorithms
|
|
- Theodora Simon
- 5 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 Fragen jederzeit direkt nach der Vorlesung Raum 222 (im Juli selten zu erreichen) schultes@ira.uka.de
3 Sanders/Schultes: Route Planning 3 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)
4 Sanders/Schultes: Route Planning 4 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)
5 Sanders/Schultes: Route Planning 5 Diplom- / Studienarbeiten / Hiwi-Jobs z.b. Implementierung für ein Mobilgerät Weiterentwicklung bestehender Verfahren Besonderer Reiz Spitze der Forschung (Gewinner DIMACS Challenge November 2006) Voraussetzungen algorithmische Kenntnisse, (sehr) gute Programmierkenntnisse Kontakt: Dominik Schultes, schultes@ira.uka.de, Raum 222
6 Sanders/Schultes: Route Planning 6 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
7 Sanders/Schultes: Route Planning 7 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
8 Sanders/Schultes: Route Planning 8 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
9 Sanders/Schultes: Route Planning 9 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!)
10 Sanders/Schultes: Route Planning 10 Road Networks Applications route planning systems in the internet (e.g. car navigation systems logistics planning traffic simulation
11 Sanders/Schultes: Route Planning 11 Outline 1. short introduction of basic approaches Dijkstra s algorithm / bidirectional search 2. review of speedup techniques before Oct 2005 A search (using landmarks) separator-based multi-level approach geometric containers / edge flags reach-based routing 3. detailed presentation of speedup techniques after Oct 2005 highway hierarchies transit-node routing highway-node routing fast queries very fast queries handles dynamic scenarios
12 Sanders/Schultes: Route Planning and 2. Part For 1. and 2. part, switch to Thomas Willhalm s slides, pages Caveat: some (minor) aspects are no longer up-to-date.
13 Sanders/Schultes: Route Planning Approach Highway Hierarchies [SS 05 ] s t
14 Sanders/Schultes: Route Planning 14 Naive Route Planning 1. Look for the next reasonable motorway
15 Sanders/Schultes: Route Planning 15 Naive Route Planning 1. Look for the next reasonable motorway 2. Drive on motorways to a location close to the target
16 Sanders/Schultes: Route Planning 16 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
17 Sanders/Schultes: Route Planning 17 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
18 Sanders/Schultes: Route Planning 18 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
19 Sanders/Schultes: Route Planning 19 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
20 Sanders/Schultes: Route Planning 20 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
21 Sanders/Schultes: Route Planning 21 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)
22 Sanders/Schultes: Route Planning 22 Contraction highway nodes and edges
23 Sanders/Schultes: Route Planning 23 Contraction bypass node
24 Sanders/Schultes: Route Planning 24 Contraction shortcuts
25 Sanders/Schultes: Route Planning 25 Contraction bypass node
26 Sanders/Schultes: Route Planning 26 Contraction
27 Sanders/Schultes: Route Planning 27 Contraction enters component component (of bypassed nodes) leaves component
28 Sanders/Schultes: Route Planning 28 Contraction core
29 Sanders/Schultes: Route Planning 29 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.
30 Sanders/Schultes: Route Planning 30 Example: Karlsruhe Level 0 1 Level 2 Level 3 Level 4
31 Sanders/Schultes: Route Planning 31 Shrinking of the Highway Networks Europe H = 40 H = 60 H = #edges level
32 Sanders/Schultes: Route Planning 32 Fast Construction Challenge Avoid all-pairs shortest-path precomputation. Solution For each node: perform only a local search.
33 Sanders/Schultes: Route Planning 33 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
34 Sanders/Schultes: Route Planning 34 Query Example: from Karlsruhe, Am Fasanengarten 5 to Palma de Mallorca
35 Sanders/Schultes: Route Planning 35 Bounding Box: 20 km Level 0 Search Space
36 Sanders/Schultes: Route Planning 36 Bounding Box: 20 km Level 0 Search Space
37 Sanders/Schultes: Route Planning 37 Bounding Box: 20 km Level 1 Search Space
38 Sanders/Schultes: Route Planning 38 Bounding Box: 20 km Level 1 Search Space
39 Sanders/Schultes: Route Planning 39 Bounding Box: 20 km Level 2 Search Space
40 Sanders/Schultes: Route Planning 40 Bounding Box: 20 km Level 2 Search Space
41 Sanders/Schultes: Route Planning 41 Bounding Box: 20 km Level 3 Search Space
42 Sanders/Schultes: Route Planning 42 Bounding Box: 80 km Level 4 Search Space
43 Sanders/Schultes: Route Planning 43 Bounding Box: 400 km Level 6 Search Space
44 Sanders/Schultes: Route Planning 44 Level 8 Search Space
45 Sanders/Schultes: Route Planning 45 Level 10 Search Space
46 Sanders/Schultes: Route Planning 46 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
47 Sanders/Schultes: Route Planning 47 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
48 Sanders/Schultes: Route Planning 48 Distance Table: Search Space Example
49 Sanders/Schultes: Route Planning 49 Experiments: Methodology s-t-pairs uniformly at random queries in real applications average value variance? Transit Node Routing (economic variant) Query Time [µs]
50 Sanders/Schultes: Route Planning 50 Experiments: Methodology consider different localities! average value variance? Transit Node Routing (economic variant) Query Time [µs] Dijkstra Rank
51 Sanders/Schultes: Route Planning 51 Experiments: Methodology consider different localities! plot complete spectrum! Transit Node Routing (economic variant) Query Time [µs] Dijkstra Rank
52 Sanders/Schultes: Route Planning 52 Instances W. Europe (PTV) USA/CAN (PTV) #nodes #directed edges #road categories average speeds [km/h]
53 Sanders/Schultes: Route Planning 53 Local Queries (Highway Hierarchies) Query Time [ms] Europe (15 min., 68 B/node) USA/CAN (20 min., 69 B/node) Dijkstra Rank
54 Sanders/Schultes: Route Planning 54 Combination Goal Directed Search (landmarks) [with D. Delling, D. Wagner] About 20 % faster than HHs + distance tables Significant speedup for approximate queries
55 Sanders/Schultes: Route Planning 55 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
56 Sanders/Schultes: Route Planning 56 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
57 Sanders/Schultes: Route Planning 57 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
58 Sanders/Schultes: Route Planning 58 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
59 Sanders/Schultes: Route Planning 59 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
60 Sanders/Schultes: Route Planning 60 for each t T, perform backward search up to the top level, 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 up to and including the top level, at each node u, scan all entries (t,u,d(u,t)) and compute d(s, u) + d(u,t), update D[s,t]
61 Sanders/Schultes: Route Planning Approach Transit-Node Routing [with H. Bast and S. Funke] s t
62 Sanders/Schultes: Route Planning 62 Example: X X Karlsruhe Copenhagen
63 Sanders/Schultes: Route Planning 63 Example: X X Karlsruhe Berlin
64 Sanders/Schultes: Route Planning 64 Example: X X Karlsruhe Vienna
65 Sanders/Schultes: Route Planning 65 Example: X X Karlsruhe Munich
66 Sanders/Schultes: Route Planning 66 Example: X X Karlsruhe Rome
67 Sanders/Schultes: Route Planning 67 Example: X X Karlsruhe Paris
68 Sanders/Schultes: Route Planning 68 Example: X X Karlsruhe London
69 Sanders/Schultes: Route Planning 69 Example: X X Karlsruhe Brussels
70 Sanders/Schultes: Route Planning 70 Example: X X Karlsruhe Copenhagen
71 Sanders/Schultes: Route Planning 71 Example: X X Karlsruhe Berlin
72 Sanders/Schultes: Route Planning 72 Example: X X Karlsruhe Vienna
73 Sanders/Schultes: Route Planning 73 Example: X X Karlsruhe Munich
74 Sanders/Schultes: Route Planning 74 Example: X X Karlsruhe Rome
75 Sanders/Schultes: Route Planning 75 Example: X X Karlsruhe Paris
76 Sanders/Schultes: Route Planning 76 Example: X X Karlsruhe London
77 Sanders/Schultes: Route Planning 77 Example: X X Karlsruhe Brussels
78 Sanders/Schultes: Route Planning 78 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]
79 Sanders/Schultes: Route Planning 79 Example: X X Karlsruhe Berlin
80 Sanders/Schultes: Route Planning 80 Example: X X Karlsruhe Berlin
81 Sanders/Schultes: Route Planning 81 Example: X X Karlsruhe Berlin
82 Sanders/Schultes: Route Planning 82 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]
83 Sanders/Schultes: Route Planning 83 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)}
84 Sanders/Schultes: Route Planning 84 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)
85 Sanders/Schultes: Route Planning 85 Example
86 Sanders/Schultes: Route Planning 86 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?
87 Sanders/Schultes: Route Planning 87 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
88 Sanders/Schultes: Route Planning 88 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
89 Sanders/Schultes: Route Planning 89 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
90 Sanders/Schultes: Route Planning 90 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
91 Sanders/Schultes: Route Planning 91 Missing Pieces 3. compute top distance table in the original graph solution: many-to-many shortest paths (based on highway hierarchies) T S
92 Sanders/Schultes: Route Planning 92 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)}
93 Sanders/Schultes: Route Planning 93 Two Concrete Variants Level 5 economical Layer 1 Level 4 generous Layer 1 3 L L2 1 0 L2 L1 (3)
94 Sanders/Schultes: Route Planning 94 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
95 Sanders/Schultes: Route Planning 95 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)
96 Sanders/Schultes: Route Planning 96 Local Queries (Transit-Node Routing, Europe) Query Time [µs] eco: 46 min, 110 B/node gen:164 min, 251 B/node Dijkstra Rank
97 Sanders/Schultes: Route Planning Approach Highway-Node Routing [SS 07 ]
98 Sanders/Schultes: Route Planning 98 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
99 Sanders/Schultes: Route Planning 99 Dynamic Scenarios change entire cost function (e.g., use different speed profile) change a few edge weights (e.g., due to a traffic jam)
100 Sanders/Schultes: Route Planning 100 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)
101 Sanders/Schultes: Route Planning 101 Overlay Graph [Holzer, Schulz, Wagner, Weihe, Zaroliagis ] graph G = (V,E) is given select node subset S V
102 Sanders/Schultes: Route Planning 102 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}
103 Sanders/Schultes: Route Planning 103 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
104 Sanders/Schultes: Route Planning 104 Query bidirectional perform search in G till search trees are covered by nodes in S t s
105 Sanders/Schultes: Route Planning 105 Query bidirectional perform search in G till search trees are covered by nodes in S continue search only in G t s
106 Sanders/Schultes: Route Planning 106 Covering Nodes Conservative Approach: stop searching in G when all branches are covered big city long distance ferry s can be very inefficient
107 Sanders/Schultes: Route Planning 107 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
108 Sanders/Schultes: Route Planning 108 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
109 Sanders/Schultes: Route Planning 109 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
110 Sanders/Schultes: Route Planning 110 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)
111 Sanders/Schultes: Route Planning 111 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
112 Sanders/Schultes: Route Planning 112 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
113 Sanders/Schultes: Route Planning 113 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
114 Sanders/Schultes: Route Planning 114 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}
115 Sanders/Schultes: Route Planning 115 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
116 Sanders/Schultes: Route Planning 116 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)
117 Sanders/Schultes: Route Planning 117 Level 0 Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7
118 Sanders/Schultes: Route Planning 118 Dynamic Highway-Node Routing change a few edge weights, mobile scenario change set affected #settled nodes query time (motorway edges) queries absolute relative [ms] % (1.7) % (5.9) % (30.4) % (141.8) 243.9
119 Sanders/Schultes: Route Planning 119 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.
120 Sanders/Schultes: Route Planning 120 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/
121 Sanders/Schultes: Route Planning 121 Conclusion algorithm engineering analysis deduction perf. guarantees realistic models design falsifiable hypotheses induction implementation algorithm libraries real Inputs experiments applications
122 Sanders/Schultes: Route Planning 122 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
123 Sanders/Schultes: Route Planning 123 Analysis Correctness: for TNR and HNR: probably not 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
124 Sanders/Schultes: Route Planning 124 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
125 Sanders/Schultes: Route Planning 125 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
126 Sanders/Schultes: Route Planning 126 Experiments consider different localities! plot complete spectrum! Transit Node Routing (economic variant) Query Time [µs] Dijkstra Rank
127 Sanders/Schultes: Route Planning 127 Instances before 2005: only very small road networks publicly and readily available nodes, but only degree > 2 nodes
128 Sanders/Schultes: Route Planning 128 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)
129 Sanders/Schultes: Route Planning 129 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
130 Sanders/Schultes: Route Planning 130 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?
131 Sanders/Schultes: Route Planning 131 Appendix
132 Sanders/Schultes: Route Planning 132 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
133 Sanders/Schultes: Route Planning 133 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
134 Sanders/Schultes: Route Planning 134 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?
135 Sanders/Schultes: Route Planning 135 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
136 Sanders/Schultes: Route Planning 136 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
137 Sanders/Schultes: Route Planning 137 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.
138 Sanders/Schultes: Route Planning 138 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
139 Sanders/Schultes: Route Planning 139 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
140 Sanders/Schultes: Route Planning 140 Highway-node routing [SS 07 ]: stay tuned
141 Sanders/Schultes: Route Planning 141 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
142 Sanders/Schultes: Route Planning 142 Canonical Shortest Paths SP : Set of shortest paths SP canonical P = s,...,s,...,t,...,t SP : s t SP
143 Sanders/Schultes: Route Planning 143 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
144 Sanders/Schultes: Route Planning 144 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)
145 Sanders/Schultes: Route Planning 145 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.
146 Sanders/Schultes: Route Planning u 1 2 v s 2 0 s t t u v (c) Result of the construction.
147 Sanders/Schultes: Route Planning 147 Contraction highway nodes and edges
148 Sanders/Schultes: Route Planning 148 Contraction bypass node
149 Sanders/Schultes: Route Planning 149 Contraction shortcuts
150 Sanders/Schultes: Route Planning 150 Contraction bypass node
151 Sanders/Schultes: Route Planning 151 Contraction
152 Sanders/Schultes: Route Planning 152 Contraction enters component component (of bypassed nodes) leaves component
153 Sanders/Schultes: Route Planning 153 Contraction core
154 Sanders/Schultes: Route Planning 154 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.
155 Sanders/Schultes: Route Planning 155 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
156 Sanders/Schultes: Route Planning 156 Local Queries (Highway Hierarchies Star, Europe) exact (22 min., 76 B/node) approx (22 min., 76 B/node) Query Time [ms] Dijkstra Rank
157 Sanders/Schultes: Route Planning 157 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
158 Sanders/Schultes: Route Planning 158 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
159 Sanders/Schultes: Route Planning 159 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
160 Sanders/Schultes: Route Planning 160 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]
161 Sanders/Schultes: Route Planning 161 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)
162 Sanders/Schultes: Route Planning 162 Neighbourhood Size Preprocessing Time [min] Memory Overhead per Node [byte] Europe USA/CAN USA Query Time [ms]
163 Sanders/Schultes: Route Planning 163 Number of Levels Europe Memory Overhead per Node [byte] Memory Overhead Query Time Query Time [ms] Number of Levels
164 Sanders/Schultes: Route Planning 164 Contraction Rate Europe # Settled Nodes Settled Nodes Relaxed Edges # Relaxed Edges Contraction Rate
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 informationRoute 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 informationChapter 5: Outlier Detection
Ludwig-Maximilians-Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Knowledge Discovery in Databases SS 2016 Chapter 5: Outlier Detection Lecture: Prof. Dr.
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 informationThe Square Root Phenomenon in Planar Graphs
1 The Square Root Phenomenon in Planar Graphs Survey and New Results Dániel Marx Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary Satisfiability
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 informationNotes on Minimum Spanning Trees. Red Rule: Given a cycle containing no red edges, select a maximum uncolored edge on the cycle, and color it red.
COS 521 Fall 2009 Notes on Minimum Spanning Trees 1. The Generic Greedy Algorithm The generic greedy algorithm finds a minimum spanning tree (MST) by an edge-coloring process. Initially all edges are uncolored.
More informationClustering Part 4 DBSCAN
Clustering Part 4 Dr. Sanjay Ranka Professor Computer and Information Science and Engineering University of Florida, Gainesville DBSCAN DBSCAN is a density based clustering algorithm Density = number of
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 informationChapter 12: Indexing and Hashing. Basic Concepts
Chapter 12: Indexing and Hashing! Basic Concepts! Ordered Indices! B+-Tree Index Files! B-Tree Index Files! Static Hashing! Dynamic Hashing! Comparison of Ordered Indexing and Hashing! Index Definition
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 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 informationCS 561, Lecture 10. Jared Saia University of New Mexico
CS 561, Lecture 10 Jared Saia University of New Mexico Today s Outline The path that can be trodden is not the enduring and unchanging Path. The name that can be named is not the enduring and unchanging
More informationIntroduction to Spatial Database Systems
Introduction to Spatial Database Systems by Cyrus Shahabi from Ralf Hart Hartmut Guting s VLDB Journal v3, n4, October 1994 Data Structures & Algorithms 1. Implementation of spatial algebra in an integrated
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 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 information