1、前言
粒子滤波器是一新类型的非线性滤波器,已成为一个解决非线性滤波问题的重要工具,因为它能应用于很多领域,如信号处理、雷达和声音媒体的目标跟踪、计算机视觉、神经计算。
令
X
n
X_n
Xn表示所有的目标状态序列
{
x
i
}
i
=
1
n
{\lbrace x_i\rbrace} _{i=1}^n
{xi}i=1n;
Y
n
Y_n
Yn表示所有观测序列
{
y
i
}
i
=
1
n
{\lbrace y_i\rbrace} _{i=1}^n
{yi}i=1n;
给定观测序列
Y
n
Y_n
Yn的条件下,所有状态
X
n
X_n
Xn的联合后验分布为
p
(
X
n
∣
Y
n
)
p(X_n|Y_n)
p(Xn∣Yn);
由于
X
n
X_n
Xn表示的状态序列对观测者都是隐藏的,获得直接从后验分布
p
(
X
n
∣
Y
n
)
p(X_n|Y_n)
p(Xn∣Yn)中随机取样通常是不可行的。因此从另外一个分布中取样,这一分布称为工具分布,用
q
(
X
n
∣
Y
n
)
q(X_n|Y_n)
q(Xn∣Yn)来表示。为了使重要分布能够有效代替后验分布,
q
(
X
n
∣
Y
n
)
q(X_n|Y_n)
q(Xn∣Yn)必须有一个足够广的支集,以完全包括
p
(
X
n
∣
Y
n
)
p(X_n|Y_n)
p(Xn∣Yn)的支集。
2、 Monte Carlo积分
所谓重要性抽样方法,即从重要性分布 q ( X n ∣ Y n ) q(X_n|Y_n) q(Xn∣Yn)中随机抽取N个统计独立且同分布的样本构成一个集合。令n时刻随机取出的样本集记为 X n ( i ) , i = 1 , 2 , . . . , N X_n^{(i)},i=1,2,...,N Xn(i),i=1,2,...,N,从零时刻开始直到n时刻,一步一步的,在状态空间中,根据重要性分布 q ( X n ∣ Y n ) q(X_n|Y_n) q(Xn∣Yn),N个样本追踪自己的“轨迹”。它们的轨迹记为 X n ( i ) X_n^{(i)} Xn(i),其中,i=1,2,…,N,称为粒子,因此面名为粒子滤波器。
定义重要性函数:
r
(
X
n
∣
Y
n
)
=
p
(
X
n
∣
Y
n
)
q
(
X
n
∣
Y
n
)
(式1)
r(X_n|Y_n)= \frac{p(X_n|Y_n)}{q(X_n|Y_n)}\tag{式1}
r(Xn∣Yn)=q(Xn∣Yn)p(Xn∣Yn)(式1)
利用贝叶斯估计量的定义:
h
‾
=
E
p
[
h
(
X
n
)
]
=
∫
h
(
X
n
)
p
(
X
n
∣
Y
n
)
d
x
n
\overline h=E_p[h(X_n)]=\int h(X_n)p(X_n|Y_n)dx_n
h=Ep[h(Xn)]=∫h(Xn)p(Xn∣Yn)dxn
改写其定义,可以改写贝叶斯估计量的公式:
h
‾
=
E
p
[
h
(
X
n
)
]
=
∫
h
(
X
n
)
p
(
X
n
∣
Y
n
)
q
(
X
n
∣
Y
n
)
q
(
X
n
∣
Y
n
)
d
x
n
=
∫
h
(
X
n
)
r
(
X
n
∣
Y
n
)
q
(
X
n
∣
Y
n
)
d
x
n
(式2)
\overline h=E_p[h(X_n)]=\int h(X_n) \frac {p(X_n|Y_n)}{q(X_n|Y_n)} q(X_n|Y_n)dx_n = \int h(X_n)r(X_n|Y_n)q(X_n|Y_n)dx_n \tag{式2}
h=Ep[h(Xn)]=∫h(Xn)q(Xn∣Yn)p(Xn∣Yn)q(Xn∣Yn)dxn=∫h(Xn)r(Xn∣Yn)q(Xn∣Yn)dxn(式2)
其中
h
(
X
n
)
h(X_n)
h(Xn)作为任意函数,为了使它和粒子滤波的术语保持一致性。
在式2的贝叶斯计量上运用重要性取样方法,得到相应的Monte Carlo估计量:
h
^
n
(
N
)
≈
1
N
∑
i
=
1
N
w
~
n
(
i
)
h
(
X
n
(
i
)
(式3)
\hat h_n(N) \approx \frac{1}{N}\sum _{i=1} ^N \widetilde {w}_n ^{(i)}h(X_n^{(i)} \tag{式3}
h^n(N)≈N1i=1∑Nw
n(i)h(Xn(i)(式3)
其中
w
n
(
i
)
=
w
~
n
(
i
)
∑
j
=
1
N
w
~
n
(
j
)
,
i
=
1
,
2
,
.
.
.
,
N
(式4)
w_{n} ^{(i)} = \frac{\widetilde w_n ^{(i)}}{\sum _{j=1} ^N \widetilde w_n ^{(j)}},i=1,2,...,N \tag{式4}
wn(i)=∑j=1Nw
n(j)w
n(i),i=1,2,...,N(式4)
对有限数量的粒子,N个,估计量
h
^
n
(
N
)
\hat h_n(N)
h^n(N)是有偏的,但是,在渐进的意义,满足下述关系:
lim
N
→
∞
h
^
(
N
)
→
h
‾
(式5)
\lim _{N \to \infty} \hat h(N) \to \overline h \tag{式5}
N→∞limh^(N)→h(式5)
取样的第二阶段背后的基本原理:
重采样的第二阶段取出的样本
x
~
n
(
i
)
\widetilde x_n^{(i)}
x
n(i),它的标准化重要性权值
w
n
(
i
)
w_n ^{(i)}
wn(i)很大,很有可能从联合后验分布
p
(
X
n
∣
Y
n
)
p(X_n|Y_n)
p(Xn∣Yn);比起标准化重要性权值小的样本,应该以更大的概率选择这样的样本。
实现SIR的方式,每一次循环中进行以下操作:
(1)、采样。随机地从重要性分布
q
(
X
∣
Y
)
q(X|Y)
q(X∣Y)中抽取一个N个样品
{
X
(
i
)
}
\lbrace X ^{(i)}\rbrace
{X(i)}_{i=1} ^N的iid集合。
(2)、加权。利用式4,计算相关的标准化权值
{
w
(
i
)
}
i
=
1
N
\lbrace w^{(i)}\rbrace _{i=1} ^N
{w(i)}i=1N的集合。
(3)、重采样。
(i)给定中间样本
X
(
1
)
,
X
(
2
)
,
.
.
,
X
(
N
)
X^{(1)},X^{(2)},..,X^{(N)}
X(1),X(2),..,X(N),条件独立地抽取含L个离散随机变量
{
I
1
,
I
2
,
.
.
.
,
I
N
}
\lbrace I^{1},I^{2},...,I^{N} \rbrace
{I1,I2,...,IN}的集合,从集合
{
1
,
2
,
.
.
N
}
\lbrace1,2,..N \rbrace
{1,2,..N}中依概率
(
w
1
,
w
2
,
.
.
,
w
N
)
(w^{1},w^{2},..,w^{N})
(w1,w2,..,wN)取值,如以下例子所示:
P
(
I
(
1
)
=
j
)
=
w
(
j
)
,
j
=
1
,
2
,
.
.
.
,
N
P(I^{(1)}=j)=w^{(j)},j=1,2,...,N
P(I(1)=j)=w(j),j=1,2,...,N
对
I
(
2
)
,
.
.
,
I
(
L
)
I^{(2)},..,I^{(L)}
I(2),..,I(L)等,典型地,有
L
≤
N
L\leq N
L≤N。
(i)设
X
~
(
i
)
=
X
(
I
j
)
\widetilde X ^{(i)}= X^{(I_j)}
X
(i)=X(Ij),其中
i
=
1
,
2
,
.
.
.
,
L
i=1,2,...,L
i=1,2,...,L。
集合
{
I
(
1
)
,
I
(
2
)
,
.
.
,
I
(
L
)
}
\lbrace I^{(1)}, I^{(2)},.., I^{(L)}\rbrace
{I(1),I(2),..,I(L)}被认为是多项式实验过程,因此,根据SIR方法被描述为一种多项式类型。
3、顺序重要性采样
p
(
X
n
∣
Y
n
)
=
∫
1
Z
n
p
(
x
n
∣
x
n
−
1
l
(
y
n
∣
x
n
)
p
(
X
n
−
1
∣
Y
n
−
1
)
d
x
n
−
1
p(X_n|Y_n)=\int \frac{1}{Z_n}p(x_n|x_{n-1}l(y_n|x_n)p(X_{n-1}|Y_{n-1})dx_{n-1}
p(Xn∣Yn)=∫Zn1p(xn∣xn−1l(yn∣xn)p(Xn−1∣Yn−1)dxn−1
=
∫
1
Z
n
p
(
x
n
∣
x
n
−
1
l
(
y
n
∣
x
n
)
p
(
X
n
−
1
∣
Y
n
−
1
)
q
(
X
n
∣
Y
n
)
q
(
X
n
∣
Y
n
)
d
n
−
1
=\int \frac{1}{Z_n}p(x_n|x_{n-1}l(y_n|x_n)\frac{p(X_{n-1}|Y_{n-1})}{q(X_n|Y_n)}q(X_n|Y_n)d_{n-1}
=∫Zn1p(xn∣xn−1l(yn∣xn)q(Xn∣Yn)p(Xn−1∣Yn−1)q(Xn∣Yn)dn−1
4、权值退化问题
5、采样重要性重采样粒子滤波器
记法
粒子用 i = 1 , 2 , 3... N i=1,2,3...N i=1,2,3...N来表示,其中N表示粒子总数。
初始化
给定状态分布
p
(
x
)
p(x)
p(x)和初始值
x
0
x_0
x0,随机取消
x
0
(
i
)
−
p
(
x
0
)
x_0 ^{(i)} - p(x_0)
x0(i)−p(x0)
其中记号
x
−
p
x-p
x−p是x是分布p的一个观察值,设置初始权值
w
0
(
i
)
=
1
N
w_0 ^{(i)} = \frac {1}{N}
w0(i)=N1
其中
i
=
1
,
2
,
3...
N
i=1,2,3...N
i=1,2,3...N
循环
每个时间步骤
n
=
1
,
2
,
3...
n=1,2,3...
n=1,2,3...,按照下标
i
=
1
,
2
,
3...
N
i=1,2,3...N
i=1,2,3...N,做如下操作:
(1)重要性分布定义为
q
(
x
n
∣
x
n
−
1
(
i
)
,
y
n
=
p
(
x
n
∣
x
n
−
1
(
i
)
q(x_n | x_{n-1}^{(i)},y_n=p(x_n|x_{n-1}^{(i)}
q(xn∣xn−1(i),yn=p(xn∣xn−1(i)
其中假设已知先验分布
p
(
x
n
∣
x
n
−
1
(
i
)
p(x_n|x_{n-1}^{(i)}
p(xn∣xn−1(i),取样
x
n
i
−
p
(
x
n
∣
x
n
−
1
i
)
x_n^{i} - p(x_n|x_{n -1}^{i})
xni−p(xn∣xn−1i)
(2)计算重要性权值
w
^
n
(
i
)
=
l
(
y
n
∣
x
n
−
1
(
i
)
)
\hat w_n^{(i)} = l(y_n|x_{n-1} ^{(i)})
w^n(i)=l(yn∣xn−1(i))
其中也假设似然函数
l
(
y
n
∣
x
n
−
1
(
i
)
)
l(y_n|x_{n-1} ^{(i)})
l(yn∣xn−1(i))已知,因此计算标准权值
w
n
(
i
)
=
w
^
n
(
i
)
∑
j
=
1
N
w
^
n
(
i
)
w_{n}^{(i)}= \frac{\hat w_n^{(i)}}{\sum_{j=1} ^{N}{ \hat w_n^{(i)} }}
wn(i)=∑j=1Nw^n(i)w^n(i)
(3)重采样,一个含N个离散随机变量的集合{
I
(
1
)
,
I
(
2
)
,
.
.
.
,
I
(
N
)
I^{(1)},I^{(2),...,I^{(N)}}
I(1),I(2),...,I(N)},在相关集合{
1
,
2
,
3
,
.
.
N
1,2,3,..N
1,2,3,..N}中依照以下概率取值:
P
(
I
(
s
)
=
i
)
=
w
n
(
i
)
P(I^{(s)}=i)=w_n ^{(i)}
P(I(s)=i)=wn(i)
因此集合
x
^
n
(
i
)
=
x
n
(
i
)
\hat x_n ^{(i)} = x_n^{(i)}
x^n(i)=xn(i)
并且
w
n
(
i
)
=
1
N
w_n ^{(i)} = \frac {1}{N}
wn(i)=N1
(4)继续计算直到滤波完成。