Introduction to Location Discovery
1 / 39

r 14 - PowerPoint PPT Presentation

  • Updated On :

Introduction to Location Discovery Lecture 4 September 14, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks Andreas Savvides [email protected] Office: AKW 212 Tel 432-1275 Course Website

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'r 14' - LeeJohn

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Slide1 l.jpg

Introduction to Location Discovery Lecture 4 September 14, 2004EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems &Sensor Networks

Andreas Savvides

[email protected]

Office: AKW 212

Tel 432-1275

Course Website

Why is location discovery ld important l.jpg
Why is Location Discovery(LD) Important?

  • Very fundamental component for many other services

    • GPS does not work everywhere

    • Smart Systems – devices need to know where they are

    • Geographic routing & coverage problems

    • People and asset tracking

    • Need spatial reference when monitoring spatial phenomena

  • We will use the node localization problem as a platform for illustrating basic concepts from the course

Why spend so much time on ld l.jpg
Why spend so much time on LD?

  • LD captures multiple aspects of sensor networks:

    • Physical layer imposes measurement challenges

      • Multipath, shadowing, sensor imperfections, changes in propagation properties and more

    • Extensive computation aspects

      • Many formulations of localization problems, how do you solve the optimization problem?

      • How do you solve the problem in a distributed manner?

        • You may have to solve the problem on a memory constrained processor…

    • Networking and coordination issues

      • Nodes have to collaborate and communicate to solve the problem

      • If you are using it for routing, it means you don’t have routing support to solve the problem! How do you do it?

    • System Integration issues

      • How do you build a whole system for localization?

      • How do you integrate location services with other applications?

      • Different implementation for each setup, sensor, integration issue

Taxonomy of localization mechanisms l.jpg
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 l.jpg
Active Mechanisms


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

Measurement technologies l.jpg
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

  • Localization using Imagers - accuracy =~few cm

Some existing localization systems l.jpg
Some Existing Localization Systems

  • Active Bats[Harter97] – Evolved into UWB company Ubisense


  • MIT Crickets


    • Also see [Priyantha00, Priyantha01], more on the website

  • UCLA’s Locating Tiny Sensors in Time and Space: A Case Study [Girod02]

  • AHLoS System [Savvides01, Savvides02, Savvides03]

  • Microsoft Radar Project – Using RSS Maps [Bahl00]

  • Ekahau Wi-Fi Positioning Systems

  • Calamari Project Website at UC Berkeley


  • Ubisense UWB localization system

  • Motetrack at USC

  • Many probabilistic approaches

  • Many startups pursuing indoor localization, asset tracking….

    • Ekahau

Some ultrasonic platforms l.jpg
Some Ultrasonic Platforms

UCLA iBadge


Cricket Platform

An example ultrasonic ranger l.jpg
An Example Ultrasonic Ranger


Measurements from Young Cho, CS213 Project, Winter 2003

Base case atomic multilateration l.jpg
Base Case: Atomic Multilateration

  • Base stations advertise their coordinates & transmit a reference signal

  • PDA uses the reference signal to estimate distances to each of the base stations

  • Note: Distance measurements are noisy!

Problem formulation l.jpg
Problem Formulation

  • Need to minimize the sum of squares of the residuals

  • The objective function is

  • This a non-linear optimization problem

    • Many ways to solve (e.g a forces formulation, gradient descent methods etc

A solution suitable for an embedded processor l.jpg
A Solution Suitable for an Embedded Processor

  • Linearize the measurement equations using Taylor expansion


    Now this is in linear form

Solve using the least square equation l.jpg
Solve using the Least Square Equation

The linearized equations in matrix form become

Now we can use the least squares equation to compute a correction to our initial estimate

Update the current position estimate

Repeat the same process until δ comes very close to 0

How do you solve this problem l.jpg
How do you solve this problem?

  • Check conditions

    • Beacon nodes must not lie on the same line

    • Assuming measurement error follows a white gaussian distribution

  • Create a system of equations

    • Solve to get the solution – how would you solve this in an embedded system?

    • How do you solve for the speed of sound?

Acoustic case also solve for the speed of sound l.jpg
Acoustic case: Also solve for the speed of sound






Minimize over all

This can be linearized to the form


MMSE Solution:

Beware of geometry effects l.jpg
Beware of Geometry Effects!




Known as Geometric Dilution of Precision(GDOP)

Position accuracy depends on measurement accuracy and geometric conditioning

From pseudoinverse equation

Geometry it s the angles not the distance l.jpg
Geometry: It’s the angles not the distance!


CR-Bound Evaluation on a 10 x 10 grid






RMS Error(m)

The node localization problem l.jpg
The Node Localization Problem

Beacon nodes

  • Localize nodes in an ad-hoc

  • multihopnetwork

  • Based on a set of inter-node

  • distance measurements

Solving over multiple hops l.jpg
Solving over multiple hops

  • Iterative Multilateration

Unknown node

(known position)

Beacon node

(known position)

Iterative multilateration l.jpg
Iterative Multilateration

Iterative Multilateration


Error accumulation

May get stuck!!!

Localized nodes

total nodes

% of initial beacons

Collaborative mutlilateration l.jpg
Collaborative Mutlilateration

Known position

Uknown position

  • All available measurements are used as constraints

  • Solve for the positions of multiple unknowns simultaneously

  • Catch: This is a non-linear optimization problem!

  • How do we solve this?

Problem formulation22 l.jpg
Problem Formulation







The objective function is

Can be solved using iterative least squares utilizing the initial

Estimates from phase 2 - we use an Extended Kalman Filter

How do we solve this problem l.jpg
How do we solve this problem?

  • In an embedded system?

  • Backboard material here…

  • One possible solution would use a Kalman Filter

    • This was found to work well in practice, can “easily” implemented on an embedded processor

[more details see Savvides03]

Computation options l.jpg
Computation Options

Computing Nodes

  • 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

Slide25 l.jpg



Find nodes with unique

position solutions

Compute Initial Position Estimates

For all nodes

PHASE 3: Refinement

PHASE 3: Refinement

Centralized Computation

Distributed Computation

Communicate results

to central point


Compute estimate

at each node

Compute location estimates

Criteria met?

Refine estimates of

under-constrained nodes



Transmit estimates back

to each unknown node



Initial estimates phase 2 l.jpg
Initial Estimates (Phase 2)

  • Use the accurate distance measurements to impose constraints in the x and y coordinates – bounding box

  • Use the distance to a beacon as bounds on the x and y coordinates






Initial estimates phase 227 l.jpg
Initial Estimates (Phase 2)

  • Use the accurate distance measurements to impose constraints in the x and y coordinates – bounding box

  • Use the distance to a beacon as bounds on the x and y coordinates

  • Do the same for beacons that are multiple hops away

  • Select the most constraining bounds









U is between [Y-(b+c)] and [X+a]

Initial estimates phase 228 l.jpg
Initial Estimates (Phase 2)

  • Use the accurate distance measurements to impose constraints in the x and y coordinates – bounding box

  • Use the distance to a beacon as bounds on the x and y coordinates

  • Do the same for beacons that are multiple hops away

  • Select the most constraining bounds

  • Set the center of the bounding box as the initial estimate











Initial estimates phase 229 l.jpg
Initial Estimates (Phase 2)

  • Example:

    • 4 beacons

    • 16 unknowns

  • To get good initial estimates, beacons should be placed on the perimeter of the network

  • Observation: If the unknown nodes are outside the beacon perimeter then initial estimates are on or very close to the convex hull of the beacons

Overview collaborative multilateration l.jpg
Overview: Collaborative Multilateration
















Collaborative Multilateration


Computation constraints

Communication cost

Overview collaborative multilateration31 l.jpg
Overview: Collaborative Multilateration

Distributed reduces computation cost

Even sharing of communication cost

Collaborative Multilateration


Computation constraints

Communication cost

Satisfy global constraints with local computation l.jpg
Satisfy Global Constraints with Local Computation

  • From SensorSim


  • 40 nodes, 4 beacons

  • IEEE 802.11 MAC

  • 10Kbps radio

  • Average 6 neighbors

    per node

Kalman filter equations l.jpg
Kalman Filter Equations

From Greg Welch

  • We only use measurement update since the nodes are static

  • We know R (ranging noise distribution)

  • Not really using the KF for now, no notion of time

Global kalman filter l.jpg
Global Kalman Filter

# of edges

# of unknown nodes x 2

  • Matrices grow with density and number of nodes => so does computation cost

  • Computation is not feasible on small processors with limited computation and memory

Blackboard discussion l.jpg
Blackboard Discussion

  • Writing and setting up a Kalman Filter

Beware of solution uniqueness requirements l.jpg
Beware of Solution Uniqueness Requirements

Nodes can be exchanged

without violating the

measurement constraints!!!

  • In a 2D scenario a network is uniquely localizable if:

    • It belongs to a subgraph that is redundantly rigid

    • The subgraph is 3-connected

    • It contains at least 3 beacons

  • More details in future lectures

[conditions from Goldenberg04]

Does this solve the problem l.jpg
Does this solve the problem?

  • No! Several other challenges

  • Solution depends on

    • Problem setup

      • Infrastructure assisted (beacons), fully ad-hoc & beaconless, hybrid

    • Measurement technology

      • Distances vs. angles, acoustic vs. rf, connectivity based, proximity based

      • The underlying measurement error distribution changes with each technology

  • The algorithm will also change

    • Fully distributed computation or centralized

    • How big is the network and what networking support do you have to solve the problem?

    • Mobile vs. static scenarios

    • Many other possibilities and many different approaches

  • More next time…

Next time l.jpg
Next Time

  • Next lecture is a discussion session

    • Make sure you read the paper

      C. Frank and K. Romer, Algorithms for Generic Role Assignment in Sensor Networks, to appear at ACM SenSys 2005

  • Lecture 6 will continue with localization

    • SCAAT Kalman Filter

    • Unique Localizability & Robust Quatrilaterals

    • Multidimensional Scaling

Lecture 7 l.jpg
Lecture 7

  • Results from Cramer Rao Bound Analysis

  • Camera based localization

  • Overview of probabilistic methods