170 likes | 360 Views
Using Clustering Information for Sensor Network Localization. Haowen Chan, Mark Luk, and Adrian Perrig Carnegie Mellon University fhaowenchan,mluk,perrigg@cmu.edu Presented by: Duifa Long Nov 21, 2005. Outline. Introduction Related works Sensor Network Clustering Localization Procedure
E N D
Using Clustering Information for Sensor Network Localization Haowen Chan, Mark Luk, and Adrian Perrig Carnegie Mellon University fhaowenchan,mluk,perrigg@cmu.edu Presented by: Duifa Long Nov 21, 2005
Outline • Introduction • Related works • Sensor Network Clustering • Localization Procedure • The Basic Cluster Localization Algorithm • Improved Position Refinement: Mesh Relaxation • Improved Initial Calibration • Self-orienting Anchor • Conclusion and future work
Introduction • Localization is required by many sensor network applications • -- location-aided routing, data aggregation, battle fields, etc. • Localization should be inexpensive, scalable, accuracy even with obstacles or irregularities • -- No need for special equipments for measurement such as: • signal strength, directionality, ranging, and time • -- In a distributed way, not manually or centralized methods • -- No assumptions of a flat, unobstructed deployment area • -- Using less anchors to achieve good accuracy
Related Works • Physical Range Measurement --Signal Strength or Directionality[7-11] RSSI (received signal strength indicator) AoA (angle of arrival) --Ultrasound ranging Long range beacons[12-16] • Range-free Scheme --DV-Hop by Niculescu and Nath[1] and by Nagpal et al.[19] • Clustering Algorithm --ACE(Algorithm for Cluster Establishment)[20]
Sensor Network Clustering • Advantages of using clustering -- it creates a regular pattern for extracting location information -- it helps reduce the amount of communication overhead • Cluster-adjacency graph Cluster-heads Adjacent Cluster-adjacency edges
Sensor Network Clustering (Cont.) • Overview the ACE Algorithm 1. Two logical parts: --The spawning of new clusters --The migration of existing clusters 2. Fixed 3 iterations, In each iteration: --Unclustered node gradually self-elect to be a cluster-head --Each cluster-head migrates its cluster --Clustered nodes do nothing
Modifying the ACE Algorithm To improve the regularity of the separation between cluster-heads • The number of iterations is increased from 3 to 5 • Modifying the migratory mechanism by approximation a spring effect between adjacent clusters --Each cluster-head evaluates the potential fitness score = d + g(s) for each candidate c s c d---- the total number of nodes in the neighborhood for each candidate C s---- the estimated separation between C and the adjacent cluster-head by counting the number of common nodes in both clusters
D C A The Basic Cluster Localization Algorithm •Assumption--Locally-Aware Anchors --Anchor nodes are the start point of the algorithm --Themselves are cluster-heads and know their geographical positions --Able to determine the geographical positions of all the adjacent cluster-heads •Expanding the Calibrated Set --Initial set = anchor nodes + their adjacent cluster-heads --Each cluster-head calibrates itself if 1. two or more of its adjacent cluster-heads have calibrated 2. it knows the topological configuration of its cluster-head neighborhood 3. Assume some pre-determined standard value L for edges to the calibrated adjacent cluster-heads
The Basic Cluster Localization Algorithm (cont’d) •Refining the Position Estimate --Each calibrating cluster-head just repeats the initial position estimation once for each adjacent pair of calibrated cluster- head neighborhood -- Take the average position of these results -- Rebroadcast its updated position if it is a major position update (difference > threshold) •Refining termination conditions: --The node has reached maximum number of major position updates --The node has not received any position updates during the past time period, indicating convergence •Calibration of Follower Nodes---non-cluster-head nodes --Take the average of the estimated positions of all the calibrated nodes within its communication range
Improved Position Refinement: Mesh Relaxation • Modeling: -- Cluster-head mass point -- The distance between adjacent cluster-heads spring length • Let – the coordinate of cluster-head A at time t S -- the set of A’s adjacent cluster-heads F – the force of the spring exerting on the cluster-head – the displacement of a spring from its equilibrium length (set at the average edge length L) K – is the spring constant, set to 1 here we want to update its position at time Then the resultant Force on A at time t will be:
Mesh Relaxation (Cont’d) Where represents the 2-dimensional vector of the separation between the estimated positions of cluster-heads B from A at time t represents the unit vector in the direction of B from A L– is the known average link length, the spring equilibrium length Hence the updated position of A is: – the displacing position of A, a quantity proportional to the resultant force on A
Improved Initial Calibration Terminology: Calibrating node Cluster-head neighborhood Directly linked Indirectly linked Unlinked (gaps) • Step 1: Ordering the adjacent cluster-heads Assume A in the figure is the calibrating node 1. A is aware of its neighborhood set {D, C, F, B, E} but not in its order at the beginning 2. Each cluster-head sends its neighborhood information to all the members of its cluster-head neighborhood 3. A selects any neighbor as a starting point 4. Find the next neighbor has direct or indirect link, then appending it to the list, until return to the starting point or all have been traversed 5. Otherwise, goes to the opposite direction from starting point, pre-pending the find ones 6. Special case—crossing edges, choosing the node that has the most common neighbors with itself
Improved Initial Calibration (Cont’d) • Step 2: Assigning angles to adjacent cluster-heads 1. if all directly linked for members in circular list, assign equal angular shares to each sector 2. for one or more indirect links, estimate indirect link as the square root of 2 times the angles in the directly linked case 3. in the case of gap is in the circular list, assign α = 60 for direct links and ß = 90 for indirect links
Q P A Improved Initial Calibration (Cont’d) • Step 3: Performing the position estimate --Definition : Calibrated nodes – has a position estimate and its circular list of its cluster-head neighborhood ordered in the canonical direction --Determine the canonically correct ordering --Using basic trigonometry method to estimate the calibrating node --Calculate the average of all of the estimates •Repeated Initial Calibration -- It can be used for position refinement instead of performing mesh relaxation
Self-orienting Anchors • Remove the two assumptions: Locally aware and aware of average edge length • Now, initially sets the average edge length to 1, and using the angular share system, we estimate all its cluster-head neighbor’s position, then we can estimate all others. • Each anchor sends to A their estimates under A’s coordinate system and their physical locations • A finds a transform T which yields the lowest sum of square errors for each of the other anchors: •At least 2 other anchors are needed to uniquely Determine T, once T is known, is flooded to the Entire network for others actual physical locations -- uses the estimate associated with the closest anchor
Conclusion and Future Work • Conclusion • Clustering-based localization is fully distributed and provides good accuracy • It requires only three randomly placed anchor nodes • It works with sensor nodes without any special hardware for signal or ranging measurement • Also provides accurate position information in topologies with irregularity or obstacles. • Future work -- explore more reliable self-calibration algorithms • Secure the clustering information for localization
Questions? Thank you!