Node Localization in Sensor Networks

Download Report

Transcript Node Localization in Sensor Networks

Location Discovery – Part II
Lecture 5
September 16, 2004
EENG 460a / CPSC 436 / ENAS 960
Networked Embedded Systems &
Sensor Networks
Andreas Savvides
[email protected]
Office: AKW 212
Tel 432-1275
Course Website
http://www.eng.yale.edu/enalab/courses/eeng460a
Today






Presentation topics scheduling
Stop by Ed Jackson’s office so that he can swipe your ID for the lab
Internal website access
Project and presentation discussions
Any issues with graduate student registrations?
Today’s discussion topics
•
Quick recap from last time
o
o
•
GDOP – Angles matter
Conditions for position uniqueness (another presentation on this later)
Improved MDS Localization
Material for this lecture from:
[Shang04] Y. Shang, W. Ruml, Improved MDS Localization, Proceedings of Infocom
2004
[Savvides04b] A. Savvides, W, Garber, R. L. Moses and M. B. Srivastava, An Analysis of Error
Inducing Parameters in Multihop Sensor Node Localization, to appear in the IEEE Transcations
on Mobile Computing
Taxonomy of Localization Mechanisms
 Active Localization
• System sends signals to localize target
 Cooperative Localization
• The target cooperates with the system
 Passive Localization
• System deduces location from observation of
signals that are “already present”
 Blind Localization
• System deduces location of target without a
priori knowledge of its characteristics
Active Mechanisms
Target
Synchronization channel
Ranging channel
 Non-cooperative
• System emits signal, deduces target location
from distortions in signal returns
• e.g. radar and reflective sonar systems
 Cooperative Target
• Target emits a signal with known characteristics;
system deduces location by detecting signal
• e.g. ORL Active Bat, GALORE Panel, AHLoS,
MIT Cricket
 Cooperative Infrastructure
• Elements of infrastructure emit signals; target
deduces location from detection of signals
• e.g. GPS, MIT Cricket
Passive Mechanisms
 Passive Target Localization
Target
Synchronization channel
Ranging channel
• Signals normally emitted by the target are
detected (e.g. birdcall)
• Several nodes detect candidate events and
cooperate to localize it by cross-correlation
 Passive Self-Localization
• A single node estimates distance to a set of
beacons (e.g. 802.11 bases in RADAR [Bahl
et al.], Ricochet in Bulusu et al.)
 Blind Localization
• Passive localization without a priori
knowledge of target characteristics
• Acoustic “blind beamforming” (Yao et al.)
?
Active vs. Passive
 Active techniques tend to work best
• Signal is well characterized, can be engineered for noise and
interference rejection
• Cooperative systems can synchronize with the target to
enable accurate time-of-flight estimation
 Passive techniques
• Detection quality depends on characterization of signal
• Time difference of arrivals only; must surround target with
sensors or sensor clusters
o TDOA requires precise knowledge of sensor positions
 Blind techniques
• Cross-correlation only; may increase communication cost
• Tends to detect “loudest” event.. May not be noise immune
Measurement Technologies


Ultrasonic time-of-flight
• Common frequencies 25 – 40KHz, range few meters (or tens of meters), avg. case
accuracy ~ 2-5 cm, lobe-shaped beam angle in most of the cases
• Wide-band ultrasonic transducers also available, mostly in prototype phases
Acoustic ToF
• Range – tens of meters, accuracy =10cm

RF Time-of-flight
• Ubinet UWB claims = ~ 6 inches

Acoustic angle of arrival
• Average accuracy = ~ 5 degrees (e.g acoustic beamformer, MIT Cricket)

Received Signal Strength Indicator

• Motes: Accuracy 2-3 m, Range = ~ 10m
• 802.11: Accuracy = ~30m
Laser Time-of-Flight Range Measurement
• Range =~ 200, accuracy =~ 2cm very directional

RFIDs and Infrared Sensors – many different technologies
• Mostly used as a proximity metric
Possible Implementations/ Computation Models
Computing Nodes
1. Centralized
2. Locally Centralized
3. (Fully) Distributed
Only one node computes
Some of unknown nodes compute
Every unknown node computes
• Each approach may be appropriate for a different application
• Centralized approaches require routing and leader election
• Fully distributed approach does not have this requirement
Different Problem Setups & Algorithms
 Absolute vs. relative frame of reference
• Beacons or no beacons
• Infrastructure vs. ad-hoc
• Single hop vs. multihop
 Many candidate approaches and solution methods
(depending on problem setup, measurement technology
and computation resources)
•
•
•
•
Least-squares optimization
Approaches based on radio connectivity
Learning based approaches
Semi definite programming approaches
o Both measurement based and connectivity based
• Vision based algorithms
Obtaining a Coordinate System from Distance
Measurements: Introduction to MDS
MDS maps objects from a high-dimensional space to a
low-dimensional space,
while preserving distances between objects.
similarity between objects
coordinates of points
Classical metric MDS:
•
•
•
The simplest MDS: the proximities are treated as distances in an
Euclidean space
Optimality: LSE sense. Exact reconstruction if the proximity data
are from an Euclidean space
Efficiency: singular value decomposition, O(n3)
Applying Classical MDS
1. Create a proximity matrix of distances D
2. Convert into a double-centered matrix B
1
1  2
1 
B  -  I  U D  I  U 
2
N  
N 
NxN matrix of 1s
NxN identity matrix
NxN matrix of 1s
3. Take the Singular Value Decomposition of B
B  VAV T
4. Compute the coordinate matrix X (2D coordinates will be
in the first 2 columns)
X  VA
1
2
Example: Localization Using Multidimensional
Scaling (MDS) (Yi Shang et. al)
The basic MDS-MAP algorithm:
1. Compute shortest paths between all pairs of nodes.
2. Apply classical MDS and use its result to construct a relative map.
3. Given sufficient anchor nodes, transform the relative map to an
absolute map.
MDS-MAP ALGORITHM
1.
Compute all-pair shortest paths. O(n3)
Assigning values to the edges in the connectivity graph:
Known connectivity only: all edges have value 1 (or R/2)
Known neighbor distances: the edges have the distance values
2.
Apply classical MDS and use its result to construct a 2-D (or 3-D)
relative map. O(n3)
3.
Given sufficient anchor nodes, convert the relative map to an
absolute map via a linear transformation. O(n+m3)
•
Compute the LSE transformation based on the positions of
anchors.
O(m3), m is the number of anchors
•
Apply the transformation to the other unknown nodes. O(n)
MDS-MAP (P) – The Distributed Version
1.
Set-up the range for local maps Rlm (# of hops to consider in a
map)
2. Compute maps of individual nodes
1. Compute shortest paths between all pairs of nodes
2. Apply MDS
3. Least-squares refinement
3. Patch the maps together
• Randomly pick a node and build a local map, then merge the
neighbors and continue until the whole network is completed
4. If sufficient anchor nodes are present, transform the relative map
to an absolute map
MDS-MAP(P,R) – Same as MDS-MAP(P) followed by a refinement
phase
LOCALIZATION USING MDS-MAP
(Shang, et al., Mobihoc’03)
The basic MDS-MAP algorithm:
1. Given connectivity or local distance measurement, compute
shortest paths between all pairs of nodes.
2. Apply multidimentional scaling (MDS) to construct a relative
map containing the positions of nodes in a local coordinate
system.
3. Given sufficient anchors (nodes with known positions), e.g,
3 for 2-D or 4 for 3-D networks, transform the relative map
and determine the absolute the positions of the nodes.
It works for any n-dimensional networks, e.g., 2-D or 3-D.
MDS-MAP(P) (Shang and Ruml, Infocom’04)
The basic MDS-MAP works well on regularly shaped networks,
but not on irregularly shaped networks.
MDS-MAP(P) (or MDS-MAP based on patches of local maps)
1. For each node, compute a local relative map using MDS
2. Merge/align local maps to form a big relative map
3. Refine the relative map based on the relative positions
(optional). (When used, referred to as MDS-MAP(P,R) )
4. Given sufficient anchors, compute absolute positions
5. Refine the positions of individual nodes based on the
absolution positions (optional)
SOME IMPLEMENTATION DETAILS OF MDS-MAP(P)
1. For each node, compute a local relative map using MDS
• Size of local maps: fixed or adaptive
2. Merge/align local maps to form a big relative map
• Sequential or distributed; scaling or not
3. Refine the relative map based on the relative positions
• Least squares minimization: what information to use
4. Given sufficient anchors, compute absolute positions
• Anchor selection; centralized or distributed
5. Refine the positions of individual nodes based on the
absolution positions
• Minimizing squared errors or absolute errors
AN EXAMPLE OF C-SHAPE GRID NETWORKS
Known 1-hop distances
with 5% range error
Connectivity information only
10
10
8
8
6
6
4
4
2
2
2
4
6
8
10
2
4
6
MDS-MAP(P) without both optional refinement steps.
8
10
RANDOM UNIFORM PLACEMENT
Connectivity information only
Known 1-hop distances
with 5% range error
Mean error (%R)
200
MDS-MAP(P)
MDS-MAP(P,R)
DV-hop
150
100
50
0
5
10
15
20
25
30
35
Connectivity
200 nodes; 4 random anchors
RANDOM C-SHAPE PLACEMENT
Connectivity information only
Known 1-hop distances
with 5% range error
Mean error (%R)
200
MDS-MAP(P)
MDS-MAP(P,R)
DV-hop
150
100
50
0
5
10
15
20
Connectivity
25
30
160 nodes; 4 random anchors
Understanding Fundamental Behaviors
(Savvides04b)
What is the fundamental error behavior?
Measurement technology perspective
• Acoustic vs. RF ToF (2cm – 1.5m
measurement accuracy)
• Distances vs. Angules
Deployment - what density?
Scalability How does error propagate?
Beacon density & beacon position uncertainty
Intrinsic vs. Extrinsic Error Component
Estimated Location Error Decomposition
Position
Error
Channel
Effects
Computation
Error
Setup
Error
Induced by intrinsic
measurement error
Cramer Rao Bound Analysis
 Cramer-Rao Bound Analysis on carefully
controlled scenarios
• Classical result from statistics that gives a lower bound
on the error covariance matrix of an unbiased estimate
 Assuming White Gaussian Measurement Error
 Related work
• N. Patwari et. al, “Relative Location Estimation in
Wireless Sensor Networks”
Density Effects
Results from Cramer-Rao Bound Simulations based on White Gaussian Error
Range Tangential Error
10
4
2
angle measurements
distance measurements
10
RMS Location Error
distances
angles
3
10
2
10
1
10
0
10
10
1
m/rad
10
0
m/m
-1
10
0
10
1
10
2
10
Range Error Scaling Factor
3
10
10
-1
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
Density (node/m2)
20mm distance measurement certainty == 0.27 angular certainty
Density Effects with Different Ranging
Technologies
0.8
0.7
6 neighbors
0.6
0.5
RMS Error(m)
12 neighbors
0.4
0.3
D=0.030
D=0.035
D=0.040
D=0.045
D=0.050
D=0.055
0.2
0.1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
Ranging Error Variance(m)
0.7
0.8
Network Scalability
Error propagation on a hexagon scenario (angle measurement)
Rate of error propagation faster with distance measurements but
Much smaller magnitude than angles
x-coordinate(m)
y-coordinate(m)
More Observations on Network Scalability…
 Performance degrades gracefully as the
number of unknown nodes increases.
 Increasing the number of beacon nodes does
not make a significant improvement
 Error in beacons results in an overall
translation of the network
 Error due to geometry is the major
component in propagated error
Localization Service Middleware
Wishful thinking… some of it running on XYZ Node…
Are we done with localization?
 Well there is more…
• Computation using angles
• Mobility and tracking
• Probabilistic approaches
 More about localization in future lectures
 Next time – embedded programming tutorial
• Read programming assignment 1 before coming to
class!!!