Presentation Slides.

advertisement
Geometric Travel Planning
Stefan Edelkamp (University of Dortmund, Germany)
Shahid Jabbar (University of Freiburg, Germany)
Thomas Willhalm (Universtiy of Karlsruhe, Germany)
Geometric Travel Planning
1
The big question ..
What are we doing here ?
The Problemo
 Digital maps available in the market are very
expensive.
 Most of those maps do not allow updates.
 Not possible to have timed queries.

The travel time can change drastically during different
kinds of days like, workdays and holidays …

Can even change during different times of a day like,
from 8 to 9 AM as compared to 10 to 11 PM.
Geometric Travel Planning
2
The big question ..
What are we doing here ?
The Solution
 Why not people make their own maps that they can query
and update ?
 But how ?
 How to collect the data ?
 How to process that data ?
Global Positioning System (GPS) Receiver
+
Computational Geometry
Geometric Travel Planning
3
Data Collection
What about the cost of collecting the data ?
We say ….
You only need some Bananas.
Geometric Travel Planning
4
Data Collection
Geometric Travel Planning
5
Data format
<longitude>, <latitude>, <date>, <time>
48.0070783, 7.8189867, 20030409, 100156
48.0071067, 7.8190150, 20030409, 100158
48.0071850, 7.8191400, 20030409, 100200
48.0071650, 7.8191817, 20030409, 100202
48.0071433, 7.8191867, 20030409, 100204
48.0071383, 7.8191883, 20030409, 100206
48.0071333, 7.8191917, 20030409, 100208
48.0071317, 7.8191917, 20030409, 100212
Geometric Travel Planning
6
Not everything that glitters is Gold.
Filtering + Rounding
 Kalman Filter

GPS Information + Speed-o-meter reading as the inertial
information => removes the outliers
 Douglas-Peuker Line Simplification Algorithm


Simplifies a polyline by removing the waving affect.
Remove all the points that are more than Θ distance
away from the straight line between the extreme points
Geometric Travel Planning
7
Geometric Rounding
Douglas-Peucker’s algorithm results
using Hersberger and Snoeyink variant
#points Θ=10-7
10-6
10-5
10-4
10-3
1,277
766
558
243
77
22
1,706
2,365
1,540
2,083
1,162
1,394
433
376
117
28
25
7
50,000
48,432
42,218
17,853
4,385
1,185
Geometric Travel Planning
8
Lets sweeeeep …
Graph Construction
•We have multiple traces.
•We need to convert them into a graph to be able to apply
different graph algorithms e.g. shortest path searching
•Seems very simple, just convert:
Point
 Vertex
Segment  Edge
Some of them might be intersecting
 Road crossings!!!
•Bentley - Ottmann Line Segment Intersection Algorithm.
Geometric Travel Planning
9
Where am I ?
 I am at hotel building and I want to go to the
Cinema.
 Pity!!! I have no existing trace that pass through the
hotel building.
 What to do ? Hmmmm …interesting problem
 How about going to the nearest place that is in my
existing traces ?
Geometric Travel Planning
10
Where am I ?
 Sounds good .. But how to find that nearest place ?
 Voronoi Diagram to the rescue!!!
Geometric Travel Planning
11
Node localization
Results
# points
Naive
Searching
ConstrucSearching
# queries
Time
tion Time
Time
(sec)
(sec)
1,277
1,277
0.10
0.30
12.60
1,706
1,706
0.24
0.54
24.29
2,365
2,365
0.33
1.14
43.3
50,000
50,000
13.73
14.26
>10,000
Geometric Travel Planning
12
My floppy is too small … how can I carry this file ?
Graph Compression
Geometric Travel Planning
13
My floppy is too small … how can I carry this file ?
Graph Compression (contd…)
Geometric Travel Planning
14
My floppy is too small … how can I carry this file ?
Graph Compression
 Problem:
The original layout is destroyed
=>
 Restricted to perform the search only on intersection
points + start/end points of traces
 Shortest path only in terms of intersection points +
start/end points of traces.

 Solution:

A compression algorithm that can retain the original
layout of the graph also.
Geometric Travel Planning
15
My floppy is too small … how can I carry this file ?
Graph Compression (contd…)
Algorithm
Hide the
original edges
Delete the
new edge
Geometric Travel Planning
16
My floppy is too small … how can I carry this file ?
Graph Compression (contd…)
Results of Graph Compression
# Nodes
# Compressed
Nodes
Time (sec)
1,473
199
0.01
1,777
74
0.02
2,481
130
0.03
54,267
4,391
0.59
Geometric Travel Planning
17
I have to reach the Cinema ASAP .. What to do ?
Search
 Dijkstra – Single-Source shortest path.
 A* - Goal directed Dijkstra
Geometric Travel Planning
18
I have to reach the Cinema ASAP .. What to do ?
Search (results)
Search
Sweep
#Points
Time Expansions
Time (sec)
(sec)
Dijkstra 50,000
A*
50,000
Geometric Travel Planning
11.13
0.27
44,009
11.13
0.20
18,775
19
I have to reach Cinema ASAP .. What to do ?
Search (results)
 Number of queries is much more than the
updates.
 How about pre-computing some information ?
 How about running All-pairs shortest path
algorithm and saving all the paths:
 Nope … O(n²) space
Geometric Travel Planning
20
Accelerating Search
Bounding-Box pruning
 With every edge, save a bounding box that contains at least
the nodes that are reachable from the source node, on a
shortest path using that edge.
1
1
1
1
1
_/8
1
t
1
1
1
1
1
1
1
_/2
1
_/2
2
_/2
_/2
s
2
1
1
1
9,24
Geometric Travel Planning
21
Accelerating Search
Bounding-Box pruning
 In Dijkstra


u  DeleteMin(PQ)
forall v \in adjacent_edges(u)

If t \in BB(u,v)
.....
.....


Endif
endfor
Geometric Travel Planning
22
Accelerating Search
Bounding-Box pruning
Results of 200 queries
#Nodes
Time
+
Expansions
+
199
0.34
6,596
0.60
19,595
4,391
8.11
65,726
12.88
217,430
Geometric Travel Planning
Time Expansions
–
–
23
GPS-ROUTE
Architecture
Geometric Travel Planning
24
Summary
 Presented Map generation from GPS traces.
 Geometric-, Graph- and AI-Algorithms
 Running GPS Route Planning System
 Available Visualisation with Vega
 Future:


Dynamic Updates
Handling of large data sets
Geometric Travel Planning
25
Download