Download - Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Transcript
Page 1: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 1

Geometric Travel Planning

Stefan Edelkamp (University of Dortmund, Germany)

Shahid Jabbar (University of Freiburg, Germany)

Thomas Willhalm (Universtiy of Karlsruhe, Germany)

Page 2: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 2

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.

Page 3: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 3

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

The big question .. What are we doing here ?

The Solution

Page 4: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 4

Data Collection

What about the cost of collecting the data ?

We say ….

You only need some Bananas.

Page 5: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 5

Data Collection

Page 6: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 6

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

Page 7: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 7

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

Page 8: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 8

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 1,540 1,162 433 117 25

2,365 2,083 1,394 376 28 7

50,000 48,432 42,218 17,853 4,385 1,185

Page 9: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 9

Lets sweeeeep … Graph Construction

•Bentley - Ottmann Line Segment Intersection Algorithm.

•We have multiple traces.

Some of them might be intersecting

Road crossings!!!

•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

Page 10: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 10

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 ?

Page 11: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 11

Where am I ?

Sounds good .. But how to find that nearest place ? Voronoi Diagram to the rescue!!!

Page 12: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 12

Node localizationResults

# points

# queries

Construc-tion Time

Searching

Time (sec)

Naive Searchi

ng Time (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

Page 13: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 13

My floppy is too small … how can I carry this file ?

Graph Compression

Page 14: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 14

My floppy is too small … how can I carry this file ?

Graph Compression (contd…)

Page 15: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 15

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.

Page 16: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 16

My floppy is too small … how can I carry this file ?

Graph Compression (contd…)

Algorithm

Hide the original edges

Delete the new edge

Page 17: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 17

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

Page 18: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 18

I have to reach the Cinema ASAP .. What to do ?

Search

Dijkstra – Single-Source shortest path. A* - Goal directed Dijkstra

Page 19: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 19

#PointsSweep

Time (sec)

SearchTime (sec)

Expansions

Dijkstra 50,000 11.13 0.27 44,009

A* 50,000 11.13 0.20 18,775

I have to reach the Cinema ASAP .. What to do ?

Search (results)

Page 20: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 20

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

Page 21: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 21

Accelerating SearchBounding-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.

s2 1 1 1

1

1 1 1 1 1 1

1

1

1

1 1 1 1

_/2

_/2

_/2

_/2

_/8

9,24

t

2

Page 22: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 22

Accelerating SearchBounding-Box pruning

In Dijkstra u DeleteMin(PQ) forall v \in adjacent_edges(u)

If t \in BB(u,v).....

.....

Endif endfor

Page 23: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 23

Accelerating SearchBounding-Box pruningResults of 200 queries

#NodesTime

+Expansions

+Time

–Expansion

s –

199 0.34 6,596 0.60 19,595

4,391 8.11 65,726 12.88 217,430

Page 24: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 24

GPS-ROUTE Architecture

Page 25: Geometric Travel Planning 1 Stefan Edelkamp (University of Dortmund, Germany) Shahid Jabbar (University of Freiburg, Germany) Thomas Willhalm (Universtiy.

Geometric Travel Planning 25

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