粒子滤波算法简介与matlab程序.docx
文本预览下载声明
粒子滤波作者-niewei120——nuaaBayes法则:贝叶斯定理由英国数学家贝叶斯 ( Thomas Bayes 1702-1763 ) 发展,用来描述两个条件概率之间的关系,比如 P(A|B) 和 P(B|A)。按照乘法法则:P(A∩B)=P(A)*P(B|A)=P(B)*P(A|B),可以立刻导出贝叶斯定理公式:P(A|B)=P(B|A)*P(A)/P(B)。通常,事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的;然而,这两者是有确定的关系,贝叶斯法则就是这种关系的陈述。Pr(A)是A的先验概率或边缘概率。之所以称为先验是因为它不考虑任何B方面的因素。Pr(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率。Pr(B|A)是已知A发生后B的条件概率,也由于得自A的取值而被称作B的后验概率。Pr(B)是B的先验概率或边缘概率,也作标准化常量(normalized constant)。先验概率的计算比较简单,没有使用贝叶斯公式;而后验概率的计算,要使用贝叶斯公式。若用Pr(B|A)/Pr(B)表示标准似然度,则后验概率 = 标准似然度 * 先验概率。例子:一座别墅在过去的 20 年里一共发生过 2 次被盗,别墅的主人有一条狗,狗平均每周晚上叫 3 次,在盗贼入侵时狗叫的概率被估计为 0.9,问题是:在狗叫的时候发生入侵的概率是多少?我们假设 A 事件为狗在晚上叫,B 为盗贼入侵,则 P(A) = 3 / 7,P(B)=2/(20·365)=2/7300,P(A | B) = 0.9,按照公式很容易得出结果:P(B|A)=0.9*(2/7300)/(3/7)=0.00058贝叶斯决策理论方法基本思想是:1、已知类条件概率密度参数表达式和先验概率。 2、利用贝叶斯公式转换成后验概率。 3、根据后验概率大小进行决策分类。贝叶斯滤波的核心思想就是利用已知的信息来判断状态变量的后验概率,在目标跟踪中也就是对所有观测值 Z1:Zk={Z1,Z2…Zk}已知的情况下,计算出后验概率P(Xk|Z1:k),其计算的方法具体分为预测和更新。预测:在系统还没有获得 k 时刻观测值 Zk情况下,利用 k-1 时刻的先验概率P(Xk-1|Z1:k-1)及 k 时刻的先验概率P(Xk|Z1:k-1)得到预测值。更新:更新实际上是对预测的一个修正过程,利用最新的观测值 Zk和前面求得到P(Xk|Z1:k-1)得到 k 时刻的后验概率P(Xk|Z1:k)。蒙特卡洛方法蒙特卡洛(Monte Carlo)方法或者称为随机采样方法,由于现实中的很多问题无法直接分析求解,所以在统计上就引入了随机模拟方法,利用随机过程来做统计检验的算法。其基本思想为:当所求解问题是某种随机事件出现的概率,或者是某个随机变量的期望值,或者是某个随机变量的函数的期望值时,通过某种“实验”的方法,以这种事件出现的频率估计这一随机事件的概率,或者得到这个随机变量的某些数字特征,并将其作为问题的解。有一个例子可以使你比较直观地了解蒙特卡洛方法:假设我们要计算一个不规则图形的面积,那么图形的不规则程度和分析性计算(比如,积分)的复杂程度是成正比的。蒙特卡洛方法是怎么计算的呢?假想你有一袋豆子,把豆子均匀地朝这个图形上撒,然后数这个图形之中有多少颗豆子,这个豆子的数目就是图形的面积。当你的豆子越小,撒的越多的时候,结果就越精确。在这里我们要假定豆子都在一个平面上,相互之间没有重叠。在解决实际问题的时候应用蒙特卡洛方法主要有两部分工作:用蒙特卡洛方法模拟某一过程时,需要产生各种概率分布的随机变量。用统计方法把模型的数字特征估计出来,从而得到实际问题的数值解。粒子滤波的方法1.蒙特卡洛方法的求积分首先利用蒙特卡洛方法的求解积分过程如下:加入要对进行积分运算,上式为一个基于 X 变量的积分,p(X)为 X 的概率分布,f(X)是 p(X)的可积函数,独立抽取 N 个随机样本服从分布 p(X), 且独立同分布,那么概率分布 p(X)可以近似地写为:后者为狄拉克δ函数,则积分过程可以近似表示为:2.利用蒙特卡洛方法的求期望由于期望是对函数和函数概率的积分,了更加容易实现积分,引入了重要性采样的思想,通过从引入的一个密度函数采样,从而避开了十分困难的采样环节,能够对问题进行求解。对于期望有E [ g ( X )] =∫g ( X ) p ( X )dX,由于p ( X )在理论上求解很困难,因此利用重要性采样把这个困难的问题转换成一个可知的密度函数q ( X ),从中采样,再求得 g ( X )的期望。因此对于求 g ( X )的数学期望转换成了通过已知概率密度函数 q ( X ),求解的期望的问题。在采样点足够多的时候有:从 q ( X )中采样得
显示全部