Virtual Compass relative positioning to sense mobile social interactions January 2010, Technical Report MSR-TR-2010-5 CS495, Pierre-Olivier Vanheeckhoet Team overview • Microsoft Research – Sharad Agarwal – Paramvir Bahl – Ranveer Chandra – Alec Wolman • University of Massachusetts, Amherst – Mark Corner • University of Arkansas, Fayetteville – Nilanjan Banerjee Study overview • Virtual Compass, is a peer-based localization system for mobile phones that uses common radio technologies and nearby phones to create a relative neighbor graph. • It uses multiple, common radio technologies used in mobile phones as Bluetooth and Wi-Fi and can improve the localization by using 3G and GPS. Motivations • Allow social applications that are running on your mobile phone to sense your precise social context, predicts future context, and log and recall social interactions. • Use continual sensing of social context at an extremely fine granularity • Currently, the technologies that implement localization on mobile handhelds are limited by accuracy, coverage and energy consumption. Goals • Estimate distance and spatial placement with good accuracy • Low energy consumption • Have a quick adaption to changes of the social context Technology Where is used the application ? • People spend the majority of their time indoors Consequences ? • Fine-grained location accuracy is required to detect the interaction between devices Technology • GPS – most widely used localization technology in mobile handsets – rarely works indoors and not enough accurate – High energy consumption • Cell-tower based localization – widely available but poor accuracy • Wi-Fi localization – provides reasonable accuracy in dense urban environments – much less effective in other areas • Bluetooth – Good coverage for nearest devices – Coverage limited to 10 m and is long to connect with an other node Technology • Virtual Compass uses multiple radio technologies simultaneously to obtain a good accuracy and a good spatial placement (Wi-Fi, Bluetooth and 3G and GPS when necessary and available) Experimental Setup • Operating systems – Windows Mobile – Windows Vista • Devices (10) – HTC TyTNII mobile phone – HTC Touch Cruise mobile phone – 4 laptops – 4 desktops • Technology – WI-FI IEEE 802.11b – Bluetooth (1.0) – 3G or Ethernet • Areas – Indoor areas • 100 m² • 900 m² • 2500 m² Peer localization 1. Estimating Distance (pair nodes) • Nodes periodically exchange messages on radios • The RSSI of these messages is used to estimate the distance between sender and receiver • Virtual Compass incorporates the uncertainty in distance measurements Peer localization A set of mobile nodes. Each line represents the ability to directly communicate between the two end-points using a radio such as Wi-Fi or Bluetooth. Peer localization 2. Using multiple radios • The messages are exchanged on multiple radios to reduce the inherent error of distance estimation via RSSI • Each RSSI reading is translated to a distance with an error bound by using empirical models • These models are built on several propagation experiments with different types of devices and by measuring RSSI for multiple packets over both Bluetooth and Wi-Fi between two nodes at known distances Peer localization An example of using RSSI measurements from multiple radios (Bluetooth and Wi-Fi) to reduce the error in computing distance. Peer localization 3. Spatial Placement • The application creates a relative neighbor graph • The chosen algorithm to calculate node positions is a simple version of the Vivaldi method. • Vivaldi is a decentralized network coordinate system developed by MIT CSAIL, Cambridge, MA Peer localization Peer localization An example of spatial placement in Phase 1 Energy-Efficient Peer Localization • Energy consumption is a critical concern. • Virtual Compass depends on frequent communication between peers • Scans that are too frequent will drain energy and too infrequent will increase the latency • Device arrival or departure will go undetected until the next scan interval Energy-Efficient Peer Localization • Virtual Compass uses three techniques to reduce the number of scans without significantly degrading localization accuracy – Adaptive Bluetooth Scanning – Cloud Coordination – Leveraging Application Behavior Adaptive Bluetooth Scanning • Virtual Compass adapts the scan interval. • Every device adjusts its scan interval • Between two successive scans we leave the Bluetooth radio on. • Adaptive scanning for Wi-Fi is infeasible • Wi-Fi is periodically (every 1 minute) turned on and scans. Adaptive Bluetooth Scanning Energy consumption of radios on fullycharged HTC Touch Cruise phones. This graph shows the Bluetooth scan interval for a device over time. Cloud Coordination • There are significant periods of time when a device is completely alone. • The app saves energy during these periods – by keeping Wi-Fi off – not initiating Bluetooth scans until a new device arrives • A simple service running on the Internet informs the device when there are other devices in the vicinity by using 3G. • The device periodically asks this Web service with a pushbased technique. Leveraging Application Behavior • Some applications that use peer localization may not need the neighbor graph maintained all the time • Virtual Compass detects when the back-light for the screen on a mobile device turns off. • Then we assume that the user is not using the application and keeps the Wi-Fi radio off and does not scan on Bluetooth. • The Web service is used to know If any one device in the vicinity has the back-light on. • In this case it resumes normal discovery behavior. Application • FriendMeter uses Virtual Compass to sense the distances between the user and her friends who are in the vicinity • It uses the Facebook API to connect to Facebook, authenticate the user, and get her list of friends. System Evaluation • Evaluation of the performance by focusing on three key questions : – How accurate are Virtual Compass's distance estimates and spatial placement ? – How much energy does Virtual Compass consume ? – How quickly does Virtual Compass adapt to changes ? Pairwise distance accuracy • Advantage of our multi-radio approach • By simultaneously using both Bluetooth and Wi-Fi – average error is 1.41 meters – median error is 0.9 meters Spatial placement accuracy • The Accuracy is dependent on 2D spatial placement algorithm and density of devices • Several placement experiments with varying number of devices and placement of these devices • With More devices there are more constraints and a lower error • The average error is 1.9 meters. Spatial placement accuracy This figure shows a map of an indoor office environment. The light dots show the actual location of 9 devices. The dark dots show location computed by Virtual Compass. Energy Consumption • Adaptively change the Bluetooth scan interval induces significant energy savings • Cloud coordination scheme reduces the battery lifetime. • Advantage of using a notification system instead of polling • The back-light optimization increase lifetime by 30% • The lifetime does not significantly vary with density. Energy Consumption This graph shows the lifetime of Virtual Compass on a fully-charged mobile phone, with different energy conservation techniques and different numbers of nearby peer devices in a 100m2 area. This table shows the lifetime of Virtual Compass on a fully-charged mobile phone, with the back-light optimization turned off or on. Latency • The latency of detecting a new peer is dominated by – the frequency of scanning • Bluetooth scanning occurs once every 10 minutes • but Wi-Fi occurs every minute. • Bluetooth scanning is particularly slow • the average latency for detecting a new peer is 30 seconds • Bluetooth's slower scan time dominates peer departure latency. Latency This graph shows the latency of Virtual Compass detecting a peer moving into or moving out of the vicinity, with different numbers of nearby, stationary peer devices. Improvements and Discussion • Improving accuracy by using different profiles for different environments (Outdoors, Indoors) • Using Bluetooth 1.2 chipsets in order to make discovery not only guaranteed reliable, but also finish in under 5 seconds. • Privacy and security – The underlying peer localization component has a complete map of all devices in the vicinity. – A malicious node could lie about its location, or claim that certain other nodes are close to it when in fact they are not. It would increase error and would distort social context Conclusion • Virtual Compass is a peer-based localization system for mobile phones. • It provides relative positioning by placing peers on a 2D plane without requiring any infrastructure support. • Virtual Compass leverages the multiple radios available on today's smartphones to provide good accuracy • It use several energy management techniques with-out compromising location accuracy. • Results of the evaluations show an average distance error of 1.9 meters. References • F. Dabek, R. Cox, F. Kaashoek, and R. Morris. Vivaldi: A decentralized network coordinate system. In SigComm, 2004 • Y. Agarwal, R. Chandra, A. Wolman, P. Bahl, K. Chin, and R. Gupta. Wireless wakeups revisited: energy management for VoIP over Wi-Fi smartphones. In MobiSys, 2007. • Microsoft Azure SQL Data Service. http://microsoft.com/azure/data.mspx • R. Chandra, J. Padhye, A. Wolman, and B. Zill. A Location-based Management System for Enterprise Wireless LANs. In NSDI, 2007. G. Zanca, F. Zorzi, A. Zanella, and M. Zorzi. Experimental comparison of rssi-based localization algorithms for indoor wireless sensor networks. In REALWSN, 2008. •