蒙特卡罗

线性,高斯 卡尔曼滤波 存在解析解
非线性(高斯或非高斯) 粒子滤波 不存在解析解,只能通过采样(蒙特卡罗)的方式加以估计

观测方程 z t = g ( z t − 1 , μ , ε ) z_t=g(z_{t-1}, \mu, \varepsilon ) zt=g(zt1,μ,ε)

状态方程 x t = g ( z t , μ , δ ) x_t=g(z_{t}, \mu, \delta ) xt=g(zt,μ,δ)

滤波问题,求解 P ( z t ∣ x 1 , ⋯   , x t ) P(z_t|x_1,\cdots,x_t) P(ztx1,,xt)

预测( z t z_t zt先验): P ( z t ∣ x 1 , ⋯   , x t − 1 ) = ∫ z t − 1 P ( z t ∣ z t − 1 ) P ( z t − 1 ∣ x 1 , ⋯   , x t − 1 ) d z t − 1 P(z_t|x_1,\cdots,x_{t-1})=\int_{z_{t-1}}P(z_t|z_{t-1})P(z_{t-1}|x_1,\cdots,x_{t-1})d_{z_{t-1}} P(ztx1,,xt1)=zt1P(ztzt1)P(zt1x1,,xt1)dzt1

更新( z t z_t zt后验): P ( z t ∣ x 1 , ⋯   , x t ) ∝ P ( x t ∣ z t ) P ( z t ∣ x 1 , ⋯   , x t − 1 ) P(z_t|x_1,\cdots,x_{t}) \propto P(x_t|z_t)P(z_t|x_1,\cdots,x_{t-1}) P(ztx1,,xt)P(xtzt)P(ztx1,,xt1)

状态参数符合马尔科夫模型:仅相连时刻的状态参数 z t − 1 z_{t-1} zt1 z t z_t zt间存在关联

观测独立假设:观测值间独立

首先来看预测问题,
P ( z t ∣ x 1 , ⋯   , x t − 1 ) = ∫ z t − 1 P ( z t , z t − 1 ∣ x 1 , ⋯   , x t − 1 ) d z t − 1 P(z_t|x_1,\cdots,x_{t-1}) = \int_{z_{t-1}}P(z_t,z_{t-1}|x_1,\cdots,x_{t-1})d_{z_{t-1}} P(ztx1,,xt1)=zt1P(zt,zt1x1,,xt1)dzt1
= ∫ z t − 1 P ( z t ∣ z t − 1 , x 1 , ⋯   , x t − 1 ) P ( z t − 1 ∣ x 1 , ⋯   , x t − 1 ) d z t − 1 = \int_{z_{t-1}}P(z_t|z_{t-1},x_1,\cdots,x_{t-1})P(z_{t-1}|x_1,\cdots,x_{t-1})d_{z_{t-1}} =zt1P(ztzt1x1,,xt1)P(zt1x1,,xt1)dzt1
= ∫ z t − 1 P ( z t ∣ z t − 1 ) P ( z t − 1 ∣ x 1 , ⋯   , x t − 1 ) d z t − 1 = \int_{z_{t-1}}P(z_t|z_{t-1})P(z_{t-1}|x_1,\cdots,x_{t-1})d_{z_{t-1}} =zt1P(ztzt1)P(zt1x1,,xt1)dzt1

第一行:首先通过 z t − 1 z_{t-1} zt1架起 z t z_t zt x t − 1 x_{t-1} xt1的桥梁;

第二行:提出 z t − 1 z_{t-1} zt1 z t z_t zt间的关系;

第三行:马尔科夫及 t − 1 t-1 t1时刻更新;

接下来看更新问题,主要是寻找 P ( z t ∣ x 1 , ⋯   , x t ) P(z_t|x_1,\cdots,x_{t}) P(ztx1,,xt)与前边预测的关系:
P ( z t ∣ x 1 , ⋯   , x t ) = P ( x 1 , ⋯   , x t , z t ) P ( x 1 , ⋯   , x t ) P(z_t|x_1,\cdots,x_{t}) = \frac{P(x_1, \cdots, x_t, z_t)}{P(x_1, \cdots, x_t)} P(ztx1,,xt)=P(x1,,xt)P(x1,,xt,zt)
= 1 C P ( x 1 , ⋯   , x t , z t ) = \frac{1}{C}P(x_1, \cdots, x_t, z_t) =C1P(x1,,xt,zt)
= 1 C P ( x t ∣ x 1 , ⋯   , x t − 1 , z t ) P ( x 1 , ⋯   , x t − 1 , z t ) = \frac{1}{C}P(x_t|x_1, \cdots, x_{t-1}, z_t)P(x_1, \cdots, x_{t-1}, z_t) =C1P(xtx1,,xt1,zt)P(x1,,xt1,zt)
= 1 C P ( x t ∣ x 1 , ⋯   , x t , z t ) P ( z t ∣ x 1 , ⋯   , x t − 1 ) P ( x 1 , ⋯   , x t − 1 ) = \frac{1}{C}P(x_t|x_1, \cdots, x_t, z_t)P(z_t|x_1, \cdots, x_{t-1})P(x_1, \cdots, x_{t-1}) =C1P(xtx1,,xt,zt)P(ztx1,,xt1)P(x1,,xt1)
= D C P ( x t ∣ x 1 , ⋯   , x t , z t ) P ( z t ∣ x 1 , ⋯   , x t − 1 ) = \frac{D}{C}P(x_t|x_1, \cdots, x_t, z_t)P(z_t|x_1, \cdots, x_{t-1}) =CDP(xtx1,,xt,zt)P(ztx1,,xt1)

第一行:提出 z t z_t zt x t x_t xt间的关系;

第二行: P ( x 1 , ⋯   , x t ) P(x_1, \cdots, x_t) P(x1,,xt)是已知的观测值,与 z t z_t zt没有关系,当做一个确定的常量,记作C;

第三行: P ( z t ∣ x 1 , ⋯   , x t − 1 ) P(z_t|x_1, \cdots, x_{t-1}) P(ztx1,,xt1)是预测量, P ( x 1 , ⋯   , x t − 1 ) P(x_1, \cdots, x_{t-1}) P(x1,,xt1)是一个确定的常量,记作D;

重要性采样

非线性问题没有办法得到解析解,必须借助采样的方式估计,通常使用蒙特卡罗采样。

蒙卡特罗法:用抽样的方式来近似估计后验 P ( z ∣ x ) P(z|x) P(zx)

首先来看他的期望
E z ∣ x [ f ( z ) ] = ∫ f ( z ) P ( z ) d x ≈ 1 N ∑ i = 1 N f ( z ( i ) ) E_{z|x}[f(z)] = \int f(z)P(z)dx\approx \frac{1}{N}\sum_{i=1}^{N} f(z^{(i)}) Ezx[f(z)]=f(z)P(z)dxN1i=1Nf(z(i))

第二行:分布 P ( z ) P(z) P(z)采样N个样本 z ( i ) : z ( 1 ) , ⋯   , z ( N ) z^{(i)}:z^{(1)}, \cdots, z^{(N)} z(i):z(1),,z(N)

即可通过抽样的方式估计出分布的期望。

重要性采样
E z ∣ x [ f ( z ) ] = ∫ f ( z ) P ( z ) d z E_{z|x}[f(z)] = \int f(z)P(z)dz Ezx[f(z)]=f(z)P(z)dz
= ∫ f ( z ) P ( z ) Q ( z ) Q ( z ) d z = \int f(z)\frac{P(z)}{Q(z)}Q(z)dz =f(z)Q(z)P(z)Q(z)dz
= ∑ i = 1 N f ( z ( i ) ) P ( z ( i ) ) Q ( z ( i ) ) = \sum_{i=1}^{N} f(z^{(i)})\frac{P(z^{(i)})}{Q(z^{(i)})} =i=1Nf(z(i))Q(z(i))P(z(i))
由于 P ( x ) P(x) P(x)通常是一个非常复杂的分布,无法通过上式求得分布的期望,这个时候引入提议分布 Q ( z ) Q(z) Q(z),此时我们根据分布 Q ( z ) Q(z) Q(z)
抽样 z ( i ) ∼ Q ( z ) , i = 1 , 2 ⋯   , N z^{(i)}\sim Q(z),i=1,2\cdots, N z(i)Q(z),i=1,2,N,从而避开了复杂的分布 P ( x ) P(x) P(x)。令式中 P ( z ( i ) ) Q ( z ( i ) ) = w i \frac{P(z^{(i)})}{Q(z^{(i)})}=w_{i} Q(z(i))P(z(i))=wi
为权重。

再来观察滤波问题的后验 P ( z t ∣ x 1 : t ) P(z_t|x_{1:t}) P(ztx1:t)。设 w t ( i ) = P ( z t ( i ) ∣ x 1 : t ) Q ( z t ( i ) ∣ x 1 : t ) w_t^{(i)}=\frac{P(z_t^{(i)}|x_{1:t})}{Q(z_t^{(i)}|x_{1:t})} wt(i)=Q(zt(i)x1:t)P(zt(i)x1:t)

时刻 t = 1 : w 1 ( i ) , i = 1 , ⋯   , N t=1:w_1^{(i)}, i=1,\cdots, N t=1:w1(i),i=1,,N

时刻 t = t : w t ( i ) , i = 1 , ⋯   , N t=t:w_t^{(i)}, i=1,\cdots, N t=t:wt(i),i=1,,N

上式计算 w t ( i ) w_t^{(i)} wt(i)都要计算 P ( z t ( i ) ∣ x 1 : t ) P(z_t^{(i)}|x_{1:t}) P(zt(i)x1:t),而这个量是很难计算的,那么能不能通过前一个时刻 w t − 1 ( i ) w_{t-1}^{(i)} wt1(i)
稍作计算就可以求得下一时刻的 w t ( i ) w_t^{(i)} wt(i)

序贯重要性采样 squential important sampling:寻找 w t − 1 ( i ) w_{t-1}^{(i)} wt1(i) w t ( i ) w_t^{(i)} wt(i)的递推关系
P ( z 1 : t ∣ x 1 : t ) = P ( z 1 : t , x 1 : t ) P ( x 1 : t ) = 1 C P ( z 1 : t , x 1 : t ) P(z_{1:t}|x_{1:t}) = \frac{P(z_{1:t},x_{1:t})}{P(x_{1:t}) }=\frac{1}{C}P(z_{1:t},x_{1:t}) P(z1:tx1:t)=P(x1:t)P(z1:t,x1:t)=C1P(z1:t,x1:t)
= 1 C P ( x t ∣ z 1 : t , x 1 : t − 1 ) P ( z 1 : t , x 1 : t − 1 ) = \frac{1}{C}P(x_{t}|z_{1:t},x_{1:t-1})P(z_{1:t},x_{1:t-1}) =C1P(xtz1:t,x1:t1)P(z1:t,x1:t1)
= 1 C P ( x t ∣ z t ) P ( z t ∣ z 1 : t − 1 , x 1 : t − 1 ) P ( z 1 : t − 1 , x 1 : t − 1 ) = \frac{1}{C}P(x_{t}|z_{t})P(z_t|z_{1:t-1},x_{1:t-1})P(z_{1:t-1},x_{1:t-1}) =C1P(xtzt)P(ztz1:t1,x1:t1)P(z1:t1,x1:t1)
= 1 C P ( x t ∣ z t ) P ( z t ∣ z t − 1 ) P ( z 1 : t − 1 ∣ x 1 : t − 1 ) P ( x 1 : t − 1 ) = \frac{1}{C}P(x_{t}|z_{t})P(z_t|z_{t-1})P(z_{1:t-1}|x_{1:t-1})P(x_{1:t-1}) =C1P(xtzt)P(ztzt1)P(z1:t1x1:t1)P(x1:t1)
= D C P ( x t ∣ z t ) P ( z t ∣ z t − 1 ) P ( z 1 : t − 1 ∣ x 1 : t − 1 ) = \frac{D}{C}P(x_{t}|z_{t})P(z_t|z_{t-1})P(z_{1:t-1}|x_{1:t-1}) =CDP(xtzt)P(ztzt1)P(z1:t1x1:t1)

D = P ( x 1 : t − 1 ) D=P(x_{1:t-1}) D=P(x1:t1).

Q ( z 1 : t ∣ x 1 : t ) = Q ( z t ∣ z 1 : t − 1 , x 1 : t ) Q ( z 1 : t − 1 ∣ x 1 : t ) Q ( x 1 : t ) Q(z_{1:t}|x_{1:t}) = Q(z_{t}|z_{1:t-1},x_{1:t})Q(z_{1:t-1}|x_{1:t})Q(x_{1:t}) Q(z1:tx1:t)=Q(ztz1:t1,x1:t)Q(z1:t1x1:t)Q(x1:t)
= Q ( z t ∣ z 1 : t − 1 , x 1 : t ) Q ( z 1 : t − 1 ∣ x 1 : t − 1 ) = Q(z_{t}|z_{1:t-1},x_{1:t})Q(z_{1:t-1}|x_{1:t-1}) =Q(ztz1:t1,x1:t)Q(z1:t1x1:t1)

Q ( x 1 : t ) Q(x_{1:t}) Q(x1:t)为已知常量,记为E。

因此
w t i ∝ P ( z 1 : t ∣ x 1 : t ) Q ( z 1 : t ∣ x 1 : t ) ∝ P ( x t ∣ z t ) P ( z t ∣ z t − 1 ) P ( z 1 : t − 1 ∣ x 1 : t − 1 ) Q ( z t ∣ z 1 : t − 1 , x 1 : t ) Q ( z 1 : t − 1 ∣ x 1 : t − 1 ) w_{t}^{i} \propto \frac{P(z_{1:t}|x_{1:t})}{Q(z_{1:t}|x_{1:t})} \propto \frac{P(x_{t}|z_{t})P(z_t|z_{t-1})P(z_{1:t-1}|x_{1:t-1})} {Q(z_{t}|z_{1:t-1},x_{1:t})Q(z_{1:t-1}|x_{1:t-1})} wtiQ(z1:tx1:t)P(z1:tx1:t)Q(ztz1:t1,x1:t)Q(z1:t1x1:t1)P(xtzt)P(ztzt1)P(z1:t1x1:t1)
= P ( x t ∣ z t ) P ( z t ∣ z t − 1 ) Q ( z t ∣ z 1 : t − 1 , x 1 : t ) w t − 1 i =\frac{P(x_{t}|z_{t})P(z_t|z_{t-1})} {Q(z_{t}|z_{1:t-1},x_{1:t})}w_{t-1}^{i} =Q(ztz1:t1,x1:t)P(xtzt)P(ztzt1)wt1i

ParticleFilter
w t i ∝ P ( x t ∣ z t ) P ( z t ∣ z t − 1 ) Q ( z t ∣ z 1 : t − 1 , x 1 : t ) w t − 1 i w_{t}^{i} \propto \frac{P(x_{t}|z_{t})P(z_t|z_{t-1})} {Q(z_{t}|z_{1:t-1},x_{1:t})}w_{t-1}^{i} wtiQ(ztz1:t1,x1:t)P(xtzt)P(ztzt1)wt1i

P ( x t ∣ z t ) P(x_{t}|z_{t}) P(xtzt)是观测概率, P ( z t ∣ z t − 1 ) P(z_t|z_{t-1}) P(ztzt1)是预测概率。

算法描述

t-1时刻:采样已完成, w t ( i ) w_{t}^{(i)} wt(i)已知

t时刻:通过 Q ( z t ∣ z 1 : t − 1 , x 1 : t ) Q(z_{t}|z_{1:t-1},x_{1:t}) Q(ztz1:t1,x1:t)分布对 z t ( i ) z_{t}^{(i)} zt(i)采样;
w t i ∝ P ( x t ∣ z t ) P ( z t ∣ z t − 1 ) Q ( z t ∣ z 1 : t − 1 , x 1 : t ) w t − 1 i w_{t}^{i} \propto \frac{P(x_{t}|z_{t})P(z_t|z_{t-1})}{Q(z_{t}|z_{1:t-1},x_{1:t})}w_{t-1}^{i} wtiQ(ztz1:t1,x1:t)P(xtzt)P(ztzt1)wt1i

存在问题:权值退化
resampling 或者 选择一个合适的提议分布Q(z)

重采方法很多中,此处选择系统重采样方式

SIS+resampling = basic ParticleFilter

提议分布分布的选择,好的提议分布是什么样的?
选择 Q ( z t ∣ z 1 : t − 1 , x 1 : t ) = P ( z t ∣ z t − 1 ) Q(z_{t}|z_{1:t-1},x_{1:t})=P(z_{t}|z_{t-1}) Q(ztz1:t1,x1:t)=P(ztzt1),则
w t i ∝ P ( x t ∣ z t ) w t − 1 i w_{t}^{i} \propto P(x_{t}|z_{t})w_{t-1}^{i} wtiP(xtzt)wt1i,直观上的理解如果预测的权重大,那么他的权重也大,这也是容易理解的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值