粒子滤波(PF: Particle Filter)的思想基于蒙特卡洛方法(Monte Carlo methods),它是利用粒子集来表示概率,可以用在任何形式的状态空间模型上。其核心思想是通过从后验概率中抽取的随机状态粒子来表达其分布,是一种顺序重要性采样法(Sequential Importance Sampling)。简单来说,粒子滤波法是指通过寻找一组在状态空间传播的随机样本对概率密度函数 进行近似,以样本均值代替积分运算,从而获得状态最小方差分布的过程。这里的样本即指粒子,当样本数量N→∝时可以逼近任何形式的概率密度分布。

  尽管算法中的概率分布只是真实分布的一种近似,但由于非参数化的特点,它摆脱了解决非线性滤波问题时随机量必须满足高斯分布的制约,能表达比高斯模型更广泛的分布,也对变量参数的非线性特性有更强的建模能力。因此,粒子滤波能够比较精确地表达基于观测量和控制量的后验概率分布,可以用于解决SLAM问题。

  粒子滤波的应用

  粒子滤波技术在非线性、非高斯系统表现出来的优越性,决定了它的应用范围非常广泛。另外,粒子滤波器的多模态处理能力,也是它应用广泛有原因之一。国际上,粒子滤波已被应用于各个领域。在经济学领域,它被应用在经济数据预测;在军事领域已经被应用于雷达跟踪空中飞行物,空对空、空对地的被动式跟踪;在交通管制领域它被应用在对车或人视频监控;它还用于机器人的全局定位。

  粒子滤波的缺点

  虽然粒子滤波算法可以作为解决SLAM问题的有效手段,但是该算法仍然存在着一些问题。其中最主要的问题是需要用大量的样本数量才能很好地近似系统的后验概率密度。机器人面临的环境越复杂,描述后验概率分布所需要的样本数量就越多,算法的复杂度就越高。因此,能够有效地减少样本数量的自适应采样策略是该算法的重点。另外,重采样阶段会造成样本有效性和多样性的损失,导致样本贫化现象。如何保持粒子的有效性和多样性,克服样本贫化,也是该算法研究重点。

  粒子滤波的发展

  1.MCMC改进策略

  马尔可夫链蒙特卡洛(MCMC)方法通过构造Markov链,产生来自目标分布的样本,并且具有很好的收敛性。在SIS的每次迭代中,结合MCMC使粒子能够移动到不同地方,从而可以避免退化现象,而且Markov链能将粒子推向更接近状态概率密度函数(probability density function,(PDF))的地方,使样本分布更合理。基于MCMC改进策略的方法有许多,常用的有Gibbs采样器和MetropolisHasting方法。

  2.Unscented粒子滤波器(UPF)

  Unscented Kalman滤波器(UKF)是Julier等人提出的。EKF(Extended Kalman Filter)使用一阶Taylor展开式逼近非线性项,用高斯分布近似状态分布。UKF类似于EKF,用高斯分布逼近状态分布,但不需要线性化只使用少数几个称为Sigma点的样本。这些点通过非线性模型后,所得均值和方差能够精确到非线性项Taylor展开式的二阶项,从而对非线性滤波精度更高。Merwe等人提出使用UKF产生PF的重要性分布,称为Unscented粒子滤波器(UPF),由UKF产生的重要性分布与真实状态PDF的支集重叠部分更大,估计精度更高。

  3.Rao-Blackwellised粒子滤波器(RBPF)

  在高维状态空间中采样时,PF的效率很低。对某些状态空间模型,状态向量的一部分在其余部分的条件下的后验分布可以用解析方法求得,例如某些状态是条件线性高斯模型,可用Kalman滤波器得到条件后验分布,对另外部分状态用PF,从而得到一种混合滤波器,降低了PF采样空间的维数,RBPF样本的重要性权的方差远远低于SIR方法的权的方差,为使用粒子滤波器解决 SLAM问题提供了理论基础。而Montemerlo等人在2002年首次将Rao-Blackwellised粒子滤波器应用到机器人SLAM中,并取名为FastSLAM算法。该算法将SLAM问题分解成机器人定位问题和基于位姿估计的环境特征位置估计问题,用粒子滤波算法做整个路径的位姿估计,用EKF估计环境特征的位置,每一个EKF对应一个环境特征。该方法融合EKF和概率方法的优点,既降低了计算的复杂度,又具有较好的鲁棒性。

  最近几年,粒子方法又出现了一些新的发展,一些领域用传统的分析方法解决不了的问题,现在可以借助基于粒子仿真的方法来解决。在动态系统的模型选择、故障检测、诊断方面,出现了基于粒子的假设检验、粒子多模型、粒子似然度比检测等方法。在参数估计方面,通常把静止的参数作为扩展的状态向量的一部分,但是由于参数是静态的,粒子会很快退化成一个样本,为避免退化,常用的方法有给静态参数人为增加动态噪声以及Kernel平滑方法,而Doucet等提出的点估计方法避免对参数直接采样,在粒子框架下使用最大似然估计(ML)以及期望值最大(EM)算法直接估计未知参数。

粒子滤波(PF:Particle Filter与卡尔曼滤波(Kalman Filter)相比较 (转载)相关推荐

  1. 一文图解卡尔曼滤波(Kalman Filter)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 译者注:这恐怕是全网有关卡尔曼滤波最简单易懂的解释,如果你认真的读 ...

  2. 图解卡尔曼滤波(Kalman Filter)

    背景 关于滤波 首先援引来自知乎大神的解释. "一位专业课的教授给我们上课的时候,曾谈到:filtering is weighting(滤波即加权).滤波的作用就是给不同的信号分量不同的权重 ...

  3. 粒子滤波 PF(Particle filter)算法

    代码的路 粒子滤波器方法通常用于视觉跟踪.从统计角度来看,它是一种顺序蒙特卡罗重要抽样方法,用于根据观测序列估计动态系统的潜状态变量. 粒子滤波步骤: 初始状态:用大量粒子模拟X(t),粒子在空间内均 ...

  4. 对无迹卡尔曼滤波(UKF)和粒子滤波(PF)的理解

    对无迹卡尔曼滤波(UKF)的总结: EKF通过在工作点附近进行一阶泰勒展开来线性化非线性的运动方程和观测方程.这样的线性近似在高度非线性的情况下存在较大误差.而UKF换了一个线性化的思路.1)选取2n ...

  5. 粒子滤波(Particle Filter)的通俗解释

    其实,粒子叫作估计器estimator.估计过去叫平滑smoothing,估计未来叫预测prediction,估计当前值才叫滤波filtering.粒子滤波算法源于蒙特卡洛思想,即以某事件出现的频率来 ...

  6. [转]粒子滤波(particle filtering)的思路发展过程及应用(详细深度好文)

    粒子滤波作为视觉SLAM中后端进行状态估计的主要算法之一,很好的完成了扩展卡尔曼滤波无法有效处理的复杂状态方程下的状态估计任务.这篇文章详细地描述了粒子滤波的思想历程,即如何一步步从简单的状态估计.采 ...

  7. 粒子滤波(particle filtering)梳理

    本文根据MLaPP第23章,从importance sampling开始梳理,直至导出粒子滤波,并给出相应的范例程序.rejection sampling太简单,就不介绍了. 1. Importanc ...

  8. 双通道粒子滤波(PF)原理详解

    1.粒子滤波是动态系统非线性非高斯的情况 2.粒子滤波无法像卡尔曼滤波求得解析解,需要用蒙特卡洛采样 3.采取重要性采样方法近似计算也无法直接求解粒子滤波问题 4.序列重要性采样得到t时刻与t-1时刻 ...

  9. 卡尔曼滤波(kalman filter)超详细推导

    1. 概率论相关知识 这一节主要回忆概率论的一些相关基础知识,包括全概率公式.贝叶斯公式.协方差矩阵.多维高斯分布等等,对这些熟悉的可以直接跳到第2节看贝叶斯滤波 1.1 条件概率 P(x,y)=P( ...

  10. 卡尔曼滤波(Kalman filter)算法

    卡尔曼滤波思想 你可以在任何含有不确定信息的动态系统中使用卡尔曼滤波,对系统下一步的走向做出有根据的预测,即使伴随着各种干扰,卡尔曼滤波总是能指出真实发生的情况. 在连续变化的系统中使用卡尔曼滤波是非 ...

最新文章

  1. linux下递归修改目录/文件权限命令
  2. linux安装jdk8_Skywalking系列博客1-安装单机版 Skywalking
  3. CoreLink CCI-550的概念介绍
  4. linux各种压缩包使用方法
  5. hdu4609 3idiots 三角形计数 FFT
  6. Android为TV端助力 post带数据请求方式,传递的数据格式包括json和map
  7. MapGuide 浏览器可接受参数分析
  8. (转载)Python函数参数传递机制(超级详细)
  9. python 文本框内容变化_监听文本输入框内容值的改变——4种方法
  10. Chinese Whisper 人脸聚类算法实现
  11. 高速收费员招聘考试题计算机题,高速公路面试题和考官题本及答案44套
  12. 云计算面试题及答案,云计算工程师面试题集锦
  13. 按出生年月日对身份证号进行排序
  14. 页面置换算法之 LRU算法
  15. 搭建Prometheus+Grafana实时监控平台监控Java应用服务
  16. CSMA/CD和CSMD/CA
  17. ios系统下input边框有默认阴影
  18. 【IPFS应用开发】--zabbix监控接口配置
  19. matlab 2022更新
  20. 《创业时代》开播,黄轩杨颖还原热血创业

热门文章

  1. [算法]华为笔试题——字母和十进制数映射
  2. 一个td里 两个div重叠
  3. 安装quickLook插件以及解决如何不能读取offic问题
  4. Docker核心技术与实现原理
  5. jenkins 全局工具配置
  6. Ubuntu安装php
  7. 如何在思科交换机上配置Telnet远程登录
  8. go语言基础之切片做函数参数
  9. MySQL与Spring事务隔离级别
  10. CSS最基础的语法和三种引入方式