200 likes | 377 Views
The Location Stack: Designing for Location-Aware Mobile Computing. Jeffrey Hightower. Research Question. What are the appropriate software design abstractions for location-aware mobile computing systems?. GPS. SpotON: Ad hoc signal strength. Ultrasonic time of flight.
E N D
The Location Stack:Designing for Location-Aware Mobile Computing Jeffrey Hightower
Research Question What are the appropriate software design abstractions for location-aware mobile computing systems?
GPS SpotON: Ad hoc signal strength Ultrasonic time of flight Cell tower triangulation DC magnetic pulses Infrared proximity Stereo vision Physical contact Odometry, laser ranging A survey & taxonomy of location systems and technologies [Hightower and Borriello, IEEE Computer, Aug 2001]
Survey Results • The location problem will be solved either: a) in rigid, vendor-integrated systems for specific applications OR b) with robust software abstractions connecting many sensing technologies and many applications • 5 software design principles for Location-Aware Mobile Computing systems.
Principle 1: There are fundamental measurement techniques. • Measurements • Distance • Asserted position • Angle • Proximity • Non-geometric features
Principle 2: There are standard ways to combine measurements. • Measurements • Distance • Asserted position • Angle • Proximity • Non-geometric features Lateration
Angulation Principle 2: There are standard ways to combine measurements. • Measurements • Distance • Asserted position • Angle • Proximity • Non-geometric features
Cellular Containment Principle 2: There are standard ways to combine measurements. • Measurements • Distance • Asserted position • Angle • Proximity • Non-geometric features
Principle 2: There are standard ways to combine measurements. • Measurements • Distance • Asserted position • Angle • Proximity • Non-geometric features Ad Hoc
Principle 2: There are standard ways to combine measurements. • Measurements • Distance • Asserted position • Angle • Proximity • Non-geometric features Scene Analysis 355 lumens
Proximity Containment Spatial Formations d >2d Principle 3: There are standard object relationship queries. Temporal Progression
Principle 4: Uncertainty is important. Example: routing phone calls to nearest handset X [Hightower and Borriello, Ubicomp LMUC Workshop, Sep 2001]
Principle 5: Applications are concerned with activities. • For example: • Dinner is in progress. • A presentation is going on in Sieg 324. • Jane is dispensing a 50% solution of ethylene-glycol into beaker #45039. • Jeff is walking through his house listening to Beethoven’s 7th Symphony. • Elvis has left the building.
The Location Stack Intentions Principles • There are fundamental measurement techniques. • There are standard ways to combine measurements. • There are standard object relationship queries. • Uncertainty is important. • Applications are concerned with activities. Activities Contextual Fusion Arrangement Context Data Handling Fusion Measurement Sensors [Hightower, Brumitt, Borriello, Submitted to WMCSA, Jan 2002]
The Location Stack in Labscape Intentions Activities Contextual Fusion Arrangement Context Data Handling Fusion Measurement Sensors A biology laboratory
The Location Stack in Labscape Intentions Activities Contextual Fusion Arrangement Context Data Handling Fusion Measurement Sensors
probability distance The Location Stack in Labscape Intentions Activities Contextual Fusion Arrangement Context Data Handling Fusion Measurement Sensors
Status • Building a Java reference implementation. • Defining class hierarchies and layer APIs • Object and measurement taxonomies • Implementing Fusion and Arrangement Query engines • Evaluating the Location Stack with 2 Applications • Labscape • PlantCare
Conclusions • Building location-aware mobile computing systems with a single technology or rigid architecture is inappropriate. • The Location Stack: • Enables constant evolution the system as new technologies are deployed. • Allows us to partition the work and research problems appropriately. • Fosters a common vocabulary and encourages interoperability.
Acknowledgements Seila Kheang, Daniel Dunham, Eugene Shih (Intel Research), Barry Brumitt (Microsoft Research), Larry Arnstein, Gaetano Borriello (UW/Intel Research), and The Portolano Research Group portolano.cs.washington.edu/projects/location/