gmapping学习记录——再读粒子滤波

最近又重新看了一遍粒子滤波的推导,对前面学习过程中存在的一些疑问,有了一点点自己的理解。

1、粒子滤波(PF)

基本粒子滤波的推导思路:

贝叶斯滤波---->蒙特卡洛采样---->重要性采样(可以得到SIS粒子滤波)---->重采样(SIR粒子滤波)

a、贝叶斯滤波:根据一系列已有的数据来递推计算出当前的状态

主要通过预测和更新两个步骤来递推计算:

预测:根据系统模型(状态方程)预测状态的先验概率

更新:根据最新的测量量来对之前的预测进行修正

存在问题:在推导过程中存在积分,对于非线性系统、非高斯系统,很难得到解析解,于是引入了蒙特卡洛采样。

b、蒙特卡洛采样:通过从目标分布采样,再求样品平均值得方式代替积分的方式得到期望值

存在问题:用蒙特卡洛方法能够用来直接估计后验概率,现在估计出了后验概率,如果需要用来滤波(既得到当前状态的期望值),只要用这些被采样粒子的状态值进行平均就得到了期望值,这就是粒子滤波了,只要从后验概率中采样很多粒子,用它们的状态求平均就得到了滤波结果。但是一个重要的问题就是,后验概率一直是我们想要求的,蒙特卡洛的方式就是我们先假设可以从目标分布中采样,采样之后再去估计得到后验概率,但是这里的目标分布如果就是后验分布那就陷入了一个死循环,所有后面又引入了重要性采样。

c、重要性采样:无法从目标分布中采样,则从一个已知可采样的分布里去采样

存在粒子退化的问题,引入重采样

d、重采样

你可能感兴趣的:(gmapping学习记录)