328 IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 50, NO. 2, FEBRUARY 2002
for a rejuvenation test based on a Kullback–Leibler (KL) dis-
tance and with independent Metropolis–Hastings (IMH) as our
MCMC choice. We will demonstrate the stability of this par-
ticular algorithm with an application example in Section III,
involving both simulated and real data, with low SNR (about
9 dB for the simulation and 14 dB for the real data) and
with a large number of measurements (65536 measurements) in
the simulation.
B. SMCMC Filter With KL Test and IMH
We use a rejuvenation test that is based on the idea
of a KL distance between two discrete distributions.
Suppose we have a rejuvenated set of weighted particles
for after incorporating
measurement
. When the next measurement becomes
available, the weighted particles are updated by SIS to give
. Since the particle values
themselves are not changed by SIS, we can regard
the two sets of weighted particles as discrete distributions on
the common support
, and define the KL distance
between them as
(3)
Intuitively, this measures how dissimilar the two densities,
and , are through their particle representa-
tions. Equivalently, (3) measures the amount of change in the
weights caused by the new measurement. If the densities are not
too dissimilar, we proceed with SIS for the next measurement
and then check ; otherwise, we replace
by a completely rejuvenated
set of particles drawn from
using MCMC.
Other rejuvenation tests that measure the skewness of the
weights of the particles at each time step are also possible. For
example, we can use the coefficient of variation of the weights
[12] or simply monitor the maximum weight. However, unlike
the KL test, these do not measure the change in the weights.
For simplicity, we perform MCMC using IMH (see, for ex-
ample, [17]) with a Gaussian proposal density whose mean and
covariance are computed from the most recent SIS particles.
In practice, it may be necessary to avoid underestimating the
variances for the proposal density by inflating the estimated
variances. Any parameter whose support is not (
)is
reparameterized to this support where the Gaussian proposal
density is then applied. We use the Gelman–Rubin test [7] with
two chains to monitor MCMC convergence. Since
approaches a Gaussian density asymptotically in the number of
measurements (see, for example, [18]), the Gaussian proposal
density for IMH becomes more efficient as more measurements
are processed. In the early and intermediate stages, however,
other proposal densities such as finite Gaussian mixtures or
kernel density estimators may fare better. When available,
analytical approximations to the target density can also be used
as proposal densities. A particularly attractive idea that can
be used in conjunction with any proposal density is to use a
sequence of bridging densities between the proposal density
and the target density [9]. For the applications in Section III,
the Gaussian proposal density appears to be adequate.
Using the KL rejuvenation test together with IMH with
a Gaussian proposal density, the SMCMC filter takes the
following form.
1) Start of time-step
:Wehave
from . Set .
2) SIS: Obtain
by
for
3) If , then
Set
. Go to Step 2.
Else
a) Compute
b) IMH: Obtain
with as target density and
as proposal density.
c) Set
. Go to Step 1.
In Step 3,
is a threshold that must be specified for the KL
test. In Step 3b),
denotes the multivariate Gaussian
density with mean vector
and covariance matrix . IMH pro-
duces particles that are possibly replicated but equally weighted.
In our notation, we are representing them as distinct particles
with unequal weights—this also helps to save on storage during
implementation. Notice that in general, the number of particles
before and after rejuvenation need not remain the same, hence,
the use of
and .
We refer to the number
between rejuvenations as the
batch size. It varies adaptively depending on the outcome of
the rejuvenation test. Bigger batches mean that MCMC is
performed less frequently. In practice, we observe an exponen-
tially increasing trend in the batch size over time, suggesting
that real-time implementation of the SMCMC filter is feasible.
C. Simultaneous Model Selection and Parameter Estimation
To perform simultaneous model selection and parameter esti-
mation with the SMCMC filter, we simply use multiple models
together with a suitable MCMC method that allows transitions
between parameter spaces whose dimensions may be different.
One such method is reversible jump MCMC [11]. Suppose there
are
models , and let the parameter vector for
model
be with dimension and support . The pa-
rameter space is regarded as a union of disjoint subspaces, i.e.,
, with for . In this case
(4)