Chapter 7 Localization & Positioning 1 2016/3/12 Goals of this chapter Means for a node to determine its physical position with respect to some coordinate system (50, 27) or symbolic location (in a living room) Using the help of 2 Anchor nodes that know their position Directly adjacent nodes Over multiple hops 2016/3/12 Outline 3 7.1 Properties of localization and positioning procedures 7.2 Possible approaches 7.3 Mathematical basics for the lateration problem 7.4 Positioning in multi-hop environments 7.5 Positioning assisted by anchors 2016/3/12 7.1 Properties of localization and positioning procedures Physical position versus logical location 4 Coordinate system: position Symbolic reference: location Absolute versus relative coordinate Centralized or distributed computation Localized versus centralized computation Limitations: GPS for example, does not work indoors Scale (indoors, outdoors, global, …) 2016/3/12 Properties of localization and positioning procedures (cont.) Accuracy Precision 5 how close is an estimated position to the real position? the ratio with which a given accuracy is reached Costs, energy consumption, … 2016/3/12 7.2 Possible approaches Proximity (Tri-/Multi-) lateration and angulation The most evident form of it is to analyze pictures taken by a camera Other measurable characteristic ‘fingerprints’ of a given location can be used for scene analysis e.g., RADAR Bounding box 6 Lateration : when distances between nodes are used Angulation: when angles between nodes are used Scene analysis A node wants to determine its position or location in the proximity of an anchor to bound the possible positions of a node 2016/3/12 Proximity (range-free approach) 7 Using information of a node’s neighborhood Exploit finite range of wireless communication e.g., easy to determine location in a room with infrared (room number announcements) 2016/3/12 Trilateration and triangulation (range-based approach) (Tri-/Multi-)lateration and angulation Using geometric properties Lateration: distances between entities are used Angulation: angle between nodes are used (x = 5, y = 4) r2 r3 (x = 8, y = 2) r1 (x = 2, y = 1) 8 2016/3/12 Trilateration and triangulation (cont.) Determining distances 9 To use (multi-)lateration, estimates of distances to anchor nodes are required. This ranging process ideally leverages the facilities already present on a wireless node, in particular, the radio communication device. The most important characteristics are Received Signal Strength Indicator (RSSI), Time of Arrival (ToA), and Time Difference of Arrival (TDoA). 2016/3/12 Distance estimation RSSI (Received Signal Strength Indicator) 10 Send out signal of known strength, use received signal strength and path loss coefficient to estimate distance 2016/3/12 Distance estimation RSSI (cont.) Problem: Highly error-prone process : 11 Caused by fast fading, mobility of the environment Solution: repeated measurement and filtering out incorrect values by statistical techniques Cheap radio transceivers are often not calibrated Same signal strength result in different RSSI Actual transmission power different from the intended power Combination with multipath fading Signal attenuation along an indirect path is higher than along a direct path Solution: No! 2016/3/12 Distance estimation PDF PDF RSSI (cont.) Distance Distance PDF of distances in a given RSSI value 12 Signal strength 2016/3/12 Distance estimation ToA (Time of arrival ) Use 13 time of transmission, propagation speed Problem: Exact time synchronization Usually, sound wave is used But propagation speed of sound depends on temperature or humidity 2016/3/12 Distance estimation TDoA (Time Difference of Arrival ) Use two different signals with different propagation speeds 14 Compute difference between arrival times to compute distance Example: ultrasound and radio signal (Cricket System) Propagation time of radio negligible compared to ultrasound Problem: expensive/energy-intensive hardware 2016/3/12 Scene analysis RADAR system: Comparing the received signal characteristics from multiple anchors with premeasured and stored characteristics values. 15 Radio environment has characteristic “fingerprints” The necessary off-line deployment for measuring the signal landscape cannot always be accommodated in practical systems. 2016/3/12 Bounding Box 16 The bounding box method proposed in uses squares instead of circles as in tri-lateration to bound the possible positions of a node. For each reference node i, a bounding box is defined as a square with its center at the position of this node (xi, yi), with sides of size 2di (where d is the estimated distance) and with coordinates (xi –di, yi–di) and (xi+di, yi+di). 2016/3/12 Bounding Box (cont.) Using range to anchors to determine a bounding box Use center of box as position estimate B C d A 17 2016/3/12 References 18 N. Bulusu, J. Heidemann, and D. Estrin. “GPS-Less Low Cost Outdoor Localization For Very Small Devices,” IEEE Personal Communications Magazine, 7(5): 28–34, 2000. C. Savarese, J. Rabay, and K. Langendoen. “Robust Positioning Algorithms for Distributed Ad-Hoc Wireless Sensor Networks,” In Proceedings of the Annual USENIX Technical Conference, Monterey, CA, 2002. A. Savvides, C.-C. Han, and M. Srivastava. “Dynamic Fine-Grained Localization in Ad-Hoc Networks of Sensors,” Proceedings of the 7th Annual International Conference on Mobile Computing and Networking, pages 166–179. ACM press, Rome, Italy, July 2001. S. Simic and S. Sastry, “Distributed localization in wireless ad hoc networks,” UC Berkeley, Tech. rep. UCB/ERL M02/26, 2002. 2016/3/12 7.3 Mathematical basics for the lateration problem 19 2016/3/12 Solution with three anchors and correct distance values Assuming distances to three points with known location are exactly given Solve system of equations (Pythagoras!) 20 (xi , yi) : coordinates of anchor point i, ri : distance to anchor i (xu, yu) : unknown coordinates of node 2016/3/12 Solution with three anchors and correct distance values (cont.) 21 2016/3/12 Trilateration as matrix equation Rewriting as a matrix equation: 2( x3 x1 ) xu 2( y3 y1 ) yu (r12 r32 ) ( x12 x32 ) ( y12 y32 ) 2( x3 x2 ) xu 2( y3 y2 ) yu (r22 r32 ) ( x22 x32 ) ( y22 y32 ) x3 x1 2 x3 x2 22 y3 y1 xu (r12 r32 ) ( x12 x32 ) ( y12 y32 ) 2 2 y3 y2 yu (r2 r3 ) ( x22 x32 ) ( y22 y32 ) 2016/3/12 Solving with distance errors _ What if only distance estimation ri ri i available? Use multiple anchors, overdetermined system of equations Use (xu, yu) that minimize mean square error, 23 i.e, 2016/3/12 Minimize mean square error Look at square of the of Euclidean norm expression 24 (note that for all vectors v) Look at derivative with respect to x, set it equal to 0 2016/3/12 7.4 Positioning in multi-hop environments 25 2016/3/12 Connectivity in a multi-hop network 26 Assume that the positions of n anchors are known and the positions of m nodes is to be determined, that connectivity between any two nodes is only possible if nodes are at most R distance units apart, and that the connectivity between any two nodes is also known The fact that two nodes are connected introduces a constraint to the feasibility problem – for two connected nodes, it is impossible to choose positions that would place them further than R away 2016/3/12 Multi-hop range estimation How to estimate range to a node to which no direct radio communication exists? No RSSI, TDoA, … But: Multi-hop communication is possible B A X C 27 2016/3/12 Multi-hop range estimation (cont.) Idea 1: (DV-Hop) Start by counting hops between anchors then divide known distance 28 Count Shortest hop numbers between all two nodes. Each anchors estimate hop length and propagates to the network. Node calculates its position based on average hop length and shortest path to each anchor. 2016/3/12 DV Hop L1 calculates average hope length : 100 40 17.5 62 29 ( xi x j ) 2 ( yi y j ) 2 h i So do L2 and L3 : 40 75 16.42 25 ci 75 100 15.90 65 Node A uses trilateration to estimate it’s position by multiplying the average hope length of every received anchor to shortest path length it assumed. 2016/3/12 DV-Distance 30 Idea 2: If range estimates between neighbors exist, use them to improve total length of route estimation in previous method (DV-Distance) Distance between neighboring nodes is measured using radio signal strength and is propagated in meters rather than in hops. The algorithm uses the same method to estimate but shortest distance length are assumed. 2016/3/12 Multi-hop range estimation (cont.) DV-Based Scheme • • Must work in a network which is dense enough DVhop approach used the hop of the shortest path to approximately estimate the distance between a pair of nodes Drawback: Requires lots of communications anchor anchor 31 2016/3/12 Discussion Number of anchors Uniformly distributed network 32 Euclidean method increase accuracy as the number of anchors goes up The “distance vector”-like methods are better suited for a low-ratio of anchors Distance vector methods perform less well in non-uniformly networks Euclidean method is not very sensitive to this effect 2016/3/12 7.5 Positioning assisted by anchors 33 2016/3/12 APIT (Approximate Point in Triangle) By pure connectivity information Idea: decide whether a node is within or outside of a triangle formed by any three anchors However, moving a sender node to determine its position is hardly practical ! Solution: 34 inquire all its neighbors about their distance to the given three corner anchors 2016/3/12 APIT (cont.) Inside a triangle Irrespective of the direction of the movement, the node must be closed to at least one of the corners of the triangle A M B 35 C 2016/3/12 APIT (cont.) Outside a triangle: There is at least one direction for which the node’s distance to all corners increases M B 36 A C 2016/3/12 APIT (cont.) Approximation: Normal nodes test only directions towards neighbors A A 1 1 3 M 2 3 M 4 2 4 B C B A. Inside Case 37 C B. OutSide Case 2016/3/12 APIT (cont.) Grid-Based Aggregation Narrow down the area where the normal node can potentially reside 0 0 0 0 0 10 1 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 12 1 1 1 1 0 0 0 0 1 2 2 1 1 01 -1 0 0 1 1 2 2 1 1 0 -1 -1 0 0 0 2 2 2 1 0 -1 -1 -1 0 0 1 1 1 0 0 -1 -1 -1 anchor node normal node 38 2016/3/12 MCL (Monte-Carlo Localization) Assumptions Time is divided into several time slots Moving distance in each time slot is randomly chosen from [0 , Vmax ] Each anchor node periodically forwards its location to twohop neighbors Notation 39 2016/3/12 R - communication range 2016/3/12 39 MCL (cont.) Each normal node maintains 50 samples in each time slot 40 2016/3/12 Samples represent the possible locations The sample selection is based on previous samples Sample (x , y) must satisfy some constraints Located in the anchor constraints 2016/3/12 40 MCL (cont.) Anchor constraints Near anchor constraint The communication region of one-hop anchor node ( near anchor ) Farther anchor constraint The region within ( R , 2R ] centered on two-hop anchor ( farther anchor ) Near anchor constraint R A1 N1 Farther anchor constraint R R A1 N1 N2 41 2016/3/12 2016/3/12 41 MCL (cont.) Environment Anchor node Normal node A4 N1 A1 A2 A3 42 2016/3/12 2016/3/12 42 MCL (cont.) Initial Phase Sample in the last time slot Anchor node Normal node A4 N1 A1 A2 A3 43 2016/3/12 2016/3/12 43 MCL (cont.) Sample in this time slot Sample in the last time slot Anchor node Normal node Prediction Phase & Filtering Phase Vmax A4 R RA N1 1 A2 R A3 44 2016/3/12 2016/3/12 44 MCL (cont.) Sample in this time slot Sample in the last time slot Anchor node Normal node Prediction Phase & Filtering Phase Vmax A4 Vmax R RA N1 1 A2 Vmax 45 2016/3/12 R A3 2016/3/12 45 MCL (cont.) Sample in this time slot Estimative position Anchor node Normal node Estimative Location the average of samples A4 A1 EN1 N1 A2 A3 46 2016/3/12 2016/3/12 46 MCL (cont.) Sample in this time slot Sample in the last time slot Anchor node Normal node Repeated Prediction Phase & Filter Phase In the next time slot Vmax A1 A4 N1 A2 R A3 47 2016/3/12 2016/3/12 47 DRLS Distributed Range-Free Localization Scheme 48 There are three phases in the DRLS algorithm. Phase 1 – Beacon exchange Phase 2 – Using improved grid-scan algorithm to get initial estimative location Phase 3 – Refinement 2016/3/12 DRLS (cont.) Beacon Exchange Beacon exchange via two-hop flooding A4 Normal node Near anchor N3 Farther anchor A3 A1 N2 A2 N1 49 2016/3/12 DRLS (cont.) Improved Grid-Scan Algorithm Calculate the overlapping rectangle up side N A1 50 A3 A2 left side down side right side Anchor node Normal node 2016/3/12 DRLS (cont.) Improved Grid-Scan Algorithm Divide the ER into small grids The initial value of the grid is 0 A1 51 0 0 N 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A3 A2 Anchor node Normal node Estimative location 2016/3/12 DRLS (cont.) Improved Grid-Scan Algorithm Initial estimative location Apply centroid formula to grids with the maximum grid value A1 52 1 2 N 3 3 N’ 3 2 2 2 1 2 2 3 3 3 2 2 A3 A2 Anchor node Normal node Estimative location 2016/3/12 DRLS (cont.) Refinement Repulsive virtual force (VF) 53 Induced by farther anchor nodes Dinvasion : the maximum distance that the farther anchor invades the estimative region along the direction from the farther anchor towards the initial estimative location 2016/3/12 DRLS (cont.) Refinement VFi : virtual force induced by farther anchor i Dinvasioni : the maximum distance that the farther anchor i invades the estimative region along the direction from i towards A4 the initial estimative location Vi,j : the unit vector in the DinvasionA4 direction from the farther anchor VFA5 A2 VFA3 i towards the initial estimative N’ N location j A1 DinvasionA5 A3 VFA4 VFi = Vi,j˙Dinvasioni A5 54 estimative region 2016/3/12 DRLS (cont.) Refinement Resultant Virtual Force (RVF) RVF = ΣVFi A4 A2 A3 A1 RVF N’ N’N A5 55 estimative region 2016/3/12 DRLS (cont.) Refinement Di : the moving distance caused by the farther anchor i Dimax : the maximum moving distance caused by the farther anchor i Di Dimax = Dinvasioni a A4 DinvasionA3max A2 b c A3 e d N’ A1 Dinvasionimax L3 f N DA3max A5 DinvasionA3 56 estimative region 2016/3/12 DRLS (cont.) Refinement Dmovei : the moving vector caused by the farther anchor i Vi,j : the unit vector in the A4 direction from the farther anchor i towards the initial estimative Dinvasion location j DmoveA5 A2 DmoveA3 Dmovei = Vi,j˙Di N’ N A4 A1 A3 DmoveA4 DinvasionA5 A5 estimative region 57 2016/3/12 DRLS (cont.) Refinement Dmove: the final moving vector Dmove = Σ Dmovei A4 A2 A3 A1 Dmove N’ N’N A5 estimative region 58 2016/3/12 IMCL Improved MCL Localization Scheme Improvements 59 Dynamic number of samples According to the overlapping region of anchor constraints Restricted samples Anchor constraints The estimative locations of neighboring normal nodes Predicted moving direction of the normal node Be used to increase the localization accuracy 2016/3/12 IMCL (cont.) 60 Phase 1- Sample Selection Phase Phase 2- Neighbor Constraints Exchange Phase Phase 3- Refinement Phase 2016/3/12 IMCL (cont.) Sample Selection Phase Dynamic sample number Sampling Region The overlapping region of anchor constraints Difficult to calculate Estimative Region (ER) A rectangle surrounding the sampling region R R A3 R N A1 A2 ER 61 2016/3/12 IMCL (cont.) Sample Selection Phase The number of samples ( k ) R k ≦ Max_Num ERArea k = Max _ Num ER Threshold R A3 R N A1 A2 ER • ERArea — the area of ER • ERThreshold — the threshold value • Max_Num — the upper bound of sample number In our simulations, ERThreshold = 4R2 62 2016/3/12 IMCL (cont.) Sample Selection Phase Using the prediction and filtering phase of MCL 63 Samples are randomly selected from the region extended Vmax from previous samples Filter new samples Near anchor constraints Farther anchor constraints 2016/3/12 IMCL (cont.) Effective Location Estimation An additional normal nodes constraint Samples must locate on the communication region of neighboring normal nodes The localization error may increase Send the possible location region to neighbors instead of the estimative position EN1 N1 EN2 N2 N3 64 2016/3/12 IMCL (cont.) Neighbor Constraints Exchange Phase The possible location region The distribution of samples are selected in phase I 135° 90° 180° 45° 0° (Cx ,Cy) 225° Step 1: Sensor A constructs a coordinate axis and uses (Cx ,Cy) as origin Step 2: The coordinate axis is separated into eight directions 315° 270° 65 Central position in phase 1 2016/3/12 IMCL (cont.) Neighbor Constraints Exchange Phase 135° Step 3: The samples are also divided into eight groups according to the angle θ with (Cx , Cy) 90° 45° θ 180° (Sx ,Sy) Sy Cy tan ( ) Sx Cx 1 0° (Cx ,Cy) 225° 315° 270° Valid samples in current time slot 66 Central position in phase 1 2016/3/12 IMCL (cont.) Neighbor Constraints Exchange Phase 135° 90° 180° 45° Step 4: Using the longest distance within group as radius to perform sector 0° 225° 315° the possible location region described by eight sectors and (Cx , Cy) 270° Sample in the this time slot 67 Central position in phase 1 2016/3/12 IMCL (cont.) Neighbor Constraints Exchange Phase Neighbor constraint Extend R from the possible located region 90° 45° 135° Each sensor broadcasts its neighbor constraint region once R 0° 180° (Cx ,Cy) Neighbor constraint 315° 225° 68 270° 2016/3/12 IMCL (cont.) Refinement Phase Samples are filtered When sample is not satisfy the constraints 69 Neighbor constraints Receive from neighboring normal nodes Moving constraint Predict the possible moving direction Normal node generates a valid sample to replace it 2016/3/12 IMCL (cont.) Refinement Phase Neighbor constraints 70 Sample S1 is a valid sample Satisfied both neighbor constraints of N2 and N3 Sample S2 is a invalid sample Only satisfied the neighbor constraint of N3 S2 S1 2016/3/12 IMCL (cont.) Refinement Phase Moving constraint The prediction of nodes moving direction is [θ±ΔΦ ] In time slot t if (Cx , Cy) is located in {θ±ΔΦ} from Et-2 Prediction is right ΔΦ θ Et-2 71 Et-1 (Cx , Cy) if (Cx , Cy) is located outside of {θ±ΔΦ} from Et-2 ΔΦ Prediction is wrong Thus, we do not adopt the moving (Cx , Cy) constraint! 2016/3/12 IMCL (cont.) Refinement Phase Sample 1 Sample 2 ΔΦ θ Et-1 If prediction is right, sample must be located in {θ±ΔΦ} from Et-2 Sample 1 satisfies moving constraint Sample 2 does not satisfy moving constraint (Cx , Cy) ΔΦ Et-2 72 2016/3/12 IMCL (cont.) Estimative Position Normal node calculates the estimative position Et (Ex , Ey) of samples k Ex = x coordinate of sample i i 1 k k Ey = y coordinate of sample i i 1 , k sample number k 73 2016/3/12 Conclusions Determining location or position is a really important function in WSN, but fraught with many errors and shortcomings 74 Range estimates often not sufficiently accurate Many anchors are needed for acceptable results Anchors might need external position sources (GPS) 2016/3/12 References J. Hightower and G. Borriello. “Location Systems for Ubiquitous Computing,” IEEE Computer, 34(8): 57–66, 2001. J. Hightower and G. Borriello. “A Survey and Taxonomy of Location Systems for Ubiquitous Computing,” Technical Report UW-CSE 01-08-03, University of Washington, Computer Science and Engineering, Seattle, WA, August 2001. A. Boukerche, H. Oliveira, E. Nakamura, and A. Loureiro. “Localization systems for wireless sensor networks”. IEEE Wireless Communications, December 2007. R. Want, A. Hopper, V. Fal˜ao, and J. Gibbons. The Active Badge Location System. ACM Transactions on Information Systems, 10(1): 91–102, 1992. A. Ward, A. Jones, and A. Hopper. A New Location Technique for the Active Office. IEEE Personal Communications, 4(5): 42–47, 1997. P. Bahl and V. N. Padmanabhan. RADAR: An In-Building RF-Based User Location and Tracking System. In Proceedings of the IEEE INFOCOM, pages 775–784, TelAviv, Israel, April 2000. N. B. Priyantha, A. Chakraborty, and H. Balakrishnan. The Cricket LocationSupport System. In Proceedings of the 6th International Conference on Mobile Computing and Networking (ACM Mobicom), Boston, MA, 2000. 75 2016/3/12 References 76 N. Bulusu, J. Heidemann, and D. Estrin. “GPS-Less Low Cost Outdoor Localization For Very Small Devices,” IEEE Personal Communications Magazine, 7(5): 28–34, 2000. C. Savarese, J. Rabay, and K. Langendoen. “Robust Positioning Algorithms for Distributed Ad-Hoc Wireless Sensor Networks,” In Proceedings of the Annual USENIX Technical Conference, Monterey, CA, 2002. A. Savvides, C.-C. Han, and M. Srivastava. “Dynamic Fine-Grained Localization in Ad-Hoc Networks of Sensors,” Proceedings of the 7th Annual International Conference on Mobile Computing and Networking, pages 166–179. ACM press, Rome, Italy, July 2001. S. Simic and S. Sastry, “Distributed localization in wireless ad hoc networks,” UC Berkeley, Tech. rep. UCB/ERL M02/26, 2002. D. Niculescu and B. Nath. “Ad Hoc Positioning System (APS)”. In Proceedings of IEEE GlobeCom, San Antonio, AZ, November 2001. C. Savarese, J. M. Rabaey, and J. Beutel. “Locationing in Distributed Ad-Hoc Wireless Sensor Networks”. In Proceedings of the International Conference on Acoustics, Speech and Signal Processing (ICASSP 2001), Salt Lake City, Utah, May 2001. 2016/3/12 References 77 V. Ramadurai and M. L. Sichitiu. “Localization in Wireless Sensor Networks: A Probabilistic Approach”. In Proceedings of 2003 International Conference on Wireless Networks (ICWN 2003), pages 300–305, Las Vegas, NV, June 2003. M. L. Sichitiu and V. Ramadurai, “Localization of Wireless Sensor Networks with A Mobile Beacon,” Proc. 1st IEEE Int’l. Conf. Mobile Ad Hoc and Sensor Sys., FL, Oct. 2004, pp. 174–83. N.Bodhi Priyantha, H. Balakrishnan, E. Demaine, S. Teller,”Mobile-Assisted Localization in Sensor Network”, IEEE INFOCOM 2005, Miami, FL, March 2005. T. He, C. Huang, B. M. Blum, J. A. Stankovic, and T. Abdelzaher. Range-Free Localization Schemes for Large Scale Sensor Networks. Proceedings of the 9th Annual International Conference on Mobile Computing and Networking, pages 81– 95. ACM Press, 2003. F. Dellaert, D. Fox, W. Burgard, and S. Thrun, "Monte Carlo Localization for Mobile Robots", IEEE International Conference on Robotics and Automation (ICRA), 1999 L. Hu and D. Evans, "Localization for Mobile Sensor Networks," Proc. ACM MobiCom, pp. 45-47, Sept. 2004. 2016/3/12 References 78 J.-P. Sheu, P.-C. Chen, and C.-S. Hsu, “A Distributed Localization Scheme for Wireless Sensor Networks with Improved Grid-Scan and Vector-Based Refinement,” IEEE Trans. on Mobile Computing, vol. 7, no. 9, pp. 1110-1123, Sept. 2008. Jang-Ping Sheu, Wei-Kai Hu, and Jen-Chiao Lin, "Distributed Localization Scheme for Mobile Sensor Networks," IEEE Transactions on Mobile Computing Vol. 9, No. 4, pp. 516 - 526, April 2010. 2016/3/12