Plume Tracking in Sensor Networks
Glenn NofsingerPhD Thesis Defense
August 22, 2006
Outline
1. Motivation and Problem Statement2. Other Work3. Theoretical Background4. 2-Step Algorithm5. Experiments6. Results and Conclusions
Motivation Current monitoring lacks information
sharing and high sampling density
Method needed for estimating highly unpredictable events: chemical, biological, radioactive agents
Many current sensors for such agents are binary
Problem Statement (1)
Gedanken-experiment: city with fixed, binary sensors of harmful agent
At an unexpected time a series of sensors activated, cause of release unknown
Where was the release? How many release sources? How are observations correlated?
Problem Statement (1)
t=o
Problem Statement (1)
t=1
Problem Statement (1)
t=2
Problem Statement (1)
t=3
Problem Statement (1)
t=4 What is the best estimate of the true source locations given these observations?
Problem Statement (1)
t=1 True initial state: two source locations
Thesis work estimates this truth state
Problem Statement (2)
This problem is hard!
Having an unknown number of sources and only binary detections at a large number of nodes is a new type of problem
Problem Statement (3)
Problem Summary:
Use a sensor network capable of only binary detection to estimate source locations
Evaluate performance of this estimation As a function of wind As a function of sensor density
Other work
ModelComplexity
Mobility
Mobile scout robots
Traditionalenvironmental techniqueswith high resolution sensors,low sensor density
Swarm robots
Static sensor networkswith high densitycheap fixed sensors
(Our approach)
III
III IV
Graphical Conventions:
Source Sensor Sensor with detection Track
A collection of sensors with detections believed to originate from the same event
Each track has different color
+
Theoretical Background (1)
Agent concentration for some area, A
Likelihood map given sensor observations
Plot Conventions:
Theoretical Background (2)
Theoretical Background (3)
Fick’s Law for diffusion and linear wind
First order approximation to process
Standard Gaussian solution
y
c
x
c
y
cD
x
cD
t
cyx
2
2
2
2
)4
)(
4
)((
22
4),,( tD
ty
tD
tx
yx
yxeDDt
AtyxC
Advection-diffusion Model
Theoretical Background (4)
Solution of differential equations for advection-diffusion lead to a superposition of Gaussians
Peclet number measures relative strengths of diffusion to wind. A typical Peclet number is 10. This ratio determines plume width in our model
Plume Model
Theoretical Background (5)
Assume a spatially uniform wind over the matrix A
Concentration state matrix A is designed to simulate an area of size 25mi x 25mi
Decorrelation length scale in wind data indicates the distances over which spatially uniform assumption holds
Typical values are on the order of 50-200 miles, therefore to first order we can assume spatially uniform wind
Wind Model
•Unique response per source location
•Relative differences of Tmax unique
•3 sensors for 2D location
•Can solve for (X0,Y0)
)4
)(
4
)((
21
22
4),,( tD
ty
tD
tx
yx
yxeDDt
AAtyxC
Classic Analytical Approaches
Theoretical Background (6)
Analytical Approach Can solve differential equations for advection-
diffusion Solution of the source (X0,Y0) based on
measurements of C(t)
Method breaks down: No continuous time series available Very noisy, possibly binary data
Theoretical Background (7)
Theoretical Background (8)
t
C(x
,y,t
)
A B
A
B
Sensors
Radii of location for rising and falling edges of agent detection – one for each edge is possible in binary sensor
Analytical approach no longer useful, need statistical methods.
Leads to Bayesian formulation
Typical Sensor Response Curve
Bayesian Estimation Goal to obtain good estimate of target state Xt
based on measurement history Zt p(x) – a priori probability distribution function of
state x (plume concentration) – assumed uniform
p(z|x) – the likelihood function of z given x
p(x|z) – the a posteriori distribution of x given measurement z, also called the current belief
Theoretical Background (9)
Bayesian Formulation Relationship between a posteriori distribution, a
priori distribution, and the likelihood function
Our state estimate
True state
•Want our state estimate to be as close to true state as possible
•Given observation set, what is:
Theoretical Background (10)
Estimators
MMSE –minimum-mean-squared error. It is the mean posterior density. Equal weight to obs.
MAP- maximum a posteriori, maximizes the posterior distribution
ML- maximum likelihood, considers information in measurement only
Theoretical Background (11)
Estimator Example: Source Localization
Each sensor measurement produces independent likelihood function
Cone shaped likelihood function Localization based on sequential
Bayesian estimation Measurements combined, assuming
independence of likelihood
Theoretical Background (12)
Uniform State Estimation
Theoretical Background (13)
MHT The previous uniform estimator can be improved
with advanced data association (DA) techniques such as multiple hypothesis tracking (MHT)
By maintaining multiple “tracks” observations partitioned into subsets which correspond to unique “targets” – in this case unique plume sources
Theoretical Background (14)
Theoretical Background (15)
MHT handles the combinatorial growth of possible track assignments via accurate pruning
Once tracks are built in the plume problem, assume 1 target per track, therefore focusing the custom estimation on one exclusive source
MHT
observations
Tracks
2-Step Algorithm (1) 2-Step track-estimate algorithm
1. Step 1 is track building2. Step 2 is state estimation of tracks
Custom Estimator based on tracks, ignoring observations not associated to a track
Able to work in two scenarios:1. Sources distant, distributed sensor groups2. Overlapping tracks, mixing sensor groups
End of Background (20 minutes)
2-Step Algorithm (2)
Step 1:Track estimation
Input: Sensor “Hits” (x,y,t)
Step 2:State EstimationFor each track
Output: N Tracks
M(Track1)
M(Track2)
M(TrackN) 0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
-50 0 50 100 150 200 250 3000
50
100
150
200
250
300
X
Y
Aggregated Belief Probability With N= 57, 15 hits.
…
2-Step Algorithm (3) Step 1: Track Formation
1.1 Track Initialization –All new observations potentially create tracks. The terminal node on track is designated leader node
2-Step Algorithm (4) Step 1: Track Formation
1.2 Data Association – All sensors with new observations calculate a likelihood function based on wind history. Function evaluated at all leader nodes
2-Step Algorithm (5) Step 1: Track Formation
1.3 Track extension – observations that were associated in step 1.2 become the new leader nodes.
2-Step Algorithm (6) Step 1: Track Formation
1.4 Track termination – The track is terminated once simulation ends or no new associations within cutoff parameter. Track outputs sent to Step 2
2-Step Algorithm (7)
Track A
Track B
Likelihood Function
New Observation
Leader nodes
Detail of likelihood function for track association
2-Step Algorithm (8) Step 2: State Estimation
Each track sequence produces an individual likelihood map
In this case only 4 sensor observations used to form belief map
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
-50 0 50 100 150 200 250 3000
50
100
150
200
250
300
X
Y
Aggregated Belief Probability With N= 57, 15 hits.
2-Step Algorithm (9) Step 2: State Estimation
Each track sequence produces an individual likelihood map.
Only subset of observations applied to belief
0
1
2
3
-50 0 50 100 150 200 250 3000
50
100
150
200
250
300
X
Y
Aggregated Belief Probability With N= 57, 15 hits.
2-Step Algorithm (10)
Gradual update of estimated source position, as sensor data is aggregated along the path ABCD.
Track Assisted State Estimation
Track Assisted State Estimation
2-Step Algorithm (11)
Final estimated likelihood map after integration of ABCD, and renormalization for easier viewing.
Final update of estimated source position, as sensor data is aggregated along the path ABCD.
End of 2-Step Algorithm (40 minutes)
Experiments (1)
Experimental Setup Originally intended on collecting data
from a field of physical sensors, however this hardware component distracted from analytical purpose of thesis
Forward data generated based on real wind data, numerical approximation to diffusion, on a grid size m=n=250
All code implemented in LabVIEW graphical programming language, allows for easy future hardware integration
LabVIEW simulation design
Experiments (2)
Initialize, setup scenariosAnd control batch runs
Main loop – heavy computation
Result Outputs, statistical calculations
2-Step Alg.
DiffuseNumerical implementation
Fick’s law for diffusion implemented numerically using standard 2D centered difference scheme
Concentration of Agent assumed=0 at boundaries, agent “floats off screen”
Same code used for forward diffusion and backward belief state propagation
Experiments (3)
Large Batch Study #1: Wind Study Likelihood as a function of wind direction
standard deviation
As wind variability increases tracks become critical and perform dramatically better, operating in regions of high wind shift
A dataset containing 40,000 samples of real wind data are used to generate samples of length 200 spanning 5 degrees to 90 degrees
Experiments (4)
Wind Data Example, heavy processing needed
Experiments (5)
YYYY MM DD hh mm DIR SPD GDR GSP GTIME 2004 12 31 23 00 116 7.5 999 99.0 9999 2004 12 31 23 10 115 6.7 999 99.0 9999 2004 12 31 23 20 134 7.2 999 99.0 99992004 12 31 23 30 136 8.2 999 99.0 9999
Data Imported from webhttp://www.ndbc.noaa.gov/
Large Batch Study #2: Sensor Density Study
Increase number of sensors from N=50, 100, 150, 200, 250, 300 for a 250x250 grid. Random addition of new sensors to existing set.
Source fixed Same wind series for each trial Compared performance of belief maps
generated by sensor network using tracks Vs. No Tracks
Experiments (6)
Results and Conclusions
Maximum likelihood, ML(M), in each belief map compared to likelihood value at true source M(i,j)
Likelihood performance metrics
Source A(i,j) Belief M(i,j)
ML(M)
Performance Metric Definition, For a Single Source:
[M(i,j) / ML(M) ] = P(M), the performance of M
For P(M)=1, sensor occurs at the position (i,j) within M of maximum likelihood. 1 is considered a perfect score, while 0 is considered the lowest score
This is the metric used in wind study and sensor node density study
Results and Conclusions
Typical M for same data
ZT
Observation set
MMSE predictor
2-Step predictor
Results and Conclusions (2)
Wind Experimental Results Summary
Results and Conclusions – KEY RESULT
Sensor Node Density Results Summary
Results and Conclusions – KEY RESULT
Density Conclusion
Identical network with tracks can achieve sharper maps with lower densities of sensors
Major advantage of using tracks is the ability to establish number of unique sources
Theoretical information content of a sensor network grows as log(N), therefore diminishing returns as N gets large. Both estimators approach this limit but at different rates
Results and Conclusions
Summary of Wind performance zones
Results and Conclusions
Wind direction Std. deviation
Mean w
ind speed
1 2
16
4
5
3
…
…
Worst performanceZone: low windSpeed, with Frequent shifts
Best performancezone
low high
high Intermediate performance
ZONE 1 ZONE 2 ZONE 3
Mean wind Speed scaled into 4 groupsStandard deviation of direction divided into 4 groupsThis produced 16 total wind categories
The 2-Step tracking based algorithm allows provides enhanced performance compared to uniform estimator
Sensor density – on average the tracker based maps received a likelihood metric better by a factor of 2
High Wind variability – in conditions of high wind direction variability, the tracking based estimator performs much better than uniform estimator. Maintaining tracks and therefore estimates up to 30 degrees Std. deviation higher.
Results and Conclusions
Future Plans Application of sensor network physical process tracking to extreme
remote environments
The computationally intensive data association portion of the 2-Step algorithm method could be exported to existing MHT/PQS infrastructures and improved (pruning, track maintenance, hypothesis management).
Questions?
Sensor Density Study N=50 Sensors
P(M)=1 E-4
Results and Conclusions (3)
N=100P(M)=1 E-4
Results and Conclusions (4)
N=200
P(M)=1.3 E-4
Results and Conclusions (5)
N=300
P(M)=1E-4
Results and Conclusions (6)
N=400 Sensors
P(M)=9E-5
Results and Conclusions (7)
2
4
6
8
10
12
14
-50 0 50 100 150 200 250 3000
50
100
150
200
250
300
X
Y
Aggregated Belief Probability With N= 57, 15 hits.
Results - Belief Map From Uniform Predictor
Results - Belief Map, Track 1
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
-50 0 50 100 150 200 250 3000
50
100
150
200
250
300
X
Y
Aggregated Belief Probability With N= 57, 15 hits.
Results - Belief Map Track2
0
1
2
3
-50 0 50 100 150 200 250 3000
50
100
150
200
250
300
X
Y
Aggregated Belief Probability With N= 57, 15 hits.
Future Plans Application of sensor network physical process tracking to extreme
remote environments
The computationally intensive data association portion of the 2-Step algorithm method could be exported to existing MHT/PQS infrastructures and improved (pruning, track maintenance, hypothesis management).
Questions?
My papers
SPIE 2004 MILCOM 2005 SPIE 2006
Backup Slides
Source Separation Problem
To what extent canwe differentiate two sourcesas a function of sensordensity?
In this example, two sources in constant wind can superimpose to create a 3rd peak
The goal of this sensor network is to correctly identify exactly 2 sources, not 3
Belief Map Without Tracks
Inverse Belief Map of Sensor Network
Forward simulation Likelihood Map M
We want to construct a belief map after each trial, and look atthe value of the cell where the actual source was released.Once we introduce tracking, we get sharper regions with higherValues per cell. This allows us to compare the predicted mapwith ground truth on any selected trial.
Belief No Tracks
Belief No Tracks
Track Formation
3 sources M=N=250 300 sensors Constant Wind
Example Likelihood (Belief) Map
The inverse scale here is E-5, which is likelihood thatThe source was released from that particular cell.Typical values for a single cell are between 10E-3 and 10E-5
102030405060708090100
10
20
30
40
50
60
70
80
90
100
10 20 30 40 50 60 70 80 90 100
10
20
30
40
50
60
70
80
90
100
Forward Probability, P(B|A)
Inverse Probability, P(A|B)
Known release event : A
Known detection event : B
No Wind
Constant Wind
Variable WindConstant Wind
No Wind
Bayes Rule:
Variable Wind
)(
)()|()|(
BP
APABPBAP