Localization of Wireless Terminals using Smart Sensing Shahrokh Valaee Wireless and Internet Research Lab (WIRLab) Dept of Electrical and Computer Engineering University of Toronto www.comm.utoronto.ca/~valaee Wireless and Internet Research Laboratory (WIRLab) A laboratory built by funds from: Canadian Foundation for Innovation (CFI) Ontario Innovation Trust (OIT) Several industrial partners The research focus at WIRLab is on Wireless Networks and Signal Processing 2 WIRLab Architecture The equipment is organized into multiple layers to emulate various networking architectures: Core network with high-end L2/L3 switches and soft routers; Several access points with capability for multiple standard support; Numerous wireless devices such as notebooks, PDAs, wireless cameras, etc, for mesh or multi-hop communications; Wireless robots for mobility management; Sensors equipped with localization devices for environmental monitoring and location estimation; DSRC/WAVE devices for fast MAC and rapid network acquisition used in mobile communications at vehicular speeds. The lab can simulate almost all network configurations and various topologies. 3 Team of Researchers last six years Director: Shahrokh Valaee Professors on Sabbatical: 7 Visiting Researchers: 4, (LG Electronics, SONY, ETRI) Post-doctoral Fellows: 6 PhD Students: 15 MASc Students: 15 Visiting PhD Students: 7 Visiting MASc Students: 1 Undergrad students: 40+ 4 Sample Projects Localization of Wireless Terminals Vehicle-to-vehicle Communication Cognitive Radios Cellular Networks Sensor networks Mesh networks …. WIRLab 5 Cellular Networks High Bandwidth communication for Maglev Trains PAPR reduction through network coding (LGE) Joint patent Instantly Decodable Network Coding (IDNC) Spectrum Sensing 6 Vehicular Networks Low latency communications for vehicular environment Opportunistic Network Coding for data broadcast Enhanced reliability through Positive Orthogonal Codes V2X (pedestrian, cyclists) communications Localization of vehicles 7 Localization of Wireless Nodes Localization of mobile phones Compressive Sensing Patent licensed Android and Windows implementation SLAM Crowdsourcing Using Camera for Localization 8 WIRLab Projects Signal Processing Networking Communications Localization Vehicular Networks Cognitive Radios 9 Localization of Wireless Terminals using Smart Sensing Indoor Localization Objective To design an accurate indoor navigation system that can be easily deployed on commercially available mobile devices without any hardware modification. 11 Motivation Regulations: E911 Precision increases Commercial: shopping mall advertisement Assistive: visually challenged 12 Where Am I? Sense the environment and find your location 13 Sensors in Mobile Phones RF Signal Scanner Accelerometer Gyroscope Barometer Magnetometer Thermometer Photometer … Camera GPS … Software Sensors Orientation Rotation Matrix Gravity Linear Accelerometer Rotation Vector Game Rotation Vector 14 Integrated Solution Localize and Track 15 RF Sensing & Localization Beacon-based RSS-based Proximity Fingerprinting Time-of-Arrival GPS 16 iBeacon Uses Bluetooth Low Energy (BLE) Small battery-operated transmitters Used in consumer market 17 Localization based on Proximity 18 Localization via RF Fingerprinting Off-line measurements (site survey) On-line localization Fingerprinting Off-line Collect fingerprints and store On-line Measure and compare 20 Received Signal Strength (RSS) ? 21 Fingerprint Matrix x1 y1 R1 ,1 R 2 ,1 R R L ,1 x2 y2 R1 , 2 R2,2 R N ,2 xN yN R1 , N R2,N R L , N AP (1) AP ( 2 ) AP ( L ) 22 Online Localization Unknown Location Radio map é ê R1,1 ê R ê 2,1 ê ê R êë L,1 R1,2 R2,2 RN,2 Measurement ù R1,N ú é x1 ù é y1 ù ê ú ê ú ú R2,N ê x2 ú ê y2 ú úê ú=ê ú úê ú ê ú RL,N úúû êë x N úû êë yL úû L: no. of WiFi access points N: no. of fingerprints Assuming sparsity é ê ê ê ê ê ê ë 0 1 0 0 ù ú ú ú ú ú ú û The problem is underdetermined if L < N infinite solutions 23 Compressive Sensing The location of user can be found via the following convex programming min x 1 s.t. y = Rx Number of samples: C K log(N) 24 1 versus 2 min ( x1 + x2 ) min ( x + x s.t. y = R1 x1 + R2 x2 s.t. y = R1 x1 + R2 x2 2 1 EITA-EITC 2012 [Valaee] 2 2 ) 25 Indoor Navigation System Skip the details 26 Patents and Licenses S. Valaee, C. Feng, and A. W. S. Au, “System, Method, and Computer Program for Anonymous Localization,” US non-prov patent, EFS ID 9022070, Application ID 12/966493 filed Dec 2010, Notice of Allowance issue on 12/05/2014. S. Valaee, C. Feng, and A, Au, “System, Method, and Computer Program for Anonymous Localization,” Canadian patent, Reference no. 100 5050700 M, filed Dec 2010. S. Valaee and C. Feng, “System, Method, and Computer Program for Dynamic Generation of a Radio Map for Indoor Positioning of Mobile Devices, “US Patent Application, Application number 13/927510, Filed June 26, 2013. 27 CNIB Testbed Demo Canadian National Institute for the Blind 28 Evaluation Results 30 blind subjects interviewed by a doctor 15 testing group 15 control group 3 tests for each subject Overall Success Rate – Testing Group Overall Success Rate – Control Group 7% Success 40% Success Failure Failure 60% 93% 29 Bayview Village Shopping Center 30 Accuracy (positioning in BV) 31 Site Survey via Crowd Sourcing Accelerometer Sensing Step Counter Off-line Phase A radio map includes A grid of points (labeled points) in the service area RSS measurements at each point AP(L) MAC1 - 89 MAC2 - 78 MAC3 - 91 MAC4 - 85 MAC5 - 92 MAC6 - 77 MAC7 - 72 AP(1) AP(2) AP(l) Access Points (APs) Data Points Labelled Points (reference points) 33 33 Off-line Phase: Speedup Collect RSS readings while walking AP(1) AP(2) Need for a location estimation method AP(L) Access Points (APs) Labelled Points Data Points Auto-Labelled Points 34 AP(l) Android Motion Sensors Take advantage of various sensors information. Each Android device has a combination of: 35 Accelerometer Linear Acceleration Information Gyroscope Magnetic Field sensor (compass) …. Position Estimation with Step Counter Position can be estimated given the initial location, speed, and heading directions With the help of accelerometer, it is possible to make a step counter to estimate the coordinates of RSS readings Acceleration samples 36 Step Counter Accuracy Test1 Test2 Test3 Test4 Test5 Test6 Phone Samsung Samsung Samsung Motorola S1 S1 Tab RAZR HTC LG Desire Nexus 4 Z Tester id P1 P1 P1 P1 P2 P3 Actual steps: 40 60 60 80 50 100 Counted steps: 39 60 60 79 49 98 Accuracy 97.5% 100% 100% 98.75% 98% 98% 37 Speedup in Data Acquisition Manually labeled data: 21 labeled points in approx. 15 min. 38 Auto-labeled data: 347 labeled points in approx. 12 min. Bahen Centre 4th floor, 70m x 80m Reliability of Auto-labeled Data Manually labelled data Auto-labelled data 39 Auto-labeled data is as useful as manually labeled data Crowd Sourcing Traces from casual users The answer to several issues: Using Graph theory, we can build a completely unsupervised system 40 Removing the training phase Radio map maintenance Combine traces from multiple users to build the radio map Demos 41 Floor Detection Pressure Sensing Barometer Air pressure of the environment ( P ). Barometer is useful in floor detection. Power consumption: 0.003mA Unit: mBars Max. sample rate : 30 Hz 43 Barometric Data Air pressure for different floors of Bahen Centre. Air Pressure, Bahen building, sunny day 999 1st floor 2nd floor 3rd floor 4th floor 5th floor 6th floor 7th floor 8th floor 998.5 998 997.5 Pressure(mBar) 997 996.5 996 995.5 995 994.5 994 44 0 5 10 15 20 25 Time(s) 30 35 40 45 50 Floor detection View of 3D Map 8 6 4 2 0 2000 1500 1500 1000 1000 500 500 0 0 45 Confusion Matrix for Floor Detection Floor 1 Floor 2 Floor 3 Floor 4 Floor 5 Floor 6 Floor 7 Floor 8 Floor 1 0.9980 0.0020 0 0 0 0 0 0 Floor 2 0 1.0000 0 0 0 0 0 0 Floor 3 0 0 1.0000 0 0 0 0 0 Floor 4 0 0 0 1.0000 0 0 0 0 Floor 5 0 0 0 0 1.0000 0 0 0 Floor 6 0 0 0 0 0 1.0000 0 0 Floor 7 0 0 0 0 0 0 0.9998 0.0002 Floor 8 0 0 0 0 0 0 0 1.0000 46 Implementation of Algorithms Transmit sensor data of the phone to a PC running MATLAB in real-time. We deploy algorithms in MATLAB rather than JAVA. Much Faster! 47 Conclusion Sensory data from smartphones can be used to localize wireless devices indoors Compressive Sensing is used to enhance sensing and localization Accelerometer and Gyro are used for crowdsourcing Pressure sensor is used for floor detection Direct connection between sensor data and MATLAB reduces the implementation time 48