第20卷第4期Vol.20No.4控制与and决策2005年4月Apr.2005ControlDecision文章编号:100120920(2005)0420361205粒子滤波算法综胡士强1,2,敬忠良1述(1.上海交通大学自动化系,上海200030;2.河北科技大学自动化系,湖北石家庄050054)摘要:对粒子滤波算法的原理和应用进行综述.首先针对非线性非高斯系统的状态滤波问题,阐述粒子滤波的原理;然后在分析采样2重要性2重采样算法基础上,讨论粒子滤波算法存在的主要问题和改进手段;最后从概率密度函数的角度出发,将粒子滤波方法与其他非线性滤波算法进行比较,阐明了粒子滤波的适应性,给出了粒子滤波在一些研究领域中的应用,并展望了其未来发展方向.中图分类号:TP14文献标识码:AOverviewofparticlefilteralgorithmHUShi2qiang1,2,JINGZhong2liang1(1.DepartmentofAutomation,ShanghaiJiaotongUniversity,Shanghai200030,China;2.DepartmentofAutomation,HebeiUniversityofScienceandTechnology,Shijiazhuang050054,China.Correspondent:HUShi2Abstract:TheAlgorithmandapplicationsrelatedtoparticlefilteraresurveyed.Aimingatthenonlinearƒnon2Gaussianfilterproblem,thegenericideasofparticlefilteraregiven,basedontheanalysisofstandardalgorithmofsampling2importance2resamplingfilter,theproblemsofparticlefilterarediscussedandsomeimprovementmethodsareillustrated.Fromviewofprobabilitydensityfunction,thecomparisonsbetweenparticlefilterandothersnon2linearfilteralgorithmsandapplicabilityareintroduced,someapplicationsinthedevelopedareasarereviewed,Finally,furtherresearchdirectionsarepoin1引言法的基础.粒子滤波是指:通过寻找一组在状态空间中传播的随机样本对概率密度函数p(xk|zk)进行近似,以样本均值代替积分运算,从而获得状态最小方差估计的过程,这些样本即称为“粒子”.采用数学语言描述如下:对于平稳的随机过程,假定k-1时刻系统的后验概率密度为p(xk-1|zk-1),依据一定原则选取n个随机样本点,k时刻获得测量信息后,经过状态和时间更新过程,n个粒子的后验概率密度可近年来,科研人员在机动目标跟踪、信号传输与压缩、金融领域数据分析、图像处理等方面提出许多非线性滤波新方法1~4,这些算法都是基于贝叶斯采样估计的顺序重要采样(SIS)滤波思想.Hammersley等在20世纪50年代末就提出了基展6,但上述研究始终未能解决粒子数匮乏现象和计算量制约等问题,因此未引起人们的重视.直到1993年由Gordon等1提出了一种新的基于SIS的收稿日期:2004205213;修回日期:2004207212.基金项目:国家自然科学基金项目(60375008);中国博士后科学基金项目(2003034265);上海市博士后基金项目(SH0325);河北省博士基金项目(B2004510).作者简介:胡士强(1969—),男,河北定州人,教授,博士后,从事非线性滤波、图像理解等研究;敬忠良(1960—)估计即达到了最优贝叶斯估计的效果4.粒子滤波算法摆脱了解决非线性滤波问题时随机量必须满足高斯分布的制约条件,并在一定程度上解决了粒子数样本匮乏问题,因此近年来该算法在许多领域得到成功应用.目前已有许多会议和讨论组都将粒子滤波作为专题进行深入讨论和学术交流7~9.2基本粒子滤波算法2.1最优贝叶斯估计假定动态时变系统描述如下:wk=p(z1:k|x0:k)p(x0:k)=q(xk|x0:k-1,z1:k)q(x0:k-1|z1:k)p(zk|xk)p(xk|xk-1)(7).wk-1q(xk|x0:k-1,z1:k)由概率密度p(xk-1|z1:k-1),利用重采样方法可得NiN个随机样本点{xk-1}i=1,则概率密度函数可表示为∑wixip(xk-1|z1:k-1)=k-1∆(xk-1-k-1);(8)i=1更新概率密度函数为N∑wiip(xk|z1:k)≈k∆(xk-xk).(9)i=1xk=fk(xk-1,vk-1),zk=hk(xk,nk).(1)其中若已知状态的初始概率密度函数为p(x0|z0)=p(x0),则状态预测方程为p(xk|z1:k-1)=p(zk|xiiik)p(xk|xk-1)wii(10)k=wk-1,q(xk|xk-1,zk)iiiNiN样本点{xk}i=1可由k-1时刻的样本点{sk-1}i=1通过式(1)获得.SIS方法的实现步骤如下:∫p(xk|xk-1)p(xk-1|z1:k-1)dxk-1;(2)1)2)3)4)从q(xk|xk-1,zk)中随机抽取n个有限样本;逐点计算对应的p(xk|xk-1)和p(zk|xk);利用式(10)计算对应样本的重要性权系数;p(zk|xk)p(xk|z1:k-1)p(xk|z1:k)=(3).p(z|...