View
216
Download
0
Embed Size (px)
Citation preview
Introduction to Location Discovery Lecture 6
September 20, 2005
EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems &
Sensor Networks
Andreas [email protected]
Office: AKW 212Tel 432-1275
Course Websitehttp://www.eng.yale.edu/enalab/courses/2005f/eeng460a
Lecture Outline
Recap from last lecture, Kalman Filters & time update phase
The SCAAT Kalman Filter Programming project overview Computing locations using
multidimensional scaling (MDS)
Kalman Filter Equations
From Greg Welch
http://www.cs.unc.edu/~welch/media/pdf/kalman_intro.pdf
KF, EKF & SCAAT
“A Kalman Filter(KF) is a recursive mathematical procedure for least-squares estimation of a linear system”
Follows a predictor-corrector model An Extended Kalman Filter is a KF variant
of non-linear systems A SCAAT Kalman Filter operates on a
single measurement at a time.
SCAAT Kalman Filter
Proposed by Greg Welsh and Gary Bishop at UNC in 1997
Used in Hi-Ball Optoelectronic Tracker System
[Slide created from Welsh & Bishop, “SCAAT: Incremental Tracking with Incomplete Information”, Sigraph 97]
SCAAT Kalman Filter
Single-constraint-at-a-time(SCAAT)
• Process one measurement at a time
C- # of independent constraints for a unique solution
N – # of constraints used to derive an estimate
Nind - # of independent constraints
[Slide from Welsh & Bishop, “SCAAT: Incremental Tracking with Incomplete Information”, Sigraph 97]
SCAAT Aims at Temporal Improvements
Computation is faster KF matrices H, x and z are smaller The state prediction model described by
matrix A needs to change
Example system that uses all measurements at once
Programming Project
Implement a SCAAT filter in SOS Need to worry about
1. Correctness of implementation
2. Layering & modules
(See project handout)
Back to Distance Based Localization…
What if the distances between nodes are know?
Can we compute a coordinate system without beacons (or anchors)?
Yes, one possible way is to use MDS…
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)
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.
LOCALIZATION USING MDS-MAP (Shang, et al., Mobihoc’03)
Applying Classical MDS
1. Create a proximity matrix of distances D2. Convert into a double-centered matrix B
3. Take the Singular Value Decomposition of B
4. Compute the coordinate matrix X (2D coordinates will be in the first 2 columns)
U
NIDU
NI
11
2
1-B 2
NxN matrix of 1s
NxN matrix of 1s
NxN identity matrix
TVAVB
2
1
VAX
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.
Example: Localization Using Multidimensional Scaling (MDS) (Yi Shang et. al)
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 nodes1. Compute shortest paths between all pairs of nodes2. Apply MDS3. 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 completed4. 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
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)
MDS-MAP(P) (Shang and Ruml, Infocom’04)
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
SOME IMPLEMENTATION DETAILS OF MDS-MAP(P)
AN EXAMPLE OF C-SHAPE GRID NETWORKS
MDS-MAP(P) without both optional refinement steps.
Known 1-hop distances with 5% range error
Connectivity information only
2 4 6 8 10
2
4
6
8
10
2 4 6 8 10
2
4
6
8
10
RANDOM UNIFORM PLACEMENT
200 nodes; 4 random anchors
Connectivity information only Known 1-hop distances with 5% range error
5 10 15 20 25 30 350
50
100
150
200
Connectivity
Me
an
err
or
(%R
)
MDS-MAP(P)MDS-MAP(P,R)DV-hop
RANDOM C-SHAPE PLACEMENT
160 nodes; 4 random anchors
Connectivity information only Known 1-hop distances with 5% range error
5 10 15 20 25 300
50
100
150
200
Connectivity
Me
an
err
or
(%R
)
MDS-MAP(P)MDS-MAP(P,R)DV-hop
Where is the challenge?
The results are numerically correct based on the used measurement model
Two main assumptions• Hops are proportional to distance• Error represented as a function of distance
Is that the case in practice?
Back to the Physical Layer: RSSI In Node Localization
Ultrasound ToA RSSI in football field
Max range 3m, accuracy 2cm Max range 20m, accuracy 7mPower levels: 7,10
01
23
45
6
0
1
2
3
4
50
0.5
1
1.5
2
2.5
7
8
9
6
27
10
5
28
12
X coordinate
42
33
4
30
35
29
11
13
14
3
34
32
37
36
17
31
Connectivity at Power Level 7
41
25
15
1
2
38
39
18
26
24
16
Y coordinate
40
19
22
23
20
21
Z c
oo
rdin
ate
RSSI Characterization Study(D.Lymberopoulos et. al. based on Chipcon 2420 radio)
01
23
45
6
0
1
2
3
4
50
0.5
1
1.5
2
2.5
7
8
9
6
27
10
5
28
12
X coordinate
42
33
4
30
35
29
11
13
14
3
34
32
37
36
17
31
Connectivity at Power Level 6
41
25
15
1
2
3839
18
26
24
16
Y coordinate
40
19
22
23
20
21
Z c
oo
rdin
ate
01
23
45
6
0
1
2
3
4
50
0.5
1
1.5
2
2.5
7
8
9
6
27
10
5
28
12
X coordinate
42
33
4
30
35
29
11
13
14
3
34
32
37
36
17
31
Connectivity at Power Level 4
41
25
15
1
2
3839
18
26
24
16
Y coordinate
40
19
22
23
20
21
Z c
oo
rdin
ate
RSSI: The Log Normal Shadowing Model
Problem with indoor environments:
Path loss exponent varies in different areas
Significantly affected by reflections at higher power levels
Antenna factor dominates
),0(X
exponent losspath -
d distance reference aat losspath )PL(d
power, transmit P
Xd
d log 10)PL(dPRSS(d)
2
00
T
0100T
N
Transmit Power Levels in Chipcon CC2420
= 1mW = 43.5mW
Radio supply voltage= 2.5VAnd Power = I*V
Going from Watts to dBm
1mW
mW)P(in 10logdBm)P(in
+20dBm=100mW
+10dBm=10mW
+7dBm=5mW
+6dBm = 4mW
+4dBm=2.5mW
+3dBm=2mW
0dBm=1mW
-3dBm=.5mW
-10dBm=.1mW
Sources of RSSI Variability
Intrinsic• Radio receiver and transmitter calibration
Extrinsic • Relative antenna orientation for
Receiver/Transmitter • Multipath and shadowing effects
Indoor Path Loss Measurements
Floor measurements in a 24 x 20 lounge – no obstacles
-100
-90
-80
-70
-60
-50
-40
0 5 10 15 20
Distance (feet)
RS
SI(
dB
m) Same power level using suboptimal antenna
η=3
RSSI Measurement Configuration: RSSI vs Distance
0 1 2 3 4 5 6 7 8-50
-45
-40
-35
-30
-25Distance Vs Average RSSI at a low power level
DISTANCE (m)
Avera
ge R
SS
I (d
bm
)
Data cannot be fitted to the widely used log-normal shadowing signal propagation model Reflections Antenna Orientation
Antenna Radiation Pattern
Side View Top View
Communication rangeSymmetric Region Antenna orientation
independent regions
Communication range
Interesting Properties of RSSI
Moving away from the antenna active region
Link Asymmetry in 3D-scenarios
1 2 3 4 5 6 7 820
22
24
26
28
30
32
34
36
Power Level ( 1 - Maximum power level )
One way Links
% o
f on
e-w
ay lin
ks
RSSI Study Results & Conclusions
The RX/TX radio calibration issues have minimal effect on localization • If you were using the log normal shadowing model, that would
result in approximately 0.5m of error Antenna orientation is a major source of variability There is a small region around the antenna, that is less
susceptible to orientation effects• This allows to say when 2 radios are in close proximity to each
other Interesting radio property
• There are some signal strength measurements that can only be obtained if two antennas(& radios) are very close to each other!
Understanding Fundamental Behaviors
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 uncertaintyIntrinsic vs. Extrinsic Error Component
Estimated Location Error Decomposition
PositionError
ChannelEffects
ComputationError
SetupError
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
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.410
-1
100
101
102
angle measurementsdistance measurements
Density (node/m2)
RM
S L
ocat
ion
Err
or
20mm distance measurement certainty == 0.27 angular certainty
100
101
102
103
10-1
100
101
102
103
104
distancesangles
Range Error Scaling Factor
RM
S L
ocat
i on
Err
or/s
igm
a
Range Tangential Error
Results from Cramer-Rao Bound Simulations based on White Gaussian Error
m/rad
m/m
Density Effects with Different Ranging Technologies
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.80
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Ranging Error Variance(m)
D=0.030D=0.035D=0.040D=0.045D=0.050D=0.055
RMS Error(m)
6 neighbors
12 neighbors
Network Scalability
x-coordinate(m) y-coordinate(m)
RM
S L
o cat
ion
Err
or x
10
Error propagation on a hexagon scenario (angle measurement)Rate of error propagation faster with distance measurements but Much smaller magnitude than angles
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