Title: Location Discovery Part II Lecture 5 September 16, 2004 EENG 460a CPSC 436 ENAS 960 Networked Embedd
1Location Discovery Part IILecture 5 September
16, 2004EENG 460a / CPSC 436 / ENAS 960
Networked Embedded Systems Sensor Networks
- Andreas Savvides
- andreas.savvides_at_yale.edu
- Office AKW 212
- Tel 432-1275
- Course Website
- http//www.eng.yale.edu/enalab/courses/eeng460a
2Today
- Presentation topics scheduling
- Stop by Ed Jacksons office so that he can swipe
your ID for the lab - Internal website access
- Project and presentation discussions
- Any issues with graduate student registrations?
- Todays discussion topics
- Quick recap from last time
- 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
3Taxonomy 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
4Active Mechanisms
- 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
5Passive Mechanisms
- Passive Target Localization
- 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.)
6Active 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 - 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
7Measurement 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
8Possible Implementations/ Computation Models
- Centralized
- Only one node computes
2. Locally Centralized Some of unknown nodes
compute
3. (Fully) Distributed 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
9Different 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
- Both measurement based and connectivity based
- Vision based algorithms
10Obtaining 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)
11Applying Classical MDS
- Create a proximity matrix of distances D
- Convert into a double-centered matrix B
- Take the Singular Value Decomposition of B
- Compute the coordinate matrix X (2D coordinates
will be in the first 2 columns)
NxN matrix of 1s
NxN identity matrix
NxN matrix of 1s
12Example Localization Using Multidimensional
Scaling (MDS) (Yi Shang et. al)
- The basic MDS-MAP algorithm
- Compute shortest paths between all pairs of
nodes. - Apply classical MDS and use its result to
construct a relative map. - Given sufficient anchor nodes, transform the
relative map to an absolute map.
13MDS-MAP ALGORITHM
- 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 - Apply classical MDS and use its result to
construct a 2-D (or 3-D) relative map. O(n3) - Given sufficient anchor nodes, convert the
relative map to an absolute map via a linear
transformation. O(nm3) - 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)
14MDS-MAP (P) The Distributed Version
- Set-up the range for local maps Rlm ( of hops
to consider in a map) - Compute maps of individual nodes
- Compute shortest paths between all pairs of nodes
- Apply MDS
- Least-squares refinement
- 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 - 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
15LOCALIZATION USING MDS-MAP (Shang, et al.,
Mobihoc03)
- The basic MDS-MAP algorithm
- Given connectivity or local distance measurement,
compute shortest paths between all pairs of
nodes. - Apply multidimentional scaling (MDS) to construct
a relative map containing the positions of nodes
in a local coordinate system. - 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.
16MDS-MAP(P) (Shang and Ruml, Infocom04)
- 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) - For each node, compute a local relative map using
MDS - Merge/align local maps to form a big relative map
- Refine the relative map based on the relative
positions (optional). (When used, referred to as
MDS-MAP(P,R) ) - Given sufficient anchors, compute absolute
positions - Refine the positions of individual nodes based on
the absolution positions (optional)
17SOME IMPLEMENTATION DETAILS OF MDS-MAP(P)
- For each node, compute a local relative map using
MDS - Size of local maps fixed or adaptive
- Merge/align local maps to form a big relative map
- Sequential or distributed scaling or not
- Refine the relative map based on the relative
positions - Least squares minimization what information to
use - Given sufficient anchors, compute absolute
positions - Anchor selection centralized or distributed
- Refine the positions of individual nodes based on
the absolution positions - Minimizing squared errors or absolute errors
18AN EXAMPLE OF C-SHAPE GRID NETWORKS
Known 1-hop distances with 5 range error
Connectivity information only
MDS-MAP(P) without both optional refinement steps.
19 RANDOM UNIFORM PLACEMENT
Connectivity information only
Known 1-hop distances with 5 range error
200 nodes 4 random anchors
20 RANDOM C-SHAPE PLACEMENT
Connectivity information only
Known 1-hop distances with 5 range error
160 nodes 4 random anchors
21Understanding 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
22Estimated Location Error Decomposition
Position Error
23Cramer 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
24Density Effects
Results from Cramer-Rao Bound Simulations based
on White Gaussian Error
Range Tangential Error
m/rad
RMS Location Error
RMS Location Error/sigma
m/m
Range Error Scaling Factor
Density (node/m2)
20mm distance measurement certainty 0.27
angular certainty
25Density Effects with Different Ranging
Technologies
6 neighbors
12 neighbors
RMS Error(m)
26Network Scalability
Error propagation on a hexagon scenario (angle
measurement) Rate of error propagation faster
with distance measurements but Much smaller
magnitude than angles
RMS Location Error x 10
y-coordinate(m)
x-coordinate(m)
27More 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
28Localization Service Middleware
Wishful thinking some of it running on XYZ Node
29Are 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!!!