MSP:

Multi-Sequence

Positioning

of

Wireless

Sensor

Nodes∗

Ziguo

Zhong

Computer

Science

and

Engineering

University

of

Minnesota

zhong@cs.umn.edu

Tian

He

Computer

Science

and

Engineering

University

of

Minnesota

tianhe@cs.umn.edu

Abstract

Wireless

Sensor

Networks

have

been

proposed

for

use

in

many

location-dependent

applications.

Most

of

these

need

to

identify

the

locations

of

wireless

sensor

nodes,

a

challenging

task

because

of

the

severe

constraints

on

cost,

energy

and

effective

range

of

sensor

devices.

To

overcome

limitations

in

existing

solutions,

we

present

a

Multi-Sequence

Positioning

(MSP)

method

for

large-scale

stationary

sensor

node

localization

in

outdoor

environments.

The

novel

idea

behind

MSP

is

to

reconstruct

and

estimate

two-dimensional

location

information

for

each

sensor

node

by

processing

multiple

one-dimensional

node

sequences,

easily

obtained

through

loosely

guided

event

distribution.

Starting

from

a

basic

MSP

design,

we

propose

four

optimizations,

which

work

together

to

increase

the

localization

accuracy.

We

address

several

interesting

issues,

such

as

incomplete

(partial)

node

sequences

and

sequence

flip,

found

in

the

Mirage

test-bed

we

built.

We

have

evaluated

the

MSP

system

through

theoretical

analysis,

extensive

simulation

as

well

as

two

physical

systems

(an

indoor

version

with

MICAz

motes

and

an

outdoor

version

with

MICAz

motes).

This

evaluation

demonstrates

that

MSP

can

achieve

an

accuracy

within

one

foot,

requiring

neither

additional

costly

hardware

on

sensor

nodes

nor

precise

event

distribution.

It

also

provides

a

nice

tradeoff

between

physical

cost

(anchors)

and

soft

cost

(events),

while

maintaining

localization

accuracy.

Categories

and

Subject

Descriptors

[Computer

Communications

Networks]:

Distributed

Systems

General

Terms

Algorithms,

Measurement,

Design,

Performance,

Experimentation

Introduction

Although

Wireless

Sensor

Networks

(WSN)

have

shown

promising

prospects

in

various

applications

researchers

still

face

several

challenges

for

massive

deployment

of

such

networks.

One

of

these

is

to

identify

the

location

of

individual

sensor

nodes

in

outdoor

environments.

Because

of

unpredictable

flow

dynamics

in

airborne

scenarios,

it

is

not

currently

feasible

to

localize

sensor

nodes

during

massive

UVA-based

deployment.

On

the

other

hand,

geometric

information

is

indispensable

in

these

networks,

since

users

need

to

know

where

events

of

interest

occur

(e.g.,

the

location

of

intruders

or

of

a

bomb

explosion).

Previous

research

on

node

localization

falls

into

two

categories:

range-based

approaches

and

range-free

approaches.

Range-based

approaches

compute

per-node

location

information

iteratively

or

recursively

based

on

measured

distances

among

target

nodes

and

a

few

anchors

which

precisely

know

their

locations.

These

approaches

generally

require

costly

hardware

(e.g.,

GPS)

and

have

limited

effective

range

due

to

energy

constraints

(e.g.,

ultrasound-based

TDOA

Although

range-based

solutions

can

be

suitably

used

in

small-scale

indoor

environments,

they

are

considered

less

cost-effective

for

large-scale

deployments.

On

the

other

hand,

range-free

approaches

do

not

require

accurate

distance

measurements,

but

localize

the

node

based

on

network

connectivity

(proximity)

information.

Unfortunately,

since

wireless

connectivity

is

highly

influenced

by

the

environment

and

hardware

calibration,

existing

solutions

fail

to

deliver

encouraging

empirical

results,

or

require

substantial

survey

and

calibration

on

a

case-by-case

basis.

Realizing

the

impracticality

of

existing

solutions

for

the

large-scale

outdoor

environment,

researchers

have

recently

proposed

solutions

(e.g.,

Spotlight

and

Lighthouse

for

sensor

node

localization

using

the

spatiotemporal

correlation

of

controlled

events

(i.e.,

inferring

nodes"

locations

based

on

the

detection

time

of

controlled

events).

These

solutions

demonstrate

that

long

range

and

high

accuracy

localization

can

be

achieved

simultaneously

with

little

additional

cost

at

sensor

nodes.

These

benefits,

however,

come

along

with

an

implicit

assumption

that

the

controlled

events

can

be

precisely

distributed

to

a

specified

location

at

a

specified

time.

We

argue

that

precise

event

distribution

is

difficult

to

achieve,

especially

at

large

scale

when

terrain

is

uneven,

the

event

distribution

device

is

not

well

calibrated

and

its

position

is

difficult

to

maintain

(e.g.,

the

helicopter-mounted

scenario

in

To

address

these

limitations

in

current

approaches,

in

this

paper

we

present

a

multi-sequence

positioning

(MSP)

method

for

large-scale

stationary

sensor

node

localization,

in

deployments

where

an

event

source

has

line-of-sight

to

all

sensors.

The

novel

idea

behind

MSP

is

to

estimate

each

sensor

node"s

two-dimensional

location

by

processing

multiple

easy-to-get

one-dimensional

node

sequences

(e.g.,

event

detection

order)

obtained

through

loosely-guided

event

distribution.

This

design

offers

several

benefits.

First,

compared

to

a

range-based

approach,

MSP

does

not

require

additional

costly

hardware.

It

works

using

sensors

typically

used

by

sensor

network

applications,

such

as

light

and

acoustic

sensors,

both

of

which

we

specifically

consider

in

this

work.

Second,

compared

to

a

range-free

approach,

MSP

needs

only

a

small

number

of

anchors

(theoretically,

as

few

as

two),

so

high

accuracy

can

be

achieved

economically

by

introducing

more

events

instead

of

more

anchors.

And

third,

compared

to

Spotlight,

MSP

does

not

require

precise

and

sophisticated

event

distribution,

an

advantage

that

significantly

simplifies

the

system

design

and

reduces

calibration

cost.

This

paper

offers

the

following

additional

intellectual

contributions:

We

are

the

first

to

localize

sensor

nodes

using

the

concept

of

node

sequence,

an

ordered

list

of

sensor

nodes,

sorted

by

the

detection

time

of

a

disseminated

event.

We

demonstrate

that

making

full

use

of

the

information

embedded

in

one-dimensional

node

sequences

can

significantly

improve

localization

accuracy.

Interestingly,

we

discover

that

repeated

reprocessing

of

one-dimensional

node

sequences

can

further

increase

localization

accuracy.

We

propose

a

distribution-based

location

estimation

strategy

that

obtains

the

final

location

of

sensor

nodes

using

the

marginal

probability

of

joint

distribution

among

adjacent

nodes

within

the

sequence.

This

new

algorithm

outperforms

the

widely

adopted

Centroid

estimation

To

the

best

of

our

knowledge,

this

is

the

first

work

to

improve

the

localization

accuracy

of

nodes

by

adaptive

events.

The

generation

of

later

events

is

guided

by

localization

results

from

previous

events.

We

evaluate

line-based

MSP

on

our

new

Mirage

test-bed,

and

wave-based

MSP

in

outdoor

environments.

Through

system

implementation,

we

discover

and

address

several

interesting

issues

such

as

partial

sequence

and

sequence

flips.

To

reveal

MSP

performance

at

scale,

we

provide

analytic

results

as

well

as

a

complete

simulation

study.

All

the

simulation

and

implementation

code

is

available

online

at

The

rest

of

the

paper

is

organized

as

follows.

Section

briefly

surveys

the

related

work.

Section

presents

an

overview

of

the

MSP

localization

system.

In

sections

and

basic

MSP

and

four

advanced

processing

methods

are

introduced.

Section

describes

how

MSP

can

be

applied

in

a

wave

propagation

scenario.

Section

discusses

several

implementation

issues.

Section

presents

simulation

results,

and

Section

reports

an

evaluation

of

MSP

on

the

Mirage

test-bed

and

an

outdoor

test-bed.

Section

concludes

the

paper.

Related

Work

Many

methods

have

been

proposed

to

localize

wireless

sensor

devices

in

the

open

air.

Most

of

these

can

be

classified

into

two

categories:

range-based

and

range-free

localization.

Range-based

localization

systems,

such

as

GPS

Cricket

AHLoS

AOA

Robust

Quadrilaterals

and

Sweeps

are

based

on

fine-grained

point-topoint

distance

estimation

or

angle

estimation

to

identify

pernode

location.

Constraints

on

the

cost,

energy

and

hardware

footprint

of

each

sensor

node

make

these

range-based

methods

undesirable

for

massive

outdoor

deployment.

In

addition,

ranging

signals

generated

by

sensor

nodes

have

a

very

limited

effective

range

because

of

energy

and

form

factor

concerns.

For

example,

ultrasound

signals

usually

effectively

propagate

feet

using

an

on-board

transmitter

Consequently,

these

range-based

solutions

require

an

undesirably

high

deployment

density.

Although

the

received

signal

strength

indicator

(RSSI)

related

methods

were

once

considered

an

ideal

low-cost

solution,

the

irregularity

of

radio

propagation

seriously

limits

the

accuracy

of

such

systems.

The

recently

proposed

RIPS

localization

system

superimposes

two

RF

waves

together,

creating

a

low-frequency

envelope

that

can

be

accurately

measured.

This

ranging

technique

performs

very

well

as

long

as

antennas

are

well

oriented

and

environmental

factors

such

as

multi-path

effects

and

background

noise

are

sufficiently

addressed.

Range-free

methods

don"t

need

to

estimate

or

measure

accurate

distances

or

angles.

Instead,

anchors

or

controlled-event

distributions

are

used

for

node

localization.

Range-free

methods

can

be

generally

classified

into

two

types:

anchor-based

and

anchor-free

solutions.

For

anchor-based

solutions

such

as

Centroid

APIT

SeRLoc

Gradient

and

APS

the

main

idea

is

that

the

location

of

each

node

is

estimated

based

on

the

known

locations

of

the

anchor

nodes.

Different

anchor

combinations

narrow

the

areas

in

which

the

target

nodes

can

possibly

be

located.

Anchor-based

solutions

normally

require

a

high

density

of

anchor

nodes

so

as

to

achieve

good

accuracy.

In

practice,

it

is

desirable

to

have

as

few

anchor

nodes

as

possible

so

as

to

lower

the

system

cost.

Anchor-free

solutions

require

no

anchor

nodes.

Instead,

external

event

generators

and

data

processing

platforms

are

used.

The

main

idea

is

to

correlate

the

event

detection

time

at

a

sensor

node

with

the

known

space-time

relationship

of

controlled

events

at

the

generator

so

that

detection

time-stamps

can

be

mapped

into

the

locations

of

sensors.

Spotlight

and

Lighthouse

work

in

this

fashion.

In

Spotlight

the

event

distribution

needs

to

be

precise

in

both

time

and

space.

Precise

event

distribution

is

difficult

to

achieve

without

careful

calibration,

especially

when

the

event-generating

devices

require

certain

mechanical

maneuvers

(e.g.,

the

telescope

mount

used

in

Spotlight).

All

these

increase

system

cost

and

reduce

localization

speed.

StarDust

which

works

much

faster,

uses

label

relaxation

algorithms

to

match

light

spots

reflected

by

corner-cube

retro-reflectors

(CCR)

with

sensor

nodes

using

various

constraints.

Label

relaxation

algorithms

converge

only

when

a

sufficient

number

of

robust

constraints

are

obtained.

Due

to

the

environmental

impact

on

RF

connectivity

constraints,

however,

StarDust

is

less

accurate

than

Spotlight.

In

this

paper,

we

propose

a

balanced

solution

that

avoids

the

limitations

of

both

anchor-based

and

anchor-free

solutions.

Unlike

anchor-based

solutions

MSP

allows

a

flexible

tradeoff

between

the

physical

cost

(anchor

nodes)

with

the

soft

A

B

Target

nodeAnchor

node

AB

(b)

(c)(d)

(a)

Event

Node

Sequence

generated

by

event

Event

Node

Sequence

generated

by

event

Node

Sequence

generated

by

event

Node

Sequence

generated

by

event

Event

Event

Figure

The

MSP

System

Overview

cost

(localization

events).

MSP

uses

only

a

small

number

of

anchors

(theoretically,

as

few

as

two).

Unlike

anchor-free

solutions,

MSP

doesn"t

need

to

maintain

rigid

time-space

relationships

while

distributing

events,

which

makes

system

design

simpler,

more

flexible

and

more

robust

to

calibration

errors.

System

Overview

MSP

works

by

extracting

relative

location

information

from

multiple

simple

one-dimensional

orderings

of

nodes.

Figure

shows

a

layout

of

a

sensor

network

with

anchor

nodes

and

target

nodes.

Target

nodes

are

defined

as

the

nodes

to

be

localized.

Briefly,

the

MSP

system

works

as

follows.

First,

events

are

generated

one

at

a

time

in

the

network

area

(e.g.,

ultrasound

propagations

from

different

locations,

laser

scans

with

diverse

angles).

As

each

event

propagates,

as

shown

in

Figure

each

node

detects

it

at

some

particular

time

instance.

For

a

single

event,

we

call

the

ordering

of

nodes,

which

is

based

on

the

sequential

detection

of

the

event,

a

node

sequence.

Each

node

sequence

includes

both

the

targets

and

the

anchors

as

shown

in

Figure

Second,

a

multi-sequence

processing

algorithm

helps

to

narrow

the

possible

location

of

each

node

to

a

small

area

(Figure

Finally,

a

distributionbased

estimation

method

estimates

the

exact

location

of

each

sensor

node,

as

shown

in

Figure

Figure

shows

that

the

node

sequences

can

be

obtained

much

more

economically

than

accurate

pair-wise

distance

measurements

between

target

nodes

and

anchor

nodes

via

ranging

methods.

In

addition,

this

system

does

not

require

a

rigid

time-space

relationship

for

the

localization

events,

which

is

critical

but

hard

to

achieve

in

controlled

event

distribution

scenarios

(e.g.,

Spotlight

For

the

sake

of

clarity

in

presentation,

we

present

our

system

in

two

cases:

Ideal

Case,

in

which

all

the

node

sequences

obtained

from

the

network

are

complete

and

correct,

and

nodes

are

time-synchronized

Realistic

Deployment,

in

which

(i)

node

sequences

can

be

partial

(incomplete),

(ii)

elements

in

sequences

could

flip

(i.e.,

the

order

obtained

is

reversed

from

reality),

and

(iii)

nodes

are

not

time-synchronized.

To

introduce

the

MSP

algorithm,

we

first

consider

a

simple

straight-line

scan

scenario.

Then,

we

describe

how

to

implement

straight-line

scans

as

well

as

other

event

types,

such

as

sound

wave

propagation.

A

B

C

Straight-line

Scan

A

C

B

C

A

B

Target

node

Anchor

node

Figure

Obtaining

Multiple

Node

Sequences

Basic

MSP

Let

us

consider

a

sensor

network

with

N

target

nodes

and

M

anchor

nodes

randomly

deployed

in

an

area

of

size

S.

The

top-level

idea

for

basic

MSP

is

to

split

the

whole

sensor

network

area

into

small

pieces

by

processing

node

sequences.

Because

the

exact

locations

of

all

the

anchors

in

a

node

sequence

are

known,

all

the

nodes

in

this

sequence

can

be

divided

into

O(M

parts

in

the

area.

In

Figure

we

use

numbered

circles

to

denote

target

nodes

and

numbered

hexagons

to

denote

anchor

nodes.

Basic

MSP

uses

two

straight

lines

to

scan

the

area

from

different

directions,

treating

each

scan

as

an

event.

All

the

nodes

react

to

the

event

sequentially

generating

two

node

sequences.

For

vertical

scan

the

node

sequence

is

as

shown

outside

the

right

boundary

of

the

area

in

Figure

for

horizontal

scan

the

node

sequence

is

as

shown

under

the

bottom

boundary

of

the

area

in

Figure

Since

the

locations

of

the

anchor

nodes

are

available,

the

anchor

nodes

in

the

two

node

sequences

actually

split

the

area

vertically

and

horizontally

into

parts,

as

shown

in

Figure

To

extend

this

process,

suppose

we

have

M

anchor

nodes

and

perform

d

scans

from

different

angles,

obtaining

d

node

sequences

and

dividing

the

area

into

many

small

parts.

Obviously,

the

number

of

parts

is

a

function

of

the

number

of

anchors

M,

the

number

of

scans

d,

the

anchors"

location

as

well

as

the

slop

k

for

each

scan

line.

According

to

the

pie-cutting

theorem

the

area

can

be

divided

into

parts.

When

M

and

d

are

appropriately

large,

the

polygon

for

each

target

node

may

become

sufficiently

small

so

that

accurate

estimation

can

be

achieved.

We

emphasize

that

accuracy

is

affected

not

only

by

the

number

of

anchors

M,

but

also

by

the

number

of

events

d.

In

other

words,

MSP

provides

a

tradeoff

between

the

physical

cost

of

anchors

and

the

soft

cost

of

events.

Algorithm

depicts

the

computing

architecture

of

basic

MSP.

Each

node

sequence

is

processed

within

line

to

For

each

node,

GetBoundaries()

in

line

searches

for

the

predecessor

and

successor

anchors

in

the

sequence

so

as

to

determine

the

boundaries

of

this

node.

Then

in

line

UpdateMap()

shrinks

the

location

area

of

this

node

according

to

the

newly

obtained

boundaries.

After

processing

all

sequences,

Centroid

Estimation

(line

set

the

center

of

gravity

of

the

final

polygon

as

the

estimated

location

of

the

target

node.

Basic

MSP

only

makes

use

of

the

order

information

between

a

target

node

and

the

anchor

nodes

in

each

sequence.

Actually,

we

can

extract

much

more

location

information

from

Algorithm

Basic

MSP

Process

Output:

The

estimated

location

of

each

node.

repeat

GetOneUnprocessedSeqence();

repeat

GetOneNodeFromSequenceInOrder();

GetBoundaries();

UpdateMap();

until

All

the

target

nodes

are

updated;

until

All

the

node

sequences

are

processed;

repeat

GetOneUnestimatedNode();

CentroidEstimation();

until

All

the

target

nodes

are

estimated;

each

sequence.

Section

will

introduce

advanced

MSP,

in

which

four

novel

optimizations

are

proposed

to

improve

the

performance

of

MSP

significantly.

Advanced

MSP

Four

improvements

to

basic

MSP

are

proposed

in

this

section.

The

first

three

improvements

do

not

need

additional

sensing

and

communication

in

the

networks

but

require

only

slightly

more

off-line

computation.

The

objective

of

all

these

improvements

is

to

make

full

use

of

the

information

embedded

in

the

node

sequences.

The

results

we

have

obtained

empirically

indicate

that

the

implementation

of

the

first

two

methods

can

dramatically

reduce

the

localization

error,

and

that

the

third

and

fourth

methods

are

helpful

for

some

system

deployments.

Sequence-Based

MSP

As

shown

in

Figure

each

scan

line

and

M

anchors,

splits

the

whole

area

into

M

parts.

Each

target

node

falls

into

one

polygon

shaped

by

scan

lines.

We

noted

that

in

basic

MSP,

only

the

anchors

are

used

to

narrow

down

the

polygon

of

each

target

node,

but

actually

there

is

more

information

in

the

node

sequence

that

we

can

made

use

of.

Let"s

first

look

at

a

simple

example

shown

in

Figure

The

previous

scans

narrow

the

locations

of

target

node

and

node

into

two

dashed

rectangles

shown

in

the

left

part

of

Figure

Then

a

new

scan

generates

a

new

sequence

With

knowledge

of

the

scan"s

direction,

it

is

easy

to

tell

that

node

is

located

to

the

left

of

node

Thus,

we

can

further

narrow

the

location

area

of

node

by

eliminating

the

shaded

part

of

node

rectangle.

This

is

because

node

is

located

on

the

right

of

node

while

the

shaded

area

is

outside

the

lower

boundary

of

node

Similarly,

the

location

area

of

node

can

be

narrowed

by

eliminating

the

shaded

part

out

of

node

right

boundary.

We

call

this

procedure

sequence-based

MSP

which

means

that

the

whole

node

sequence

needs

to

be

processed

node

by

node

in

order.

Specifically,

sequence-based

MSP

follows

this

exact

processing

rule:

Lower

boundary

of

Upper

boundary

of

Lower

boundary

of

Upper

boundary

of

New

sequence

New

upper

boundary

of

New

Lower

boundary

of

EventPropagation

Figure

Rule

Illustration

in

Sequence

Based

MSP

Algorithm

Sequence-Based

MSP

Process

Output:

The

estimated

location

of

each

node.

repeat

GetOneUnprocessedSeqence();

repeat

GetOneNodeByIncreasingOrder();

ComputeLowbound();

UpdateMap();

until

The

last

target

node

in

the

sequence;

repeat

GetOneNodeByDecreasingOrder();

ComputeUpbound();

UpdateMap();

until

The

last

target

node

in

the

sequence;

until

All

the

node

sequences

are

processed;

repeat

GetOneUnestimatedNode();

CentroidEstimation();

until

All

the

target

nodes

are

estimated;

Elimination

Rule:

Along

a

scanning

direction,

the

lower

boundary

of

the

successor"s

area

must

be

equal

to

or

larger

than

the

lower

boundary

of

the

predecessor"s

area,

and

the

upper

boundary

of

the

predecessor"s

area

must

be

equal

to

or

smaller

than

the

upper

boundary

of

the

successor"s

area.

In

the

case

of

Figure

node

is

the

successor

of

node

and

node

is

the

predecessor

of

node

According

to

the

elimination

rule,

node

lower

boundary

cannot

be

smaller

than

that

of

node

and

node

upper

boundary

cannot

exceed

node

upper

boundary.

Algorithm

illustrates

the

pseudo

code

of

sequence-based

MSP.

Each

node

sequence

is

processed

within

line

to

The

sequence

processing

contains

two

steps:

Step

(line

to

Compute

and

modify

the

lower

boundary

for

each

target

node

by

increasing

order

in

the

node

sequence.

Each

node"s

lower

boundary

is

determined

by

the

lower

boundary

of

its

predecessor

node

in

the

sequence,

thus

the

processing

must

start

from

the

first

node

in

the

sequence

and

by

increasing

order.

Then

update

the

map

according

to

the

new

lower

boundary.

Step

(line

to

Compute

and

modify

the

upper

boundary

for

each

node

by

decreasing

order

in

the

node

sequence.

Each

node"s

upper

boundary

is

determined

by

the

upper

boundary

of

its

successor

node

in

the

sequence,

thus

the

processing

must

start

from

the

last

node

in

the

sequence

and

by

decreasing

order.

Then

update

the

map

according

to

the

new

upper

boundary.

After

processing

all

the

sequences,

for

each

node,

a

polygon

bounding

its

possible

location

has

been

found.

Then,

center-ofgravity-based

estimation

is

applied

to

compute

the

exact

location

of

each

node

(line

to

An

example

of

this

process

is

shown

in

Figure

The

third

scan

generates

the

node

sequence

In

addition

to

the

anchor

split

lines,

because

nodes

and

come

after

node

in

the

sequence,

node

and

polygons

could

be

narrowed

according

to

node

lower

boundary

(the

lower

right-shaded

area);

similarly,

the

shaded

area

in

node

rectangle

could

be

eliminated

since

this

part

is

beyond

node

upper

boundary

indicated

by

the

dotted

line.

Similar

eliminating

can

be

performed

for

node

as

shown

in

the

figure.

A

B

C

Straight-line

Scan

Straight-line

Scan

Target

node

Anchor

node

Figure

Sequence-Based

MSP

Example

A

B

C

Straight-line

Scan

Straight-line

Scan

Reprocessing

Scan

Target

node

Anchor

node

Figure

Iterative

MSP:

Reprocessing

Scan

From

above,

we

can

see

that

the

sequence-based

MSP

makes

use

of

the

information

embedded

in

every

sequential

node

pair

in

the

node

sequence.

The

polygon

boundaries

of

the

target

nodes

obtained

in

prior

could

be

used

to

further

split

other

target

nodes"

areas.

Our

evaluation

in

Sections

and

shows

that

sequence-based

MSP

considerably

enhances

system

accuracy.

Iterative

MSP

Sequence-based

MSP

is

preferable

to

basic

MSP

because

it

extracts

more

information

from

the

node

sequence.

In

fact,

further

useful

information

still

remains!

In

sequence-based

MSP,

a

sequence

processed

later

benefits

from

information

produced

by

previously

processed

sequences

(e.g.,

the

third

scan

in

Figure

However,

the

first

several

sequences

can

hardly

benefit

from

other

scans

in

this

way.

Inspired

by

this

phenomenon,

we

propose

iterative

MSP.

The

basic

idea

of

iterative

MSP

is

to

process

all

the

sequences

iteratively

several

times

so

that

the

processing

of

each

single

sequence

can

benefit

from

the

results

of

other

sequences.

To

illustrate

the

idea

more

clearly,

Figure

shows

the

results

of

three

scans

that

have

provided

three

sequences.

Now

if

we

process

the

sequence

obtained

from

scan

again,

we

can

make

progress,

as

shown

in

Figure

The

reprocessing

of

the

node

sequence

provides

information

in

the

way

an

additional

vertical

scan

would.

From

sequencebased

MSP,

we

know

that

the

upper

boundaries

of

nodes

and

along

the

scan

direction

must

not

extend

beyond

the

upper

boundary

of

node

therefore

the

grid

parts

can

be

eliminated

(a)

Central

of

Gravity

(b)

Joint

Distribution

Figure

Example

of

Joint

Distribution

Estimation

vm

vm

vm

vm

Combine

m

ap

Figure

Idea

of

DBE

MSP

for

Each

Node

for

the

nodes

and

node

respectively,

as

shown

in

Figure

From

this

example,

we

can

see

that

iterative

processing

of

the

sequence

could

help

further

shrink

the

polygon

of

each

target

node,

and

thus

enhance

the

accuracy

of

the

system.

The

implementation

of

iterative

MSP

is

straightforward:

process

all

the

sequences

multiple

times

using

sequence-based

MSP.

Like

sequence-based

MSP,

iterative

MSP

introduces

no

additional

event

cost.

In

other

words,

reprocessing

does

not

actually

repeat

the

scan

physically.

Evaluation

results

in

Section

will

show

that

iterative

MSP

contributes

noticeably

to

a

lower

localization

error.

Empirical

results

show

that

after

iterations,

improvements

become

less

significant.

In

summary,

iterative

processing

can

achieve

better

performance

with

only

a

small

computation

overhead.

Distribution-Based

Estimation

After

determining

the

location

area

polygon

for

each

node,

estimation

is

needed

for

a

final

decision.

Previous

research

mostly

applied

the

Center

of

Gravity

(COG)

method

which

minimizes

average

error.

If

every

node

is

independent

of

all

others,

COG

is

the

statistically

best

solution.

In

MSP,

however,

each

node

may

not

be

independent.

For

example,

two

neighboring

nodes

in

a

certain

sequence

could

have

overlapping

polygon

areas.

In

this

case,

if

the

marginal

probability

of

joint

distribution

is

used

for

estimation,

better

statistical

results

are

achieved.

Figure

shows

an

example

in

which

node

and

node

are

located

in

the

same

polygon.

If

COG

is

used,

both

nodes

are

localized

at

the

same

position

(Figure

However,

the

node

sequences

obtained

from

two

scans

indicate

that

node

should

be

to

the

left

of

and

above

node

as

shown

in

Figure

The

high-level

idea

of

distribution-based

estimation

proposed

for

MSP,

which

we

call

DBE

MSP,

is

illustrated

in

Figure

The

distributions

of

each

node

under

the

ith

scan

(for

the

ith

node

sequence)

are

estimated

in

node.vmap[i],

which

is

a

data

structure

for

remembering

the

marginal

distribution

over

scan

i.

Then

all

the

vmaps

are

combined

to

get

a

single

map

and

weighted

estimation

is

used

to

obtain

the

final

location.

For

each

scan,

all

the

nodes

are

sorted

according

to

the

gap,

which

is

the

diameter

of

the

polygon

along

the

direction

of

the

scan,

to

produce

a

second,

gap-based

node

sequence.

Then,

the

estimation

starts

from

the

node

with

the

smallest

gap.

This

is

because

it

is

statistically

more

accurate

to

assume

a

uniform

distribution

of

the

node

with

smaller

gap.

For

each

node

processed

in

order

from

the

gap-based

node

sequence,

either

if

Pred.

node"s

area

Predecessor

node

exists:

conditional

distribution

based

on

pred.

node"s

area

Alone:

Uniformly

Distributed

Succ.

node"s

area

Successor

node

exists:

conditional

distribution

based

on

succ.

node"s

area

Succ.

node"s

area

Both

predecessor

and

successor

nodes

exist:

conditional

distribution

based

on

both

of

them

Pred.

node"s

area

Figure

Four

Cases

in

DBE

Process

no

neighbor

node

in

the

original

event-based

node

sequence

shares

an

overlapping

area,

or

if

the

neighbors

have

not

been

processed

due

to

bigger

gaps,

a

uniform

distribution

Uniform()

is

applied

to

this

isolated

node

(the

Alone

case

in

Figure

If

the

distribution

of

its

neighbors

sharing

overlapped

areas

has

been

processed,

we

calculate

the

joint

distribution

for

the

node.

As

shown

in

Figure

there

are

three

possible

cases

depending

on

whether

the

distribution

of

the

overlapping

predecessor

and/or

successor

nodes

have/has

already

been

estimated.

The

estimation"s

strategy

of

starting

from

the

most

accurate

node

(smallest

gap

node)

reduces

the

problem

of

estimation

error

propagation.

The

results

in

the

evaluation

section

indicate

that

applying

distribution-based

estimation

could

give

statistically

better

results.

Adaptive

MSP

So

far,

all

the

enhancements

to

basic

MSP

focus

on

improving

the

multi-sequence

processing

algorithm

given

a

fixed

set

of

scan

directions.

All

these

enhancements

require

only

more

computing

time

without

any

overhead

to

the

sensor

nodes.

Obviously,

it

is

possible

to

have

some

choice

and

optimization

on

how

events

are

generated.

For

example,

in

military

situations,

artillery

or

rocket-launched

mini-ultrasound

bombs

can

be

used

for

event

generation

at

some

selected

locations.

In

adaptive

MSP,

we

carefully

generate

each

new

localization

event

so

as

to

maximize

the

contribution

of

the

new

event

to

the

refinement

of

localization,

based

on

feedback

from

previous

events.

Figure

depicts

the

basic

architecture

of

adaptive

MSP.

Through

previous

localization

events,

the

whole

map

has

been

partitioned

into

many

small

location

areas.

The

idea

of

adaptive

MSP

is

to

generate

the

next

localization

event

to

achieve

best-effort

elimination,

which

ideally

could

shrink

the

location

area

of

individual

node

as

much

as

possible.

We

use

a

weighted

voting

mechanism

to

evaluate

candidate

localization

events.

Every

node

wants

the

next

event

to

split

its

area

evenly,

which

would

shrink

the

area

fast.

Therefore,

every

node

votes

for

the

parameters

of

the

next

event

(e.g.,

the

scan

angle

k

of

the

straight-line

scan).

Since

the

area

map

is

maintained

centrally,

the

vote

is

virtually

done

and

there

is

no

need

for

the

real

sensor

nodes

to

participate

in

it.

After

gathering

all

the

voting

results,

the

event

parameters

with

the

most

votes

win

the

election.

There

are

two

factors

that

determine

the

weight

of

each

vote:

The

vote

for

each

candidate

event

is

weighted

according

to

the

diameter

D

of

the

node"s

location

area.

Nodes

with

bigger

location

areas

speak

louder

in

the

voting,

because

Map

Partitioned

by

the

Localization

Events

Diameter

of

Each

Area

Candidate

Localization

Events

Evaluation

Trigger

Next

Localization

Evet

Figure

Basic

Architecture

of

Adaptive

MSP

Diameter

Weight

el

small

i

opt

i

j

ii

j

i

S

S

DkkDfkWeight

arg

opt

k

Target

node

Anchor

node

Center

of

Gravity

Node

area

Figure

Candidate

Slops

for

Node

at

Anchor

overall

system

error

is

reduced

mostly

by

splitting

the

larger

areas.

The

vote

for

each

candidate

event

is

also

weighted

according

to

its

elimination

efficiency

for

a

location

area,

which

is

defined

as

how

equally

in

size

(or

in

diameter)

an

event

can

cut

an

area.

In

other

words,

an

optimal

scan

event

cuts

an

area

in

the

middle,

since

this

cut

shrinks

the

area

quickly

and

thus

reduces

localization

uncertainty

quickly.

Combining

the

above

two

aspects,

the

weight

for

each

vote

is

computed

according

to

the

following

equation

Weight(k

j

i

f(Di,△(k

j

i

,k

opt

i

k

j

i

is

node

i"s

jth

supporting

parameter

for

next

event

generation;

Di

is

diameter

of

node

i"s

location

area;

△(k

j

i

,k

opt

i

is

the

distance

between

k

j

i

and

the

optimal

parameter

k

opt

i

for

node

i,

which

should

be

defined

to

fit

the

specific

application.

Figure

presents

an

example

for

node

voting

for

the

slopes

of

the

next

straight-line

scan.

In

the

system,

there

are

a

fixed

number

of

candidate

slopes

for

each

scan

(e.g.,

The

location

area

of

target

node

is

shown

in

the

figure.

The

candidate

events

are

evaluated

according

to

their

effectiveness

compared

to

the

optimal

ideal

event

which

is

shown

as

a

dotted

line

with

appropriate

weights

computed

according

to

equation

For

this

specific

example,

as

is

illustrated

in

the

right

part

of

Figure

f(Di,△(k

j

i

,kopt

i

is

defined

as

the

following

equation

Weight(kj

i

f(Di,△(kj

i

,kopt

i

Di

Ssmall

Slarge

Ssmall

and

Slarge

are

the

sizes

of

the

smaller

part

and

larger

part

of

the

area

cut

by

the

candidate

line

respectively.

In

this

case,

node

votes

for

the

candidate

lines

that

do

not

cross

its

area

since

Ssmall

We

show

later

that

adaptive

MSP

improves

localization

accuracy

in

WSNs

with

irregularly

shaped

deployment

areas.

Overhead

and

MSP

Complexity

Analysis

This

section

provides

a

complexity

analysis

of

the

MSP

design.

We

emphasize

that

MSP

adopts

an

asymmetric

design

in

which

sensor

nodes

need

only

to

detect

and

report

the

events.

They

are

blissfully

oblivious

to

the

processing

methods

proposed

in

previous

sections.

In

this

section,

we

analyze

the

computational

cost

on

the

node

sequence

processing

side,

where

resources

are

plentiful.

According

to

Algorithm

the

computational

complexity

of

Basic

MSP

is

O(d

N

S),

and

the

storage

space

required

is

O(N

S),

where

d

is

the

number

of

events,

N

is

the

number

of

target

nodes,

and

S

is

the

area

size.

According

to

Algorithm

the

computational

complexity

of

both

sequence-based

MSP

and

iterative

MSP

is

O(c·d

·N

·S),

where

c

is

the

number

of

iterations

and

c

for

sequencebased

MSP,

and

the

storage

space

required

is

O(N

·S).

Both

the

computational

complexity

and

storage

space

are

equal

within

a

constant

factor

to

those

of

basic

MSP.

The

computational

complexity

of

the

distribution-based

estimation

(DBE

MSP)

is

greater.

The

major

overhead

comes

from

the

computation

of

joint

distributions

when

both

predecessor

and

successor

nodes

exit.

In

order

to

compute

the

marginal

probability,

MSP

needs

to

enumerate

the

locations

of

the

predecessor

node

and

the

successor

node.

For

example,

if

node

A

has

predecessor

node

B

and

successor

node

C,

then

the

marginal

probability

PA(x,y)

of

node

A"s

being

at

location

(x,y)

is:

PA(x,y)

i

j

m

n

NB,A,C

·PB(i,

j)·PC(m,n)

NB,A,C

is

the

number

of

valid

locations

for

A

satisfying

the

sequence

(B,

A,

C)

when

B

is

at

(i,

j)

and

C

is

at

(m,n);

PB(i,

j)

is

the

available

probability

of

node

B"s

being

located

at

(i,

j);

PC(m,n)

is

the

available

probability

of

node

C"s

being

located

at

(m,n).

A

naive

algorithm

to

compute

equation

has

complexity

O(d

N

However,

since

the

marginal

probability

indeed

comes

from

only

one

dimension

along

the

scanning

direction

(e.g.,

a

line),

the

complexity

can

be

reduced

to

O(d

N

after

algorithm

optimization.

In

addition,

the

final

location

areas

for

every

node

are

much

smaller

than

the

original

field

S;

therefore,

in

practice,

DBE

MSP

can

be

computed

much

faster

than

O(d

·N

Wave

Propagation

Example

So

far,

the

description

of

MSP

has

been

solely

in

the

context

of

straight-line

scan.

However,

we

note

that

MSP

is

conceptually

independent

of

how

the

event

is

propagated

as

long

as

node

sequences

can

be

obtained.

Clearly,

we

can

also

support

wave-propagation-based

events

(e.g.,

ultrasound

propagation,

air

blast

propagation),

which

are

polar

coordinate

equivalences

of

the

line

scans

in

the

Cartesian

coordinate

system.

This

section

illustrates

the

effects

of

MSP"s

implementation

in

the

wave

propagation-based

situation.

For

easy

modelling,

we

have

made

the

following

assumptions:

The

wave

propagates

uniformly

in

all

directions,

therefore

the

propagation

has

a

circle

frontier

surface.

Since

MSP

does

not

rely

on

an

accurate

space-time

relationship,

a

certain

distortion

in

wave

propagation

is

tolerable.

If

any

directional

wave

is

used,

the

propagation

frontier

surface

can

be

modified

accordingly.

Target

node

Anchor

node

Previous

Event

location

A

Center

of

Gravity

B

C

A

line

of

preferred

locations

for

next

event

Figure

Example

of

Wave

Propagation

Situation

Under

the

situation

of

line-of-sight,

we

allow

obstacles

to

reflect

or

deflect

the

wave.

Reflection

and

deflection

are

not

problems

because

each

node

reacts

only

to

the

first

detected

event.

Those

reflected

or

deflected

waves

come

later

than

the

line-of-sight

waves.

The

only

thing

the

system

needs

to

maintain

is

an

appropriate

time

interval

between

two

successive

localization

events.

We

assume

that

background

noise

exists,

and

therefore

we

run

a

band-pass

filter

to

listen

to

a

particular

wave

frequency.

This

reduces

the

chances

of

false

detection.

The

parameter

that

affects

the

localization

event

generation

here

is

the

source

location

of

the

event.

The

different

distances

between

each

node

and

the

event

source

determine

the

rank

of

each

node

in

the

node

sequence.

Using

the

node

sequences,

the

MSP

algorithm

divides

the

whole

area

into

many

non-rectangular

areas

as

shown

in

Figure

In

this

figure,

the

stars

represent

two

previous

event

sources.

The

previous

two

propagations

split

the

whole

map

into

many

areas

by

those

dashed

circles

that

pass

one

of

the

anchors.

Each

node

is

located

in

one

of

the

small

areas.

Since

sequence-based

MSP,

iterative

MSP

and

DBE

MSP

make

no

assumptions

about

the

type

of

localization

events

and

the

shape

of

the

area,

all

three

optimization

algorithms

can

be

applied

for

the

wave

propagation

scenario.

However,

adaptive

MSP

needs

more

explanation.

Figure

illustrates

an

example

of

nodes"

voting

for

next

event

source

locations.

Unlike

the

straight-line

scan,

the

critical

parameter

now

is

the

location

of

the

event

source,

because

the

distance

between

each

node

and

the

event

source

determines

the

rank

of

the

node

in

the

sequence.

In

Figure

if

the

next

event

breaks

out

along/near

the

solid

thick

gray

line,

which

perpendicularly

bisects

the

solid

dark

line

between

anchor

C

and

the

center

of

gravity

of

node

area

(the

gray

area),

the

wave

would

reach

anchor

C

and

the

center

of

gravity

of

node

area

at

roughly

the

same

time,

which

would

relatively

equally

divide

node

area.

Therefore,

node

prefers

to

vote

for

the

positions

around

the

thick

gray

line.

Practical

Deployment

Issues

For

the

sake

of

presentation,

until

now

we

have

described

MSP

in

an

ideal

case

where

a

complete

node

sequence

can

be

obtained

with

accurate

time

synchronization.

In

this

section

we

describe

how

to

make

MSP

work

well

under

more

realistic

conditions.

Incomplete

Node

Sequence

For

diverse

reasons,

such

as

sensor

malfunction

or

natural

obstacles,

the

nodes

in

the

network

could

fail

to

detect

localization

events.

In

such

cases,

the

node

sequence

will

not

be

complete.

This

problem

has

two

versions:

Anchor

nodes

are

missing

in

the

node

sequence

If

some

anchor

nodes

fail

to

respond

to

the

localization

events,

then

the

system

has

fewer

anchors.

In

this

case,

the

solution

is

to

generate

more

events

to

compensate

for

the

loss

of

anchors

so

as

to

achieve

the

desired

accuracy

requirements.

Target

nodes

are

missing

in

the

node

sequence

There

are

two

consequences

when

target

nodes

are

missing.

First,

if

these

nodes

are

still

be

useful

to

sensing

applications,

they

need

to

use

other

backup

localization

approaches

(e.g.,

Centroid)

to

localize

themselves

with

help

from

their

neighbors

who

have

already

learned

their

own

locations

from

MSP.

Secondly,

since

in

advanced

MSP

each

node

in

the

sequence

may

contribute

to

the

overall

system

accuracy,

dropping

of

target

nodes

from

sequences

could

also

reduce

the

accuracy

of

the

localization.

Thus,

proper

compensation

procedures

such

as

adding

more

localization

events

need

to

be

launched.

Localization

without

Time

Synchronization

In

a

sensor

network

without

time

synchronization

support,

nodes

cannot

be

ordered

into

a

sequence

using

timestamps.

For

such

cases,

we

propose

a

listen-detect-assemble-report

protocol,

which

is

able

to

function

independently

without

time

synchronization.

listen-detect-assemble-report

requires

that

every

node

listens

to

the

channel

for

the

node

sequence

transmitted

from

its

neighbors.

Then,

when

the

node

detects

the

localization

event,

it

assembles

itself

into

the

newest

node

sequence

it

has

heard

and

reports

the

updated

sequence

to

other

nodes.

Figure

(a)

illustrates

an

example

for

the

listen-detect-assemble-report

protocol.

For

simplicity,

in

this

figure

we

did

not

differentiate

the

target

nodes

from

anchor

nodes.

A

solid

line

between

two

nodes

stands

for

a

communication

link.

Suppose

a

straight

line

scans

from

left

to

right.

Node

detects

the

event,

and

then

it

broadcasts

the

sequence

into

the

network.

Node

and

node

receive

this

sequence.

When

node

detects

the

event,

node

adds

itself

into

the

sequence

and

broadcasts

The

sequence

propagates

in

the

same

direction

with

the

scan

as

shown

in

Figure

(a).

Finally,

node

obtains

a

complete

sequence

In

the

case

of

ultrasound

propagation,

because

the

event

propagation

speed

is

much

slower

than

that

of

radio,

the

listendetect-assemble-report

protocol

can

work

well

in

a

situation

where

the

node

density

is

not

very

high.

For

instance,

if

the

distance

between

two

nodes

along

one

direction

is

meters,

the

sound

needs

to

propagate

from

one

node

to

the

other.

While

normally

the

communication

data

rate

is

in

the

WSN

(e.g.,

it

takes

only

about

ms

to

transmit

an

assembled

packet

for

one

hop.

One

problem

that

may

occur

using

the

listen-detectassemble-report

protocol

is

multiple

partial

sequences

as

shown

in

Figure

(b).

Two

separate

paths

in

the

network

may

result

in

two

sequences

that

could

not

be

further

combined.

In

this

case,

since

the

two

sequences

can

only

be

processed

as

separate

sequences,

some

order

information

is

lost.

Therefore

the

(a)

(b)

(c)

Event

Propagation

Event

Propagation

Event

Propagation

Figure

Node

Sequence

without

Time

Synchronization

accuracy

of

the

system

would

decrease.

The

other

problem

is

the

sequence

flip

problem.

As

shown

in

Figure

(c),

because

node

and

node

are

too

close

to

each

other

along

the

scan

direction,

they

detect

the

scan

almost

simultaneously.

Due

to

the

uncertainty

such

as

media

access

delay,

two

messages

could

be

transmitted

out

of

order.

For

example,

if

node

sends

out

its

report

first,

then

the

order

of

node

and

node

gets

flipped

in

the

final

node

sequence.

The

sequence

flip

problem

would

appear

even

in

an

accurately

synchronized

system

due

to

random

jitter

in

node

detection

if

an

event

arrives

at

multiple

nodes

almost

simultaneously.

A

method

addressing

the

sequence

flip

is

presented

in

the

next

section.

Sequence

Flip

and

Protection

Band

Sequence

flip

problems

can

be

solved

with

and

without

time

synchronization.

We

firstly

start

with

a

scenario

applying

time

synchronization.

Existing

solutions

for

time

synchronization

can

easily

achieve

sub-millisecond-level

accuracy.

For

example,

FTSP

achieves

(microsecond)

average

error

for

a

two-node

single-hop

case.

Therefore,

we

can

comfortably

assume

that

the

network

is

synchronized

with

maximum

error

of

However,

when

multiple

nodes

are

located

very

near

to

each

other

along

the

event

propagation

direction,

even

when

time

synchronization

with

less

than

error

is

achieved

in

the

network,

sequence

flip

may

still

occur.

For

example,

in

the

sound

wave

propagation

case,

if

two

nodes

are

less

than

meters

apart,

the

difference

between

their

detection

timestamp

would

be

smaller

than

millisecond.

We

find

that

sequence

flip

could

not

only

damage

system

accuracy,

but

also

might

cause

a

fatal

error

in

the

MSP

algorithm.

Figure

illustrates

both

detrimental

results.

In

the

left

side

of

Figure

suppose

node

and

node

are

so

close

to

each

other

that

it

takes

less

than

for

the

localization

event

to

propagate

from

node

to

node

Now

unfortunately,

the

node

sequence

is

mistaken

to

be

So

node

is

expected

to

be

located

to

the

right

of

node

such

as

at

the

position

of

the

dashed

node

According

to

the

elimination

rule

in

sequencebased

MSP,

the

left

part

of

node

area

is

cut

off

as

shown

in

the

right

part

of

Figure

This

is

a

potentially

fatal

error,

because

node

is

actually

located

in

the

dashed

area

which

has

been

eliminated

by

mistake.

During

the

subsequent

eliminations

introduced

by

other

events,

node

area

might

be

cut

off

completely,

thus

node

could

consequently

be

erased

from

the

map!

Even

in

cases

where

node

still

survives,

its

area

actually

does

not

cover

its

real

location.

Lower

boundary

of

Upper

boundary

of

Flipped

Sequence

Fatal

Elimination

Error

EventPropagation

Fatal

Error

Lower

boundary

of

Upper

boundary

of

Flipped

Sequence

Safe

Elimination

EventPropagation

New

lower

boundary

of

B

(a)

(b)

B:

Protection

band

Figure

Sequence

Flip

and

Protection

Band

Another

problem

is

not

fatal

but

lowers

the

localization

accuracy.

If

we

get

the

right

node

sequence

node

has

a

new

upper

boundary

which

can

narrow

the

area

of

node

as

in

Figure

Due

to

the

sequence

flip,

node

loses

this

new

upper

boundary.

In

order

to

address

the

sequence

flip

problem,

especially

to

prevent

nodes

from

being

erased

from

the

map,

we

propose

a

protection

band

compensation

approach.

The

basic

idea

of

protection

band

is

to

extend

the

boundary

of

the

location

area

a

little

bit

so

as

to

make

sure

that

the

node

will

never

be

erased

from

the

map.

This

solution

is

based

on

the

fact

that

nodes

have

a

high

probability

of

flipping

in

the

sequence

if

they

are

near

to

each

other

along

the

event

propagation

direction.

If

two

nodes

are

apart

from

each

other

more

than

some

distance,

say,

B,

they

rarely

flip

unless

the

nodes

are

faulty.

The

width

of

a

protection

band

B,

is

largely

determined

by

the

maximum

error

in

system

time

synchronization

and

the

localization

event

propagation

speed.

Figure

presents

the

application

of

the

protection

band.

Instead

of

eliminating

the

dashed

part

in

Figure

for

node

the

new

lower

boundary

of

node

is

set

by

shifting

the

original

lower

boundary

of

node

to

the

left

by

distance

B.

In

this

case,

the

location

area

still

covers

node

and

protects

it

from

being

erased.

In

a

practical

implementation,

supposing

that

the

ultrasound

event

is

used,

if

the

maximum

error

of

system

time

synchronization

is

two

nodes

might

flip

with

high

probability

if

the

timestamp

difference

between

the

two

nodes

is

smaller

than

or

equal

to

Accordingly,

we

set

the

protection

band

B

as

(the

distance

sound

can

propagate

within

millisecond).

By

adding

the

protection

band,

we

reduce

the

chances

of

fatal

errors,

although

at

the

cost

of

localization

accuracy.

Empirical

results

obtained

from

our

physical

test-bed

verified

this

conclusion.

In

the

case

of

using

the

listen-detect-assemble-report

protocol,

the

only

change

we

need

to

make

is

to

select

the

protection

band

according

to

the

maximum

delay

uncertainty

introduced

by

the

MAC

operation

and

the

event

propagation

speed.

To

bound

MAC

delay

at

the

node

side,

a

node

can

drop

its

report

message

if

it

experiences

excessive

MAC

delay.

This

converts

the

sequence

flip

problem

to

the

incomplete

sequence

problem,

which

can

be

more

easily

addressed

by

the

method

proposed

in

Section

Simulation

Evaluation

Our

evaluation

of

MSP

was

conducted

on

three

platforms:

(i)

an

indoor

system

with

MICAz

motes

using

straight-line

scan,

(ii)

an

outdoor

system

with

MICAz

motes

using

sound

wave

propagation,

and

(iii)

an

extensive

simulation

under

various

kinds

of

physical

settings.

In

order

to

understand

the

behavior

of

MSP

under

numerous

settings,

we

start

our

evaluation

with

simulations.

Then,

we

implemented

basic

MSP

and

all

the

advanced

MSP

methods

for

the

case

where

time

synchronization

is

available

in

the

network.

The

simulation

and

implementation

details

are

omitted

in

this

paper

due

to

space

constraints,

but

related

documents

are

provided

online

at

Full

implementation

and

evaluation

of

system

without

time

synchronization

are

yet

to

be

completed

in

the

near

future.

In

simulation,

we

assume

all

the

node

sequences

are

perfect

so

as

to

reveal

the

performance

of

MSP

achievable

in

the

absence

of

incomplete

node

sequences

or

sequence

flips.

In

our

simulations,

all

the

anchor

nodes

and

target

nodes

are

assumed

to

be

deployed

uniformly.

The

mean

and

maximum

errors

are

averaged

over

runs

to

obtain

high

confidence.

For

legibility

reasons,

we

do

not

plot

the

confidence

intervals

in

this

paper.

All

the

simulations

are

based

on

the

straight-line

scan

example.

We

implement

three

scan

strategies:

Random

Scan:

The

slope

of

the

scan

line

is

randomly

chosen

at

each

time.

Regular

Scan:

The

slope

is

predetermined

to

rotate

uniformly

from

degree

to

degrees.

For

example,

if

the

system

scans

times,

then

the

scan

angles

would

be:

and

Adaptive

Scan:

The

slope

of

each

scan

is

determined

based

on

the

localization

results

from

previous

scans.

We

start

with

basic

MSP

and

then

demonstrate

the

performance

improvements

one

step

at

a

time

by

adding

(i)

sequencebased

MSP,

(ii)

iterative

MSP,

(iii)

DBE

MSP

and

(iv)

adaptive

MSP.

Performance

of

Basic

MSP

The

evaluation

starts

with

basic

MSP,

where

we

compare

the

performance

of

random

scan

and

regular

scan

under

different

configurations.

We

intend

to

illustrate

the

impact

of

the

number

of

anchors

M,

the

number

of

scans

d,

and

target

node

density

(number

of

target

nodes

N

in

a

fixed-size

region)

on

the

localization

error.

Table

shows

the

default

simulation

parameters.

The

error

of

each

node

is

defined

as

the

distance

between

the

estimated

location

and

the

real

position.

We

note

that

by

default

we

only

use

three

anchors,

which

is

considerably

fewer

than

existing

range-free

solutions

Impact

of

the

Number

of

Scans:

In

this

experiment,

we

compare

regular

scan

with

random

scan

under

a

different

number

of

scans

from

to

in

steps

of

The

number

of

anchors

Table

Default

Configuration

Parameters

Parameter

Description

Field

Area

(Grid

Unit)

Scan

Type

Regular

(Default)/Random

Scan

Anchor

Number

(Default)

Scan

Times

(Default)

Target

Node

Number

(Default)

Statistics

Error

Mean/Max

Random

Seeds

runs

Mean

Error

and

Max

Error

VS

Scan

Time

Scan

Time

Error

Max

Error

of

Random

Scan

Max

Error

of

Regular

Scan

Mean

Error

of

Random

Scan

Mean

Error

of

Regular

Scan

(a)

Error

vs.

Number

of

Scans

Mean

Error

and

Max

Error

VS

Anchor

Number

Anchor

Number

Error

Max

Error

of

Random

Scan

Max

Error

of

Regular

Scan

Mean

Error

of

Random

Scan

Mean

Error

of

Regular

Scan

(b)

Error

vs.

Anchor

Number

Mean

Error

and

Max

Error

VS

Target

Node

Number

Target

Node

Number

Error

Max

Error

of

Random

Scan

Max

Error

of

Regular

Scan

Mean

Error

of

Random

Scan

Mean

Error

of

Regular

Scan

(c)

Error

vs.

Number

of

Target

Nodes

Figure

Evaluation

of

Basic

MSP

under

Random

and

Regular

Scans

Basic

MSP

VS

Sequence

Based

MSP

II

Scan

Time

Error

Max

Error

of

Basic

MSP

Max

Error

of

Seq

MSP

Mean

Error

of

Basic

MSP

Mean

Error

of

Seq

MSP

(a)

Error

vs.

Number

of

Scans

Basic

MSP

VS

Sequence

Based

MSP

I

Anchor

Number

Error

Max

Error

of

Basic

MSP

Max

Error

of

Seq

MSP

Mean

Error

of

Basic

MSP

Mean

Error

of

Seq

MSP

(b)

Error

vs.

Anchor

Number

Basic

MSP

VS

Sequence

Based

MSP

III

Target

Node

Number

Error

Max

Error

of

Basic

MSP

Max

Error

of

Seq

MSP

Mean

Error

of

Basic

MSP

Mean

Error

of

Seq

MSP

(c)

Error

vs.

Number

of

Target

Nodes

Figure

Improvements

of

Sequence-Based

MSP

over

Basic

MSP

is

by

default.

Figure

indicates

the

following:

(i)

as

the

number

of

scans

increases,

the

localization

error

decreases

significantly;

for

example,

localization

errors

drop

more

than

from

scans

to

scans;

(ii)

statistically,

regular

scan

achieves

better

performance

than

random

scan

under

identical

number

of

scans.

However,

the

performance

gap

reduces

as

the

number

of

scans

increases.

This

is

expected

since

a

large

number

of

random

numbers

converges

to

a

uniform

distribution.

Figure

also

demonstrates

that

MSP

requires

only

a

small

number

of

anchors

to

perform

very

well,

compared

to

existing

range-free

solutions

Impact

of

the

Number

of

Anchors:

In

this

experiment,

we

compare

regular

scan

with

random

scan

under

different

number

of

anchors

from

to

in

steps

of

The

results

shown

in

Figure

indicate

that

(i)

as

the

number

of

anchor

nodes

increases,

the

localization

error

decreases,

and

(ii)

statistically,

regular

scan

obtains

better

results

than

random

scan

with

identical

number

of

anchors.

By

combining

Figures

and

we

can

conclude

that

MSP

allows

a

flexible

tradeoff

between

physical

cost

(anchor

nodes)

and

soft

cost

(localization

events).

Impact

of

the

Target

Node

Density:

In

this

experiment,

we

confirm

that

the

density

of

target

nodes

has

no

impact

on

the

accuracy,

which

motivated

the

design

of

sequence-based

MSP.

In

this

experiment,

we

compare

regular

scan

with

random

scan

under

different

number

of

target

nodes

from

to

in

steps

of

Results

in

Figure

show

that

mean

localization

errors

remain

constant

across

different

node

densities.

However,

when

the

number

of

target

nodes

increases,

the

average

maximum

error

increases.

Summary:

From

the

above

experiments,

we

can

conclude

that

in

basic

MSP,

regular

scan

are

better

than

random

scan

under

different

numbers

of

anchors

and

scan

events.

This

is

because

regular

scans

uniformly

eliminate

the

map

from

different

directions,

while

random

scans

would

obtain

sequences

with

redundant

overlapping

information,

if

two

scans

choose

two

similar

scanning

slopes.

Improvements

of

Sequence-Based

MSP

This

section

evaluates

the

benefits

of

exploiting

the

order

information

among

target

nodes

by

comparing

sequence-based

MSP

with

basic

MSP.

In

this

and

the

following

sections,

regular

scan

is

used

for

straight-line

scan

event

generation.

The

purpose

of

using

regular

scan

is

to

keep

the

scan

events

and

the

node

sequences

identical

for

both

sequence-based

MSP

and

basic

MSP,

so

that

the

only

difference

between

them

is

the

sequence

processing

procedure.

Impact

of

the

Number

of

Scans:

In

this

experiment,

we

compare

sequence-based

MSP

with

basic

MSP

under

different

number

of

scans

from

to

in

steps

of

Figure

indicates

significant

performance

improvement

in

sequence-based

MSP

over

basic

MSP

across

all

scan

settings,

especially

when

the

number

of

scans

is

large.

For

example,

when

the

number

of

scans

is

errors

in

sequence-based

MSP

are

about

of

that

of

basic

MSP.

We

conclude

that

sequence-based

MSP

performs

extremely

well

when

there

are

many

scan

events.

Impact

of

the

Number

of

Anchors:

In

this

experiment,

we

use

different

number

of

anchors

from

to

in

steps

of

As

seen

in

Figure

the

mean

error

and

maximum

error

of

sequence-based

MSP

is

much

smaller

than

that

of

basic

MSP.

Especially

when

there

is

limited

number

of

anchors

in

the

system,

e.g.,

anchors,

the

error

rate

was

almost

halved

by

using

sequence-based

MSP.

This

phenomenon

has

an

interesting

explanation:

the

cutting

lines

created

by

anchor

nodes

are

exploited

by

both

basic

MSP

and

sequence-based

MSP,

so

as

the

Basic

MSP

VS

Iterative

MSP

Iterative

Times

Error

Max

Error

of

Iterative

Seq

MSP

Mean

Error

of

Iterative

Seq

MSP

Max

Error

of

Basic

MSP

Mean

Error

of

Basic

MSP

Figure

Improvements

of

Iterative

MSP

DBE

VS

Non−DBE

Error

CumulativeDistrubutioinFunctions(CDF)

Mean

Error

CDF

of

DBE

MSP

Mean

Error

CDF

of

Non−DBE

MSP

Max

Error

CDF

of

DBE

MSP

Max

Error

CDF

of

Non−DBE

MSP

Figure

Improvements

of

DBE

MSP

Adaptive

MSP

for

Target

Node

Number

Error

Max

Error

of

Regualr

Scan

Max

Error

of

Adaptive

Scan

Mean

Error

of

Regualr

Scan

Mean

Error

of

Adaptive

Scan

(a)

Adaptive

MSP

for

by

field

Mean

Error

CDF

at

Different

Angle

Steps

in

Adaptive

Scan

Mean

Error

CumulativeDistrubutioinFunctions(CDF)

Degree

Angle

Step

Adaptive

Degree

Angle

Step

Adaptive

Degree

Angle

Step

Adaptive

Degree

Step

Regular

Scan

(b)

Impact

of

the

Number

of

Candidate

Events

Figure

The

Improvements

of

Adaptive

MSP

number

of

anchor

nodes

increases,

anchors

tend

to

dominate

the

contribution.

Therefore

the

performance

gaps

lessens.

Impact

of

the

Target

Node

Density:

Figure

demonstrates

the

benefits

of

exploiting

order

information

among

target

nodes.

Since

sequence-based

MSP

makes

use

of

the

information

among

the

target

nodes,

having

more

target

nodes

contributes

to

the

overall

system

accuracy.

As

the

number

of

target

nodes

increases,

the

mean

error

and

maximum

error

of

sequence-based

MSP

decreases.

Clearly

the

mean

error

in

basic

MSP

is

not

affected

by

the

number

of

target

nodes,

as

shown

in

Figure

Summary:

From

the

above

experiments,

we

can

conclude

that

exploiting

order

information

among

target

nodes

can

improve

accuracy

significantly,

especially

when

the

number

of

events

is

large

but

with

few

anchors.

Iterative

MSP

over

Sequence-Based

MSP

In

this

experiment,

the

same

node

sequences

were

processed

iteratively

multiple

times.

In

Figure

the

two

single

marks

are

results

from

basic

MSP,

since

basic

MSP

doesn"t

perform

iterations.

The

two

curves

present

the

performance

of

iterative

MSP

under

different

numbers

of

iterations

c.

We

note

that

when

only

a

single

iteration

is

used,

this

method

degrades

to

sequence-based

MSP.

Therefore,

Figure

compares

the

three

methods

to

one

another.

Figure

shows

that

the

second

iteration

can

reduce

the

mean

error

and

maximum

error

dramatically.

After

that,

the

performance

gain

gradually

reduces,

especially

when

c

This

is

because

the

second

iteration

allows

earlier

scans

to

exploit

the

new

boundaries

created

by

later

scans

in

the

first

iteration.

Such

exploitation

decays

quickly

over

iterations.

DBE

MSP

over

Iterative

MSP

Figure

in

which

we

augment

iterative

MSP

with

distribution-based

estimation

(DBE

MSP),

shows

that

DBE

MSP

could

bring

about

statistically

better

performance.

Figure

presents

cumulative

distribution

localization

errors.

In

general,

the

two

curves

of

the

DBE

MSP

lay

slightly

to

the

left

of

that

of

non-DBE

MSP,

which

indicates

that

DBE

MSP

has

a

smaller

statistical

mean

error

and

averaged

maximum

error

than

non-DBE

MSP.

We

note

that

because

DBE

is

augmented

on

top

of

the

best

solution

so

far,

the

performance

improvement

is

not

significant.

When

we

apply

DBE

on

basic

MSP

methods,

the

improvement

is

much

more

significant.

We

omit

these

results

because

of

space

constraints.

Improvements

of

Adaptive

MSP

This

section

illustrates

the

performance

of

adaptive

MSP

over

non-adaptive

MSP.

We

note

that

feedback-based

adaptation

can

be

applied

to

all

MSP

methods,

since

it

affects

only

the

scanning

angles

but

not

the

sequence

processing.

In

this

experiment,

we

evaluated

how

adaptive

MSP

can

improve

the

best

solution

so

far.

The

default

angle

granularity

(step)

for

adaptive

searching

is

degrees.

Impact

of

Area

Shape:

First,

if

system

settings

are

regular,

the

adaptive

method

hardly

contributes

to

the

results.

For

a

square

area

(regular),

the

performance

of

adaptive

MSP

and

regular

scans

are

very

close.

However,

if

the

shape

of

the

area

is

not

regular,

adaptive

MSP

helps

to

choose

the

appropriate

localization

events

to

compensate.

Therefore,

adaptive

MSP

can

achieve

a

better

mean

error

and

maximum

error

as

shown

in

Figure

For

example,

adaptive

MSP

improves

localization

accuracy

by

when

the

number

of

target

nodes

is

Impact

of

the

Target

Node

Density:

Figure

shows

that

when

the

node

density

is

low,

adaptive

MSP

brings

more

benefit

than

when

node

density

is

high.

This

phenomenon

makes

statistical

sense,

because

the

law

of

large

numbers

tells

us

that

node

placement

approaches

a

truly

uniform

distribution

when

the

number

of

nodes

is

increased.

Adaptive

MSP

has

an

edge

Figure

The

Mirage

Test-bed

(Line

Scan)

Figure

The

Outdoor

Experiments

(Wave)

when

layout

is

not

uniform.

Impact

of

Candidate

Angle

Density:

Figure

shows

that

the

smaller

the

candidate

scan

angle

step,

the

better

the

statistical

performance

in

terms

of

mean

error.

The

rationale

is

clear,

as

wider

candidate

scan

angles

provide

adaptive

MSP

more

opportunity

to

choose

the

one

approaching

the

optimal

angle.

Simulation

Summary

Starting

from

basic

MSP,

we

have

demonstrated

step-bystep

how

four

optimizations

can

be

applied

on

top

of

each

other

to

improve

localization

performance.

In

other

words,

these

optimizations

are

compatible

with

each

other

and

can

jointly

improve

the

overall

performance.

We

note

that

our

simulations

were

done

under

assumption

that

the

complete

node

sequence

can

be

obtained

without

sequence

flips.

In

the

next

section,

we

present

two

real-system

implementations

that

reveal

and

address

these

practical

issues.

System

Evaluation

In

this

section,

we

present

a

system

implementation

of

MSP

on

two

physical

test-beds.

The

first

one

is

called

Mirage,

a

large

indoor

test-bed

composed

of

six

by

boards,

illustrated

in

Figure

Each

board

in

the

system

can

be

used

as

an

individual

sub-system,

which

is

powered,

controlled

and

metered

separately.

Three

Hitachi

projectors,

connected

through

a

Matorx

graphics

expansion

box,

are

used

to

create

an

ultra-wide

integrated

display

on

six

boards.

Figure

shows

that

a

long

tilted

line

is

generated

by

the

projectors.

We

have

implemented

all

five

versions

of

MSP

on

the

Mirage

test-bed,

running

MICAz

motes.

Unless

mentioned

otherwise,

the

default

setting

is

anchors

and

scans

at

the

scanning

line

speed

of

feet/s.

In

all

of

our

graphs,

each

data

point

represents

the

average

value

of

trials.

In

the

outdoor

system,

a

Dell

speaker

is

used

to

generate

sound

as

shown

in

Figure

We

place

MICAz

motes

in

the

backyard

of

a

house.

Since

the

location

is

not

completely

open,

sound

waves

are

reflected,

scattered

and

absorbed

by

various

objects

in

the

vicinity,

causing

a

multi-path

effect.

In

the

system

evaluation,

simple

time

synchronization

mechanisms

are

applied

on

each

node.

Indoor

System

Evaluation

During

indoor

experiments,

we

encountered

several

realworld

problems

that

are

not

revealed

in

the

simulation.

First,

sequences

obtained

were

partial

due

to

misdetection

and

message

losses.

Second,

elements

in

the

sequences

could

flip

due

to

detection

delay,

uncertainty

in

media

access,

or

error

in

time

synchronization.

We

show

that

these

issues

can

be

addressed

by

using

the

protection

band

method

described

in

Section

On

Scanning

Speed

and

Protection

Band

In

this

experiment,

we

studied

the

impact

of

the

scanning

speed

and

the

length

of

protection

band

on

the

performance

of

the

system.

In

general,

with

increasing

scanning

speed,

nodes

have

less

time

to

respond

to

the

event

and

the

time

gap

between

two

adjacent

nodes

shrinks,

leading

to

an

increasing

number

of

partial

sequences

and

sequence

flips.

Figure

shows

the

node

flip

situations

for

six

scans

with

distinct

angles

under

different

scan

speeds.

The

x-axis

shows

the

distance

between

the

flipped

nodes

in

the

correct

node

sequence.

y-axis

shows

the

total

number

of

flips

in

the

six

scans.

This

figure

tells

us

that

faster

scan

brings

in

not

only

increasing

number

of

flips,

but

also

longer-distance

flips

that

require

wider

protection

band

to

prevent

from

fatal

errors.

Figure

shows

the

effectiveness

of

the

protection

band

in

terms

of

reducing

the

number

of

unlocalized

nodes.

When

we

use

a

moderate

scan

speed

the

chance

of

flipping

is

rare,

therefore

we

can

achieve

feet

mean

accuracy

(Figure

with

feet

maximum

error

(Figure

With

increasing

speeds,

the

protection

band

needs

to

be

set

to

a

larger

value

to

deal

with

flipping.

Interesting

phenomena

can

be

observed

in

Figures

on

one

hand,

the

protection

band

can

sharply

reduce

the

number

of

unlocalized

nodes;

on

the

other

hand,

protection

bands

enlarge

the

area

in

which

a

target

would

potentially

reside,

introducing

more

uncertainty.

Thus

there

is

a

concave

curve

for

both

mean

and

maximum

error

when

the

scan

speed

is

at

feet/s.

On

MSP

Methods

and

Protection

Band

In

this

experiment,

we

show

the

improvements

resulting

from

three

different

methods.

Figure

shows

that

a

protection

band

of

feet

is

sufficient

for

the

scan

speed

of

Figures

and

show

clearly

that

iterative

MSP

(with

adaptation)

achieves

best

performance.

For

example,

Figures

shows

that

when

we

set

the

protection

band

at

feet,

iterative

MSP

achieves

feet

accuracy,

which

is

more

accurate

than

the

basic

design.

Similarly,

Figures

and

show

the

double-edged

effects

of

protection

band

on

the

localization

accuracy.

Flip

Distribution

for

Scans

at

Line

Speed

of

Flips

Node

Distance

in

the

Ideal

Node

Sequence

Flip

Distribution

for

Scans

at

Line

Speed

of

Flips

Flip

Distribution

for

Scans

at

Line

Speed

of

Flips

Figure

Number

of

Flips

for

Different

Scan

Speeds

Unlocalized

Node

Number(Line

Scan

at

Different

Speed)

Protection

Band

(in

feet)

UnlocalizedNodeNumber

Scan

Line

Speed:

Scan

Line

Speed:

Scan

Line

Speed:

(a)

Number

of

Unlocalized

Nodes

Mean

Error(Line

Scan

at

Different

Speed)

Protection

Band

(in

feet)

Error(infeet)

Scan

Line

Scan

Line

Speed:

Scan

Line

Speed:

(b)

Mean

Localization

Error

Max

Error(Line

Scan

at

Different

Speed)

Protection

Band

(in

feet)

Error(infeet)

Scan

Line

Speed:

Scan

Line

Speed:

Scan

Line

Speed:

(c)

Max

Localization

Error

Figure

Impact

of

Protection

Band

and

Scanning

Speed

Unlocalized

Node

Number(Scan

Line

Speed

Protection

Band

(in

feet)

Unlocalized

node

of

Basic

MSP

Unlocalized

node

of

Sequence

Based

MSP

Unlocalized

node

of

Iterative

MSP

(a)

Number

of

Unlocalized

Nodes

Mean

Error(Scan

Line

Speed

Protection

Band

(in

feet)

Error(infeet)

Mean

Error

of

Basic

MSP

Mean

Error

of

Sequence

Based

MSP

Mean

Error

of

Iterative

MSP

(b)

Mean

Localization

Error

Max

Error(Scan

Line

Speed

Protection

Band

(in

feet)

Error(infeet)

Max

Error

of

Basic

MSP

Max

Error

of

Sequence

Based

MSP

Max

Error

of

Iterative

MSP

(c)

Max

Localization

Error

Figure

Impact

of

Protection

Band

under

Different

MSP

Methods

Unlocalized

Node

Number(Protection

Band:

feet)

Anchor

Number

UnlocalizedNodeNumber

Scan

Events

at

Speed

Scan

Events

at

Speed

Scan

Events

at

Speed

(a)

Number

of

Unlocalized

Nodes

Mean

Error(Protection

Band:

feet)

Anchor

Number

Error(infeet)

Mean

Error

of

Scan

Events

at

Speed

Mean

Error

of

Scan

Events

at

Speed

Mean

Error

of

Scan

Events

at

Speed

(b)

Mean

Localization

Error

Max

Error(Protection

Band:

feet)

Anchor

Number

Error(infeet)

Max

Error

of

Scan

Events

at

Speed

Max

Error

of

Scan

Events

at

Speed

Max

Error

of

Scan

Events

at

Speed

(c)

Max

Localization

Error

Figure

Impact

of

the

Number

of

Anchors

and

Scans

On

Number

of

Anchors

and

Scans

In

this

experiment,

we

show

a

tradeoff

between

hardware

cost

(anchors)

with

soft

cost

(events).

Figure

shows

that

with

more

cutting

lines

created

by

anchors,

the

chance

of

unlocalized

nodes

increases

slightly.

We

note

that

with

a

feet

protection

band,

the

percentage

of

unlocalized

nodes

is

very

small,

e.g.,

in

the

worst-case

with

anchors,

only

out

of

nodes

are

not

localized

due

to

flipping.

Figures

and

show

the

tradeoff

between

number

of

anchors

and

the

number

of

scans.

Obviously,

with

the

number

of

anchors

increases,

the

error

drops

significantly.

With

anchors

we

can

achieve

a

localization

accuracy

as

low

as

feet,

which

is

nearly

a

improvement.

Similarly,

with

increasing

number

of

scans,

the

accuracy

drops

significantly

as

well.

We

can

observe

about

across

all

anchor

settings

when

we

increase

the

number

of

scans

from

to

For

example,

with

only

anchors,

we

can

achieve

accuracy

with

scans.

Outdoor

System

Evaluation

The

outdoor

system

evaluation

contains

two

parts:

(i)

effective

detection

distance

evaluation,

which

shows

that

the

node

sequence

can

be

readily

obtained,

and

(ii)

sound

propagation

based

localization,

which

shows

the

results

of

wavepropagation-based

localization.

Effective

Detection

Distance

Evaluation

We

firstly

evaluate

the

sequence

flip

phenomenon

in

wave

propagation.

As

shown

in

Figure

motes

were

placed

as

five

groups

in

front

of

the

speaker,

four

nodes

in

each

group

at

roughly

the

same

distances

to

the

speaker.

The

gap

between

each

group

is

set

to

be

and

feet

respectively

in

four

experiments.

Figure

shows

the

results.

The

x-axis

in

each

subgraph

indicates

the

group

index.

There

are

four

nodes

in

each

group

bars).

The

y-axis

shows

the

detection

rank

(order)

of

each

node

in

the

node

sequence.

As

distance

between

each

group

increases,

number

of

flips

in

the

resulting

node

sequence

Figure

Wave

Detection

feet

group

distance

Rank

Group

Index

feet

group

distance

Rank

Group

Index

feet

group

distance

Rank

Group

Index

feet

group

distance

Rank

Group

Index

Figure

Ranks

vs.

Distances

Y-Dimension(feet)

X-Dimension

(feet)

Node

Y-Dimension(feet)

X-Dimension

(feet)

Anchor

Figure

Localization

Error

(Sound)

decreases.

For

example,

in

the

distance

subgraph,

there

are

quite

a

few

flips

between

nodes

in

adjacent

and

even

nonadjacent

groups,

while

in

the

subgraph,

flips

between

different

groups

disappeared

in

the

test.

Sound

Propagation

Based

Localization

As

shown

in

Figure

motes

are

placed

as

a

grid

including

rows

with

feet

between

each

row

and

columns

with

feet

between

each

column.

Six

acoustic

wave

propagation

events

are

generated

around

the

mote

grid

by

a

speaker.

Figure

shows

the

localization

results

using

iterative

MSP

times

iterative

processing)

with

a

protection

band

of

feet.

The

average

error

of

the

localization

results

is

feet

and

the

maximum

error

is

feet

with

one

un-localized

node.

We

found

that

sequence

flip

in

wave

propagation

is

more

severe

than

that

in

the

indoor,

line-based

test.

This

is

expected

due

to

the

high

propagation

speed

of

sound.

Currently

we

use

MICAz

mote,

which

is

equipped

with

a

low

quality

microphone.

We

believe

that

using

a

better

speaker

and

more

events,

the

system

can

yield

better

accuracy.

Despite

the

hardware

constrains,

the

MSP

algorithm

still

successfully

localized

most

of

the

nodes

with

good

accuracy.

Conclusions

In

this

paper,

we

present

the

first

work

that

exploits

the

concept

of

node

sequence

processing

to

localize

sensor

nodes.

We

demonstrated

that

we

could

significantly

improve

localization

accuracy

by

making

full

use

of

the

information

embedded

in

multiple

easy-to-get

one-dimensional

node

sequences.

We

proposed

four

novel

optimization

methods,

exploiting

order

and

marginal

distribution

among

non-anchor

nodes

as

well

as

the

feedback

information

from

early

localization

results.

Importantly,

these

optimization

methods

can

be

used

together,

and

improve

accuracy

additively.

The

practical

issues

of

partial

node

sequence

and

sequence

flip

were

identified

and

addressed

in

two

physical

system

test-beds.

We

also

evaluated

performance

at

scale

through

analysis

as

well

as

extensive

simulations.

Results

demonstrate

that

requiring

neither

costly

hardware

on

sensor

nodes

nor

precise

event

distribution,

MSP

can

achieve

a

sub-foot

accuracy

with

very

few

anchor

nodes

provided

sufficient

events.

References

Data

Sheet.

Avaiable

at

P.

Bahl

and

V.

N.

Padmanabhan.

Radar:

An

In-Building

RF-Based

User

Location

and

Tracking

System.

In

IEEE

Infocom

M.

Broxton,

J.

Lifton,

and

J.

Paradiso.

Localizing

A

Sensor

Network

via

Collaborative

Processing

of

Global

Stimuli.

In

EWSN

N.

Bulusu,

J.

Heidemann,

and

D.

Estrin.

GPS-Less

Low

Cost

Outdoor

Localization

for

Very

Small

Devices.

IEEE

Personal

Communications

Magazine,

D.

Culler,

D.

Estrin,

and

M.

Srivastava.

Overview

of

Sensor

Networks.

IEEE

Computer

Magazine,

J.

Elson,

L.

Girod,

and

D.

Estrin.

Fine-Grained

Network

Time

Synchronization

Using

Reference

Broadcasts.

In

OSDI

D.

K.

Goldenberg,

P.

Bihler,

M.

Gao,

J.

Fang,

B.

D.

Anderson,

A.

Morse,

and

Y.

Yang.

Localization

in

Sparse

Networks

Using

Sweeps.

In

MobiCom

T.

He,

C.

Huang,

B.

M.

Blum,

J.

A.

Stankovic,

and

T.

Abdelzaher.

RangeFree

Localization

Schemes

in

Large-Scale

Sensor

Networks.

In

MobiCom

B.

Kusy,

P.

Dutta,

P.

Levis,

M.

Mar,

A.

Ledeczi,

and

D.

Culler.

Elapsed

Time

on

Arrival:

A

Simple

and

Versatile

Primitive

for

Canonical

Time

Synchronization

Services.

International

Journal

of

ad-hoc

and

Ubiquitous

Computing,

L.

Lazos

and

R.

Poovendran.

SeRLoc:

Secure

Range-Independent

Localization

for

Wireless

Sensor

Networks.

In

WiSe

M.

Maroti,

B.

Kusy,

G.

Balogh,

P.

Volgyesi,

A.

Nadas,

K.

Molnar,

S.

Dora,

and

A.

Ledeczi.

Radio

Interferometric

Geolocation.

In

SenSys

M.

Maroti,

B.

Kusy,

G.

Simon,

and

A.

Ledeczi.

The

Flooding

Time

Synchronization

Protocol.

In

SenSys

D.

Moore,

J.

Leonard,

D.

Rus,

and

S.

Teller.

Robust

Distributed

Network

Localization

with

Noise

Range

Measurements.

In

SenSys

R.

Nagpal

and

D.

Coore.

An

Algorithm

for

Group

Formation

in

an

Amorphous

Computer.

In

PDCS

D.

Niculescu

and

B.

Nath.

ad-hoc

Positioning

System.

In

GlobeCom

D.

Niculescu

and

B.

Nath.

ad-hoc

Positioning

System

(APS)

Using

AOA.

In

InfoCom

N.

B.

Priyantha,

A.

Chakraborty,

and

H.

Balakrishnan.

The

Cricket

Location-Support

System.

In

MobiCom

K.

R¨omer.

The

Lighthouse

Location

System

for

Smart

Dust.

In

MobiSys

A.

Savvides,

C.

C.

Han,

and

M.

B.

Srivastava.

Dynamic

Fine-Grained

Localization

in

ad-hoc

Networks

of

Sensors.

In

MobiCom

R.

Stoleru,

T.

He,

J.

A.

Stankovic,

and

D.

Luebke.

A

High-Accuracy,

Low-Cost

Localization

System

for

Wireless

Sensor

Networks.

In

SenSys

R.

Stoleru,

P.

Vicaire,

T.

He,

and

J.

A.

Stankovic.

StarDust:

a

Flexible

Architecture

for

Passive

Localization

in

Wireless

Sensor

Networks.

In

SenSys

E.

W.

Weisstein.

Plane

Division

by

Lines.

mathworld.wolfram.com.

B.

H.

Wellenhoff,

H.

Lichtenegger,

and

J.

Collins.

Global

Positions

System:

Theory

and

Practice,Fourth

Edition.

Springer

Verlag,

K.

Whitehouse.

The

Design

of

Calamari:

an

ad-hoc

Localization

System

for

Sensor

Networks.

In

University

of

California

at

Berkeley,

Z.

Zhong.

MSP

Evaluation

and

Implementation

Report.

Avaiable

at

G.

Zhou,

T.

He,

and

J.

A.

Stankovic.

Impact

of

Radio

Irregularity

on

Wireless

Sensor

Networks.

In

MobiSys

multi-sequence positioning
wireless sensor network
massive uva-based deploment
range-based approach
distribution-based location estimation
listen-detect-assemble-report protocol
node sequence process

node localization
spatiotemporal correlation
event distribution
marginal distribution
localization