26
Prof. Dr. Claudia Linnhoff-Popien André Ebert, Sebastian Feld http://www.mobile.ifi.lmu.de WS 2017/18 Praktikum Mobile und Verteilte Systeme Location-Based Services & Route Planning

Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

Prof. Dr. Claudia Linnhoff-Popien

André Ebert, Sebastian Feld

http://www.mobile.ifi.lmu.de

WS 2017/18

Praktikum Mobile und Verteilte Systeme

Location-Based Services & Route Planning

Page 2: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

Prof. Dr. Claudia Linnhoff-Popien

André Ebert, Sebastian Feld

http://www.mobile.ifi.lmu.de

WS 2017/18

Praktikum Mobile und Verteilte Systeme

Location-Based Services

Page 3: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 3

HISTORICAL OUTLINE

Ubiquitous Computing

Context and Context-

Awareness

Location-Based

Services

Page 4: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Mark Weiser, Xerox PARC “Nomadic Issues in Ubiquitous Computing” Talk at Nomadic ‘96

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 4

UBIQUITOUS COMPUTING

http://www.ubiq.com/hypertext/weiser/NomadicInteractive/Sld003.htm

Page 5: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Context is any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves. (Dey, Abowd, 1999)

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 5

CONTEXT & CONTEXT AWARENESS

ftp://ftp.cc.gatech.edu/pub/gvu/tr/1999/99-22.pdf

Page 6: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Context-aware computing is a mobile computing paradigm in which applications can discover and take advantage of contextual information (such as user location, time of day, nearby people and devices, and user activity). (Chen, Kotz, 2000)

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 6

CONTEXT & CONTEXT AWARENESS

https://pdfs.semanticscholar.org/0c50/772e92971458402205097a67a2fd015575fd.pdf

Page 7: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Sensing location ▪ E.g. GPS (outdoor / indoor positioning) Media capturing ▪ E.g. camera, microphone Connectivity ▪ Mobile network, Bluetooth, WLAN, NFC Time ▪ Day of week, calendar Motion and environmental sensors ▪ Accelerometer, ambient temperature, gravity, gyroscope, light, linear

acceleration, magnetic field, orientation, pressure, proximity, relative humidity, rotation vector, temperature

Further ▪ Active/running apps on device, remaining energy level, …

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 7

SENSING CONTEXT

Page 8: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Location-based Services – Fundamentals and Operation Axel Küpper

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 8

DEFINITION OF LBS

Page 9: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

LBS as the intersection of several technologies (Brimicombe, 2002)

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 9

CONVERGENCE OF TECHNOLOGIES

New information and communication

technologies ( “smartphones”)

https://www.researchgate.net/profile/Allan_Brimicombe/publication/200621932_GIS_-_Where_are_the_frontiers_now/links/56006f3108aec948c4fa8ea3.pdf

Page 10: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Foundations of Location Based Services, Lession 1, CartouCHe, Lecture Notes on LBS (Steiniger et al., 2011)

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 10

APPLICATION CATEGORIES

http://www.spatial.cs.umn.edu/Courses/Fall11/8715/papers/IM7_steiniger.pdf

Page 11: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Mobile Cartography – Adaptive Visualisation of Geographic Information on Mobile Devices (Reichenbacher, 2004) Table 7: Elementary mobile user actions with spatial relation

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 11

DEMARCATION

https://mediatum.ub.tum.de/doc/601066/601066.pdf

Page 12: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Foundations of Location Based Services, Lession 1, CartouCHe, Lecture Notes on LBS (Steiniger et al., 2011) Figure 3: The basic components of an LBS

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 12

DEMARCATION

http://www.spatial.cs.umn.edu/Courses/Fall11/8715/papers/IM7_steiniger.pdf

Page 13: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Mobile Cartography – Adaptive Visualisation of Geographic Information on Mobile Devices (Reichenbacher, 2004) Figure 28: Geographic information modelling

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 13

DEMARCATION

https://mediatum.ub.tum.de/doc/601066/601066.pdf

Page 14: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

LOCATION-BASED SERVICES

Navigation and route planning as an important part of LBS Spatial information as part of context-aware computing Approaches and ideas to be discussed are more of tools rather than applications Topics ▪ Trajectory Computing ▪ (Big) Data Analysis for Geospatial Trajectories ▪ Somewhat Information Retrieval

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 14

CONCLUSION

Page 15: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

Prof. Dr. Claudia Linnhoff-Popien

André Ebert, Sebastian Feld

http://www.mobile.ifi.lmu.de

WS 2017/18

Praktikum Mobile und Verteilte Systeme

Route Planning

Page 16: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

ROUTE PLANNING

Route Planning in Transportation Networks ▪ Technical Report, Microsoft Research ▪ 37 pages of content, 234 references ▪ Ongoing updated, here: 08.01.2014

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 16

SOME KIND OF REFERENCE BOOK Chair for algorithms and data structures

Previously KIT, theoretic computer science

Practical computer science, data structures and efficient algorithms

Chair for theoretic computer science

Algorithm theory / engineering

https://www.microsoft.com/en-us/research/wp-content/uploads/2014/01/MSR-TR-2014-4.pdf

Page 17: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

ROUTE PLANNING

Topics: Practical algorithms for routing in ▪ Road networks ▪ Schedule-based public transportation networks ▪ Multimodal scenarios (combining schedule-based and unrestricted modes) Structure ▪ Shortest path algorithms for static networks ▪ Algorithm’s relative performance ▪ Journey planning on schedule-based public transportation ▪ Multimodal scenarios

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 17

SOME KIND OF REFERENCE BOOK

Not to be taken for granted: Navigation can be seen as a shortest path problem in a graph!

Page 18: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

SHORTEST PATHS ALGORITHMS

Let 𝐺 = 𝑉, 𝐴 be a (directed) graph with a set 𝑉 of vertices and a set 𝐴 of arcs Each arch 𝑢, 𝑣 ∈ 𝐴 has an associated nonnegative length 𝑙 𝑢, 𝑣 The length of a path is the sum of its arc lengths In the point-to-point shortest path problem, one is given as input the graph 𝐺, a source 𝑠 ∈ 𝑉, and a target 𝑡 ∈ 𝑉, and must compute the length of the shortest path from 𝑠 to 𝑡 in 𝐺 This is also denoted as 𝑑𝑖𝑠𝑡 𝑠, 𝑡 , the distance between 𝑠 and 𝑡 Further problems ▪ One-to-all problem ▪ All-to-one problem ▪ Many-to-many problem ▪ All pair shortest path problem

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 18

PRELIMINARIES

https://de.wikipedia.org/wiki/Graph_(Graphentheorie)#/media/File:CPT-Graphs-directed-weighted-ex1.svg

Page 19: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

SHORTEST PATHS ALGORITHMS

Dijkstra’s algorithm ▪ Has got a “label-setting” property: Once a vertex 𝑢 is scanned, its distance

value 𝑑𝑖𝑠𝑡 𝑠, 𝑢 is correct ▪ For point-to-point queries, the algorithm may stop as soon as it scans the

target 𝑡 Bellman-Ford algorithm ▪ Label-correcting algorithm: vertices may be scanned multiple times ▪ Works in rounds and on graphs with negative edge weights Floyd-Warshall algorithm ▪ Computes distances between all pair of vertices (APSP) Search space: The set of vertices scanned by the algorithm

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 19

BASIC TECHNIQUES https://www.microsoft.com/en-us/research/wp-content/uploads/2014/01/MSR-TR-2014-4.pdf

Page 20: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

SHORTEST PATHS ALGORITHMS

A* Search ▪ Potential function on the vertices, which is a lower bound on the distance 𝑑𝑖𝑠𝑡 𝑢, 𝑡

▪ Vertices that are closer to the target are scanned earlier during the algorithm

▪ In road networks with travel time metric, one can use the geographical distance

ALT (A*, landmarks, and triangle inequality) algorithm ▪ Preprocessing phase picks small set of landmarks and stores the distances

between them and all vertices in the graph ▪ Triangle inequalities involving the landmarks are used to compute a valid

lower bound on 𝑑𝑖𝑠𝑡 𝑢, 𝑡

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 20

GOAL-DIRECTED TECHNIQUES

Dijkstra A* ALT

https://weekendtechnotes.files.wordpress.com/2012/11/searchboundsoptimization.jpg

Page 21: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

SHORTEST PATHS ALGORITHMS

Further Goal-Directed Techniques ▪ E.g. Geometric Containers: precompute for each arc a set of vertices

to which a shortest path begins with that arc Separator-Based Techniques ▪ E.g. Vertex/Arc Separators: decompose graph into several

components and create and overlay graph Hierarchical Techniques ▪ Exploit the inherent hierarchy of road networks Bounded-Hop Techniques ▪ Precompute distances between pairs of vertices,

implicitly adding “virtual shortcuts” to the graph Combinations ▪ Hybrid algorithms for additional speedups

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 21

FURTHER APPROACHES/TECHNIQUES

https://www.microsoft.com/en-us/research/wp-content/uploads/2014/01/MSR-TR-2014-4.pdf

Page 22: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

SHORTEST PATHS ALGORITHMS

Path Retrieval ▪ Retrieve the shortest path itself, not just the length ▪ No shortcuts (Dijkstra, A*, Arc Flags): Parent pointer ▪ With shortcuts (CH, SHARC, CRP): Additionally unpacking shortcuts Batched Shortest Paths ▪ Source set, target set ▪ Point-of-Interest queries Dynamic Networks ▪ Transportation networks have unpredictable delays, traffic, or closures ▪ If the modified network is stable for the foreseeable future, just rerun

preprocessing algorithm ▪ Three other approaches

1. “Repair” preprocessed data instead of rebuilding it

2. Adapt query algorithm to work around “wrong” parts of the preprocessing phase

3. Split preprocessing phase into metric-independent and metric-dependent stages

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 22

EXTENSIONS

Page 23: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

SHORTEST PATHS ALGORITHMS

Time-Dependence ▪ In real transportation networks, the best route often

depends on the departure time in a predictable way ▪ Time-dependent shortest path problem earliest possible arrival last departure

▪ Profile searches finding best departure time for minimizing total time in transit

Multiple Objective Functions ▪ Consider multiple cost functions ▪ Edge restrictions e.g. certain vehicle types cannot use all segments

▪ Pareto Set “take a more scenic route even if the trip is slightly longer”

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 23

EXTENSIONS

Page 24: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

APPLICATIONS

Show the user several “reasonable” paths (in addition to the shortest one) Alternative paths should be ▪ Short ▪ Smooth ▪ Significantly different from the shortest path and

other alternatives Alternative paths can be compactly represented as a small graph Related Problem: Corridor of paths ▪ Allow deviations from the best route (while driving)

to be handled without recomputing the entire path ▪ These robust routes can be useful in mobile scenarios

with limited connectivity

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 24

ALTERNATIVE ROUTES & CORRIDOR OF PATHS

Page 25: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

APPLICATIONS

Nontrivial cost functions ▪ Flexible arc restrictions such as height or weight limitations ▪ Multiple criteria (such as optimizing costs and travel time) Minimizing the energy consumption of electric vehicles ▪ Recharging batteries when the car is going downhill Optimal cycling routes (amount of uphill cycling) Fast computation of many (batched) shortest paths ▪ Match GPS traces to road segments ▪ Traffic simulations ▪ Route prediction ▪ Ride sharing ▪ Point-of-interest queries

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 25

MISCELLANEOUS

Page 26: Praktikum Mobile und Verteilte Systeme Location-Based ... · LOCATION-BASED SERVICES Context-aware computing is a mobile computing paradigm in which applications can discover and

ROUTE PLANNING

Successful approaches exploit different properties of the road networks that make them easier to deal with Geometry-based algorithms are consistently dominated by established techniques Careful engineering is essential to unleash the full computational power of modern computer architectures (exploit locality of reference and parallelism) The ultimate goal ▪ A worldwide multimodal journey planner, that takes into account real-time

traffic and transit information, historic patterns, schedule constraints, and monetary costs

▪ Moreover, all the elements should be combined in a personalized manner

Praktikum MSP | WS 2017/18 | Location-Based Services & Route Planning Slide | 26

FINAL REMARKS