加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

粒子滤波

(2012-09-19 18:31:10)
标签:

杂谈

分类: 研究学习

信号干扰比 Signal to Interference Ratio

  定义为(RSCP/Interference)×SF。这里针对的下行信号RSCP为DPCH或者PDSCH信道上接收信号码功率; Interference为在RSCP测量的时隙上不能被接收机消除的干扰;具体获取方法依赖于具体的设备。目前pecker取的是对应时隙的ISCP作为Interference。SF为使用的扩频因子转换为dB,计算公式为:SIR( dB ) = RSCP(dBm)- ISCP(dBm) + 10log(SF)。如果UE占用了多个下行时隙,那么这里给出的是第一个时隙的SIR。 C/I代表的是邻频干扰就是同一设备接受到的有用信号码功率和干扰信号码功率之比。即PCCPCH C/I = PCCPCH RSCP(dB) - ISCP[0] 其中ISCP是干扰信号码功率,在特定时隙内的midamble上测量的接收信号中的干扰。ISCP的参考点必须是Rx天线连接器。S:@ P-CCPCH RSCP 是基本公共控制物理信道(Primary Common Control Physical Channel )接收信号的码功率(Received Signal Code Power ),本小区或相邻小区P-CCPCH的接收功率。参考点必须是UE天线连接器。.
  重要性重采样 Sampling Importance Resampling粒子滤波中的一个采样方法
  传统分粒子滤波器应用顺序重要性采样( sequential importance sampling, SIS) ,会引起粒子退化, 因为随着循环的运行,一些粒子越来越重要,规一化的权重逐渐趋向1,而另一些权重趋向0,这样大量低权重的粒子就被从粒子集里删掉了,为了避免这种退化, 有研究者应用重要性采样重新采样(SIR ) , 忽略低权重粒子,对高权重粒子不断复制,这种方法的一个极限情况是粒子集中仅包含一个特定的粒子和它的所有复制,引起严重的粒子耗尽问题。

 

粒子滤波是指: 通过寻找一组在状态空间中传播的随机样本对概率密度函数p(Xk|Zk)进行近似,以样本均值代替积分运算,从而获得状态最小方差估计的过程, 这些样本即称为“粒子”。

    采用数学语言描述如下:对于平稳的随机过程, 假定k-1时刻系统的后验概率密度为p(Xk-1|Zk- 1),依据一定原则选取n个随机样本点,k时刻获得测量信息后,经过状态和时间更新过程,n个粒子的后验概率密度可
近似为p(Xk|Zk)。 随着粒子数目的增加, 粒子的概率密度函数逐渐逼近状态的概率密度函数, 粒子滤波估计即达到了最优贝叶斯估计的效果。

    粒子滤波算法摆脱了解决非线性滤波问题时随机量必须满足高斯分布的制约条件, 并在一定程度上解决了粒子数样本匮乏问题。

 

 

粒子滤波(PF:Particle Filter)  

 

  粒子滤波(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)算法直接估计未知参数。

 

粒子滤波算法。他源于Montecarlo的思想,即以某事件出现的频率来指代该事件的概率。因此在滤波过程中,需要用到概率如P(x)的地方,一概对变量x采样,以大量采样的分布近似来表示P(x)。因此,采用此一思想,在滤波过程中粒子滤波可以处理任意形式的概率,而不像Kalman滤波只能处理高斯分布的概率问题。他的一大优势也在于此。

   再来看对任意如下的状态方程  

  x(t)=f(x(t-1),u(t),w(t))

  y(t)=h(x(t),e(t))           

  其中的x(t)为t时刻状态,u(t)为控制量,w(t) 和e(t)分别为模型噪声和,观测噪声。前一个当然是状态转移方程,后一个是观测方程。那么对于这么一个问题粒子滤波怎么来从观测y(t),和x(t- 1),u(t) 滤出真实状态x(t)呢?

 看看滤波的预估阶段:粒子滤波首先根据x(t-1) 和他的概率分布生成大量的采样,这些采样就称之为粒子。那么这些采样在状态空间中的分布实际上就是x(t-1) 的概率分布了。好,接下来依据状态转移方程加上控制量可以对每一粒子得到一个预测粒子。所有的预测粒子就代表了涉及哪些参数化的东西)。

进入校正阶段来:有了预测粒子,当然不是所有的预测粒子都能得到我们的时间观测值y对不,越是接近真实状态的粒子,当然获得越有可能获得观测值y对吧。于是我们对所有的粒子得有个评价了,这个评价就是一个条件概率P(y|xi),直白的说,这个条件概率代表了假设真实状态 x(t)取第i个粒子x 时获得观测y的概率。令这个条件概率为第i个粒子的权重。如此这般下来,对所有粒子都进行这么一个评价,那么越有可能获得观测y的粒子,当然获得的权重越高。好了预测信息融合在粒子的分布中,观测信息又融合在了每一粒子的权重中。

  哈哈最后采用重采样算法(不知道什么是重采样算法,那就只好翻书去吧),去除低权值的粒子,复制高权值的粒子。所得到的当然就是我们说需要的真实状态 x(t)了,而这些重采样后的粒子,就代表了真实状态的概率分布了。

 下一轮滤波,再将重采样过后的粒子集输入到状态转移方程中,直接就能够获得预测粒子了。。

  初始状态的问题:咱们一开始对x(0)一无所知对吧,那咱们就认为x(0)在全状态空间内平均分布呗。于是初始的采样就平均分布在整个状态空间中。然后将所有采样输入状态转移方程,得到预测粒子。嘿嘿再评价下所有预测粒子的权重,当然我们在整个状态空间中只有部分粒子能够获的高权值咯。马上重采样算法来了,去除低权值的,将下一轮滤波的考虑重点立马缩小到了高权值粒子附近。哈哈就这么简单。也很实用。

另外lishuai在文中也提到Particle filter的以下特点:

如果跟kalman滤波相比,那确实。毕竟kalman滤波可以直接得到状态的解析估计,计算量很小。如果跟Markov定位相比,恰恰与 ricky所说相反,粒子滤波计算量小很多,而事实上,粒子滤波被用于定位的背景就是为了降低普通的Markov定位计算量相当大并且随着维数的增长计算量迅速增长的缺陷。(Sebastian Thrun, Wolfram burgard, Dieter fox等在90年代做的一个图书馆机器人导航的项目,其中很多当时他们的工作都成了现今机器人研究领域的热点,比如粒子滤波,SLAM等)。


 

大家可能有几个疑问,
1. Kalman滤波或者EKF都可以做定位并且运算量小,为什么还要用什么Markov定位呢?
2. 为什么Markov定位计算量大并且随着空间维数的增长而增长剧烈?
3.为什么粒子滤波这么神奇,让计算量如此之大的Markov定位运算量骤降?
4.到底粒子滤波实质是什么?
好,现在就一一谈一下我的看法,
1. Kalman滤波或者EKF都可以做定位并且运算量小,为什么还要用什么Markov定位呢?
燢alman滤波是有适用条件的,a。初始状态必须是符合正态分布。b。必须是线性系统。(当然,EKF通过将非线性系统线性化的方法处理非线性系统)。而真实的定位问题很多时候不满足以上两个条件。为什么不满足呢?
先说为什么a不满足:首先举个正态分布无法描述的反例,大家都知道,正态分布是单峰函数,也就是说机器人初始时位于工作空间中某个位置的初始概率最大,其他地方都比这小。如果是采用地图匹配进行绝对定位,上面描述的单峰高斯函数可能就无法精确的描述事实了,比如有十个一模一样的房间。初始时把机器人放在其中一个里面,机器人根据绝对测量传感器获得局部地图,与他携带的先验地图匹配后他发现,他现在呆的位置在他的工作空间中有10个峰值,每个房间一个,因为十个房间一模一样,他无法区分。显然,此时a假设不成立。
再说b为什么不满足:这取决于真实机器人的物理特性,系统的状态更新方程是由里程计或者是dead reckon 得到的,系统的观测方程是由绝对定位系统(或者地图匹配)得到的。对于一般的移动机器人,无论是两个主动轮的形式还是一个主动轮一个steering wheel的形式,由此得到的状态更新方程都是非线性的。
2. 为什么Markov定位计算量大并且随着空间维数的增长而增长剧烈?
Markov定位的基本原理很简单,就是用条件概率描述状态更新,所有的可能的状态都枚举个遍,对于机器人的每一次更新,所有的可能的状态迁移都要被更新一遍,假设我们用栅格描述工作空间,假设t时刻机器人可能的位置为p1,p2,p3,在二维情况下采用正方形栅格划分那么p1有8个邻居,记为 p11,p12,p13,...,p18.在三维情况下,采用立方体划分那么邻居就更多了,有26个。如果维数继续增加,那么邻居增加的更厉害。这里我们以二维情况为例来阐述问题。同理,我们记p2的邻居为p21,p22,。。。p28。p3的邻居为p31,p32,。。。,p38。在t时刻可能的位置只有3个,然而t+1时刻,所有的三个的邻居,以及p1,p2,p3都有可能成为当前位置,但是根据dead reckon的结果,我们可以排除一些小概率的邻居,减少计算量。但是随着时间的推移,整个空间中的所有点都有可能成为估计的当前位置(只不过各个位置的概率不同而已)。这样,如果不采取措施,那状态的更新会是一件巨大的工程。并且,空间维数越大,节点数越多,计算量增长越厉害。
3.为什么粒子滤波这么神奇,让计算量如此之大的Markov定位运算量骤降?
粒子滤波强就强在它用统计的基于采样的方法来描述整个空间中的概率分布。Markov的思想是你既然当前位置的分布概率是个特殊分布,我就干脆把你的样本空间离散化(把空间划分为栅格),计算每一个样本的概率(计算每一个栅格的概率)。但是这带来了问题2.为了解决这个问题,粒子滤波采用了另一种思想:现在我不再均匀的把样本空间离散化了,而是根据我当前所掌握的概率分布对空间进行采样(重要性采样),显然,概率小的地方少采几个样(反正概率小,即使采多了,每个样本差别也不大,完全可以由附近的其他样本反映);概率高的地方应该多采几个样。这样,我们可以规定,每次都采样N个,对于大概率的地方多采,小概率的地方少采。根据概率里的大数定律,可以证明即使在维数增加的时候依然保持采N个样,仍然可以保持性能。这就是粒子滤波高的地方,当维数非常高的情况,Markov定位都累的算不出来了,因为需要更新的状态对实在是太多了,而人家粒子滤波依然只采N个样,计算量还那样,变化不大。
4.到底粒子滤波实质是什么?
事实上,我们完全可以换一种思维来认识粒子滤波。就是基于奖励惩罚机制(强化学习)的优化的思想。
首先,根据状态转移方程,对于每个粒子的位置进行更新。但是这个更新只是基于dead reckon得到的,我们要融合绝对定位与相对定位,绝对定位的信息还没有融合进去呢。根据状态转移方程得到的新状态到底行不行?能有多大的概率?这还取决于绝对定位的结果也就是输出方程。把状态转移方程的到的结果代入输出方程,得到一个输出,这个输出是估计值,而根据绝对定位的观测,这个值对应的观测值也是可以测量得到的,现在这两个值之间有个差额,很明显,这个差额越小,刚才的到的状态越可信,这个差额越大,状态越不可信。好,就把这个指标作为评估函数(像GA,pso等优化算法里的evaluation function),来修正各个状态的估计概率。

 

基于蒙特卡洛方法的高斯混合采样粒子滤波算法研究

本文提出了一种标准粒子滤波器的改进算法——高斯混合采样粒子滤波算法(GMSPPF)。仿真结果表明,新算法在大幅降低计算复杂度的前提下,具有比标准粒子滤波算法(SIR-PPF)更好估计性能.

    关键词  卡尔曼滤波;粒子滤波;序列蒙特卡洛;贝叶斯滤波;高斯混合采样

1  引言

    贝叶斯方法为动态系统的估计问题提供了一类严谨的解决框架。它利用已知的信息建立系统的概率密度函数可以得到对系统状态估计的最优解。对于线性高斯的估计问题,期望的概率密度函数仍是高斯分布,它的分布特性可用均值和方差来描述。卡尔曼滤波器很好地解决了这类估计问题[1]。对于非线性系统的估计问题,最经典并得到广泛应用的方法以扩展的卡尔曼滤波为代表,这类方法需要对模型进行线性化,同时要求期望的概率密度函数满足高斯分布,然而在对实际系统建模时,模型往往是非线性非高斯的。此时,最优估计很难实现。

    粒子(particle)滤波器——序列重要性采样粒子滤波器,是一种适用于强非线性、无高斯约束的基于模拟的统计滤波器[2]。它利用一定数量的粒子来表示随机变量的后验概率分布,从而可以近似得到任意函数的数学期望,并且能应用于任意非线性随机系统。本文介绍一种估计性能更好的粒子滤波算法——高斯混合采样粒子滤波器(GMSPPF),相比通常意义上的粒子滤波算法(SIR-PF),GMSPPF粒子滤波器具有更小的系统状态估计的均方误差和均值。

2  贝叶斯滤波问题

    贝叶斯滤波用概率统计的方法从已观察到的数据中获得动态状态空间(DSS)模型参数。在DSS模型中,包含状态和观测两个方程[3][4]。其中状态转移方程(State Equation)通常写作

http://www.studa.net/Newspic/200851/144787348.jpg               (1)

这里,http://www.studa.net/Newspic/200851/144791058.jpg是白噪声独立的随机序列,而且分布是已知的。观测方程表达式写为

http://www.studa.net/Newspic/200851/144797538.jpg                 (2)

这里:http://www.studa.net/Newspic/200851/1447127387.jpg

    图1描述了DSS模型中状态转移和似然函数的关系。假设初始时刻系统的状态分布http://www.studa.net/Newspic/200851/1447125195.jpg

http://www.studa.net/Newspic/200851/1447127572.jpg

图1  动态状态空间模型(DSSM)

    这样,贝叶斯估计的问题理解为:利用观测到的信息Yk,求解系统状态的概率分布http://www.studa.net/Newspic/200851/1447135361.jpg。若系统状态的变化是隐马尔柯夫过程,即当前系统的状态信息只与上一个时刻的状态有关,可以通过预测和更新的途径求解。

http://www.studa.net/Newspic/200851/1447136607.jpg      (3)

这里:

http://www.studa.net/Newspic/200851/144713911.jpg     (4)

    假设xk,wk是相互独立的随机变量,满足

。于是,参考(1)式可以把(4)式写为

http://www.studa.net/Newspic/200851/1447138249.jpg     (5)

    其中,http://www.studa.net/Newspic/200851/1447141044.jpg是已知时,xk可以通过确定性方程(1)得到。依据贝叶斯准则,系统状态估计量

http://www.studa.net/Newspic/200851/1447143832.jpg     (6)

    其中,

http://www.studa.net/Newspic/200851/1447143288.jpg       (7)

    另外,在给定 xk,vk,分布的条件下, yk的条件概率依据测量方程(2)可以表示为如下形式

http://www.studa.net/Newspic/200851/1447148336.jpg      (8)

    由(6)式可以看出,后验概率密度包含3个部分。先验概率http://www.studa.net/Newspic/200851/1447158036.jpg。如何获得这三项的近似是贝叶斯滤波的核心问题。更新方程(5)中观测值用来对的先验预测值修正,从而获得状态的后验概率。方程(3)和(6)的递归关系构成了求解贝叶斯估计问题的两个步骤:预测与更新。如果(1),(2)中的hk,fk是线性的,且噪声wk,vk满足高斯白噪声,可以把贝叶斯估计问题简化为卡尔曼分析解。但这类问题仅仅是实际问题中很小的一个部分。对于更多的问题,很难得到分析解。只有通过对问题的近似线性处理(扩展卡尔曼滤波)或其它途径(蒙特卡洛方法)实现非线性、非高斯问题的解。依据后面分析问题需要,这里重点对蒙特卡洛方法积分进行说明。

3  蒙特卡洛方法

    在过去的二十多年,蒙特卡洛方法得到了很大的发展。其优点就是用系列满足条件的采样点及其权重来表示后验概率密度。蒙特卡洛方法采用统计抽样和估计对数学问题进行求解。按照其用途,可以把蒙特卡洛方法分为三类[5]:蒙特卡洛抽样、计算、优化。其中,蒙特卡洛抽样是寻找有效的、方差很小的、用于估计的抽样方法。蒙特卡洛计算则是设计产生满足特定要求随机数的随机发生器的问题。而蒙特卡洛优化是采用蒙特卡洛思想对实际中的非凸非差分函数优化求解。对于http://www.studa.net/Newspic/200851/1447207540.jpg

    重要性抽样(Important Sampling)解决了如何借助于已知分布来对实现有效采样的问题,由Marshall 1965年提出。当数据空间十分巨大时,重要性抽样只对其中“重要”区域进行采样,节省了计算量。对于高维采样空间模型,如统计物理学、贝叶斯统计量,这一点尤为重要。重要性抽样的中心思想是选择一个覆盖真实分布p(x)的建议分布q(x)[8]。这样,

http://www.studa.net/Newspic/200851/1447201854.jpg      (9)

对q(x)作蒙特卡洛抽样,假设粒子数目为N,有

http://www.studa.net/Newspic/200851/1447205712.jpg       (10)

其中,http://www.studa.net/Newspic/200851/1447207423.jpg称为重要性权重,再作归一处理,

http://www.studa.net/Newspic/200851/1447217852.jpg    (11)

http://www.studa.net/Newspic/200851/1447207423.jpg是归一化权重。为了减小估计的方差,选择的建议性分布q(x)与p(x)尽可能匹配。通常,建议分布q(x)需要一个长的拖尾,这样可以解决区间之外的干扰。确切的说,匹配的q(x)必须与p(x)f(x)成正比[9]。当q(x)与p(x)不匹配时,w(x(i))是不均匀分布的,在整个递归迭代的过程中,存在大量的权值极小的样本,而这些样本对估计的贡献很小。事实上,权值较大的少数样本决定蒙特卡洛采样的估计精度。大量时间损耗在这些“无关紧要”的粒子计算上,即所谓的粒子退化现象(Degeneracy Problem)。目前,标准的粒子滤波器选择先验概率(Prior)作为建议分布。

    对于粒子退化现象,采样—重要性重采样方法给出了很好的解决途径。其基本思想就是通过在两次重要性采样之间增加重采样步骤,消除权值较小的样本,并对权值较大的样本复制,降低了计算的复杂度。在o(N)时间复杂度范围内可以已排序的均匀分布序列作重采样处理。

   http://www.studa.net/Newspic/200851/1447213069.jpg,具体的算法用伪码语言写为如下的形式:

    步骤1:令http://www.studa.net/Newspic/200851/1447223140.jpg是随机变量的累计概率密度序列。

    步骤2:初始假设http://www.studa.net/Newspic/200851/1447245659.jpg,  产生一组序列分布。对一个固定的j,分别用http://www.studa.net/Newspic/200851/1447253458.jpg。需要说明的是,重采样方法在消除粒子退化问题的

同时,也带来了其它两个问题:首先,降低了粒子运算并行执行的可能性;其次,由于权值较大的粒子多次被选择,粒子的多样性减少。这种情况尤其在小过程噪声条件下表现更为明显[11]。

图2  SIR-PF重要性采样与重采样示意图(略)

GMSPPF滤波算法

    如前所述,利用序列重要性采样和重采样的方法,粒子滤波可以有效的递归更新后验概率的分布。但是,由于对粒子未加假设,大量的粒子在处理非线性、非高斯问题时出现了计算的高复杂性问题。另外,由于少数权值较大的粒子反复被选择,粒子坍塌明显。文献[4]提出了在重要性采样步骤的建议分布的生成阶段“搬运”粒子到似然较高区域,可以缓解坍塌,同时提高估计的性能。但是不可避免的是对每一个粒子的后验概率处理,使得计算的复杂性进一步加剧。鉴于此种情况,这里介绍一种新颖的高斯混合采样粒子滤波器(Gaussian Mixture Sigma Point  Particle Filter,GMSPPF)。GMSPPF算法利用有限高斯混合模型表征后验概率分布情况,可以通过基于重要性采样的加权的后验粒子,借助于加权的期望最大化算法(Weighted Expection Maximization)替换标准重采样步骤,降低粒子坍塌效应。 

4.1  基于高斯混合近似的采样卡尔曼滤波器

    根据最优滤波理论,一个概率密度p(x)都可以写作高斯混合模型(Gaussian Mixture Model)。即http://www.studa.net/Newspic/200851/1447281901.jpg为均值,以p(g)为协方差矩阵的随机向量x的高斯分布。

    考虑DSS状态转移方程和观测方程,假设先验概率http://www.studa.net/Newspic/200851/1447323912.jpg

这里,http://www.studa.net/Newspic/200851/1447325934.jpg对应的均值和方差可以通过采样卡尔曼滤波器(Sigma Point KF)计算

4.2  基于观测更新的重要性采样(Important Sampling)

    前已叙及重要性抽样是一种蒙特卡洛方法,即用一组带有权值的样本数据来表征随机变量的概率密度。利用DSS模型的一阶马尔柯夫本质和给定状态的观测值依赖性,可以推导递归的权值更新方程http://www.studa.net/Newspic/200851/1447342535.jpg,这是因为GMSPPF算法用GMM表示后验概率,本次后验同时又是下一个时间步的先验概率,GMM模型中高斯核对后验概率做了平滑处理。基于观测更新步骤的重要性采样方法中对粒子不作任何假设,对非线性、非高斯问题具有很强的鲁棒性。

4.3 采用加权的EM算法做重采样和GMM还原

    基于观测更新步骤的重要性采样输出是一组加权的粒子,在标准的粒子滤波器中,这些粒子必须作重采样处理丢弃小权值粒子,同时对权值较大的粒子做放大处理。通过这种处理,可以有效的防止粒子集合的方差增加太快。不幸的是,重采样步骤只对当观测似然微弱、大量粒子聚集极少数粒子副本情况有效。在GMSPPF算法中,采用加权的期望最大(Weighted Expection Maximization)直接得到GMM模型,实现对加权粒子的最大似然拟合,这就相当于对粒子的后验概率做了平滑,避免了粒子坍塌问题,同时,GMM模型中的高斯核的个数减少到G,防止其呈指数级增长,降低了算法复杂度。

    为了比较算法的性能,系统状态估计的条件均值http://www.studa.net/Newspic/200851/1447354520.jpg可以通过两个方法计算,即在加权的EM算法平滑之前,用下面公式

http://www.studa.net/Newspic/200851/1447356664.jpg

求解,http://www.studa.net/Newspic/200851/1447353758.jpg描述了系统的均值与均方误差性能。

5  算法性能分析与结论

    这里,给定系统状态估计问题的算法评估模型

http://www.studa.net/Newspic/200851/1447363771.jpg              (12)

http://www.studa.net/Newspic/200851/1447369392.jpg。另外,非平稳观测模型

http://www.studa.net/Newspic/200851/1447378218.jpg               (13)

http://www.studa.net/Newspic/200851/1447374966.jpg。如果给定含噪的系统状态观测值yk,采用两种不同的算法:标准的粒子滤波算法SIR-PF以及GMSPPF算法对系统的状态xk估计。每次实验共做150次,每次的观察样本重新产生,SIR-PF算法中粒子的个数是250个。GMSPPF算法中采用两种方案:第一种方案用5个高斯核拟合状态后验概率。状态噪声vk,观测噪声nk各用一个高斯核拟合。第二种方案则用3个高斯核拟合Gamma(3,2)分布的拖尾状态噪声,这里拟合方法采用EM算法。图3、图4描述了系统的隐状态和观测值及SIR-PF,GMSPPF算法系统状态的估计值。

图3  SIR-PF粒子滤波器状态估计(略)

图4  GMSPPF粒子滤波器状态估计(略)

    采用4.3部分的均方误差和均值计算公式对不同算法对系统状态估计性能作了比对。图3、图4曲线表明,在系统的观测噪声nk均方误差很小,而过程噪声http://www.studa.net/Newspic/200851/144739742.jpg作为建议分布的标准粒子滤波器性能很差。这是因为观测方程中峰值似然函数和系统状态急剧的跳跃变化产生的结果。尽管可以通过采样卡尔曼(Sigma-Point)滤波器将粒子向似然峰值区域搬动解决这一问题,但是也使得计算量加大。GMSPPF算法两种不同方案都具有比SIR-PF更好的系统状态估计性能,均方误差比后者数量级降低了1/103-1/104。与1个高斯核拟合过程噪声的GMSPPF算法比较,3个高斯核拟合算法性能更好,但时间复杂度同样有所提高。

    由于GMSPPF算法在大幅度降低了算法的计算复杂度同时,可以获得精确的系统估计性能。所以说,GMSPPF算法为粒子滤波理论实时应用,如目标定位(单目标与多目标)、时变信道估计、图像增强、机器故障诊断以及语音信号处理等提供了一个新的方案。

 

 

流形学习算法是一种有监督的降维算法,有代表性的算法有:局部线性嵌入(LLE),拉普拉斯特征映射(LE)等。

LLE:2000年提出的一种非线性降维方法,它的基本思想是将全局非线性转化为局部线性,而互相重叠的局部邻域能够提供全局结构的信息,这样对每个局部进行线性降维后,在按照某种规则将结果组合在一起,就能够得到低维的全局坐标表示。

    学习目标:在低维空间中保持每个邻域中的权值不变,即假设嵌入映射在局部是线性的条件下,最小化重构误差。

    复杂度:比线性降维高,但可以很好的保留数据的非线性结构。

    优点:更适合于具有明显非线性特征的高维数据的降维处理。

    缺点:要求所学习的流形不闭合,局部线性,稠密采样,参数有过多选择,对噪音敏感。

LE:2002年提出的一种非线性降维方法。

    优点:对于高维数据点进行剧烈降维映射后的分类性能来说是最优的。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有