250
I. A. Kudryavtseva and K. A. Rybakov
4. Verify conditions: if i = M then set t k+1 = t k + h, k := k + 1 and go to Step 2;
if i < M then set i := i + 1 and go to Step 3.
The algorithm given above is based on simulating the ensemble of stochastic
system trajectories and weight functions that are trajectories of random processes
X (t) and ω(t). Trajectories of the random process ω(t) are drawn by definition [3]:
ω(t) = exp
⎧
⎨
⎩
t
t 0
μ(τ, X (τ ), Z (τ ))dτ
⎫
⎬
⎭
= exp
⎧
⎨
⎩
t
t 0
c
T
(τ, X (τ ))q(τ )dY (τ ) −
1
2
t
t 0
c
T
(τ, X (τ ))q(τ )c(t, X (τ ))dτ
⎫
⎬
⎭
.
In practice one can encounter underflow or overflow errors. Appearance of the
underflow errors can be caused by the degeneracy when the weight ω(t) approaches
zero while the overflow errors appear due to rapid increase of the weight. The simplest
way to reduce the risk of their appearance is to normalize weights. For this reason,
the weights should be redefined on Step 2 as follows:
ω
i
k :=
ω
i
k
M k
, i = 1, 2, . . . , M, M k =
M
i=1
ω
i
k .
The proposed normalization technique does not affect the final solution because
only the relative weights but not their absolute values contribute to the weighted mean
calculated in Step 2. Modified algorithm containing the normalization of weights is
given below.
Continuous-time particle filter algorithm with normalization of
weights (Algorithm 2)
1. See Step 1 of Algorithm 1.
2. Set
M k =
M
i=1
ω
i
k (M 0 = M)
and redefine weights:
ω
i
k :=
ω
i
k
M k
, i = 1, 2, . . . , M.
For the sample X k = {X
i
k }
M
i=1 with the set of associated weights W k = {ω
i
k }
M
i=1
find the following statistics: the estimate of the state vector
Précédent

- 250/374

Suivant