improved particle filters for multi-target tracking
TRANSCRIPT
Journal of Computational Physics 231 (2012) 602–611
Contents lists available at SciVerse ScienceDirect
Journal of Computational Physics
journal homepage: www.elsevier .com/locate / jcp
Improved particle filters for multi-target tracking
Vasileios Maroulas a, Panos Stinis b,⇑a Department of Mathematics, University of Tennessee, Knoxville, TN 37996, United Statesb Department of Mathematics, University of Minnesota, Minneapolis, MN 55455, United States
a r t i c l e i n f o a b s t r a c t
Article history:Received 22 May 2011Received in revised form 21 September 2011Accepted 27 September 2011Available online 8 October 2011
Keywords:Particle filterMulti-target trackingMonte CarloHomotopy methods
0021-9991/$ - see front matter � 2011 Elsevier Incdoi:10.1016/j.jcp.2011.09.023
⇑ Corresponding author.E-mail addresses: [email protected] (V. M
We present a novel approach for improving particle filters for multi-target tracking. Thesuggested approach is based on drift homotopy for stochastic differential equations. Drifthomotopy is used to design a Markov Chain Monte Carlo step which is appended to theparticle filter and aims to bring the particle filter samples closer to the observations whileat the same time respecting the target dynamics. We have used the proposed approach onthe problem of multi-target tracking with a nonlinear observation model. The numericalresults show that the suggested approach can improve significantly the performance of aparticle filter.
� 2011 Elsevier Inc. All rights reserved.
1. Introduction
Multi-target tracking is a central and difficult problem arising in different contexts ranging from military applications tobiology (see e.g. [1,2]). The tracking problem consists of computing the best estimate of the targets’ trajectories based onnoisy measurements (observations).
Several strategies have been developed for addressing the multi-target tracking problem, see e.g. [3–6,11,7,1,8–10]. Inthis paper we focus on particle filter techniques [5,6]. The popularity of the particle filter method has increased due to itsflexibility to handle cases where the dynamic and observation models are non-linear and/or non-Gaussian. The particle filterapproach is an importance sampling method which approximates the target distribution by a discrete set of weighted sam-ples (particles). The weights of the samples are updated when observations become available in order to incorporate infor-mation from the observations.
Despite the particle filter’s flexibility, it is often found in practice that most samples will have a negligible weight withrespect to the observation, in other words their corresponding contribution to the target distribution will be negligible.Therefore, one may resample the weights to create more copies of the samples with significant weights [11]. However, evenwith the resampling step, the particle filter might still need a lot of samples in order to approximate accurately the targetdistribution. Typically, a few samples dominate the weight distribution, while the rest of the samples are in statisticallyinsignificant regions. Thus, some authors (see e.g. [12,13]) have suggested the use of an extra step, after the resampling step,which can help move more samples in statistically significant regions (see also [14,15] for a different approach to particlefiltering).
The extra step for the particle filter is a problem of conditional path sampling for stochastic differential equations (SDEs)or stochastic maps (if the dynamic equations are in discrete time). In [16], a new approach to conditional path sampling(called drift relaxation or drift homotopy) was presented. In that paper, it was also shown how the algorithm can be used
. All rights reserved.
aroulas), [email protected] (P. Stinis).
V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611 603
to perform the extra step of a particle filter. In the current work, we have applied the conditional path sampling algorithmfrom [16] to perform the extra step of a particle filter for the problem of multi-target tracking.
The suggested approach is based on drift homotopy for the SDE system which describes the dynamics of the targets. Thedynamics of an SDE are governed by a deterministic term, called the drift, and a stochastic term, called the noise. Whileunconditional path sampling is straightforward for SDEs, albeit expensive for high dimensional systems, conditional pathsampling can be difficult even for low dimensional systems. On the other hand, it can be easier to find conditional pathsfor an SDE with a modified drift which is usually simpler than the drift of the original equation. Of course, these simplifiedpaths may have a very low probability of being paths of the original SDE. Drift homotopy proceeds by considering a sequenceof SDEs with drifts which interpolate between the original and modified drifts. Then one samples (through MCMC sampling)paths from each SDE in the sequence using the best sample from the previous SDE in the sequence as the initial condition forthe MCMC sampling. This allows one to gradually morph a path of the modified SDE (which maybe easier to satisfy the con-ditions) to a conditional path of the original SDE.
The numerical results we are presenting in this work are for tracking of multiple targets moving according to the near-constant velocity model [3]. This model, which is the standard test case for multiple target tracking, has been also used forthe problem of tracking multiple biological targets (see e.g. [17,18]). The tracking of multiple biological targets e.g. trackingof intracellular structures, is a rather active area of research in biophysics and is in particular need for good tracking algo-rithms (see e.g. [2,19]). The main difficulties associated with tracking intracellular structures are due to the level of noise inthe observations and the frequent crossing of paths of the targets. Even though in the current work we only present resultsfor synthetic data, we have also obtained encouraging results for data coming from real biological targets. Those results willbe presented in a future publication.
The paper is organized as follows. Section 2 provides a brief presentation of particle filters for multiple targets (more de-tails can be found in [11,5,20,6]), which highlights the versatility and drawbacks of this popular filtering method. Section 3demonstrates how one can use an extra step to improve the performance of particle filters for multiple targets. In particular,we discuss how drift homotopy can be used to effect the extra step. Section 4 presents numerical results for multi-targettracking for the near-constant velocity model with a nonlinear observation model. Finally, Section 5 contains a discussionof the results as well as directions for future work.
2. Generic particle filter for multiple targets
Particle filters are a special case of sequential importance sampling methods. Suppose that we are given an SDE systemand that we also have access to noisy observations ZT1 ; . . . ; ZTK of the state of the system at specified instants T1, . . . ,TK. Theobservations are functions of the state of the system, say given by ZTk
¼ GðXTk; nkÞ, where nk, k = 1, . . . ,K are mutually inde-
pendent random variables. For simplicity, let us assume that the distribution of the observations admits a densitygðXTk
; ZTkÞ, i.e., pðZTk
jXTkÞ / gðXTk
; ZTkÞ.
The filtering problem consists of computing estimates of the conditional expectation E f ðXTkÞjfZTj
gkj¼1
h i, i.e., the condi-
tional expectation of the state of the system given the (noisy) observations. Equivalently, we are looking to compute the con-
ditional density of the state of the system given the observations p XTkjfZTjgk
j¼1
� �. There are several ways to compute this
conditional density and the associated conditional expectation but for practical applications they are rather expensive.Particle filters fall in the category of importance sampling methods. Because computing averages with respect to the con-
ditional density involves the sampling of the conditional density which can be difficult, importance sampling methods pro-ceed by sampling a reference density q XTk
jfZTjgk
j¼1
� �which can be easily sampled and then compute the weighted sample
mean
E f ðXTkÞjfZTj
gkj¼1
h i� 1
N
XN
n¼1
f XnTk
� �p XnTkjfZTjgk
j¼1
� �q Xn
TkjfZTjgk
j¼1
� �
or the related estimateE f XTk
� �jfZTjgk
j¼1
h i�
PNn¼1f Xn
Tk
� � p XnTkjfZTj
gkj¼1
� �q Xn
TkjfZTj
gkj¼1
� �PN
n¼1
p XnTkjfZTj
gkj¼1
� �q Xn
TkjfZTj
gkj¼1
� �; ð1Þ
where N has been replaced by the approximation
N �XN
n¼1
p XnTkjfZTjgk
j¼1
� �q Xn
TkjfZTjgk
j¼1
� � :
604 V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611
Particle filtering is a recursive implementation of the importance sampling approach. It is based on the recursion
p XTkjfZTjgk
j¼1
� �/ gðXTk
; ZTkÞp XTk
jfZTjgk�1
j¼1
� �; ð2Þ
where
p XTkjfZTjgk�1
j¼1
� �¼Z
pðXTkjXTk�1
Þp XTk�1jfZTjgk�1
j¼1
� �dXTk�1
: ð3Þ
If we set
q XTkjfZTjgk
j¼1
� �¼ p XTk
jfZTjgk�1
j¼1
� �;
then from (2) we get
p XTkjfZTjgk
j¼1
� �q XTk
jfZTjgk
j¼1
� � / gðXTk; ZTkÞ:
The approximation in expression (1) becomes
E f ðXTiÞjfZTj
gkj¼1
h i�PN
n¼1f ðXnTkÞgðXn
Tk; ZTkÞPN
n¼1gðXnTk; ZTkÞ
ð4Þ
From (4) we see that if we can construct samples from the predictive distribution p XTkjfZTjgk�1
j¼1
� �then we can define the
(normalized) weights WnTk¼
gðXnTk;ZTkÞPN
n¼1gðXn
Tk;ZTkÞ, use them to weigh the samples and the weighted samples will be distributed
according to the posterior distribution p XTkjfZTjgk
j¼1
� �.
In many applications, most samples will have a negligible weight with respect to the observation, so carrying them alongdoes not contribute significantly to the conditional expectation estimate (this is the problem of degeneracy [20]). To createlarger diversity one can resample the weights to create more copies of the samples with significant weights.
Suppose that we have k = 1, . . . ,K targets. Also, for notational simplicity, assume that the kth target comes from the kthobservation. Even when this is not the case, we can relabel the observations to satisfy this assumption. The targets are as-sumed to evolve independently so that the observation weight of a sample of the vector of targets is the product of the indi-vidual observation weights of the targets [6]. The same is true for the transition density of the vector of targets betweenobservations. We denote the vector of targets at observation Tk by
XTk¼ ðX1;Tk
; . . . ;XK;TkÞ
and the observation vector at Tk by
ZTk¼ ðZ1;Tk
; . . . ; ZK;TkÞ:
Also, we can have different observation weight densities gk, k = 1, . . . ,K for different targets. However, in the numericalexamples we have chosen the same observation weight density for all targets.
In order to track multiple targets in the particle filter setting, we need to associate each target to an observation. The dif-ficulty of the target-observation association problem is twofold: (i) there is combinatorial explosion of the number of pos-sible target-observation arrangements and (ii) targets may come very close or even cross paths requiring the target-observation association problem to be solved at every step. Many algorithms have been developed to tackle the problemof target-observation association (see e.g. [21] and references therein). However, a target-observation association algorithmrelies heavily on the accuracy of the underlying filtering algorithm. If the filtering algorithm performs poorly at one step thenthe targets’ samples generated at the next step can be far off from their true trajectories. Especially if the true targets areclose, this can lead to erroneous associations between targets and observations at the next step. This phenomenon is exhib-ited clearly by the generic particle filter (see Fig. 1 in Section 4). The currently proposed approach, by improving significantlythe accuracy of the filtering step, alleviates this possibility even for hard problems like the one presented in Section 4. Asalready mentioned in the introduction, we are interested in applying the algorithm to problems of tracking of biological tar-gets (e.g. intracellular movements). In this particular setting, the crossing of paths of different targets is frequent and theperformance of the generic particle filter (unless it is used with a prohibitively large number of particles) is bound to dete-riorate rapidly.
We have chosen to use the Hungarian algorithm which is a polynomial time algorithm [21]. Other more sophisticatedchoices can be used but the Hungarian algorithm performed very well in our numerical experiments. Following [6], the par-ticle filter for the case of multiple targets is given by.
-1500 -1000 -500 0 500
X coordinate
-1000
-500
0
500
1000
1500
Y c
oord
inat
e
Fig. 1. Generic particle filter with 5000 samples. The solid grey lines denote the true target tracks, the black lines with crosses denote the observations andthe colored lines the conditional expectation estimates from the generic particle filter. (For interpretation of the references to colour in this figure legend,the reader is referred to the web version of this article.)
V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611 605
Particle filter for multiple targets
(1) Begin with N unweighted samples XnTk�1
from
p XTk�1jfZTjgk�1
j¼1
� �¼YKk¼1
p Xk;Tk�1jfZk;Tj
gk�1j¼1
� �:
(2) Prediction: Generate N samples X0nTkfrom
pðXTkjXTk�1
Þ ¼YKk¼1
pðXk;TkjXk;Tk�1
Þ:
(3) Target-Observation Association(4) Update: Evaluate the weights
WnTk¼
QKk¼1gkðX
0nk;Tk; Zk;Tk
ÞPNn¼1
QKk¼1gkðX
0nk;Tk; Zk;Tk
Þ:
(5) Resampling: Generate N independent uniform random variables fhngNn¼1 in (0,1). For n = 1, . . . ,N let Xn
Tk¼ X0jTk
where
Xj�1
l¼1
WlTk6 hj <
Xj
l¼1
WlTk
where j can range from 1 to N.(6) Set k = k + 1 and proceed to Step 1.
The particle filter algorithm is easy to implement and adapt for different problems since the only part of the algorithmthat depends on the specific dynamics of the problem is the prediction step. This has led to the particle filter algorithm’sincreased popularity [5]. However, even with the resampling step, the particle filter can still need a lot of samples in order
to describe accurately the conditional density p XTkjfZTjgk
j¼1
� �. Snyder et al. [22] have shown how the particle filter can fail in
simple high dimensional problems because one sample dominates the weight distribution. The rest of the samples are not instatistically significant regions. In the next subsection we present how drift homotopy can be used to push samples closer tostatistically significant regions.
3. Particle filter with MCMC step for multiple targets
Several authors (see e.g. [12,13]) have suggested the use of a MCMC step after the resampling step (Step 5) in order tomove samples away from statistically insignificant regions. There are many possible ways to append an MCMC step after
606 V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611
the resampling step in order to achieve that objective. The important point is that the MCMC step must preserve the con-
ditional density p XTkjfZTjgk
j¼1
� �.
We begin by noting that one can use the resampling step (Step 5) in the particle filter algorithm to create more copies notonly of the good samples according to the observation, but also of the values (initial conditions) of the samples at the pre-vious observation. These values are the ones who have evolved into good samples for the current observation (see more de-tails in [13]). The motivation behind producing more copies of the pairs of initial and final conditions is to use the good initialconditions as starting points to produce statistically more significant samples according to the current observation. This pro-cess can be accomplished in two steps. First, Step 5 of the particle filter algorithm is replaced by.
Resampling: Generate N independent uniform random variables fhngNn¼1 in (0,1). For n = 1, . . . ,N let
ðXnTk�1
;XnTkÞ ¼ ðX0jTk�1
;X 0jTkÞ where
Xj�1
l¼1
WlTk6 hj <
Xj
l¼1
WlTk
Also, through Bayes’ rule [13] one can show that the posterior density p XTkjfZTjgk
j¼1
� �is preserved if one samples from the density
gðXTk; ZTkÞpðXTk
jXTk�1Þ
where XTk�1are given by the modified resampling step. This is a problem of conditional sampling for (continuous-time or
discrete) stochastic systems. The important issue is to perform the necessary sampling efficiently [14,15,13].We propose to do that here using drift homotopy [16]. In particular, suppose that we are given a system of stochastic
differential equations (SDEs)
dXt ¼ aðXtÞdt þ rðXtÞdBt; ð5Þ
Also consider an SDE system with modified driftdYt ¼ bðYtÞdt þ rðYtÞdBt ; ð6Þ
where b(Yt) is suitably chosen to facilitate the conditional sampling problem.Consider a collection of L + 1 modified SDE systems
dYlt ¼ ð1� �lÞbðYl
tÞdt þ �laðYltÞdt þ rðYl
tÞdBt ;
where �l 2 [0,1], l = 0, . . . ,L, with �l < �l+1, �0 = 0 and �L = 1. Instead of sampling directly from the density gðXTk; ZTkÞpðXTk
jXTk�1Þ,
one can sample from the density gðY0Tk; ZTkÞpðY0
TkjXTk�1
Þ and gradually morph the sample into a sample ofgðXTk
; ZTkÞpðXTk
jXTk�1Þ.
Drift homotopy algorithm:
� (l = 0) Begin with a sample from the modified SDE (6).� Sample through MCMC the density gðY0
Tk; ZTkÞpðY0
TkjXTk�1
Þ.� For l = 1, . . . ,L take the last sample from the (l � 1)st SDE and use it as in initial condition for MCMC sampling of the
density
gðYlTk; ZTkÞpðYl
TkjXTk�1
Þ
at the lth level.� Keep the last sample at the Lth level.
We repeat here that the levels from 0 to L � 1 are auxiliary and only serve the purpose of providing the sampler at level Lwith a better initial condition. The final sampling is performed at the Lth level which corresponds to the original SDE(5).
The drift homotopy algorithm is similar to Simulated Annealing (SA) used in equilibrium statistical mechanics [20]. How-ever, instead of modifying a temperature as in SA, here we modify the drift of the system. Also, the idea behind drift relax-ation resembles the main idea behind homotopy methods used in deterministic optimization problems (see e.g. [23]).
Note that there are two ways to utilize the drift relaxation idea. The first one is by sampling the densities for the differentlevels sequentially as in the algorithm presented above. The second is to consider the L + 1 systems in parallel, sample simul-taneously the conditional densities
hðYlT0ÞYI
i¼1
plðYlTijYl
Ti�1ÞgðYl
TIÞ for l ¼ 0; . . . ; L;
and occasionally swap paths between levels (the swapping of paths between levels should be performed in a manner thatpreserves detailed balance [20]). This approach is in the spirit of parallel tempering used in Monte Carlo sampling [20]. In thecurrent work we have applied the drift relaxation idea only in the form presented in the algorithm above.
We should also comment on the choice of the modified drift. For stochastic gradient flows with transitions between mul-tiple metastable states, one can choose the modified drift as a mollified version of the original drift [16]. This amounts tomaking the potential wells shallower and thus facilitates the transitions between metastable states. For general problems,
V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611 607
one can choose to use for the modified drift a mean-field drift. In the numerical experiments presented here we have used amean-field drift as the modified drift.
The particle filter with MCMC step for the case of multiple targets is.Particle filter with MCMC step for multiple targets
(1) Begin with N unweighted samples XnTk�1
from
p XTk�1jfZTjgk�1
j¼1
� �¼YKk¼1
p Xk;Tk�1jfZk;Tj
gk�1j¼1
� �:
(2) Prediction: Generate N samples X0nTkfrom
pðXTkjXTk�1
Þ ¼YKk¼1
p Xk;TkjXk;Tk�1
� �:
(3) Target-Observation Association(4) Update: Evaluate the weights
WnTk¼
QKk¼1gkðX
0nk;Tk; Zk;Tk
ÞPNn¼1
QKk¼1gkðX0nk;Tk
; Zk;TkÞ:
(5) Resampling: Generate N independent uniform random variables fhngNn¼1 in (0,1). For n = 1, . . . ,N let
ðXnTk�1
;XnTkÞ ¼ ðX0jTk�1
;X 0jTkÞ where
Xj�1
l¼1
WlTk6 hj <
Xj
l¼1
WlTk
where j can range from 1 to N.(6) MCMC step: For n = 1, . . . ,N and k = 1, . . . ,K choose a modified drift (possibly different for each n and each k). Construct
through drift homotopy a Markov chain for YnTk
with initial value XnTk
and stationary distribution
YKk¼1
gkðYnk ; Zk;Tk
ÞpkðYnk jX
nk;Tk�1Þ:
(7) Set XnTk¼ Yn
Tk.
(8) Set k = k + 1 and proceed to Step 1.
4. Numerical results
4.1. Dynamic model
We present numerical results for multi-target tracking using the particle filter with an MCMC step performed by drifthomotopy. We have synthesized tracks of targets moving on the xy plane using a 2D near constant velocity model [3]. Ateach time t we have a total of Kt targets and the evolution of the kth target (k = 1, . . . ,Kt) is given by
xk;t ¼ Axk;t�1 þ Bvk;t ¼ ½xk;t ; _xk;t; yk;t; _yk;t ��; ð7Þ
where ðxk;t ; _xk;tÞ and ðyk;t ; _yk;tÞ are the xy position and velocity of the kth target at time t. Also, ⁄ denotes the transpose. Thematrices A and B are given by
A ¼
1 T 0 00 1 0 00 0 1 T
0 0 0 1
26664
37775 and B ¼
T2=2 0T 00 T2=20 T
26664
37775; ð8Þ
where T is the time between observations. For the experiments we have set T = 1, i.e., noisy observations of the model areobtained at every step of the model(7). The model noise vk,t is a collection of independent Gaussian random variables withcovariance matrix Rv defined as
Rv ¼ diagðr2x ;r
2yÞ: ð9Þ
In the experiments we have r2x ¼ r2
y ¼ 1. Due to the different possible combinations of targets to observations we use a dif-ferent index m to denote the obsevations. Since we do not assume any clutter we have m = 1, . . . ,Kt. As is usual in the liter-ature, the nonlinear observation model consists of the bearing h and range r of a target. If the mth observation Zm,
t = [Zh,m,t,Zr,m,t]T at time t comes from the kth target we have
608 V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611
Zm;t ¼arctan yk;t
xk;t
� �ðx2
k;t þ y2k;tÞ
1=2
24
35þwm;t: ð10Þ
The observation noise wm,t is white and Gaussian with covariance matrix
Rw ¼ diagðr2h ;r
2r Þ ð11Þ
For the numerical experiments we chose r2h ¼ 10�4 and r2
r ¼ 1. These values are comparable to the values appearing in theliterature (see e.g. [6,24,10]).
The synthesized target tracks were created by evolving a number of targets according to(7) and recording the state of each tar-get at each step. The observations were created in bearing and range space h, r by using(10). The number of targets at each obser-vation instant is: K0 = K1 =� � �= K100 = 10. The number of targets is large enough to make the tracking problem rather formidable.
4.2. Drift homotopy
The dynamics of the targets for the modified drift system at the lth level are given by
zlk;t ¼ Azl
k;t�1 þ cl þ Bvk;t;
where z1,k,t, z3,k,t and z2,k,t, z4,k,t are the xy positions and velocities respectively for the kth target at time t.The matrix cl is given by
cl ¼ ð1� �lÞ lxT2
2;lxT;ly
T2
2;lyT
" #�
where �l 2 [0,1], l = 0, . . . ,L, with �l < �l+1, �0 = 0 and �L = 1. In the numerical experiments we chose L = 10 i.e. 10 levels for thedrift homotopy. Also, we have chosen ln
x and lny for the nth sample as
lnx;k ¼
1N
PNn0¼1 zn0
1;k;k�1 þ zn02;k;k�1T
� �� zn
1;k;k�1
T2=2�
2zn2;k;k�1
T
and
lny;k ¼
1N
PNn0¼1 zn0
3;k;k�1 þ zn04;k;k�1T
� �� zn
3;k;k�1
T2=2�
2zn4;k;k�1
T:
This choice of modified drift corresponds to a mean drift while at the same time offsetting the individual sample’s properties.More sophisticated drift choices will be explored in future work.
For the nth sample, the density to be sampled at the lth level is
YKtk
k¼1
gxðzl;nk;k; Zh;k;kÞgyðzl;n
k;k; Zr;k;kÞpðzl;nk;kjz
l;nk;k�1Þ
/YKtk
k¼1
exp �Zh;k;k � arctan
zl;n3;k;k
zl;n1;k;k
� �� �2
2r2h
þZr;k;k � ðzl;n
1;k;k
2þ zl;n
3;k;k
2Þ1=2
� �2
2r2r
þðvn
x;k;kÞ2
2r2xþðvn
y;k;kÞ2
2r2y
8>>><>>>:
9>>>=>>>;
0BBB@
1CCCA; ð12Þ
where
zl;n1;k;k ¼ zl;n
1;k;k�1 þ zl;n2;k;k�1T þ ð1� �lÞln
x;kT2
2þ T2
2vn
x;k;k
and
zl;n3;k;k ¼ zl;n
3;k;k�1 þ zl;n4;k;k�1T þ ð1� �lÞln
y;kT2
2þ T2
2vn
y;k;k:
We use the density(12) to sample values of the model noise vnx;k;k and vn
y;k;k that bring the targets closer to the observationswhile respecting the dynamics of the targets. We chose to use Hybrid Monte Carlo (HMC) to perform the sampling (any otherMCMC method can be used) [20]. For the sampling at each level of the drift homotopy process we used 20 Metropolis accept/reject steps and 1 HMC step of size ds = 10�1.
4.3. Tracking results
Figs. 1 and 2 show the evolution in xy space of the true targets, the observations as well as the estimates of the generic andMCMC particle filter respectively. It is obvious from the figures that the MCMC particle filter follows accurately the targets
V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611 609
and there is no ambiguity in the identification of the target tracks. On the other hand, the accuracy of the generic particlefilter’s estimate deteriorates fast. This rapid loss of accuracy is a manifestation of the ‘‘curse of dimensionality’’ [25]. Thenumber of samples needed to track a collection of independent targets increases exponentially in the number of the targets.
The tracking problem using a nonlinear observation model is difficult. The reason is that for the nonlinear observationmodel, the observation errors, though constant in bearing and range space, become position dependent in xy space. In par-ticular, when x and/or y are large, the observation errors can become rather large. This is easy to see by Taylor expanding thenonlinear transformation from bearing and range space to xy space around the true target values. Suppose that the true tar-get bearing and range are h0, r0 and its xy space position is x0 = r0cosh0, y0 = r0sinh0. Also, assume that the observation error inbearing and range space is, respectively, dh and dr. The xy position of a target that is perturbed by dh and dr in bearing andrange space is (to first order)
Fig. 2.coloredreader
x ¼ x0 � y0dh� dr cos h0
y ¼ y0 þ x0dh� dr sin h0:
Thus, the perturbation in xy space can be significant even if dh and dr are small. In our example we have rh = 10�2. So, whenthe true target x and y values become of the order of 103 as happens for some of the targets, the observation value in bearingand range space can be quite misleading as far as the xy space position of the target is concerned. As a result, even if one doesa good job in following the observation in bearing and range space, the conditional expectation estimate of the xy space po-sition can be inaccurate. In the multi-target tracking context, this problem is more serious because it can lead to erroneoustarget-observation association.
For the current choice of parameters for the drift homotopy algorithm and the hybrid Monte Carlo sampling, computingeach sample of the MCMC particle filter costs about the same as 250 samples of the generic particle filter. We have used 20samples for the MCMC particle filter and 5000 samples for the generic particle filter. The running time for the numericalexperiments (on a single processor desktop computer) was about 0.4 s per observation step.
The performance of the MCMC particle filter is compared to the performance of the generic particle filter in Fig. 3 by mon-itoring the evolution in time of the RMS error per target.
The RMS error per target (RMSE) is defined with reference to the true target tracks by the formula
RMSEðtÞ ¼
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1Kt
XKt
k¼1
xk;t � E½xk;t jZ1; . . . ; Zt � 2
vuut ð13Þ
where k�k is the norm of the position and velocity vector. Note that the state vector norm involves both positions and veloc-ities even though the observations use information only from the positions of a target. xk,t is the true state vector for target k.E[xk,tjZ1, . . . ,Zt] is the conditional expectation estimate calculated with the MCMC or generic particle filter depending onwhose filter’s performance we want to calculate.
-600 -400 -200 0 200
-500
0
500
1000
1500
Y c
oord
inat
e
X coordinate
MCMC particle filter with 20 samples. The solid grey lines denote the true target tracks, the black lines with crosses denote the observations and thelines the conditional expectation estimates from the MCMC particle filter. (For interpretation of the references to colour in this figure legend, the
is referred to the web version of this article.)
20 40 60 80 100
Time steps
0
200
400
600
800
1000
1200
RM
S E
rror
per
targ
et
MCMC particle filter with 20 samplesGeneric particle filter with 5000 samples
Fig. 3. Comparison of RMS error per target for the MCMC particle filter and the generic particle filter.
20 40 60 80 100
Time steps
0
10
20
30
40
RM
S E
rror
per
targ
et
MCMC particle filter with drift homotopyMCMC particle filter without drift homotopy
Fig. 4. Comparison of RMS error per target for the MCMC particle filter with drift homotopy (L = 10) and the MCMC particle filter without drift homotopy(L = 0).
610 V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611
As can be seen from Fig. 3, the generic particle filter’s accuracy deteriorates rather quickly. In particular, after about 20steps the generic particle filter has lost its ability to track any of the 10 targets. We note that numerical experiments forthe generic particle filter with up to 40000 samples did not show any significant improvement in the tracking performance.
The MCMC particle filter can be applied with L = 0 levels i.e., sampling directly from the original density without drifthomotopy. We compare in Fig. 4 the behavior of the MCMC particle filter without drift homotopy to the case of with drifthomotopy and L = 10 as in the previous figures. To have the same computational complexity, the MCMC particle withoutdrift homotopy uses 220 Metropolis accept/reject steps for the hybrid Monte Carlo algorithm.
We see from Fig. 4 that there is an advantage in using drift homotopy since the corresponding RMS error grows moreslowly. Numerical experiments with different choices in the number of drift homotopy levels and/or number of Metropolisaccept/reject steps in HMC support the trend shown in Fig. 4.
5. Discussion
We have presented an algorithm for multi-target tracking which is based on drift homotopy for stochastic differentialequations. The algorithm builds on the existing particle filter methodology for multi-target tracking by appending an MCMC
V. Maroulas, P. Stinis / Journal of Computational Physics 231 (2012) 602–611 611
step after the particle filter resampling step. The purpose of the addition of the MCMC step is to bring the samples closer tothe observation while at the same time respecting the target dynamics. Even though the addition of an MCMC step for a par-ticle filter has been proposed and used before [12], to the best of our knowledge, the use of drift homotopy to effect theMCMC step is novel (see also [16]).
We have tested the performance of the algorithm on the problem of tracking multiple targets evolving under the nearconstant velocity model [3]. The proposed MCMC particle filter exhibited a significantly better performance than the genericparticle filter. Since the MCMC particle filter requires more computations than the generic particle filter its computationalcost per sample is higher. However, the results of the MCMC particle filter with far fewer samples than the generic particlefilter are far superior. For the numerical experiments presented in the current work, the MCMC particle filter was able totrack 10 targets long after the generic particle filter had lost its ability to track any of the targets.
We plan to perform a detailed study of the proposed algorithm in more realistic cases involving clutter, spawning andmerging of targets. Also, we want to study the behavior of the algorithm for cases with random birth and death events aswell as for larger number of targets. Finally, we have obtained very encouraging results from applying the algorithm on mul-ti-target data from biological experiments. These results will be reported in a future publication.
References
[1] R.P. Mahler, Statistical Multisource-Multitarget Information Fusion, Artech House Publishers, MA, 2007.[2] A. Nebenführ et al, Stop-and-go movements of plant Golgi stacks are mediated by the actomyosin system, Plant Phys. 121 (1999) 1127–1141.[3] Y. Bar-Shalom, T.E. Fortmann, Tracking and Data Association, Academic Press, 1988.[4] T.E. Fortmann, Y. Bar-Shalom, M. Scheffe, Sonar tracking of multiple targets using joint probabilistic data association, IEEE J. Ocea. Eng. 8 (1983) 173–
184.[5] A. Doucet, de N. Freitas, N. Gordon (Eds.), Sequential Monte Carlo Methods in Practice, Springer, NY, 2001.[6] W. Ng, J.F. Li, S.J. Godsill, J. Vermaak, A hybrid approach for online joint detection and tracking for multiple targets, Proc. IEEE Aerospace Conference
(2005) 2126-2141.[7] J.S. Liu, R. Chen, Sequential Monte Carlo methods for dynamic systems, J. Amer. Stat. Ass. 93 (443) (1993) 1032–1044.[8] R.P.S. Mahler, Multitarget Bayes filtering via first-order multitarget moments, IEEE Trans. Aero. Elect. Sys. 39 (4) (2003) 1152–1178.[9] R.P.S. Mahler, V. Maroulas, Tracking Spawning Objects, submitted for publication.
[10] B-N. Vo, S. Singh, A. Doucet, Sequential Monte Carlo methods for multi-target filtering with random finite sets, IEEE Trans. Aero. Elect. Sys. 41 (4)(2005) 1224–1245.
[11] N.J. Gordon, D.J. Salmond, A.F.M. Smith, Novel approach to nonlinear/non-Gaussian Bayesian state estimation, Proc. Inst. Elect. Eng. F 140 (2) (1993)107–113.
[12] W. Gilks, C. Berzuini, Following a moving target. Monte Carlo inference for dynamic Bayesian models, J. Royal Stat. Soc. B 63 (1) (1999) 2124–2137.[13] J. Weare, Particle filtering with path sampling and an application to a bimodal ocean current model, J. Comput. Phys. 228 (2009) 4312–4331.[14] A.J. Chorin, X. Tu, Implicit sampling for particle filters, Proc. Natl. Acad. Sci. USA 106 (2009) 17249–17254.[15] A.J. Chorin, M. Morzfeld, X. Tu, Implicit filters for data assimilation, Comm. Appl. Math. Comput. Sci. 5 (2010) 221–240.[16] P. Stinis, Conditional path sampling for stochastic differential equations by drift relaxation, Comm. Appl. Math. Comput. Sci. (2011) in print.[17] I. Smal, W. Niessen, and E. Meijering, Particle filtering for multiple object tracking in molecular cell biology, IEEE Workshop Non. Stat. Sign. Proc. (2006)
pp. 129–132.[18] X. Quan, and M.C. Leake, A novel multiple particle tracking algorithm for noisy in vivo data by minimal path optimization within the spatio-temporal
volume, IEEE Intl. Symp. Biomed. Imag.: From Nano to Macro (2009) 1158–1161.[19] I.F. Sbalzarini, P. Koumoutsakos, Feature point tracking and trajectory analysis for video imaging in cell biology, J. Struct. Bio. 151 (2005) 182–195.[20] J.S. Liu, Monte Carlo Strategies in Scientific Computing, Springer, NY, 2001.[21] R.E. Burkard, M. Dell’Amico, S. Martello, Assignment Problems, SIAM, Philadelphia, 2009.[22] C. Snyder, T. Bengtsson, P. Bickel, J. Anderson, Obstacles to high-dimensional particle filtering, Mon. Wea. Rev. 136 (2008) 4629–4640.[23] C. Hillermeier, Nonlinear Multiobjective Optimization: A Generalized Homotopy Approach, Birkhuser Basel, 2000.[24] J. Vermaak, S. Godsill, P. Perez, Monte Carlo filtering for multi-target tracking and data association, IEEE Trans. Aero. Elect. Sys. 41 (1) (2005) 309–332.[25] J.F. Traub, A.G. Werschulz, Complexity and Information (Lezioni Lincee), Cambridge University Press, 1999.