一种改进的基于蚁群优化的粒子滤波算法

作者:曹义亲;钟涛;黄晓生 刊名:计算机应用研究 上传者:赵珺

【摘要】针对传统粒子滤波算法中粒子匮乏以及粒子多样性丧失的问题,提出了一种基于蚁群优化的改进粒子滤波算法。该算法利用蚁群算法优化粒子滤波的重采样过程,使粒子在更新权值后,利用转移概率向权值较优粒子的位置移动,以防止权值较小的粒子在多次迭代后退化消失;同时,设置转移阈值,以抑制权值较优粒子间的转移,从而同时解决了粒子匮乏以及粒子多样性丧失的问题。实验结果表明,该算法具有较高的预估精度和较好的鲁棒性。

全文阅读

0引言粒子滤波(particlefilter,PF)[1]是一种基于MonteCarlo仿真的递推贝叶斯估计方法。因具有适用于非线性及非高斯噪声环境等优点,被广泛应用于机器视觉、目标跟踪、图像处理和复杂工业过程故障诊断等诸多领域。其基本思想是通过寻找一组在状态空间传播的随机样本(即粒子)对概率密度函数进行近似,以样本均值代替积分运算,从而获得状态最小方差分布的过程。标准粒子滤波算法存在的一个主要问题是粒子退化现象。对此,Gordon等人[2]提出了重采样方法,通过对粒子和相应权值表示的概率密度函数重新采样,以增加权值较大的粒子数,减小权值较小的粒子数。但重采样算法在迭代多次后重要性权值有可能集中到少数粒子上,从而降低了粒子的多样性。为改进重采样算法,Park等人[3,4]将遗传机制应用于粒子重采样。这种机制主要通过选择算子选择优良个体,并利用重组算子与变异算子产生新的个体,在保证粒子有效性的同时科学地增加粒子多样性。但利用遗传算法进行优化搜索需要大量运算时间,从而影响了粒子滤波算法的实时性。方正等人[5]利用粒子群优化算法对采样过程进行优化,把观测值引入采样分布中,使得采样分布向后验概率较高的区域运动,从而避免了粒子贫乏现象的产生。胡士强等人[6]根据粒子权值大小,利用粒子距离限制进行聚类,采用聚类算法构造出高斯混合概率密度函数,再使用分层采样方法重新获得粒子,从而保持粒子的多样性。蚁群算法[7,8]是一种基于种群寻优的启发式搜索算法,这种算法具有搜索解质量高以及收敛速度快的优点,其应用已引起了越来越多相关领域研究者的注意。在蚁群算法中,蚂蚁个体之间通过一种化学激素(信息素)进行信息交流与协作,蚂蚁在运动过程中,能够在它所经过的路径上留下该化学物质,并能够感知这种物质。一条路径上的信息素量越大,对蚂蚁的吸引力就越大,选择该路径的概率就越高,从而使得该路径的信息素浓度得到进一步加强,表现出一种信息正反馈现象。如果将这种正反馈特性引入粒子滤波的重采样过程,对重采样后权值较小的粒子进行正反馈,从而使粒子不被淘汰。这将有效地改善传统粒子滤波中存在的粒子匮乏问题。基于此,本文提出了一种基于蚁群优化的粒子滤波算法,对粒子的重采样过程进行优化,在权值更新后,使权值较小的粒子通过转移概率向粒子的最优位置移动,并获得较优权值,使其不会被淘汰。这样不仅使粒子数不会改变,而且将改善粒子滤波的后验概率密度分布,同时加速了粒子集的收敛,从而解决了粒子数匮乏的问题,也在一定程度上解决了粒子多样性问题。1粒子滤波算法[9]粒子滤波算法是基于贝叶斯估计的蒙特卡罗思想的滤波算法,主要解决动态随机系统的状态估计问题。定义状态空间方程如下:运动方程xt=f(xt-1,ut-1)(1)观测方程yt=h(xt,vt)(2)其中:xt和yt表示t时刻系统的状态值和观测值;f()和h()分别表示系统状态转移函数和观测函数;ut和vt分别表示过程噪声和观测噪声,是相互独立不相关的两组噪声序列;t表示时间。状态估计问题就是从所有得到的观测信息y1:t={y1,…,yt}中推理出t时刻状态变量xt的值,即估计p(xt|y1:t)。假设状态变量初始概率密度函数p(x0)作为先验知识已知,那么p(xt|y1:t)可以通过式(3)和(4)递推得到:预测方程p(xt|y1:t-1)=p(xt|xt-1)p(xt-1|y1:t-1)dxt-1(3)更新方程p(xt|y1:t)=p(yt|xt)p(xt|yt-1)p(yt|y1:t-1)(4)其中:p(xt|xt-1)由运动方程定义;p(yt|xt)由观测方

参考文献

引证文献

问答

我要提问