Você está na página 1de 13

1

Fast and Accurate Cooperative Tracking in


Wireless Networks
T. Sathyan, Member, IEEE, and M. Hedley, Senior Member, IEEE
AbstractThe utility of wireless networks for many applications is increased if the locations of the nodes in the network can be tracked
based on the measurements between communicating nodes. Many applications, such as tracking re ghters in large buildings, require
the deployment of mobile ad hoc networks. Real-time tracking in such environments is a challenging task, particularly combined with
restrictions on computational and communication resources in mobile devices. In this paper we present a new algorithm using the
Bayesian framework for cooperative tracking of nodes, which allows accurate tracking over large areas using only a small number of
anchor nodes. The proposed algorithmrequires lower computational and communication resources than existing algorithms. Simulation
results show that the algorithm performs well with the tracking error being close to the posterior Cram er-Rao lower bound that we derive
for cooperative tracking. Experimental results for a network deployed in an indoor ofce environment with external GPS referenced
anchor nodes are presented. A computationally simple indoor range error model for measurements at the 5.8 GHz ISM band that
yields positioning accuracy close to that obtained when using the actual range error distribution is also presented.
Index TermsWireless indoor tracking, cooperative tracking, ltering algorithms, posterior Cram er Rao lower bound (PCRLB), time of
arrival (TOA) ranging, range error model.
!
1 INTRODUCTION
W
IRELESS networks are ubiquitous and utilized for a
wide range of applications, and for many applications
it is valuable to know the locations of nodes. In sensor network
deployments, for example, for environmental monitoring [7],
sensor data needs to be tagged with sensor location. Cost and
power restrictions, however, often prevent the use of satellite
based systems such as the global position system (GPS) to
locate the nodes. Mobile ad hoc networks (MANETS) can be
deployed for providing communication to re ghters in build-
ing or to miners in underground mines. In both applications
personnel safety is enhanced by tracking their locations. The
use of GPS, however, is not possible, since it is not available in
these environments. A natural solution for these examples is to
use the wireless network that is being used for communication,
for localization and tracking as well.
Accurate network localization is based on determining
the range between nodes, usually estimated based on the
measurement of the received signal strength (RSS), time of
arrival (TOA), or time difference of arrival (TDOA) [15]. In
conventional localization a network will contain nodes with
known locations, called anchor nodes, and the position of
a mobile node is determined if the range can be estimated
from it to at least three anchor nodes (for two dimensional (2-
D) positioning). In complex propagation environments, such
as within buildings, the propagation range of radio signals
is short relative to the area to be covered due to a high
T. Sathyan was with the ICT Center, Commonwealth Scientic and In-
dustrial Research Organization (CSIRO), Marseld, NSW, 2137, Australia.
He is now with the School of Computer Science, University of Adelaide,
Adelaide, SA, 5005, Australia. M. Hedley is with ICT Center, CSIRO,
Marseld, NSW, 2137, Australia.
E-mail: Thuraiappah.Sathyan@adelaide.edu.au, Mark.Hedley@csiro.au
path loss exponent and regulatory restrictions on transmit
power it is not possible to signicantly increase coverage,
unless a large number of anchor nodes can be deployed,
which is often impractical. For tracking re ghters it is
not possible to survey the location of interior anchor nodes
prior to re ghters entering the building. For environmental
sensor networks, requiring a large number of nodes with GPS
increases the deployment cost.
Cooperative localization [19] [29] is a relatively recent
concept that attempts to overcome the limitations of the
conventional setup, where measurements of range between
mobile nodes are considered in addition to the measurements
between mobile and anchor nodes. The challenge in cooper-
ative localization is that a mobile node can be multiple hops
away from most or all of the anchor nodes and hence, they
cannot be localized using single hop localization algorithms.
A number of publications [11], [13], [18], [22][24] have
considered cooperative localization, i.e., nding the positions
of the mobile nodes from a single set of mobile-to-anchor
and mobile-to-mobile range measurements. An experimental
methodology that allows quantication of the benets of co-
operation between mobile nodes for localization was recently
presented in [6]. Reference [30] generalized the graphical
modeling technique of [11] and incorporated temporal tracking
of the mobile nodes in wireless networks, which we call
cooperative tracking. To the best of our knowledge [30] is
the only publication that addresses the issue of cooperative
tracking in wireless networks. A network factor graph is
introduced in [30] and the sum-product algorithm is executed
on the graph to estimate the node locations. Although the
algorithm proposed in [30] can provide near optimal tracking
performance, since it propagates the probability distribution
of the node location temporally, the computational complexity
and communication requirements are high and greatly exceeds
Digital Object Indentifier 10.1109/TMC.2012.151 1536-1233/12/$31.00 2012 IEEE
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
2
the capability of the nodes.
In this paper a new cooperative tracking algorithm that
we call FACT (Fast and Accurate Cooperative Tracking) is
proposed. The FACT algorithm provides good tracking per-
formance with a much lower computational cost and commu-
nication overhead for a distributed implementation compared
to [30], while still operating within the Bayesian framework.
While each node maintains a representation of the probability
density of its location, the efciency gains derive in part
from only exchanging summary information between nodes
consisting of the state and uncertainty, and from how this infor-
mation is handled. Performance is enhanced through explicit
identication and rejection of outlier range measurements
and explicit track maintenance and handling of node entry
and exit. The posterior Cram er Rao lower bound (PCRLB),
which is often used to assess the performance of tracking
algorithms, is derived for cooperative tracking. Simulation
results are presented that verify that the performance of the
FACT algorithm is close to the performance predicted by
PCRLB.
Another contribution of this paper is the experimental
evaluation of cooperative tracking using a deployed wireless
network in an ofce building. The WASP (Wireless Ad hoc
System for Positioning) platform [21], which is a range-based
system capable of high accuracy ranging and high data rate
communications, is used in the experiments for data collection.
The deployed network used outdoor GPS referenced anchor
nodes to cooperatively track mobile nodes in-building. We
also propose a new range error model that is suitable for
ranging systems operating in the instrumentation, scientic,
and medical (ISM) band at 5.8 GHz. The proposed model is
simple, facilitating low computational cost, yet is shown to
result in localization performance that is almost as good as
when using the exact distribution. This model has been found
to work well in a wide range of indoor environments without
any tuning of parameters.
The remainder of this paper is organized as follows. Sec-
tion 2 describes the cooperative tracking problem and some
existing localization and tracking techniques. Section 3 de-
scribes the proposed FACT algorithm. The derivation of the
PCRLB for cooperative tracking is presented in Section 4. The
performance of the FACT algorithm is demonstrated through
simulation and experiment studies, results of which are pre-
sented in Section 5 and Section 6, respectively. Concluding
remarks are given in Section 7.
2 BACKGROUND
A scenario that motivates cooperative tracking is shown in
Fig. 1, which can represent tracking re ghters operating
within a building. Outdoor anchor nodes, equipped with GPS,
that may be attached to the re trucks, are denoted by ,
and mobile nodes that may be carried by the re ghters
are denoted by . Lines connecting the nodes denote the
communication links over which range measurements are
possible. It is clear that none of the mobile nodes are within
the radio range of all the three anchors and hence, cannot
be tracked using conventional tracking techniques. Unless the
Fig. 1. A motivating scenario for cooperative tracking.
transmit power of the nodes can be increased signicantly or
more anchors are deployed, the only option for tracking in this
case is through cooperation among mobile nodes.
We now provide a mathematical description of the cooper-
ative tracking problem and introduce the notations used in the
subsequent sections. Then we provide a brief description of
some existing techniques and their limitations.
2.1 Problem Description
A wireless network for cooperative tracking consists of N
nodes capable of communicating with and measuring the
range to each other. Of the N nodes, M are assumed to be
mobile nodes. Without loss of generality let i = 1, 2, . . . , M
denote the mobile nodes and i = M + 1, M + 2, . . . , N
denote the anchor nodes. In the following, the time index
k denotes consecutive time intervals over which a set of all
possible range measurements between all nodes are made.
The system that we used to evaluate the proposed algorithm
experimentally uses a time division multiple access (TDMA)
protocol for which k is a TDMA frame index, however, the
FACT algorithm does not rely on using a TDMA protocol.
Mobile nodes measure the range to all nodes within their
radio range irrespective of whether the neighboring node is an
anchor or a mobile. Let z
i
(k) R
N
denote the measurement
vector for node i consisting of all range measurements at time
k between node i and all neighboring nodes. The jth element
of z
i
(k) is given by
[z
i
(k)]
j
=

r
ij
(k) +v
ij
(k) if j is a neighbor of i

if j = i or j is not
a neighbor of i
(1)
where r
ij
(k) = p
i
(k) p
j
(k)
2
denotes the true distance
between nodes i and j at time k and .
2
denotes two-
norm. A range that is unavailable is denoted by . v
ij
(k) is
the range measurement noise that can be assumed as zero-
mean Gaussian distributed in outdoor environments. In indoor
environments, due to multipath and non line-of-sight (NLoS)
and propagation, v
ij
(k) is non-Gaussian and biased.
Note that for a mobile node i, [z
i
(k)]
j
represents the mobile
to mobile measurement if j M and the mobile to anchor
measurement if j > M. This distinction is important because
if [z
i
(k)]
j
is the distance between the mobile node and an
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
3
anchor, then p
j
(k) is assumed to be known exactly, otherwise
only an estimate of p
j
(k) is available.
Let Z(k) = [z
1
(k) z
2
(k) . . . z
M
(k)] denote the M N
matrix of all possible range measurements between the mobile
nodes and their neighbors at time k. The objective of coop-
erative localization is to estimate the locations of the mobiles
given the measurement matrix Z(k) and the locations of the
anchor nodes p
i
, i = M+1, M+2, . . . , N. When the mobile
nodes are attached to moving objects, in order to obtain the
most recent locations, their locations need to be estimated
continuously, i.e., tracked. In cooperative tracking the most
recent locations of the all the mobile nodes are estimated
given Z(k), which denotes all measurement matrices up to
and including that at time k, i.e., Z(k) = {Z(k

)}
k
k

=1
.
In this work, we consider the estimation of velocity of
the mobile nodes in addition to their locations. Temporal
estimates of the location and velocity of a mobile node form
a track of that mobile node. The parameters of interest,
namely the location and velocity, are represented by a state
vector, which for mobile node i at time k is denoted by
x
i
(k) = [p
i
(k)
T
, v
i
(k)
T
]
T
, where v
i
(k) is the node veloc-
ity. The motion dynamics of the mobile nodes are usually
unpredictable, for example, how a re ghter moves inside
a building depends upon the task and local conditions, and
hence, the state evolution is modeled as a non-deterministic
process. The motion dynamics of non-maneuvering nodes can
be modeled using a single model, for maneuvering nodes
multiple model estimation is preferred [2].
We model the state evolution of a non-maneuvering node
using a single nearly constant velocity (NCV) model and that
of a maneuvering node using two NCV models: one with a
low process noise variance and the other with a high process
noise variance. The NCV model is linear in the assumed state
vector x
i
(k) and is expressed as [2]
x
i
(k + 1) = F
i
(k)x
i
(k) +
i
(k) (2)
where F
i
(k) is the state transition matrix. The process noise

i
(k) is assumed to be a zero-mean Gaussian noise sequence
having a (model dependent) covariance matrix Q
m
i
(k), where
m is the model variable. For non-maneuvering nodes m can
be dropped from the expression, since a single model is used,
and for maneuvering targets m is either one or two. Matrices
F
i
(k) and Q
m
i
(k) are given by
F
i
(k) =

1 0 T 0
0 1 0 T
0 0 1 0
0 0 0 1

(3)
Q
m
i
(k) = q
m
i

T
3
/3 0 T
2
/2 0
0 T
3
/3 0 T
2
/2
T
2
/2 0 T 0
0 T
2
/2 0 T

(4)
where T is time elapsed between sampling times k and k +1,
and q
m
i
is the power spectral density of the process noise that
differentiates the models.
2.2 Related Work
A number of publications have addressed the problem of coop-
erative localization, i.e., determining the positions of the mo-
bile nodes at a particular time given the measurement matrix
Z(k). For example, [23] proposed an iterative multilateration
algorithm in which a node that is connected to at least three
anchor nodes computes its location, and serves as a pseudo-
anchor to any of its neighboring nodes. In the TERRAIN
algorithm [22] each anchor node propagates its own local
coordinate system (LCS) assuming it is located at the origin,
and a mobile node that can obtain its location in a particular
anchors LCS calculates its range to that anchor. When a
mobile node has calculated the range to three or more anchors,
it uses multilateration to calculate its location in the global
coordinate system. The Euclidean propagation algorithm [18]
uses geometric calculations to nd the actual distance of a
node from anchors and propagates it. Performance of these
algorithms is satisfactory only if the fraction of the anchors is
high.
The DV-distance [18] and N-hop bounding box [24] algo-
rithms use distance vector routing for propagating the anchor
locations and they do not require a high density of anchor
nodes. Whereas the DV-distance algorithm uses triangulation
to estimate the node locations, the N-hop algorithm uses a
bounding box based on the multihop distances. The approach
of [11] is to represent cooperative localization as a graphical
model and then use nonparametric belief propagation to infer
the node locations.
Following the graphical modeling approach of [11], in [30]
cooperative localization is modeled using a factor graph and
the node locations are obtained by executing the sum product
algorithm. The resulting algorithm is called SPAWN and it
can handle temporal tracking of the mobile nodes as well.
Whereas the SPAWN algorithm can provide near optimal
tracking performance, a direct implementation of the algorithm
is not practical in resource constrained wireless networks. This
is because the SPAWN algorithm propagates the probability
distribution of the locations of the mobile nodes through time
and assumes that samples of the distribution are exchanged
between nodes. Exchanging samples of the distribution would
require high data rate communication links between nodes.
Further, incorporating the sampled position distribution in
state estimation effectively requires convolution between the
location distribution and the range error distribution, which
is a computationally intensive task. Although it is possible
to transmit a summary of the node distribution between
neighbors, how the uncertainty in the summary information
can be handled by the neighboring nodes is not discussed in
[30].
An alternate approach for cooperative tracking is to estimate
the locations of the mobiles nodes at every time step using any
one of the multihop localization algorithms. The estimated
locations of the nodes can then be used as a composite
measurement within a Kalman lter to estimate the states. The
downside of such a simple algorithm is that multihop local-
ization algorithms are based on network-wide communication,
requiring signicant communication overhead. It is preferable
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
4
in wireless networks to restrict the communication to the local
neighborhood.
3 BAYESIAN COOPERATIVE TRACKING
The algorithm that we propose in this paper views cooper-
ative tracking from a conventional target tracking point of
view, where the state estimation is considered as a Bayesian
inference on the state-space model dened by state (2) and
measurement (1) equations.
The optimal Bayesian inference to the state estimation is
the following recursion [1]:
p(x
i
(k)|Z
i
(k)) =
p(z
i
(k)|x
i
(k))
p(x
i
(k)|Z
i
(k 1))

_
p(x
i
(k)|x
i
(k 1))p(x
i
(k 1)|Z
i
(k 1))dx
i
(k 1)
(5)
where Z
i
(k) denotes all the measurements of node i up to
and including that at time k, p(x
i
(k 1)|Z
i
(k 1)) is the
posterior density at time k 1, which is known from the
previous recursions, and prior density p(x
i
(k)|x
i
(k 1)) and
the likelihood p(z
i
(k)|x
i
(k)) are obtained from the state (2)
and measurement (1) models, respectively.
In conventional target tracking, for example, with radar
or sonar, an important and challenging issue is that the
association between the targets and measurements is unknown.
This is referred to as the data association problem and must
be handled within the tracking algorithm [4]. Even when the
association is known the recursion in (5) is only conceptual
and cannot be determined analytically, except in some special
cases [1]. Therefore, suboptimal lters are required for the
node state estimation depending on the characteristics of the
state-space model as discussed later.
Unlike conventional tracking system, in wireless networks,
the nodes have an identier associated with their transmission,
for example the MAC (medium access control) address, and
hence, the association between the nodes and measurements is
known. Further, in wireless networks, the range measurements
between the two mobile nodes depended on their locations
and this dependency will introduce dependency between the
posterior distribution of the states of two mobile nodes. As a
result the Bayesian recursion in (5) an approximation.
3.1 An Overview of the FACT Algorithm
The rst step of the FACT algorithm is to initialize the states
of the mobile nodes from the rst set of measurements Z(1).
As mentioned previously, it is possible that most or all of
the mobile nodes are unable to measure the range to three
or more anchors, requiring a multihop localization algorithm
to obtain their positions. We have found that the DV-distance
algorithm with a subsequent renement step is computation-
ally efcient, easily distributable, and provides good initial
position estimates. This is used for initial positioning in our
algorithm, but not for subsequent tracking as it has a much
higher communication overhead. A node that is not within the
radio range of at least three other nodes will not receive a
position estimate from the DV-distance algorithm. Any such
node is not initialized at k = 1.
In the subsequent time steps each node broadcasts its
predicted position and covariance, which are received by all
nodes that are within the nodes radio range. This is in contrast
to the SPAWN algorithm [30] where samples of the node
position distribution are passed to the neighbors, which would
require a high data rate link between nodes. For example, for
2-D tracking, if 500 samples are passed to neighbors, then
1000 values need to be exchanged between the mobile nodes.
For the FACT algorithm, however, only six values are required
to be exchanged between nodes (two for position and four for
covariance).
Note that the position exchange between the nodes is in
addition to the communication required for the TOA rang-
ing. Given only a few values are transmitted by the FACT
algorithm, these values may be piggy-backed in the TOA
measurement packets, which may not be possible for the
SPAWN algorithm. In any case the packet size of the FACT
algorithm is signicantly smaller.
Mobile nodes use the range measurements to their neighbors
to update their state using a nonlinear ltering algorithm. This
update is performed at the end of a TDMA frame, when all
possible measurements between this nodes and its neighbors
are available.
1
If a neighbor is an anchor, then its location is
known accurately, however, if a neighbor is a mobile node
only an estimate of its location is available. We propose a
simple linearization approach to account for the uncertainty
in the estimated location.
In practical systems range measurements will contain out-
liers, which can severely degrade the system performance. For
example, indoor ranging systems often exhibit outliers due to
multipath and NLoS, and signal processing artifacts. Outlier
range measurements are detected using validation gating in the
FACT algorithm.
Nodes may enter or leave the area of operation through
physical movement or signal loss. A track maintenance stage
detects new tracks and deletes the tracks that are lost. It also
attempts to restart the tracks that are lost. Intermittent loss
of range measurements for a short period of time is handled
using prediction without restarting a track.
In the following subsections details of various stages of the
FACT algorithm are provided.
3.2 Initialization using DV-distance Algorithm
The DV-distance algorithm [18] was one of the rst techniques
presented for cooperative localization. In this algorithm the
anchor nodes propagate their positions throughout the network
using ooding, which also allows the nodes to nd the
multihop distances to the anchors. Each anchor can calculate
the distances to other anchors using their actual locations
and also have estimates for these distances in the form of
multihop distances. Since the multihop distance is greater than
1. Since the nodes transmit in different time slots, it is possible that during
this time the relative geometry (and hence, the range) between a pair of nodes
can change. An algorithm that corrects for such node motion when calculating
the location is described in [20].
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
5
the true distance, each anchor calculates a correction factor,
which when multiplied by the multihop distance will better
approximate the true distance. Anchor nodes propagate the
correction factor they calculated throughout the network using
a second network ooding. Mobile nodes will retain one of the
correction factors and use this and the multihop distance to the
anchors to estimate the range to the anchors. A node that has
range estimates to three or more anchors obtains its position
using multilateration, which is solved using the iterative least
squares (ILS) algorithm [2].
The position estimates obtained using the DV-distance al-
gorithm are often coarse and they can be improved using a
renement step [22]. In this step mobile nodes use only the
directly measured ranges to their neighbors. Assuming that
the DV-distance algorithm estimated positions of its neighbors
as their exact positions, a mobile node updates its position
using the LS formulation. Then nodes exchange their updated
positions with the neighbors and all the nodes update their
position assuming the current positions of its neighbors as their
exact positions. This process is repeated until the improvement
in the updated node position is less than a predened threshold
or when the number of iterations exceeds a predened value.
The initial state of mobile node i is set to x
i
(1) =
[ x
i
, y
i
, 0, 0]
T
, where ( x
i
, y
i
) is the position estimate of node
i returned by the DV-distance algorithm. The covariance
matrix corresponding to the initial state is given by P
i
(1) =
diag(P
p
i
(1), V
2
max
I
2
/3), where P
p
i
(1) is the (linearized) co-
variance obtained from the ILS algorithm, I
2
is a two dimen-
sional identity matrix, and V
max
is the maximum speed of the
node.
3.3 Node State Estimation
The NCV model assumed for state evolution (2) is linear in
the state of the mobile node, however, the range measurement
equation (1) is nonlinear. Therefore a nonlinear lter must be
used for state estimation for which extensions of the well-
known Kalman lter (KF) such as the extended Kalman lter
(EKF) or the unscented Kalman lter (UKF) can be used, if
Gaussian noise statistics can be assumed. Despite its heavy
computational requirement, the particle lter is the preferred
choice for nonlinear and non-Gaussian state-space models.
3.3.1 Unscented Kalman Filter
In outdoor environments the range error distribution can be
approximated by a Gaussian distribution. It must be noted
that in practice, due to outliers, the tail of this distribution
will be longer than that of the theoretical Gaussian model.
The outlier range measurements, however, can be removed
from ltering through the outlier rejection technique presented
in Section 3.4. Hence for outdoor cooperative tracking we
propose the use of UKF for state estimation in the FACT
algorithm, since it has been shown to provide more accurate
estimation performance compared to the EKF [28] and allows
ease of implementation as it does not require the calculation
of Jacobians (or Hessians) of the nonlinear state-space model
functions.
In the case of outdoor tracking of maneuvering mobiles, the
interacting multiple model (IMM) estimator that uses the UKF
as the constituent lter is proposed. Details of the UKF and
the IMM estimator can be found in several publications in the
literature, including, [2], [12], [28].
3.3.2 Particle Filter
Indoor range measurement noise is generally non-Gaussian
due to multipath and NLoS propagation and we have found
that the estimates of the UKF are generally biased. Hence
for indoor cooperative tracking the particle lter is chosen for
state estimation within the FACT algorithm.
A particle lter approximates the optimal Bayesian recur-
sion (5) using a point mass representation of the posterior
densities [1]. The point mass representation consists of a set of
random samples of the state and associated weights, which are
propagated through the state-space model using sampling and
resampling stages. Maneuvering mobile nodes can be tracked
using the MMPF, which denes an augmented state [17].
The augmented state of mobile node i at time k is dened
by y
i
(k) = [x
i
(k)
T
, m
i
(k)]
T
, where m
i
(k) is the discrete
random variable denoting the motion model. Given a random
set of sample-weight pairs representing the posterior density at
time k
_
{y
l
i
(k),
l
i
(k)}
L
l=1
, where L is the number of particles
_
and the measurements z
i
(k +1), the MMPF approximates the
posterior density at time k + 1 using a new set of sample-
weight pairs.
Samples at time k+1 are drawn from an importance density,
for which the most common choice is the transition prior
p(y
i
(k)|y
i
(k1)). This is because it is easy to implement and
intuitive [1]. In the case of the MMPF, since the kinematic state
and the motion model evolve independently, one can write
p(y
i
(k + 1)|y
i
(k)) =
p(x
i
(k + 1)|x
i
(k), m
i
(k + 1))P(m
i
(k + 1)|m
i
(k)) (6)
Therefore, when sampling the augmented state from the
prior, rst the model variable is drawn according to the
Markov chain transition probability matrix characterizing
model switching. Then based on the value of the model, the
kinematic state is drawn. The only difference between the
MMPF and a single model particle lter is that the latter does
not require the sampling of the motion model.
The weight update is dependent only on the likelihood when
transition prior is used for sampling and the updated weight
of the lth particle is given by [1]

l
i
(k + 1)
l
i
(k)p(z
i
(k + 1)|y
l
i
(k + 1)) (7)
The sampling and weight update are repeated every time a
new measurement becomes available. After a few iterations the
variance of the particles will increase such that there are only
a few particles with signicant weights. This phenomenon is
referred to as sample degeneracy and can lead to divergence
of the particle lter [1].
The objective of the resampling step is to remove the
particles with insignicant weights and to generate a new
particle set by concentrating on the ones with signicant
weights [9]. At time k + 1 new samples are drawn from
the newly proposed particles using the updated weights as
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
6
probabilities. Since the newly generated particles are inde-
pendent and identically distributed samples, they are assigned
equal weights. A number of resamping techniques such as
deterministic, stratied, systematic, and residual resampling
[9] have been proposed in the literature. In this paper we use
systematic sampling.
Even when the FACT algorithm uses particle lter for state
estimation only the sampled mean and the (sample) covari-
ance are exchanged between the nodes. Although the range
measurement error may be non-Gaussian, we have observed
experimentally that across a wide range of environments that
the position error distribution can still be approximated by
Gaussian distribution with a heavy tail. This is achieved when
an adequate number of range measurements are available and
by appropriately modeling the range error distribution.
3.3.3 Accounting for Node Location Uncertainty
In the measurement equation (1), the location p
j
(k) of node
j, a neighbor of node i, is known accurately if j is an anchor
node. Otherwise, only an estimate of the position of node j
its predicted position p
j
(k|k 1), along with its covariance
P
p
j
(k|k1) is known. Although p
j
(k|k1) may be directly
used in the measurement equation, the estimation error may
affect the updated position of node i and may propagate to
other nodes in the network in the subsequent time steps.
The covariance matrix, which characterizes the estimation
error, is used to account for the estimation error, at least to
a rst-order approximation. The measurement equation (1) is
expanded around the predicted location p
j
(k|k 1) of node
j using a rst-order Taylor series expansion to obtain
[z
i
(k)]
j
= r
ij
(k) +h
ij
(k)
T
(p
j
(k) p
j
(k|k 1)) +v
ij
(8)
where r
ij
(k) = p
i
(k) p
j
(k|k 1)
2
and h
ij
(k) =

pj(k)
r
ij
(k) is the rst-order partial derivative of r
ij
(k)
evaluated at p
j
(k). This linearized measurement equation is
used in the lter for updating the node state. If we assume that
v
ij
(k) has zero mean and variance
2
ij
(k), then the conditional
mean and variance of [z
i
(k)]
j
can be readily calculated. They
are given by
Mean([z
i
(k)]
j
) = r
ij
(k) (9)
Cov([z
i
(k)]
j
) = h
ij
(k)
T
P
p
j
(k)h
ij
(k) +
2
ij
(k) (10)
Therefore using the rst-order approximation (8) as the
measurement equation, either in the UKF or the particle lter,
in effect increases the measurement noise covariance, which
accounts for the uncertainty in the location of mobile node
j. If the location of a mobile node j has a higher estimation
error, then, typically its estimation covariance will be higher,
resulting in increased variance for the corresponding range
measurement. The lter being used to estimate the state of
mobile node i will give any such measurement less weight
compared to that from a node having smaller estimation error
covariance, thus, limiting the error growth.
3.4 Validation Gating for Outlier Rejection
Validation gates are used in target tracking systems to elim-
inate unlikely observation-to-track pairings [4], which signif-
icantly reduces the ensuing data association problem. Since
wireless networks generally have unique identiers associated
with each node, the data association problem is not encoun-
tered. We still use validation gates, however, to detect and
remove outlier range measurements, which occur, for example,
as a result of identifying the incorrect direct path. If not
detected, these errors in turn will affect the tracking accuracy,
and may lead to loss of the track.
A validation gate is setup for each mobile node and any
measurement that falls outside of the gate is assumed to be an
outlier and not considered in the lter update. The validation
gate can be a coarse gate such as a maximum range gate or a
ne gate such as the ellipsoidal gate [4]. In our implementation
we only used a coarse maximum range gate. If z
i
(k|k 1) is
the lter predicted range to the neighbors of mobile node i,
then any range measurement that exceeds the predicted range
by a predened threshold r
emax
is considered an outlier. That
is
|z
i
(k|k 1) z
i
(k)| > r
emax
e (11)
where e R
N
is a vector of all ones. The inequality in
(11) is an element-wise inequality and any component of the
measurement vector that satises the inequality is assumed
an outlier, and not considered for updating the track. The
threshold r
emax
is a function of the maximum speed v
max
of the node and the standard deivation of the measurement
noise . A conservative estimate of the threshold is given by
r
emax
= v
max
T +4.3, where T is the sampling interval. See
[3, Chapter 2, pp. 109-110] for details.
3.5 Track Maintenance
Once the tracks are initialized at k = 1 using the DV-distance
algorithm, in the subsequent time steps it is updated only
with measurements to the nodes that are within its radio
range (i.e., only the single hop neighbors are used). As long
as there is at least one validated measurement the ltering
algorithm is used to update the track. In the absence of any
validated measurements, the predicted track is carried forward
and a prediction counter within the node is incremented. If
the value of the prediction counter exceeds a certain threshold
the track is deleted and an attempt is made to re-initialize the
track for the node, when there are adequate number of range
measurements.
Note that for re-initializing a track, only the measurements
to the single hop neighbors are used, since using a multihop lo-
calization algorithm such as the DV-distance algorithm would
consume valuable bandwidth. In particular to re-initialize the
track of a node, if it has range measurements to three or
more of its neighbors, assuming the predicted positions of
the neighbors as their actual positions, the LS estimate of the
mobile node is found. The estimated position is used to restart
the track. Nodes that have not been initialized in the rst time
step (i.e., at k = 1 through the DV-distance algorithm) are also
initialized in the subsequent time steps in a similar manner
when sufcient measurements become available.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
7
4 POSTERIOR CRAM ER RAO LOWER BOUND
FOR COOPERATIVE TRACKING
The CRLB for cooperative localization has been derived in
[14] [25]. The main difference between these two derivations
is that [14] obtained the bound assuming noisy range mea-
surements, while [25] obtained the bound by modeling the
received signal. Although the approach of [25] can provide the
lowest possible bound, any modeling error in the signal space
may affect the resulting position bound. We assume a noisy
range measurement model as in the development of the FACT
algorithm and derive the PCRLB for cooperative tracking.
Let x(k) be an unknown state vector and x(k) be an
unbiased estimate of x(k) based on the measurements z(k).
The PCRLB, dened as the inverse of the Fisher information
matrix (FIM) J(k), provides a lower bound on the estimation
error covariance matrix C(k), i.e.,
C(k) E
_
[ x(k) x(k)][ x(k) x(k)]
T
_
J(k)
1
(12)
where E denotes the expectation operator, and the above
matrix inequality means that the matrix C(k) J(k)
1
is
positive semi-denite.
The FIM can be evaluated recursively using the following
expression [27]
J(k) = D
22
k1
D
21
k1
(J(k1)+D
11
k1
)
1
D
12
k1
+J
z
(k) (13)
The D matrices and J
z
(k) in the right-hand side of the
expression are dened as
D
11
k1
= E
_

x(k1)
x(k1)
ln p(x(k)|x(k 1))
_
(14)
D
12
k1
= E
_

x(k)
x(k1)
ln p(x(k)|x(k 1))
_
(15)
D
21
k1
= (D
12
k1
)
T
(16)
D
22
k1
= E
_

x(k)
x(k)
ln p(x(k)|x(k 1))
_
(17)
J
z
(k) = E
_

x(k)
x(k)
ln p(z(k)|x(k))
_
(18)
where
b
a
denotes the second-order partial derivative with
respect to vectors a and b.
To derive the PCRLB for cooperative tracking, assume that
x(k) denotes the augmented state vector that is obtained by
stacking the state vectors of all the mobile nodes, i.e., x(k) =
[x
T
1
(k), x
T
2
(k), . . . , x
T
M
(k)]
T
. Assuming that the mobile nodes
obey a linear motion model and their motions are independent,
we can obtain the following state evolution model for the
augmented state
x(k) = F(k 1)x(k 1) +(k 1) (19)
where F(k) = diag(F
1
(k), F
2
(k), . . . , F
M
(k)) is a block di-
agonal state transition matrix, and = [
T
1
,
T
2
, . . . ,
T
M
]
T
is
a vector of augmented process noise vectors, whose covariance
matrix is given by Q(k) = diag(Q
1
(k), Q
2
(k), . . . , Q
M
(k)),
assuming that the nodes move independently.
For linear state models having Gaussian noise perturbations,
it can be shown that the FIM recursion in (13) simplies to
[27]
J(k) = [Q(k1)+F(k1)J(k1)
1
F(k1)
T
]
1
+J
z
(k)
(20)
The measurement contribution J
z
(k) to the PCRLB in
the case of cooperative tracking with the range measurement
matrix Z(k) dened previously becomes
J
z
(k) = E
_

x(k)
x(k)
ln p(Z(k)|x(k))
_
(21)
We can write J
z
(k) as shown in (22). Since the range
measurements made by the mobile nodes can be assumed to
be independent we can obtain the following expressions for
the elements of J
z
(k) under the assumption that the range
measurement noise is Gaussian distributed.

xi
xi
=
N

j=1
1

2
ij
(x
i
x
j
)
2
r
2
ij

ij
(23)

yi
yi
=
N

j=1
1

2
ij
(y
i
y
j
)
2
r
2
ij

ij
(24)

yi
xi
=
N

j=1
1

2
ij
(x
i
y
i
)(y
i
y
j
)
r
2
ij

ij
(25)
=
xi
yi
(26)

xj
xi
=
1

2
ij
(x
i
x
j
)
2
r
2
ij

ij
(27)

yi
yi
=
1

2
ij
(y
i
y
j
)
2
r
2
ij

ij
(28)

yi
xi
=
1

2
ij
(x
i
y
i
)(y
i
y
j
)
r
2
ij

ij
(29)
=
xi
yi
(30)
where r
ij
=
_
(x
i
x
j
)
2
+ (y
i
y
j
)
2
and the dependence
of position of the nodes on time is not shown for notational
simplicity.
ij
is an indicator function dened as

ij
=
_
0 j = i, j is not a neighbor of i
1 otherwise
(31)
A generalized version of the PCRLB derived in this section
can be found in [26]. Further we note that in the case of
maneuvering nodes, Q(k) will depend on the active model at
the time, which is not known to the lter (only an estimate
is available). Hence calculating the PCRLB assuming the
correct model sequence is known will result in an overly
optimistic bound. Tighter alternatives for maneuvering targets
have been explored in other publications [10], which can be
used to quantify the performance of cooperative tracking of
maneuvering nodes.
5 SIMULATIONS
In order to calculate the absolute tracking accuracy of the
dynamic mobile nodes
2
the true temporal state information
(i.e., position and velocity) must be available at all time
steps. In simulations, since all parameters are controlled, the
true temporal state information is readily available, however,
2. In the following we refer to mobile nodes that are at xed, but unknown,
locations as static mobile nodes, and those whose locations changes temporally
as dynamic mobile nodes.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
8
0 20 40 60 80 100
0
10
20
30
40
50
60
70
80
90
100
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
x (m)
y

(
m
)
Fig. 2. Simulation scenario showing 5 anchors (black
triangles), 20 static mobiles (blue stars), and 5 dynamic
mobiles (solid lines).
in deployed wireless networks such information requires an
independent measurement system of high accuracy, such as
a tactical grade inertial system. We had no access to such
a system, and hence, the absolute error performance of the
proposed algorithm for dynamic mobile nodes is evaluated
only using simulations.
The simulated data was processed using two algorithms
and the performance of both was computed and compared
to the bound derived in the previous section. In addition to
the FACT algorithm, a conventional cooperative localization
algorithm, namely the DV-distance with renement step, was
implemented and the estimated node location was used as
input to a Kalman lter for tracking. A comparison with the
SPAWN algorithm was not performed as its computational
requirement was found to be too high, as explained later in this
section. A NCV model was used as the state evolution model
for all mobile nodes in both algorithms. The measurement
noise was assumed to be Gaussian, and hence, for the FACT
algorithm an UKF was used for tracking.
The scenario used for the simulation study, which consisted
of ve anchors and 25 mobile nodes, is shown in Fig. 2. Of
the 25 mobile nodes 20 are at xed locations throughout the
simulation, i.e., static mobiles, while the other ve follow a
NCV trajectory. The true locations of the mobile nodes were
generated randomly. The power spectral density of process
noise of the ve dynamic mobiles was 0.01 m
2
/s
3
. Range
measurements were generated with a sampling period of 0.2 s
and assuming a radio range of 50 m for each node. The range
measurement noise was assumed to be Gaussian distributed
with zero mean and 0.5 m standard deviation for all links.
The simulated scenario had a duration of 40 s.
Fig. 3 shows the root mean squared error (RMSE) of the
location of the dynamic mobile nodes calculated in 200 Monte
Carlo runs for both the algorithms along with the PCRLB.
Although only summary information of the state of the mobile
nodes is exchanged, the RMSE of the location computed using
the FACT algorithm is close to the theoretical lower bound
predicted by the PCRLB, a difference that is almost always
less than 0.2 m. This demonstrates the effectiveness of the
FACT algorithm. The RMSE of the position calculated using
the extension of the DV-distance algorithm is always greater
than that of the FACT algorithm.
The number of iterations in the renement step of the DV-
distance algorithm in our implementation was set to ve. It
must be noted that by increasing the number of iterations the
location estimation accuracy of this algorithm can be further
improved. Increasing the number of iterations, however, in-
creases the computational complexity and the communication
load, which are already substantially higher (see Table 1) than
that for the FACT algorithm.
Table 1 shows, at a single time step, the average Matlab
execution time per node and the average number of packets
transmitted by all nodes assuming a broadcast communication
scheme. Although the number of packets transmitted by each
node in the DV-distance algorithm is signicantly higher com-
pared to the FACT algorithm, the packet sizes are smaller (two
values per packet compared to six for the FACT algorithm),
since it transmits only the positions.
The average number of packets transmitted for the SPAWN
algorithm [30] will be the same as that of the FACT algorithm,
however, consisting of larger packets. Further, the transmitted
beliefs of the neighbors must be converted to probability
J
z
(k) =

x1
x1

y1
x1
0 0
x2
x1

y2
x1
0 0 . . .
xM
x1

yM
x1
0 0

x1
y1

y1
y1
0 0
x2
y1

x2
y1
0 0 . . .
x2
y1

y2
y1
0 0
0 0 0 0 0 0 0 0 . . . 0 0 0 0
0 0 0 0 0 0 0 0 . . . 0 0 0 0

x1
x2

y1
x2
0 0
x2
x2

y2
x2
0 0 . . .
xM
x2

yM
x2
0 0

x1
y2

y1
y2
0 0
x2
y2

y2
y2
0 0 . . .
xM
y2

yM
y2
0 0
0 0 0 0 0 0 0 0 . . . 0 0 0 0
0 0 0 0 0 0 0 0 . . . 0 0 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

x1
xM

y1
xM
0 0
x2
xM

y2
xM
0 0 . . .
xM
xM

yM
xM
0 0

x1
yM

x1
yM
0 0
x2
yM

y2
yM
0 0 . . .
xM
yM

yM
yM
0 0
0 0 0 0 0 0 0 0 . . . 0 0 0 0
0 0 0 0 0 0 0 0 . . . 0 0 0 0

(22)
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
9
TABLE 1
Communication and Computation Comparison
Algorithm Run time No. of Packets
DV distance 13.9 ms 433.2
FACT algorithm 1.7 ms 27.1
SPAWN 7.88 s 27.1
distributions using range measurements, before a mobile node
can update its belief. When a 0.5 m probability grid covering
the 100 m100 m area was used to represent the converted
belief, the average computational time per node was found to
be 7.88 s, which is more than three orders of magnitude higher
than that of the FACT algorithm. This time is impractically
long and hence, the tracking performance of this algorithm
was not evaluated either in simulations for this section or the
experimental evaluation presented in the following section.
It is possible to use variable grid sizes for the converted
beliefs of different neighbors, however, at the expense of
additional processing. Further, while a particle-based [30] or
a parametric [5] implementation of the SPAWN algorithm
is feasible, as noted in [5] the computationally demanding
message multiplication step will still remain. Besides the
computational effort of a particle-based implementation will
depend on the number of particles used and if an insufcient
number is used the performance of the approximation will be
severely degraded. This trade-off between performance and
computation effort has not been studied in these publications.
If we let A denote the number of neighbors and B the
number of anchors in the network, the complexity of the
tracking algorithm that uses DV-distance scales as O(B) +
O(IA), where I is the number of iterations performed in the
renement step. When using the UKF for state estimation the
complexity of the FACT algorithm scales as O(A), while the
complexity is O(LA) when using the particle lter, where
L is the number of particles. On the other hand, a direct
implementation of the SPAWN algorithm has a complexity of
O(AF log F), where F is the number of pixels representing
the 2D distribution, which can be large signicantly compared
to the number of particles L used by the FACT algorithm. The
approximate parametric implementation of SPAWN presented
in [5] (called H-SPAWN) has a complexity of O(LAI) +
O(A), which is much smaller compared to a direct SPAWN
implementation. The FACT algorithm uses the UKF for out-
door tracking, and as a result its computational complexity is
signicantly lower than the H-SPAWN algorithm. For indoor
tracking, the FACT algorithm still has a slight computational
advantage over H-SPAWN algorithm even though it uses a
particle lter.
Fig. 4 shows the cumulative probability distribution of the
absolute position error of the mobile nodes averaged over all
time steps and Monte Carlo runs. It can be observed that
for both algorithms the error performance for dynamic and
static mobile nodes are almost identical. Thus while we cannot
measure the error performance in our experimental network
for dynamic mobile nodes, we expect it to be similar to the
error performance for static mobile nodes which we have
0 5 10 15 20 25 30 35 40
0
0.5
1
1.5
Time (s)
P
o
s
i
t
i
o
n

R
M
S
E

(
m
)


DV-distance
FACT
PCRLB
Fig. 3. Comparison of position RMSE with PCRLB for the
dynamic mobile nodes.
0 0.2 0.4 0.6 0.8 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Position error (m)
P
r
o
b
a
b
i
l
i
t
y


DV-distance - Static nodes
DV-distance - Dynamic nodes
BCT - Static nodes
BCT - Dynamic nodes
Fig. 4. Cumulative position error distribution of the static
nodes.
measured. The absolute location error calculated by the DV-
distance algorithm is clearly considerably worse compared
to the FACT algorithm. While the 90th percentile error for
the FACT algorithm is 0.25 m, the same metric for the DV-
distance algorithm is 0.83 m.
6 EXPERIMENTAL RESULTS
We used the WASP platform to experimentally evaluate the
performance of the proposed FACT algorithm when tracking
people in an indoor ofce environment. WASP measures the
range between pairs of nodes, and these measurements were
used directly in the FACT algorithm to track the mobile nodes.
The WASP platform was designed using low-cost, commod-
ity hardware, and overcomes many of the challenges due to
the use of such hardware using sophisticated signal process-
ing techniques. WASP nodes form a wireless network with
ranging based on super-resolution TOA measurement. The
system operates in the instrumentation, scientic, and medical
(ISM) band at 5.8 GHz and utilizes the entire 125 MHz
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
10
x (m)
y

(
m
)
20 40 60
40
30
20
10
0
-10
-20
-30
-40
Fig. 5. True positions of the 33 static WASP nodes used
in the experimental data collection. denotes the 5 GPS
equipped nodes used as anchors.
bandwidth. The system uses a custom communication stack
specically designed to support tracking. The physical layer
uses orthogonal frequency division multiple access (OFDM)
and the MAC layer uses a TDMA protocol that supports
periodic and contention free ranging. The WASP platform has
been eld tested in single hop network setup in sports, mining,
and public safety applications, and has been shown to provide
positioning accuracy of the order of 0.21.5 m, depending on
the operating environment. Technical details of WASP and trial
results can be found in [21] and references cited therein.
Fig. 5 shows the network layout used in one of the exper-
iments conducted to evaluate the performance of the FACT
algorithm. There were 33 static WASP nodes of which ve
were GPS equipped anchor nodes located outside the building.
There were seven dynamic nodes, which were carried by six
people. Positions of the 35 nodes (static and dynamic) were
estimated using the FACT algorithm with respect to the ve
GPS referenced WASP nodes. The update rate of WASP during
the experiment was 5 Hz per node and the experiment lasted
nearly 200 s.
To calculate the absolute positioning error of the static mo-
bile nodes, locations of all the static WASP nodes (including
the anchors) were obtained through a conventional survey,
conducted using the GPS coordinate system dened by the
anchors.
A simple indoor range error model
Fig. 6 shows the actual range error histogram obtained by
considering all the static mobile and anchor node pairs. Given
the true locations of the static nodes, the distance between a
pair of nodes is readily found, and by comparing it to the
measured range, the range error was obtained. To present the
shape of the high probability region clearly, the tail of the
distribution (probability mass of 2%) has not been shown
-1 0 1 2 3 4
0
0.005
0.01
0.015
0.02
0.025
0.03
Range error (m)
F
r
e
q
u
e
n
c
y

(
%
)


Actual
Gaussian
Simplified
Fig. 6. Range error distribution: actual along with a best
tting Gaussian and a simplied triangular approxima-
tions.
in the gure.
3
It is clear that the range error distribution is
non-Gaussian and has a positive bias. The gure also shows
a manually tted Gaussian distribution, which has a standard
deviation of 0.6 m.
A mixture Gaussian model for indoor range error was
proposed in [30]. This model, however, was based on an ultra
wideband (UWB) measurement campaign using a bandwidth
of 3.2 GHz at a center frequency of 4.7 GHz.
4
WASP operates
in the 5.8 GHz frequency band
5
and only uses 125 MHz
bandwidth. As seen in Fig. 6 the central part of the range error
distribution is not symmetric and not well-tted by a Gaussian
model, as proposed in [30]. We propose a simple model that
uses fewer parameters and models the asymmetry in the error
distribution and as shown in the next section performs well
for tracking.
The proposed simplied range error model is also shown
in Fig. 6, which has a triangular shape with the base of the
triangle extending from -0.5 m to 3 m. Not visible in the
gure is that this function has a minimum value of 1% of
the peak in valid regions to handle any outliers that were not
removed by the validation gate. We have found in various trials
conducted with the WASP platform that this approximate error
model is applicable without any tuning in a wide variety of
indoor environments including a velodrome, an underground
train station, and a re ghter training facility. We believe
that for other TOA ranging systems operating at 5.8 GHz
ISM band and utilizing the whole 125 MHz bandwidth this
computationally simple model is applicable.
3. In any case, they do not affect tracking since such large errors are often
eliminated through the validation gating procedure.
4. There are numerous other techniques for tracking in indoor environments
that do not require specic range error models including [16], which uses
classication and regression. If required any of these techniques can be
incorporated in the FACT algorithm, often in a straightforward manner.
5. Although UWB ranging can lead to highly accurate range measurements
even under multipath conditions [8], one advantage of operating at the 5.8 GHz
band compared to the UWB is that the legal transmit power is three orders
of magnitude higher permitting longer range operation.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
11
0 5 10 15 20 25 30 35
0
5
10
15
20
25
30
Node ID
A
v
e
.

c
o
n
n
e
c
t
i
v
i
t
y


Total
To anchors
Fig. 7. Average connectivity for the mobile nodes.
0 1 2 3 4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Position error (m)
C
D
F


Gaussian
Simplified
Actual
Fig. 8. Cumulative positioning error distribution of the
static nodes.
Tracking performance
The connectivity for each mobile node averaged over all time
steps is shown in Fig. 7. The grey bar graph shows the
average connectivity of each node, which includes anchors
and other mobiles, averaged over the whole duration of the
experiment. Generally the connectivity is high, with the lowest
and highest connectivity being 7.5 and 26, respectively, and the
average being 17.35. The black bar graph shows the average
connectivity of each mobile node to the anchor nodes. It can be
seen that none of the mobile nodes have average connectivity
of at least three (shown as a horizontal line), the minimum
required for 2-D localization, with the highest being 2.9. As a
result none of the nodes can be tracked using the conventional
approach, and cooperative localization must be used.
The FACT algorithm was implemented with the MMPF with
1000 particles as the state estimator, since the range measure-
ment noise is non-Gaussian. As mentioned before the absolute
positioning error can only be calculated for the static nodes,
since there was no reference system to obtain the actual paths
of the dynamic nodes with high accuracy. Fig. 8 shows the
x (m)
y

(
m
)
20 40 60
40
30
20
10
0
-10
-20
-30
-40
Fig. 9. Estimated paths of the mobile nodes.
cumulative probability density of the position error of all the
28 static mobile nodes, when the true, simplied, and Gaussian
range error likelihood functions were used in the particle lter.
The Gaussian distribution, which is often assumed in many
existing publications on cooperative localization, results in
the largest error with the median error of 1.06 m. It clearly
shows that the Gaussian assumption is not good in indoor
scenarios. The actual measured range error distribution, as one
would expect, gives the best positioning accuracy. For many
practical systems that require rapid deployment, the actual
range error distribution, however, cannot be measured prior
to the commencement of tracking. The gure also shows that
the simplied triangular likelihood function that we propose
in this paper gives position errors that very closely follow
those obtained when the actual distribution is used. We have
observed similar comparative performance in trials in a range
of indoor environments.
Fig. 9 shows the estimated paths of the seven mobile nodes
from which the quality of the tracking solution can be seen.
The path is usually seen to be restricted to the corridor in
which the person walked, however, occasionally the path goes
through the walls at certain segments of the walk. There are
two reasons for these errors. The building materials, which
included concrete and steel in some locations, had a signicant
affect on the radio propagation causing poor range estimates.
In addition, poor geometry of available neighbors can result in
large errors. This effect can be quantied using the geometric
dilution of precision (GDOP) [31].
The path in the courtyard shows that all except one person
has taken the concrete walkway. Given the width of the
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
12
TABLE 2
Performance with Reduced Connectivity
Full
25% links 50% links
removed removed
Ave. connectivity 17.35 13.00 8.60
Anc. conn. 2 (%) 94.50 98.20 99.40
90th perc. (m) 1.37 1.44 1.78
corridor is 1.2 m in most of the building segments, we estimate
that the tracking error is typically less than 1 m, and almost
always less than 3 m, which is adequate for most indoor
applications that require cooperative tracking.
The FACT algorithm was implemented in Matlab with the
computationally demanding MMPF written as a Matlab func-
tion in the C programming language. The average execution
time was found to be 4.4 ms per node per time step, which
is only two and a half times higher than that for the FACT
algorithm using UKF as shown in Table 1. This is fast enough
for real time tracking of tens of nodes at 5 Hz update rate.
Tracking performance with reduced connectivity
Given that the average connectivity is high, we randomly
removed links between nodes to study the effect of reduced
connectivity. At any given time if a nodes has less than 4 links
then none of its links are removed, for the rest of the nodes a
certain percentage of the existing links are removed. Table 2
shows the average connectivity (Ave. conn.) of each node, the
percentage of mobile nodes that are connected to two anchors
or less (Anc. conn. 2), and the 90th percentile position error
of the static mobile nodes (90th perc.) when 25% and 50% of
the links are removed. For comparison the same metrics for
the original network are shown as well.
As one would expect the tracking accuracy of the algorithm
has degraded, however, it is not signicant. The results suggest
that for the given node density the transmit power of the nodes
can be further reduced without sacricing the performance
considerably. The estimated paths of all the dynamic mobile
nodes are shown in Fig. 10. The estimated path now is noisier
compared to that in Fig. 9, however, one can still make out
the paths different mobiles have taken. A closer examination
of the gure also shows that the number of times a track is
lost has increased due to the signicant reduction in range
measurements, however, the continuity of the paths suggest
that the tracks are correctly re-initialized, which conrms the
effectiveness of the track initialization step.
7 CONCLUSIONS
In this paper we presented a new algorithm for cooper-
ative tracking of nodes in wireless networks an issue
that has received little attention in the literature compared
to cooperative localization. The proposed algorithm that we
call Bayesian Cooperative Tracking (FACT) is Bayesian in
nature, however, compared to previously proposed algorithms,
is computationally much simpler and requires only low data
rate links between nodes for distributed implementation, since
it exchanges only a summary of the node state information.
x (m)
y

(
m
)
20 40 60
40
30
20
10
0
-10
-20
-30
-40
Fig. 10. Estimated paths of the mobile nodes with 50%
links removed.
The uncertainty of the transmitted state information was taken
into account in the ltering stage by increasing the effective
measurement noise covariance, which dynamically weights the
range measurements. The FACT algorithm uses different state
estimators depending on the environment of operation, with
the unscented Kalman lter proposed for outdoor line-of-sight
environments, and a multiple model particle lter for indoor
non line-of-sight environments.
A theoretical performance bound for cooperative tracking,
the posterior Cram er-Rao lower bound (PCRLB), was also
derived and through simulations the performance of the FACT
algorithm was evaluated and compared to the PCRLB. The
results showed that the FACT algorithm performs effectively
as the tracking accuracy was close to this lower bound despite
the fact that only a summary information was exchanged. We
presented results from an experimental study that was con-
ducted in a typical ofce environment where people moving
through the building were tracked. A small number of anchor
nodes equipped with GPS receivers were placed outside the
building to provide the reference for indoor tracking. A simple
indoor range error model that is applicable for systems that
operate at the 5.8 GHz ISM band was also presented and the
experimental results showed that this model achieves tracking
accuracy similar to that obtained using the actual range error
model, which is not available in practice.
ACKNOWLEDGMENT
We thank our colleague Alija Kajan for coordinating the
trials and Emergency Management Australia for their nancial
support.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
13
REFERENCES
[1] M. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, A tutorial
on particle lters for online nonlinear/non-Gaussian Bayesian tracking,
IEEE Trans. Signal Process., vol. 50, no. 2, pp. 174188, Feb. 2002.
[2] Y. Bar-Shalom, X. R. Li, and T. Kirubarajan, Estimation with Applica-
tions to Tracking and Navigation. New York, NY: John Wiley & Sons,
2001.
[3] Y. Bar-Shalom, P. K. Willett, and X. Tian, Tracking and Data Fusion -
A Handbook of Algorithms. Storrs, CT: YBS Publishing, 2011.
[4] S. Blackman and R. Papoli, Design and Analysis of Modern Tracking
Systems. Boston, MA: Artech House, 1999.
[5] M. Caceres, F. Penna, H. Wymeersch, and R. Garello, Hybrid GNSS-
terrestrial cooperative positioning via distributed belief propagation,
Proc. IEEE GlobeCom, Miami, FL, Dec. 2010.
[6] A. Conti, M. Guerra, D. Dardari, N. Decarli, and M. Z. Win, Net-
work experimentation for cooperative localization, IEEE J. Sel. Areas
Commun., vol. 30, no. 2, pp. 467475, Feb. 2012.
[7] D. Dardari, A. Conti, C. Buratti, and R. Verdone, Mathematical
evaluation of environmental monitoring estimation error through energy-
efcient wireless sensor networks, IEEE Trans. Mobile Comput., vol. 6,
no. 7, pp. 790802, Jul. 2007.
[8] D. Dardari, A. Conti, U. Ferner, A. Gioretti, and M. Z. Win, Ranging
with ultrawide bandwidth signals in multipath environments, Proc.
IEEE, vol. 97, no. 2, pp. 404426, Feb. 2009.
[9] A. Doucet, N. de Freitas, and N. Gordon, Sequential Monte Carlo
Methods in Practice. New York, NY: Springer, 2001.
[10] M. Hernandez, B. Ristic, A. Farina, T. Sathyan, and T. Kirubarajan,
Performance measure for Markovian switching systems using best-
tting Gaussian distributions, IEEE Trans. Aerosp. Electron. Syst.,
vol. 44, no. 2, pp. 724747, Apr. 2008.
[11] A. Ihler, I. Fisher, J.W., R. Moses, and A. Willsky, Nonparametric belief
propagation for self-localization of sensor networks, IEEE J. Sel. Areas
Commun., vol. 23, no. 4, pp. 809819, Apr. 2005.
[12] S. J. Julier and J. K. Uhlmann, Unscented ltering and nonlinear
estimation, Proc. IEEE, vol. 92, no. 3, pp. 401422, Mar. 2004.
[13] U. A. Khan, S. Kar, and J. M. F. Moura, Distributed sensor localization
in random environments using minimal number of anchor nodes, IEEE
Trans. Signal Process., vol. 57, no. 5, pp. 20002016, May 2009.
[14] E. G. Larsson, Cramer-Rao bound analysis of distributed positioning
in sensor networks, IEEE Signal Process. Lett., vol. 11, no. 3, pp. 334
337, Mar. 2004.
[15] H. Liu, H. Darabi, P. Banerjee, and J. Liu, Survey of wireless indoor
positioning techniques and systems, IEEE Trans. Syst., Man, Cybern.
C, vol. 37, no. 6, pp. 10671080, Nov. 2007.
[16] S. Maran o, W. M. Gifford, H. Wymeersch, and M. Z. Win, NLOS
identication and mitigation for localization based on UWB experimen-
tal data, IEEE J. Sel. Areas Commun., vol. 28, no. 7, pp. 10261035,
Sep. 2010.
[17] M. Morelande and S. Challa, Manoeuvring target tracking in clutter
using particle lters, IEEE Trans. Aerosp. Electron. Syst., vol. 41, no. 1,
pp. 252270, Jan. 2005.
[18] D. Niculescu and B. Nath, Ad hoc positioning system (APS), Proc.
IEEE Global Telecommunications Conf., vol. 5, San Antonio, TX, Nov.
2001, pp. 29262931.
[19] N. Patwari, J. N. Ash, S. Kyperountas, A. O. Hero III, R. L. Moses, and
N. S. Correal, Locating the nodes: Cooperative localization in wireless
sensor networks, IEEE Signal Process. Mag., vol. 22, no. 4, pp. 5469,
Jul. 2005.
[20] T. Sathyan and M. Hedley, Joint location and parameter tracking
of mobile nodes in wireless networks, Proc. Position Location and
Navigation Symposium, Indian Wells/Palms Springs, CA, May 2012.
[21] T. Sathyan, D. Humphrey, and M. Hedley, WASP: A system and
algorithms for accurate radio localization using low-cost hardware,
IEEE Trans. Syst., Man, Cybern. C, vol. 41, no. 2, pp. 211222, Mar.
2011.
[22] C. Savarese, J. Rabaey, and J. Beutel, Location in distributed ad-hoc
wireless sensor networks, Proc. IEEE Intl Conf. Acoustics, Speech,
and Signal Processing, vol. 4, May 2001, pp. 20372040.
[23] A. Savvides, C.-C. Han, and M. B. Strivastava, Dynamic ne-grained
localization in ad-hoc networks of sensors, Proc. 7th Annual Intl Conf.
on Mobile Computing and Networking, Rome, Italy, 2001, pp. 166179.
[24] A. Savvides, H. Park, and M. B. Srivastava, The bits and ops of the
n-hop multilateration primitive for node localization problems, in Proc.
1st ACM Intl Workshop Wireless Sensor Networks and Application,
Atlanta, GA, Sep. 2002, pp. 112121.
[25] Y. Shen, H. Wymeersch, and M. Z. Win, Fundamental limits of
wideband localization Part ii: Cooperative networks, IEEE Trans. Inf.
Theory, vol. 56, no. 10, pp. 49815000, Oct. 2010.
[26] Y. Shen, S. Mazuelas, and M. Z. Win, A theoretical foundation of
network navigation, Proc. IEEE Globecom, Houston, TX, Dec. 2011,
pp. 16.
[27] P. Tichavsky, C. Muravchik, and A. Nehorai, Posterior Cramer-Rao
bounds for discrete-time nonlinear ltering, IEEE Trans. Signal Pro-
cess., vol. 46, no. 5, pp. 13861396, May 1998.
[28] E. A. Wan and R. van der Merwe, The Unscented Kalman Filter,
Kalman Filtering and Neural Networks, S. Haykin, Ed. New York,
NY: John Wiley & Sons, 2001, pp. 12101217.
[29] M. Z. Win, A. Conti, S. Mazuelas, Y. Shen, W. M. Gifford, D. Dardari,
and M. Chiani, Network localization and navigation via cooperation,
IEEE Commun. Mag., vol. 49, no. 5, pp. 5662, May 2011.
[30] H. Wymeersch, J. Lien, and M. Win, Cooperative localization in
wireless networks, Proc. IEEE, vol. 97, no. 2, pp. 427450, Feb. 2009.
[31] J. Zhu, Calculation of geometric dilution of precision, IEEE Trans.
Aerosp. Electron. Syst., vol. 28, no. 3, pp. 893895, Jul. 1992.
Thuraiappah Sathyan (S04-M08) was born in
Jaffna, Sri Lanka. He received the B.Sc.Eng.
degree from the University of Peradeniya, Sri
Lanka in 2001, and the M.A.Sc. and Ph.D. de-
grees from the McMaster University, Canada in
2004 and 2008, respectively. FromJanuary 2001
to December 2002, he was a lecturer in the
Department of Electrical and Electronic Engi-
neering at the University of Peradeniya. From
May 2008 to February 2012 he was a Post-
doctoral Research Fellow at the Information and
Communication Technologies Center of the Commonwealth Scientic
and Industrial Research Organization (CSIRO), Marseld, Australia.
Currently, he is a Senior Research Associate at the University of
Adelaide, Adelaide, Australia. His research interests include Bayesian
estimation, multitarget target tracking, and localization and tracking in
wireless networks.
Mark Hedley was awarded a B.Sc., a B.E. in
electronic engineering and a Ph.D. all from the
University of Sydney, Australia. He was then a
member of the academic staff at the same uni-
versity for several years before joining the Com-
monwealth Scientic and Industrial Research
Organization (CSIRO) where he presently leads
a team within the ICT Center undertaking re-
search in wireless tracking. His other research
interests have included medical image process-
ing, video compression, computer vision, acous-
tic imaging and communication theory.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.

Você também pode gostar