The location stack

  • Authors:
  • Jeffrey Hightower;Gaetano Borriello

  • Affiliations:
  • University of Washington;University of Washington

  • Venue:
  • The location stack
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Many emerging mobile computing applications need to know the physical locations of people and devices. For example, mobile workers want to automatically annotate photographs or documents with a “place of creation” property to enable indexing and retrieval. This sort of need has inspired development of many systems to automatically locate people, devices, and other objects. The most well-known system is perhaps the Global Positioning System (GPS), a satellite-based location service. Because each approach solves a different problem or supports different applications, they vary widely in many parameters. Not surprisingly, no location system produces error-free measurements or is ideal in all situations. For example, GPS receivers are ineffective indoors while infrared proximity badge systems, which do work well indoors, use infrastructure too cumbersome to deploy ubiquitously. Furthermore, many systems use idiosyncratic software metaphors and stove-piped designs making flexibility low and reuse difficult. What is needed is (a) a software framework allowing multiple sensing technologies to exist under a single Location Programming Interface and (b) probabilistic algorithms to implement this framework and handle uncertain sensor information. This dissertation addresses both needs. The Location Stack is a six-layer software framework for building location-enhanced computing systems. It is motivated by a taxonomy and survey of existing location systems presented in this dissertation. The Location Stack has impacted the field including commercial adoption by Intel, research adoption by the Place Lab project, and community adoption of our publicly available probabilistic location-estimation library. The Location Stack partitions research and development problems appropriately, standardizes vocabulary, and promotes hardware and software reuse. This dissertation also studies how to implement the Location Stack. Empirical analyses show that particle filters, an instance of a class of estimation algorithms called Bayes filters, are accurate, flexible, and practical tools to manage measurement uncertainty, perform multi-sensor fusion, and support rich location programming interfaces on heterogeneous devices. Additional collaborative work shows how to increase the performance of particle filters using learned motion and addresses the previously challenging goal of fusing anonymous and identity-certain location sensors. Future directions include algorithmic performance improvements, developing a “place” abstraction on coordinates, and encouraging public adoption of location-enhanced computing.