Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

29
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

description

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. - PowerPoint PPT Presentation

Transcript of Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Page 1: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Location Discovery – Part IILecture 5

September 16, 2004

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/eeng460a

Page 2: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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 timeo GDOP – Angles mattero Conditions for position uniqueness (another presentation on this later)

• Improved MDS LocalizationMaterial 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

Page 3: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 4: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Active 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

TargetSynchronization channelRanging channel

Page 5: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Passive 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.)

?

TargetSynchronization channelRanging channel

Page 6: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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 clusterso 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

Page 7: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 8: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Possible Implementations/ Computation Models

1. CentralizedOnly one node computes

2. Locally Centralized Some of unknown nodes compute

3. (Fully) DistributedEvery unknown node computes

Computing Nodes

• Each approach may be appropriate for a different application• Centralized approaches require routing and leader election• Fully distributed approach does not have this requirement

Page 9: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 10: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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)

Page 11: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

21-B 2

NxN matrix of 1s

NxN matrix of 1sNxN identity matrix

TVAVB

21

VAX

Page 12: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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)

Page 13: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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)

Page 14: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 15: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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)

Page 16: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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)

Page 17: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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)

Page 18: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 19: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Mea

n er

ror (

%R

)

MDS-MAP(P)MDS-MAP(P,R)DV-hop

Page 20: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Mea

n er

ror (

%R

)

MDS-MAP(P)MDS-MAP(P,R)DV-hop

Page 21: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Understanding Fundamental Behaviors(Savvides04b)

What is the fundamental error behavior?Measurement technology perspective

• Acoustic vs. RF ToF (2cm – 1.5m measurement accuracy)

• Distances vs. AngulesDeployment - what density?Scalability How does error propagate?Beacon density & beacon position uncertaintyIntrinsic vs. Extrinsic Error Component

Page 22: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Estimated Location Error Decomposition

PositionError

ChannelEffects

ComputationError

SetupError

Induced by intrinsic measurement error

Page 23: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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”

Page 24: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

10310

-1

100

101

102

103

104

distancesangles

Range Error Scaling FactorRM

S L

ocat

ion

Err

or/ s

igm

a

Range Tangential Error

Results from Cramer-Rao Bound Simulations based on White Gaussian Error

m/rad

m/m

Page 25: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 26: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Network Scalability

x-coordinate(m) y-coordinate(m)

RMS

L oc a

tion

Err o

r x 1

0Error propagation on a hexagon scenario (angle measurement)Rate of error propagation faster with distance measurements but Much smaller magnitude than angles

Page 27: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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

Page 28: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

Localization Service Middleware

Wishful thinking… some of it running on XYZ Node…

Page 29: Andreas Savvides andreas.savvides@yale Office: AKW 212 Tel 432-1275 Course Website

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!!!