粒子滤波_基础

一、粒子滤波

  若观测系统是线性,且观测噪声和状态噪声都服从高斯分布,那么Kalman滤波是最优滤波的不二之选。但是我们都知道,现实中几乎很少存在理想的线性系统,同时噪声大多是非高斯的。因此必须要有新的理论方法来解决实际问题,除了EKF和UKF之外,可选的还有粒子滤波。

  粒子滤波(Particle Filter,PF)基于贝叶斯理论,利用了序列蒙特卡洛方法,通过蒙特卡洛模拟实现递推贝叶斯滤波,其核心思想在于解决传统贝叶斯公式中后验概率积分困难、难以求得解析解的问题,即以一系列先验分布的样本的加权来表示后验概率,而不是使用复杂的后验概率密度。
  粒子滤波的推导一般可以归纳为包含以下步骤:①理解蒙特卡洛采样;②序贯重要性采样;③重要性重采样。

二、理解蒙特卡洛采样

  蒙特卡洛采样的思想就是用一系列样本的平均值来代替积分,这在求期望中非常适用。正如上文提及的,贝叶斯后验概率的计算中包含积分的过程,这一过程求解十分困难,因此可以利用蒙特卡洛采样,将积分替换为均值。从后验概率中采样一系列的粒子,求粒子群的状态平均值就能够得到滤波结果。

三、序贯重要性采样(Sequential Importance Sampling Filter,SIS )

  要想在后验概率计算中使用蒙特卡洛方法,前提是要知道后验概率的分布,但实际上这正是我们所求或者获取难度极大的一个步骤。所以一般通过寻找到一个与后验概率密度分布相同、更容易抽样的重要性概率分布,从这个重要性分布中进行抽样以得到粒子群。
  序贯重要性采样引入权值,对于各粒子权值的确定是一难点,同时还需注意归一化。

四、重要性重采样(Sampling Importance Resampling Filter,SIR)

  上面提到重要性采样中的权值问题,实际上粒子群在经过几次算法递推之后,只有很少的粒子具有权重,大部分粒子的权值几乎为0。由此不难想到,尽管这些粒子权重很小,但在计算过程中仍然会占用大量的时间和空间,因此必须解决这种粒子退化问题。
  通过给定阈值,判断样本容量是否超过这个阈值从而判断是否需要进行重采样。重采样过程中,剔除权重小于一定比例的粒子,对权重大的粒子进行复制,并对重采样后的所有粒子赋相同的权重。

五、粒子滤波框架

  ①初始化:在k=0时,由先验分布抽取N个样本;
  ②序贯重要性采样:选择合适的重要性分布,从中抽取N个样本(粒子),计算各粒子权重并归一化;
  ③重采样:得到等权重粒子及对应的权值 ;
  ④估计状态:计算粒子群均值作为最终输出状态,并为下一次滤波铺垫;
  ⑤递推

六、粒子滤波在室内定位中

  室内定位中,通过某一定位方法(如指纹法)得到一个目标的位置估计(观测值),也可以根据模拟的目标运动公式(如匀速运动或匀加速运动)由前一时刻的位置、运动速度、运动方位进行预测,得到当前位置估计(预测值)。这两个过程都是不准确的,均含有高斯性或非高斯性的噪声,因此可以考虑通过Kalam滤波求得两个过程对位置估计值的加权(这个加权就是卡尔曼增益K,K越大说明观测估计值比重越大)。
  然而,如果目标下一步的运动会碰到一扇门或一面墙,又或者是转角,预测值就会变得十分不可靠,因此可以考虑通过粒子滤波,用大量的粒子模拟估计的位置,其中每个粒子都有一个状态(位置)和权重,所有这些粒子的状态分布和权值共同模拟了目标位置(或状态)的概率分布,可以直接把所有粒子的状态做加权平均得到目标位置的估计值。在这个过程中,既可以利用观测值对粒子的权重进行进一步的更新,也可以利用物理世界中的约束(如室内空间信息或目标运动姿态)对粒子的权重进行约束,以提高粒子群的效率,减少计算时间和计算开销。

参考:粒子滤波:从推导到应用

你可能感兴趣的:(室内定位)