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

Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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

Page 3: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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

Page 12: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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

Page 20: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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

Page 21: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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 uncertaintyIntrinsic vs. Extrinsic Error Component

Page 22: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

Estimated Location Error Decomposition

PositionError

ChannelEffects

ComputationError

SetupError

Induced by intrinsic measurement error

Page 23: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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

Page 25: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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

Page 27: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

Localization Service Middleware

Wishful thinking… some of it running on XYZ Node…

Page 29: Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides

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