Loading in 2 Seconds...

GPS-based Navigation in Static and Dynamic Environments

Loading in 2 Seconds...

111 Views

Download Presentation
## GPS-based Navigation in Static and Dynamic Environments

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**GPS-based Navigation in Static and Dynamic Environments**Master’s Thesis Presentation Shahid Jabbar Institut für Informatik Universität Freiburg Supervisor: PD Dr. Stefan Edelkamp Co-supervisor: Prof. Dr. Th. Ottmann GPS-based Navigation**The big question .. What are we doing here ?Das 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. Shahid Jabbar**The big question .. What are we doing here ?The Solution**• Why not let 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 Shahid Jabbar**What is GPS ?**• A collection of 24 geo-stationary satellites. • Gives the position of an object in terms of its longitude, latitude, and height. Shahid Jabbar**Data Collection**What about the cost of collecting the data ? Shahid Jabbar**Data Collection**What about the cost of collecting the data ? We say …. You only need some Bananas. Shahid Jabbar**Data Collection**Shahid Jabbar**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 Shahid Jabbar**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. Shahid Jabbar**Geometric Rounding Douglas-Peucker’s algorithm**resultsusing Hersberger and Snoeyink variant Shahid Jabbar**Some of them might be intersecting** Road crossings!!! 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 • Bentley - Ottmann Line Segment Intersection Algorithm. Shahid Jabbar**we are very much dependent on k**Graph Construction Results of Line sweep Shahid Jabbar**Where am I ?**• I am at building 101 and I want to go to CinemaxX. • Schade!!! I have no existing trace that pass through building 101. • What to do ? Hmmmm …interesting problem • How about going to the nearest place that is in my existing traces ? Shahid Jabbar**Where am I ?**• Voronoi Diagramto the rescue!!! Shahid Jabbar**Node localizationResults**Shahid Jabbar**My floppy is too small … how can I carry this file ?Graph**Compression Shahid Jabbar**My floppy is too small … how can I carry this file ?Graph**Compression Shahid Jabbar**My floppy is too small … how can I carry this file ?Graph**Compression (contd…) Shahid Jabbar**My floppy is too small … how can I carry this file ?Graph**Compression (contd…)Results of Graph Compression Shahid Jabbar**I have to reach CinemaxX ASAP .. What to do ?Search**• Dijkstra – Single-Source shortest path. • A* - Goal directed Dijkstra • 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 Shahid Jabbar**Accelerating SearchBounding-Box pruning (Wagner, Willhalm)**• With every edge, save a bounding box that contains at least all the nodes that can be reached on a shortest path originating from that particular edge. 9,24 Shahid Jabbar**Accelerating SearchBounding-Box pruning**• In Dijkstra • u DeleteMin(PQ) • forallv \in adjacent_edges(u) • if t \in BB(u,v) ..... ..... • endif • endfor Shahid Jabbar**Search Models**• Basic model • Shortest path • Time model • Shortest + fastest path • Absolute-time model • Timed queries Shahid Jabbar**Accelerating SearchBounding-Box pruningResults of 200**queries Shahid Jabbar**Schade MeldungDynamics**• Disturbances on road: A road accident or a traffic jam • A road not usable at all Edge weight = +inf • Probably one lane of the road is still opened Edge weight increases by some delta • Consequence: • The pre-computed information becomes invalid and useless. • Re-computing bounding boxes is very expensive. • This disturbance is temporary. Shahid Jabbar**Types of Disturbances**Disturbances as Geometrical Objects Model Individual Edge Model Shahid Jabbar**Affect of disturbances on pre-computed information**• Which information has become invalid ? • Everything ? • Nope, only those bounding boxes that have intersections with affected edges are potentially affected. Shahid Jabbar**Affect of disturbances on pre-computed information**Shahid Jabbar**Graph update – off-line approach**• Introduce the affect of disturbances on the graph • Simple for Individual Edge model – just increase the edge weight of the affected edge. • A bit complex for Disturbances as Geometrical Object model. • Problem: We need all the edges that are covered by a rectangle. • Solution: WindowQuery using Segment trees • Perform search on the updated graph • Use pruning information only if it is not affected Shahid Jabbar**Graph update – off-line approachin Disturbances as**Geometrical Objects model Rectangle Intersection Problem or more precisely Red – Blue Rectangle Intersection Problem Shahid Jabbar**Exploration time checking – on-line approach**Observations: • Since the weights are always increased, if the shortest path is not affected, it remains to be the shortest path. • It is possible that some of the constraints have terminated and no longer be there by the time the mobile object will reach that area. Shahid Jabbar**Exploration time checking – on-line approach**General Strategy: Before exploring an edge e, check if e is affected or not • if e is affected then check whether the constraints would be valid by the time e would be traversed. • if constraints are valid then declare the search procedure as invalid and use standard Dijkstra or A*. • else continue. • else continue. Shahid Jabbar**Exploration time checking – on-line approach**Shahid Jabbar**Future Issues**• Handling of large data sets • The compressed edges should not be considered straight => Curved Edges • Visualization of route on a topographic map. • Bridges => 3D navigation. Shahid Jabbar**Thesis download**• http://www.informatik.uni-freiburg.de/~jabbar/thesis.pdf Shahid Jabbar