480 likes | 724 Views
Location-Aware Computing. John Krumm Microsoft Research Redmond, Washington, USA. Thank You. Toshio Hori Takeo Kanade Chie Nakamura. Digital Human Research Center. Location. Why Bother to Sense Location?. Find conference room near me Who is in this meeting with me?
E N D
Location-Aware Computing John KrummMicrosoft ResearchRedmond, Washington, USA
Thank You • Toshio Hori • Takeo Kanade • Chie Nakamura Digital Human Research Center
Why Bother to Sense Location? • Find conference room near me • Who is in this meeting with me? • Where are the people who are supposed to be here? • If I’m in conference room, don’t allow cell phone, alerts, or IM • How long will it take to get from here to next appointment? • Route planning in strange buildings
No Really, Why Bother? • Remind me when I’m near a certain customer • Where are my kids, buddies, colleagues? • Index my documents (email, photos) by location • Change default printer and network settings based on location • Electronic graffiti, e.g. “There’s a better Thai restaurant one block north.”
Why Not Use GPS? • Does not work indoors • Needs view of satellites
Location Sensing Rosum, promising but where is it going? Indoor/outdoor, coverage spreading Still a hard problem, can give much more than location (good & bad) Hazas, Scott, Krumm, “Location-Aware Computing”, IEEE Computer Magazine, February 2004.
Beyond Location sensors → location → context Patterson, Liao, Fox, Kautz, “Inferring High-Level Behavior from Low-Level Sensors”, 2003 Use GPS tracking to infer user’s mode of transportation as (car, bus, walk) Sparacino, “Sto(ry)chastics: A Bayesian Network Architecture for User Modeling and Computational Storytelling for Interactive Spaces”, 2003 Use indoor location sensing in MIT museum to classify visitor into (greedy, busy, selective)
Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
Video Tracking EasyLiving Project Steve Shafer Barry Brumitt Steve Harris Brian Meyers Greg Smith Mike Hale John Krumm
Video Tracking Is Very … • … accurate (centimeters) • … easy for user (no devices to carry) • … hard to set up (camera calibration) • … hard to get right (live demos still rare) • … CPU intensive (one PC per camera) • … intrusive Research can solve
Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
SmartMoveX Microsoft Research’s entry into the active badge space (along with Xerox PARC, UW, Intel, AT&T Cambridge, MIT, etc.) Receiver Multiple receivers for position triangulation from signal strengths Transmitter Hardware: Lyndsay Williams (Microsoft Research Cambridge UK) Software: John Krumm & Greg Smith (Microsoft Research Redmond)
RX RX PC RX PC RX RX PC DB PC RX PC RX RX Receiver Network
Graph Algorithm • Compute path instead of single locations • Constrain path to allowable routes • Process with Hidden Markov Model (HMM – same as used for speech recognition) • Average error 3.05 meters Constraints make things easier
SmartMoveX Evaluation Good • Cheap hardware • Uses existing network infrastructure • Graph algorithm imposes natural constraints on paths Needs Improvement • Privacy – depends on central server • Convenience • Extra device to wear • No display on device • Infrastructure – requires special receivers
Active Badge Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
“Here I Am” – Coarse Location With Steve Shafer (Microsoft Research)
“Here I Am” Room Numbers Hand-Entered from Maps 802.11 Access Point Data “Here I Am” returns position of strongest access point
Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
Location from 802.11 with LOCADIO* John Krumm & Eric Horvitz Wi-Fi (802.11) access point • Mobile device measures signal strengths from Wi-Fi access points • Computes its own location *Location from Radio
LOCADIO - Fine Location Radio survey to get signal strength as a function of position
LOCADIO - Constraints Make the client as smart as possible to reduce calibration effort No passing through walls No speeding We know when you move
LOCADIO - Results Hidden Markov model gives median error of 1.53 meters
Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
SPOT Watch traffic weather dining movies Commercial FM: transmit new data every ~2 minutes Filter on watch to take what it wants Watch displays “personalized” data
Location-Sensitive Features • Nice to have • Local traffic • Nearby movie times • Nearby restaurants Need to know location of device …
Use FM Radio Signal Strengths Scan signal strengths of 32 FM radio stations at 1 Hz
Sammamish Woodinville Redmond Bellevue Seattle Clustering Approach KMTT Measured RSSI A B C KPLU Input Power • But • Each watch scales signal strengths differently • Impractical to calibrate every watch
Ranking Approach Any monotonically increasing function of signal strength preserves ranking Redmond: KPLU < KMTT < KMPS Bellevue: KMTT < KPLU < KMPS Issaquah: KMTT < KMPS < KPLU … n radio stations n! possible rankings e.g. s = (12, 40, 38, 10) r = (2, 4, 3, 1) f = (f1, f2, f3, …, fn) = scanned frequencies s = (s1, s2, s3, …, sn) = signal strengths r = (r1, r2, r3, …, rn) = ranks of signal strengths R(r) = permutation hash code = [0, 1, 2, … n!-1]
Test Six suburbs and six radio stations 81.7% correct from 8 radio stations
Avoid Manual Training Seattle KMPS 94.1 MHz KSER 90.7 MHz
Classify Into Grid Cell • Find location in grid • Use predicted signal strengths to avoid manual training ≈ 8 kilometers average error Summer intern Adel Youssef, U. Maryland
Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
“NearMe” Find people and things nearby printers people reception desk bathroom conferencerooms
NearMe Basic Idea 802.11 Access Points NearMe Server
NearMe ≠ Location Why compute absolute locations when you only need relative locations? Tomasi, Kanade, “Shape and Motion from Image Streams: a Factorization Method”, 1991 Hightower, Fox, Borriello, “The Location Stack”, 2003
Get location Compare Get location Compare Short Circuit Get signal strengths Get signal strengths
NearMe Screen Shots 1. Register with server 2. Report Wi-Fi signals • NearMe Server • SQL Server • .NET Web Service 3. Nearby people 4. Nearby printer(s)
NearMe Distance Estimate Estimate distance between two clients by comparing “Wi-Fi signatures” 15 meters rms error Distance = f(n∩,ρs) n∩ = number of access points seen in common ρs = Spearman rank correlation of signal strengths
NearMe Applications Device association (with Ken Hinckley, Microsoft Research) Look up URLs of nearby people/things Send email to people nearby
Outline • Introduction • Video Tracking • Active badge – SmartMoveX • Coarse Wi-Fi location – “Here I Am” • Fine Wi-Fi location – LOCADIO • SPOT Wristwatch Location – RightSPOT • Wi-Fi proximity – NearMe • “Longhorn” Location Service – Sensor Fusion
“Longhorn” Location Service “Longhorn” PC knows its location GPS your location cell phone Location Service Wi-Fi Bluetooth other unanticipated AN/PLR-3 Helmet-Mounted Radar (I am not making this up.) other location resolvers
Longhorn Location Service Mgmt App (shell, netxp, OEM) User Pref. Db. LocMgmt API User Resolver Cache App(Shell, OEM) Notification Service MasterResolver Fuser AD Resolver Location API AD WinFS PluginManager Map Point Resolver LocProv API MapPoint Db / Serv. Blue Tooth Provider 802.11 Provider OEM Provider Tracey Yao, PM Florin Teodorescu, Dev Vivek Bhanu, Dev Jim Seifert, Test Madhurima Pawar, Test OEM Service Wireless (802.11) Zero Configuration Service BT Configuration Service
Fusion Proper fusion of measurements depends on knowledge of uncertainty Metric Measurements Hierarchies Weighted Hierarchical Voting Kalman Filter