200 likes | 299 Views
D ETERMINING L OCATION F ROM W IRELESS C OMMUNICATION S IGNALS. J ULIE L ETCHNER, D IETER F OX, A NTHONY L AMARCA. I am here. W HY L OCATION?. Location-based services Directions Location-based reminders Context-aware apps Activity-based reminders. Ex: Care for the elderly.
E N D
DETERMINING LOCATION FROM WIRELESS COMMUNICATION SIGNALS JULIE LETCHNER, DIETER FOX, ANTHONY LAMARCA
I am here WHY LOCATION? • Location-based services • Directions • Location-based reminders • Context-aware apps • Activity-based reminders • Ex: Care for the elderly
WHY WIFI? • Good coverage exactly where GPS fails • Indoors, urban areas, building ‘shadows’ • Most devices are already equipped • WiFi basics: Signal strength Signal frequency B A Unique ID
B: s 79, f .85 PLACELAB: THE BASICS • Intel Research’s location toolkit/platform • Stores WiFi access point info • Uses this info to map signals to location A: s 70, f .6 • Key question: How to construct this mapping?
B: s 79, f .85 GRAPH-BASED TRACKING • Track on a streetmap skeleton • Discretize each edge • Learn a sensor model for each segment Sensor model: f(location, reading) likelihood
strength total frequency GRAPH-BASED TRACKING • Learn sensor model from logs with GPS + WiFi • <lat, lon, AP, strength> • Learn by counting! For a single WiFi reading, we compute: = *
PLACELAB: CURRENT RESULTS • ~20 meters error
PLACELAB: CURRENT RESULTS • ~20 meters error • Limitations: • Sensor model is static • GPS required for learning • Sensor model nonexistent in unvisited locations
EVOLVING SENSOR MODEL • Iteratively refine the sensor model • Start with a GPS log; learn a sensor model (same as already discussed) • Bootstrap the location information • Use a meaningful prior • Use existing data to infer a model for places we haven’t visited
EVOLVING SENSOR MODEL Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model!
EVOLVING SENSOR MODEL Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model!
EVOLVING SENSOR MODEL <A, s 70, f .3> Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model! <B, s 70, f .4> <B, s 57, f .8> <A, s 60, f .7> <B, s 65, f .7> <A, s 73, f .5>
EVOLVING SENSOR MODEL <A, s 70, f .3> Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model! <A, s 60, f .7> <A, s 73, f .5>
EVOLVING SENSOR MODEL <A, s 70, f .3> Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model! <A, s 60, f .7> <A, s 73, f .5>
EVOLVING SENSOR MODEL <A, s 70, f .3> Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model! <A, s 60, f .7> <A, s 73, f .5>
EVOLVING SENSOR MODEL Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model!
EVOLVING SENSOR MODEL Step I: • Run a tracker • Smooth the resulting trace • Store each measurement with its location estimate Step II: • Infer each AP’s location from its measurement locations • Use the AP location to predict the sensor model Step III: • Augment the predicted sensor model with actual data from the traces • Repeat from step I, using new & improved sensor model!
EVOLVING SENSOR MODELS • Requires only a small “starter” set of location-annotated data (e.g. data with GPS) • Can be used with any kind of signal-based sensor • Sensor model will automatically improve & adapt • New access points get incorporated automatically • Knowledge of AP data is refined with time
CONCLUSION • Location tracking is a neat problem • We have shown ~20m results using a principled approach • Coming soon: iterative refinement & self-maintenance
THANKS! Questions? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?