基于硬件实现的粒子滤波重采样算法研究
- 格式:pdf
- 大小:2.08 MB
- 文档页数:6
一种改进重采样的粒子滤波算法常天庆;李勇;刘忠仁;董田沼【期刊名称】《计算机应用研究》【年(卷),期】2013(30)3【摘要】In order to solve the loss of particle diversity exiting in resampling process of particle filter, this paper presented a particle filter algorithm based on improved resampling. It classified the particles to different groups according to partial resampling. It kept the particles with medium weight values same, and combined the other two groups with high and low weight values linearly and randomly to generate new particles using Thompson-Taylor algorithm. Experimental results show that the improved algorithm can reduce computational complexity and keep the diversity of particles and it also enhances the performance of filter.%针对粒子滤波重采样过程中存在的粒子多样性丧失问题,提出一种改进重采样的粒子滤波算法.按照局部重采样算法对粒子进行分类,中等权值的粒子保持不变,大、小两种权值的粒子采用Thompson-Taylor算法进行随机线性组合产生新粒子.实验结果表明,该算法能在降低计算复杂度的同时不丧失粒子多样性,提高了滤波性能.【总页数】3页(P748-750)【作者】常天庆;李勇;刘忠仁;董田沼【作者单位】装甲兵工程学院控制工程系,北京100072【正文语种】中文【中图分类】TP301.6【相关文献】1.一种改进重采样的粒子滤波算法 [J], 李善姬;禹爱兰2.一种改进的自适应重采样粒子滤波算法 [J], 骆荣剑;李颖;钱广华;魏祥3.改进重采样粒子滤波算法在GPS中的应用 [J], 李子昱;秦红磊4.一种基于改进重采样的粒子滤波算法 [J], 于春娣;丁勇;李伟;薛琳强5.基于重采样技术改进的粒子滤波算法 [J], 李小婷;史健芳因版权原因,仅展示原文概要,查看原文内容请购买。
粒子滤波(Particle Filtering)是一种基于蒙特卡洛方法的贝叶斯估计算法,广泛应用于非线性非高斯系统的状态估计和参数估计。
在MATLAB中,可以通过编程实现粒子滤波算法,并对其进行重采样。
MATLAB实现粒子滤波的基本步骤如下:
1. 初始化粒子:根据系统的状态空间模型,生成一组随机粒子,并赋予初状态。
2. 预测:根据系统的动态模型和观测模型,对粒子的状态进行预测,得到预测的粒子集合。
3. 更新:利用观测值更新粒子的状态,通过加权卡尔曼滤波或其他贝叶斯方法更新粒子的权重。
4. 重采样:根据粒子的权重进行重采样,生成新的粒子集合。
5. 输出:根据粒子集合的均值和方差,估计系统的状态和参数。
在MATLAB中实现粒子滤波重采样,可以参考以下步骤:
1. 定义粒子滤波相关的函数,如初始化粒子、预测、更新、重采样等。
2. 根据问题的具体形式,编写主函数,包括粒子滤波的各个步骤。
3. 调用相关函数,实现粒子滤波算法。
基于双重采样粒子滤波的目标轨迹跟踪研究黄梨力【摘要】In order to guarantee the real‐time performance and improve the accuracy of target tracking ,the model of double sampling particle filter is proposed .First of all , by using the particle aggregation technique ,the weighted average of the particle weights of the state space is used to form the aggregated particles .Then ,using the linear optimization to produce new particles ,the distribution of the particle in the state space is optimized , and the diversity of the particles is increased , and the accuracy of the algorithm is improved .The simulation results show that the algorithm proposed in this paper is accurate and robust .%为保证对目标轨迹跟踪的实时性,提高其精度,提出双重采样粒子滤波模型。
首先,利用粒子聚合技术对状态空间的粒子权值进行加权平均处理,形成聚合粒子,使得粒子在状态空间内分布更为合理。
然后,利用线性优化方法重新产生新的粒子,优化粒子在状态空间的分布特性,增加粒子的多样性,提高算法的精确性。
经仿真验证,本文提出的算法较准确,鲁棒性也较高。
1380 引言滤波的先决条件是给系统建立数学模型,包括状态方程和观测方程。
通常系统模型具有复杂的非线性和非高斯分布的特性。
通常,适用于非线性系统的滤波方法中只有粒子滤波适用于非高斯系统的的滤波问题[1]。
但是基本粒子滤波随着滤波时间的增加避免不了会出现大量计算浪费在对估计不起任何作用的微小粒子上,为了解决这种问题,引入重采样来去除那些权值小的粒子,保留并复制那些权值较大的粒子[2]。
重采样带来的负面作用是具有较大权值的粒子被多次选取,从而损失了粒子的多样性。
针对粒子滤波算法的退化及重采样使得样本枯竭问题,利用智能优化算法代替重采样过程,旨在改善非线性滤波的滤波精度,本文基于此,梳理了相关文献,研究了智能优化粒子滤波算法综述。
1 进化类算法优化粒子滤波算法进化类优化算法主要包含遗传算法和免疫算法,而进化类算法优化粒子滤波算法也是主要围绕这两种优化算法的。
文献[3]应用遗传算法的进化思想来优化重采样算法,将粒子权值作为适应度值,合理设定阈值,利用最佳个体保存法保存高适应度粒子,利用自适应交叉、变异操作对低适应度粒子进行进化,将高适应度粒子与进化粒子组合成新的粒子集进行状态估计。
文献[4]针对经典PF算法存在的权值退化问题,PF算法中融入人工免疫算法,依据粒子权值的大小对采样的粒子进行变异处理,然后搜索最优粒子,迫使粒子集合向真实后验分布概率较高的区域移动,从而间接地使取样粒子的建议分布函数和真实后验分布相似。
2 群智能算法优化粒子滤波算法群智能优化算法是受社会昆虫(蚂蚁、蜜蜂等)和群居脊椎动物(鸟群、鱼群和兽群等)的启发而出现的优化算法。
文献[5]针对粒子滤波算法权值退化和多样性匮乏造成的滤波精度下降问题,提出了权值抖动萤火虫算法和不完全重采样结合的方法来改进粒子滤波。
文献[6]提出一种基于果蝇优化思想的粒子滤波算法。
该方法将粒子权值作为个体适应度值,并将果蝇不断从低浓度的地方飞向高浓度的地方的觅食寻优过程引入到粒子滤波当中,驱使粒子不断向高似然区域移动,提高了粒子群的整体质量。
一种多尺度重采样粒子滤波算法张燕【摘要】粒子滤波过程中通过引入重采样消除粒子匮乏现象,但是重采样过程却削弱了粒子的多样性,导致粒子贫化。
为协调粒子多样性和样本贫化之间的冲突,提出一种多尺度重采样粒子滤波算法,粒子空间重采样划分多个尺度,然后重新定义各尺度粒子权重并重采样,用尺度熵值度量重采样粒子的多样性,指导重采样。
仿真实验结果表明,多尺度重采样粒子滤波算法有效提高了精度,适用于高精度系统滤波计算,并将应用于精细果业中数据同化。
%The introduction of resampling into particle filtering to eliminate particle deficiency weakens the diversity of particles and leads to particle dilution. To reconcile the conflict between particle diversity and sample dilution,a multi-scale-resampling-based particle filtering algorithm is proposed. The particle spatial resampling is divided into multiple scales,and particle weights are redefined for each scale before resampling,using scale entropy as a guide to measure the diversity of resampled particles. The simulation experiment shows that multi-scale-resampling- based particle filtering algorithm significantly increases the precision and is practical for high-precision systematic filtering computation,and it can be applied to the data assimilation of precision fruit.【期刊名称】《苏州市职业大学学报》【年(卷),期】2014(000)003【总页数】4页(P11-13,30)【关键词】粒子滤波;粒子多样性;重采样;多尺度;熵【作者】张燕【作者单位】苏州市职业大学计算机工程学院,江苏苏州 215104【正文语种】中文【中图分类】TP391粒子滤波(particle filter)是一种根据蒙特卡洛(Monte Carlo)仿真原理实现递推贝叶斯估计的滤波技术,其思想是利用粒子集表示概率,通过从后验概率寻找一组在状态空间中传播的随机样本近似地表示概率密度函数,用样本均值代替积分运算,进而获得系统状态的最小方差估计的过程.粒子滤波算法在非线性非高斯模型系统中具有独特的优势,被广泛地应用于目标跟踪、导航与定位、系统错误变化检测、时间序列信号处理、模式识别、金融数据处理,数据同化等[1-3].但是粒子滤波算法仍然存在着粒子退化问题,引入重采样方法一定程度上缓解了粒子退化问题.重采样的基本思想是复制权值较大的粒子,摒弃权值较小的粒子.目前广泛应用的重采样算法有多项式重采样、分层重采样、系统重采样和残差重采样等.然而重采样使得小权重粒子大量消失,大权重粒子被反复复制,会造成样本有效性和多样性的损失,导致样本贫化现象[1].如何协调增加粒子多样性和减少权值较小的粒子数目,是粒子滤波算法研究重点[3].针对粒子滤波算法的缺陷,为了平衡重采样导致的粒子贫化和粒子多样性之间的“冲突”,本文提出一种多尺度重采样粒子滤波算法,主要思想是将重采样粒子权重划分等级,在划分等级时遵循权重越高分级越细,然后用每个等级的粒子权重均值代替该等级粒子采样权重,通过样本各等级粒子的熵度量和控制粒子多样性,从而既保证了重采样的有效性,又避免样本贫化.定义动态系统的状态方程和测量方程描述为式中:χt为系统t时刻的状态;ut-1为系统t-1时刻的输入;yt为系统t时刻的观测量;ut和vt分别为系统t时刻的独立同分布的过程噪声和测量噪声.粒子滤波的目的就是通过观测值y1:t={y1,…,yt}估计t时刻状态χt的值.根据贝叶斯滤波的思想,假设χt服从一阶Markov过程,状态变量初始概率密度函数p(χ0|y0)作为先验知识已知,那么后验分布p(χt| y1:t)的估计为预测/更新递归执行.粒子滤波算法的本质就是将积分运算变为有限样本点的求和运算,即状态概率密度分布用经验概率分布来近似表述为重采样是粒子滤波算法的关键步骤,避免了粒子匮乏.重采样后,更新概率密度函数可以表示为式中:N为粒子数目和分别表示t时刻第i个粒子的状态和权重.重采样通过复制大权值粒子、丢弃小权值粒子可以实现粒子的优胜劣汰,在一定程度上减少了权值退化现象[4].当某个粒子权值较大时,则它将被多次复制.但是单纯复制粒子的方法很容易带来样本贫化现象[5].在基本重采样算法中,粒子多样性的损失是不可避免的,而多样性的损失正是由于去掉了权值小的采样点的同时简单复制权值大的粒子.2.1 粒子权重空间尺度划分设粒子集为Pt=(χ1,χ2,…,χN),粒子空间范围为[Lmin,Lmax],将粒子空间按欧氏距离进行尺度划分,按尺度li划分a个等份,第i个尺度li定义为式中:a为比例因子常量(a>1);i为尺度等级(i≥1);K为尺度等级i的最大值.粒子空间尺度的划分是为了精确重采样,便于度量粒子的分散程度,重采样过程中兼顾粒子多样性和重要性.在尺度划分时遵循了粒子在空间中粒子越密分级越细,保证落入的第i个尺度li的任一个区间li/a中粒子数为小于n,划分i个尺度l0~li的示意图如图1所示.2.2 重采样与粒子多样性的度量目前常根据有效粒子数Neff来确定是否重采样[1].设定阈值Nth,如果Neff<Nth,就采用重采样算法,否则就不进行重采样.本文提出一种多尺度重采样,其思想是将各个尺度中粒子的权重乘以尺度等级,以乘积值代替各尺度中粒子的重采样权重,这样既充分体现了粒子重要性,使权重高粒子仍然有较高的概率被重采样选中,又增加了权重低粒子被重采样选中概率.在t 时刻,第i个尺度中第j个粒子归一化权重值为为了度量重采样粒子的多样性,协调粒子多样性和样本贫化之间的冲突.定义H(Pt)为粒子集Pt在重采样的尺度熵,尺度熵H(Pt)为尺度熵H(Pt)有效度量粒子集的多样性,指导粒子重采样,从而提高粒子滤波的精度和算法运行速度.2.3 多尺度重采样粒子滤波算法步骤1)初始化:t=0,采样,即根据P(χ0)分布采样得到(i=1,2,…,N),t=1.2)基于粒子数N,对粒子空间序列按尺度进行划分i个尺度,使落入的第i个尺度li的任一个区间li/a中粒子数小于n.3)根据式(6)、式(7),计算多尺度重要性重采样权重.4)重采样,并由式(8)计算新的N个粒子的集合尺度熵,如果熵值大于阈值则重新分配粒子权重:=1/N,并进行步骤5;否则返回步骤3.5)状态估计、方差估计并输出,t=t+1,返回步骤2.为了评估多尺度重采样粒子滤波算法(MSPF)的有效性,使用Matlab7.0进行仿真,并与基本粒子滤波算法比较.仿真采用非线性单变量不稳定增长模型,状态方程为式中:系统噪声ut-1和量测噪声vt为服从高斯分布的白噪声.阈值Nth=0.4 N,仿真步数为50步,状态初值χ0=0.算法的滤波精度评价指标采用均方根误差.图2是本文算法和基本粒子滤波算法对运动轨迹状态估计的比较,从图2中可以看出,MSPF算法估计值更接近于真实值,这说明了MSPF算法精度更高.针对基本粒子滤波算法中样本退化问题,提出一种多尺度重采样粒子滤波算法,通过粒子空间重采样划分多个尺度,然后重新定义各尺度粒子权重并重采样,保证算法的有效性,用尺度熵值度量和保持重采样粒子的多样性,避免了粒子贫化.实验结果表明,多尺度重采样粒子滤波算法较好地平衡重采样导致的粒子贫化和粒子多样性之间的“冲突”,提高了滤波性能.下一步研究的重点是如何合理设置尺度K 进一步优化本算法,并应用于精细果业中过程模型预测估计,以指导变量施肥等.【相关文献】[1]胡士强,敬忠良. PF算法综述[J].控制与决策,2005,20(4):361-365.[2]邹国辉,敬忠良,胡洪涛. 基于优化组合重采样的粒子滤波算法[J]. 上海交通大学学报,2006,40(7):1135-1139.[3]李晋惠,白朝政. 基于确定性重采样的粒子滤波算法[J]. 西安工业大学学报,2012,32(11):891-894.[4]于春娣. 一种基于改进重采样的粒子滤波算法[J]. 计算机应用与软件,2013,30(2):296-299.[5]左军毅,张怡哲,梁彦. 自适应不完全重采样粒子滤波器[J]. 自动化学报,2012,38(4):647-652.。
(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号 (43)申请公布日 (21)申请号 202110085423.8(22)申请日 2021.01.22(71)申请人 湖南师范大学地址 410081 湖南省长沙市岳麓区麓山路36号(72)发明人 刘双龙 (74)专利代理机构 长沙市融智专利事务所(普通合伙) 43114代理人 熊开兰(51)Int.Cl.G06F 15/78(2006.01)(54)发明名称一种基于贝叶斯重采样的粒子滤波的FPGA硬件实现方法、装置及目标跟踪方法(57)摘要本发明公开了一种基于贝叶斯重采样的粒子滤波的FPGA硬件实现方法、装置及目标跟踪方法,FPGA实现方法为:粒子采样单元从粒子缓存块中读取旧粒子,从随机数发生器接收随机数,并行对读取的旧粒子进行采样更新;权值更新单元读取观测值,对更新粒子并行进行权重计算,将生成的权重存入权值缓存块;贝叶斯重采样单元采用贝叶斯重采样方法,根据权值缓存块中所有权重值并行进行重采样,并将索引输出值存回相应的索引缓存块;伪随机排列发生器从索引缓存块中读取新粒子的地址,将新的粒子随机分配至各粒子缓存块,实现粒子并行计算中的交换;循环执行上述步骤,直到所有时间步骤迭代完成,完成系统的状态估计。
本发明可提高粒子滤波系统的计算速度。
权利要求书1页 说明书5页 附图2页CN 112732637 A 2021.04.30C N 112732637A1.一种基于贝叶斯重采样的粒子滤波的FPGA硬件实现方法,其特征在于,FPGA单元电路包括:计算模块、伪随机排列发生器、n个随机数发生器、n个粒子缓存块、n个权值缓存块、n个索引缓存块和观测值缓存块,所述计算模块包括输入输出一一对应的n个粒子采样单元、n个权值更新单元和n个贝叶斯重采样单元;所述FPGA硬件实现方法包括:步骤S1,n个粒子采样单元分别从n个粒子缓存块中读取旧粒子,并分别从n个随机数发生器接收随机数,并行对各自读取的旧粒子进行采样更新,再将更新后的粒子传送给对应的权值更新单元;步骤S2,n个权值更新单元均从观测值缓存块读取观测值,对更新后的粒子并行进行权重计算,将生成的权重分别存入对应的权值缓存块;步骤S3,n个贝叶斯重采样单元采用贝叶斯重采样方法,根据n个权值缓存块中的权重值,并行进行重采样,并将重采样得到的索引输出值存回相应的索引缓存块;其中索引输出值为重采样得到的新粒子的地址;步骤S4,伪随机排列发生器从n个索引缓存块中读取新粒子的地址,将新粒子按数量平均并随机分配至n个粒子缓存块,并替换粒子缓存块中现有的粒子;步骤S5,循环执行步骤S1至步骤S4,直到所有时间步骤迭代完成,根据n个粒子缓存块中的所有粒子完成粒子滤波应用系统的状态估计。
基于粒子重采样滤波算法的红外图像消噪李丹;王洪涛【期刊名称】《红外技术》【年(卷),期】2014(000)003【摘要】针对红外图像消噪的特性,提出粒子重采样滤波算法。
首先通过Chapman-Kolmogorov方程对粒子群系统空间状态的概率密度函数预测状态;然后重采样去除小权值粒子,保留复制权值较大的粒子,且大权值粒子多次采样;接着有效粒子数阈值防止粒子退化,划分粒子权值为大、中、小三类,中权值粒子保留,大、小权值粒子合并产生新粒子,通过Thompson-Taylor算法随机挑选新粒子重采样;最后消噪模型采用两种噪声迭加成的混合双模噪声模型,给出了算法流程。
仿真结果表明,本文算法在有效保留图像重要信息的同时对噪声的抑制效果更为理想。
%According to the characteristics of infrared image denoising, resample filter algorithm is presented. Firstly, the probability density function of Chapman-Kolmogorov equation is used to predict the state of the particle swarm system space, then small particle is removed in accordance with resample weights, those particles with larger weight is retained, and are sampled many times; then the effective particle number threshold is set to prevent particle degradation in particle weight, which is divided into large, medium, and small ones. Medium weight particle being kept, big and small weight particles are combined to generate new particles. Through the Thompson-Taylor algorithm new particles are randomly selected to be resampled. Finally denoising model using twokinds of noise hybrid Bimodal Noise Model and the algorithm flow is given. The simulation results show that the algorithm proposed in this paper not only denoise image effectively but also retain important information at the same time.【总页数】5页(P200-204)【作者】李丹;王洪涛【作者单位】河南牧业经济学院,河南郑州450044;河南牧业经济学院,河南郑州450044【正文语种】中文【中图分类】TP391.4【相关文献】1.基于确定性重采样的粒子滤波算法 [J], 李晋惠;白朝政2.基于微分进化的组合重采样粒子滤波算法 [J], 王龙生;顾浩;余云智3.一种基于改进重采样的粒子滤波算法 [J], 于春娣;丁勇;李伟;薛琳强4.基于正则粒子重采样算法的红外成像消噪处理 [J], 陈淑静;马天才5.基于重采样技术改进的粒子滤波算法 [J], 李小婷;史健芳因版权原因,仅展示原文概要,查看原文内容请购买。
基于粒子滤波的声呐图像目标跟踪算法研究黄松威;朱兆彤;胡友峰【摘要】声呐图像目标跟踪技术在水下UUV作战系统中具有重要意义,由于水声环境复杂,噪声干扰严重,导致声呐目标跟踪效果欠佳.本文针对UUV声呐成像特点,首先给出一种改进的Curvelet变换图像增强方法,可以有效降低声呐图像噪声并在一定程度上增强目标图像的边缘.并此基础上,提出一种基于粒子滤波的声呐目标跟踪算法以获得更为准确的目标跟踪效果.仿真结果表明,相较于传统声呐目标跟踪,该方法具有更好的目标跟踪精度以及鲁棒性.【期刊名称】《舰船科学技术》【年(卷),期】2019(041)002【总页数】5页(P135-139)【关键词】声呐目标跟踪;粒子滤波;声呐成像【作者】黄松威;朱兆彤;胡友峰【作者单位】中国船舶重工集团公司第七〇五研究所昆明分部,云南昆明 650000;中国船舶重工集团公司第七〇五研究所昆明分部,云南昆明 650000;中国船舶重工集团公司第七〇五研究所昆明分部,云南昆明 650000【正文语种】中文【中图分类】TP3910 引言声呐目标跟踪技术作为水下UUV关键技术,是计算机视觉的重点研究课题之一[1]。
目标跟踪技术可获取监测目标感兴趣的特征信息和运动状态,同时对目标的识别和分割技术发展起到了重要推动作用。
声呐图像序列目标跟踪技术通过利用提取目标的图像信息,对环境噪声和混响等干扰因素进行一定抑制,以实现对水下目标的有效跟踪。
水声图像目标跟踪技术起步略晚,但目前正处于快速发展阶段。
各个国家都围绕着水下目标开展相关研究,其中美欧都有成立相关的研究机构,例如美国Florida Atlantic大学海洋工程系,其利用自研水下UUV进行水下目标探测、目标跟踪等试验,取得了一些进展[2];在国内,如中科院声学所、哈尔滨工程大学等,也在水下目标处理相关领域开展了研究工作[3 – 5]。
其中,中科院声学所研制了一种单波束侧扫声呐,并以此为基础开展了水下目标识别及检测等工作,取得了一定的成果;哈尔滨工程大学在小平台探测声呐展开了相关研究,己研制出二维高分辨率成像声呐、三维成像声呐等多类样机,在水下声图像处理领域也取得了一定程度的进展。
• 106•ELECTRONICS WORLD ・探索与观察粒子滤波算法的应用研究沈阳建筑大学 宋昊霖随着信息技术的不断发展,非线性系统状态估计已逐渐成为一个受到国内外学者重视的热点研究课题。
但随着实际应用对模型的复杂性不断提高,传统的滤波方法已无法满足滤波精度的要求。
粒子滤波技术作为一种非线性数值滤波方法,可以高效地处理非线性,非高斯动态系统状态估计。
在面向更复杂的非线性模型时,无需对非线性系统做线性估计,更符合实际滤波的要求。
1.引言粒子滤波是一种应用蒙特卡洛方法做递推贝叶斯估计的滤波算法。
与传统的滤波方法相似,可以通过驱动模型方程由前一时刻的状态值递推得到下一时刻的空间状态。
它是采用带有权值的粒子进行状态前验分布估计,再参考观测值来得到状态的后验分布。
进而描述系统的状态空间分布。
因为其处理非线性、非高斯动态系统滤波问题的优良特性,在目标跟踪、故障诊断、图像重构等领域均有广泛的应用前景。
2.序贯重要性采样算法(SIS算法)序贯重要性采样算法是粒子滤波算法的核心。
序贯重要性采样算法是从选定的重要性函数采样中得到带有权值的粒子,然后根据最新的观测值,通过似然函数调整粒子权值,最后通过粒子加权和的方式表示系统的状态。
假设重要性概率密度函数为:(1)给定系统状态下各次观测独立,则:(2) (3)后验概率密度函数的递归形式可以表示为:(4)粒子权值的递归形式可以表示为:(5)粒子权值归一化后,则后验滤波概率密度可近似为:(6)但是,SIS 算法存在一个无法避免的问题就是粒子权值会退化。
所以采用有效粒子数N eff 来衡量粒子权值的退化程度,即:(7)有效粒子数越小,表明权值退化越严重。
若要使N eff 小于阈值,可以采用增加粒子数N 等措施。
但粒子数增加会增大算法的复杂性和运算量,所以我们往往会采用重采样算法解决粒子退化问题。
图1 标准粒子滤波算法原理图3.标准粒子滤波算法重采样方法就是在每步迭代过程中,不再直接舍弃权值小的粒子,而是根据粒子权值,对所有粒子进行重新采样,增加粒子的多样性。
基于粒子滤波的导航与定位研究目录:一、引言二、粒子滤波算法介绍三、基于粒子滤波的导航与定位四、实验结果与分析五、结论和展望一、引言粒子滤波是一种基于蒙特卡罗方法的非线性滤波算法,适用于处理非高斯状态不定的问题。
在实际应用中,粒子滤波被广泛应用于导航与定位,机器人控制,雷达跟踪等领域。
本文将围绕基于粒子滤波的导航与定位展开研究,介绍粒子滤波算法原理、基于粒子滤波的导航定位模型、实验结果及结论等内容。
二、粒子滤波算法介绍1. 粒子滤波算法原理粒子滤波(Particle Filter)即蒙特卡罗滤波(Monte Carlo Filter),它是利用粒子(Particle)来描述非高斯分布的一种滤波方式。
粒子滤波的思想是通过在状态空间中对目标进行随机取样,并通过计算每个取样点的权重来精确描述目标的分布状态。
其基本原理如下:1) 粒子集合:将状态分布映射到粒子集合中,即通过抽样的方式在状态空间中生成一系列随机样本(粒子),使用粒子集合来近似真实状态概率分布;2) 状态转移:对粒子进行状态转移,即在当前时刻通过状态转移模型计算下一时刻的状态;3) 观测模型:计算每个粒子与观测结果的匹配度,即通过观测模型计算每个粒子对应的权重;4) 重新采样:对高权重的粒子进行保留,对低权重的粒子进行替换,采用重采样技术保留高权重粒子,使其在下一时刻得到更多的样本,从而提高精度。
2. 粒子滤波算法特点相对于其他滤波算法,粒子滤波的主要特点如下:1) 适用范围广:可用于处理非高斯分布状态和非线性系统中的滤波问题,适用范围广泛;2) 精度高:通过粒子集合的方法能够更准确的描述状态分布情况,从而提高滤波精度;3) 无需状态/观测模型线性化:相较于卡尔曼滤波,粒子滤波不需要对状态/观测模型进行线性化拟合,因此对于非线性问题可以更好的处理;4) 计算量大:由于需要进行随机重采样,因此对计算量的要求较高,计算量较大。
三、基于粒子滤波的导航与定位1. 导航定位模型基于粒子滤波的导航定位模型主要由状态转移模型和观测模型构成。
基于确定性重采样的粒子滤波算法李晋惠;白朝政【摘要】Because of its good performance in the complex background of the non-linear and non-Gaussian model, the particle filter algorithm has been used widely. Resampling (SIR) leads to sample depletion when it is used to solve degeneracy of particles. In order to solve the problem above, this paper presents a new method which integrates the basic resampling method and the deterministic resampling method. The simulation results show that the new method can not only effectively maintain the diversityof particles but also improve the correctness of the particle filter algorithm.%复杂背景下的运动目标跟踪往往要面对非线性非高斯问题,粒子滤波算法在非线性非高斯模型中的良好处理能力,使其得到广泛的应用.引入重采样方法(SIR)解决粒子退化问题的同时导致了样本枯竭.针对上述问题,文中提出了一种融合基本重采样方法和确定性重采样方法的新方法,能有效保持粒子的多样性.通过仿真实验表明,该方法能有效提高粒子滤波算法的准确性.【期刊名称】《西安工业大学学报》【年(卷),期】2012(032)011【总页数】4页(P891-894)【关键词】目标跟踪;粒子滤波;确定性重采样;支持粒子【作者】李晋惠;白朝政【作者单位】西安工业大学理学院,西安710021;西安工业大学理学院,西安710021【正文语种】中文【中图分类】TP391在计算机视觉领域中,运动目标跟踪问题是一个很重要的问题[1],是解决很多计算机视觉问题的基础.粒子滤波算法在复杂背景下的非线性、非高斯模型中具有良好的表现,因此在目标跟踪问题中得到广泛应用.Hammersley等在20世纪50年代末就提出了基本 Monte Carlo方法[2],并在60年代使其得到了进一步发展[3-5],但上述研究始终未能解决粒子数匮乏现象和计算量制约等问题.直到1993年由Gordon等[4]提出重采样概念,克服了算法的退化问题,从而奠定了粒子滤波算法的基础.虽然重采样算法减少了退化问题,但同时也存在样本枯竭问题,即经过多次迭代,会导致具有较大权值的粒子被多次选取,采样结果中包含了许多重复点,从而损失了粒子的多样性.针对此问题,文中提出了基于确定性重采样的粒子滤波算法,该算法采用基于粒子空间状态信息和权值的重采样机制,从而达到在解决粒子退化问题的同时保持粒子多样性的目的.1 粒子滤波原理概述粒子滤波是通过寻找一组在状态空间中传播的随机样本对后验概率密度函数进行近似以样本均值代替积分运算,而获得状态最小方差估计的过程,是一种通过非参数化的Monte Carlo模拟方法实现递推贝叶斯估计的算法,这些样本即称为“粒子”.当采样点的数目足够大时,这些粒子可以很好地逼近后验概率密度函数. 1.1 Monte Carlo方法Monte Carlo方法亦称为随机模拟方法[6],有时也称作随机抽样技术或统计试验.它的基本思想是首先建立一个概率模型或随机过程,使它的参数等于问题的解,然后通过对模型或过程的观察或抽样试验来计算所求参数的统计特征,最后给出所求解的近似值,而解的精确度可用估计值的标准误差来表示.根据Monte Carlo方法,能够独立从状态的后验概率分布 p(x0:t |y1:t)中抽取 N 个样本,则状态后验概率密度分布可以通过以下经验公式近似得到其中δ(*)为Dirac函数.1.2 序贯重要性采样(SIS)一般来说,p(x0:t|y1:t)是多变量的、非标准的,所以通常很难直接从中抽样得到粒子.一种有效的解决方法就是引入重要性函数,重要性函数是指概率分布与p(x0:t|y1:t)相同,概率密度分布q(x0:t|y1:t)已知并且容易从中采样的分布函数,重要性采样需要得到t时刻以前所有的观测数据.根据Smith与Gelfand的研究结果[7],重要性权值 wt(x0:t)序贯重要性采样思想是在时间t采样时不改动过去的状态序列样本集{,并且采用递推的形式计算重要性权值.经推导重要性权值表示为重要性分布函数q(xt|x0:t-1,y1:t)的选择是一个非常关键的问题,选取原则之一就是使得重要性权值的方差最小.1.3 采样重要性重采样(SIR)序贯重要性采样方法的一个最大问题是粒子匮乏现象,即随着时间的增加,重要性权值有可能集中到少数粒子上,不能有效表达出后验概率密度函数.为了避免这种退化,Gordon等人提出了重采样方法[4],重采样算法的思想是通过对粒子和相应权表示的概率密度函数重新采样,增加权值较大的粒子数,减少权值较小的粒子数.重采样算法虽然改善了粒子匮乏现象,但是也降低了粒子的多样性.因此重采样的选用要依据一些准则.目前常用的准则就是根据有效粒子数Neff,定义为设定阈值Nth,如果Neff<Nth,就采用重采样算法,否则就不进行重采样.1.4 基本粒子滤波算法实现步骤1)初始化,采样~p(x0),计算=1/N;2)重要性采样,在时刻t,采样~p(xt|);3)用式(3)计算重要性权值;4)重采样;5)状态输出.2 确定性重采样Tariq Pervez Sattar等人[8]提出了一种新型的重采样算法(称为确定性重采样),该算法通过避免未经审查丢弃权值低的加权粒子,从而保持粒子的多样性,避免了样品的贫困化.其核心思想是利用粒子的空间信息和状态值进行重采样.确定性重采样算法的基本步骤为1)划分粒子集合.首先将粒子空间按尺寸Ls进行划分,然后检查所有网格,对粒子数大于m的网格按尺寸Ls/2进行划分,再检查,直到所有网格中粒子数均小于m.每个网格中粒子集合为gp,网格中的粒子数为dp,p为网格数.2)复制粒子.首先所有粒子权值乘以粒子数Nt即,然后复制所有粒子,称为‘复制粒子’,并记粒子权值的整数部分为ni=],计算每个粒子的余数部分3)粒子空间采样(Particle Space Sampling,PSS).对各粒子集合中剩余部分进行计算若> wmin,则计算其中:wmin 最低阈值,)称为支持粒子.3 融合确定性重采样粒子滤波算法采样重要性重采样算法(SIR)的思想是:通过对粒子和相应权表示的概率密度函数重新采样,增加权值较大的粒子数,减少权值较小的粒子数.在粒子滤波算法中,粒子的权值越大,表示目标出现在该粒子位置的概率越大.而在确定性重采样算法中,虽然利用了粒子的空间和状态信息,但是对于权值较大的粒子,直接进行了权值平均,没有有效利用大权值粒子本身所具有的信息.因此本文算法将两种方法的优点结合起来,旨在粒子重采样过程中维持粒子多样性和采样的准确度.本算法可以概述为以下三个步骤:1)调用确定性重采样算法,获取支持粒子序列);2)调用多项式重采样算法(基本重采样算法),得到新的粒子序列G:{;3)将支持粒子序列加入到新粒子序列G中,并进行权值归一化,得到重采样粒子序列{ .归一化公式为本算法将小权值粒子的信息包含在支持粒子中,并参与到重采样后的运算中,保持了粒子的多样性.当Wmin=0时,在每个网格中至少会有一个粒子生存下来,这就保证了粒子分布能覆盖更广泛的状态空间.另外这也保留了小加权粒子在未来表现的更好的可能性,当状态噪声方差比较小和采样数量小时,这种方法就会特别重要.参与重采样的支持粒子的数目由Wmin来控制,对于样本较小的采样,以Wmin取值0为宜.在确定性重采样算法中,第1和2步的计算复杂度都是O(Nt),Nt为粒子总数,第三步PSS的计算复杂度是O(M),M是支持粒子的数量且M <Nt.因此,确定性重采样算法的计算复杂度为O(Nt).在基本粒子滤波算法中,第1,2,3,4和5步的计算复杂度都是O(Nt),Nt为粒子总数.因此基本粒子滤波算法的计算复杂度为O(Nt).在本文算法中,第1和2步的计算复杂度是O(Nt),Nt 为粒子总数,第3步的计算复杂度是O(N),N为粒子总数(N=Nt+p,p为支持粒子的数量,且p<Nt),因此本算法的计算复杂度为O(N).由此可以看出,这三种算法的计算复杂度都是关于粒子总数的函数,但是文中算法由于支持粒子的关系计算复杂度比前两种算法略高.4 实验仿真本算法的仿真环境为 Matlab 2010b,AMD4000+,1.00GB内存.选取典型的单变量平稳模型为对象,分别采用基本粒子滤波算法(PF算法)和文中提出的改进算法(暂简称为WASPF算法)对其进行状态估计.该模型的状态模型和观测模型如下所示,具有典型的非线性特征,且后验分布具有双峰特性.式中:k为状态时刻;xk为状态量;yk为观测量,状态初始值为x0=0.1,初始分布为p(x0)~N(0,5.0),过程噪声 w ~ N(0,10.0),观测噪声v ~N (0,1.0),在两个算法中重要性密度函数选取状态转移概率密度函数p(xk|xk -1),粒子数目取500个,实验的时间步长为50.如图1所示,基本PF和WASPF算法均可以很好的反应目标的运动轨迹,特别是WASPF算法从第15步开始基本上追踪到目标的每一次变化.图1 WASPF与PF对真实值的估计图Fig.1 The estimation of the true value by WASPF and PF如图2所示,从第10步开始WASPF的估计误差一直比基本PF的估计误差小,而且在整个的仿真过程中WASPF的平均估计误差要比基本PF小很多.图2 WASPF与基本PF对真实值的估计误差图Fig.2 The estimated errors ofthe true value by WASPF and PF如图3所示,在WASPF估计中,绝大多数的状态估计值落在置信区间内.在50次独立仿真实验中,其平均置信度达93.4%.5 结论图3 WASPF算法在95%置信区间内的估计结果Fig.3 The estimated results by WASPF in the 95%confidence interval针对基本粒子滤波算法中样本枯竭问题,文中在常规重采样方法的基础上,融合确定性重采样方法,提出了一种基于粒子空间状态信息和权值的重采样方法.该方法是在保持小权值粒子的空间状态信息的同时,增加大权值粒子的数量.因此,该重采样方法在提高了粒子质量的同时,保持了粒子的多样性.通过融合了该重采样方法的粒子滤波算法的仿真实验表明,该方法提高了粒子滤波器的准确性.【相关文献】[1] NGUYEN H T,WORRING M,VAN DEN BOOM GAARD R.Occlusion Robust Adaptive Template Tracking[C]//8th International Conference on Com-puter Vision,July 9,2001-July 12,2001.Vancouver,BC,United States:Institute of Electrical and Electronics Engineers Inc,2001:678.[2] DOUCET A,GORDON N.Sequential Monte Carlo Methods in Practice[M].New York:Springer-Verlag,2001.[3] HAMMERSLEY J M,MORTON K W.Poor Man’s Monte Carlo[J].J of the Royal Statistical Society B,1954,16(1):232.[4] GORDON N,SALMOND D.Novel Approach to Nonlinear and Non-Gaussian Bayesian State Estimation[J].Proc of Institute Electric Engineering,1993,140(2):072113.[5] KWOK C,FOX D,MEILA M.Real Time Particle Filters[J].Proceedings of the IEEE,2004(92):469.[6]薛亚阳,李晋惠.基于P-N跟踪器的自适应粒子滤波算法[J].电子设计工程,2011,9(17):153.XUE Ya-yang,LI Jin-hui.Self-adapted Particle Filter Based on P -N Tracker[J].Electronic Design Engineering:2011,9(17):153.(in Chinese)[7] SMITH AFM,GELFAND A E.Bayesian Statistics Without Tears:A Sampling Resampling Perspective[J].The American Statistician,1992(46):84.[8] Tariq Pervez Sattar,Tiancheng Li,Shudong Sun.Deterministic Resampling:Unbiased Sampling to Avoid Sample Impoverishment in Particle Filters[J].Signal Processing,2012(92):1637.。