粒子滤波器的优化及在纯方位跟踪中的应用
2010-08-27许立太
许立太
(兰州石化职业技术学院,甘肃兰州 730060)
0 引言
在目标定位跟踪过程中,观测站仅能获得包含噪声的目标方位信息,造成了观测方程的非线性,不能直接利用线性滤波方法获得目标的运动状态,是目标跟踪[1-2]、机器视觉及传感器网络定位研究领域的共同难题。扩展卡尔曼滤波器(Extended Kalman Filter,EKF)等传统滤波器试图使用线性化方法解决该难题,但围绕状态预测估计的一阶展开方法往往近似程度不高,造成EKF等滤波器在纯方位跟踪应用中跟踪效果不理想,甚至出现滤波发散的现象。最近,研究人员提出一种新的用于解决非线性滤波问题的滤波器,它是基于这样一种考虑:近似一种高斯分布要比近似任何一种非线性方程容易的多。他们将这种滤波器称为无迹卡尔曼滤波器(Unscented Kalman Filter,UKF)[3-5]。实验证明UKF给出的估计结果比EKF更准确,尤其是它能给出更精确的系统状态方差估计。然而,UKF的使用具有一定的限制,它不适用于一般的非高斯分布的模型。解决非线性滤波问题的一种更新的方法是粒子滤波器(particle filter,PF)[6-9],其基本思想是用一组带有权值的粒子集合来表示解决问题时需要的后验概率密度[10],然后用这一近似的表示来计算系统的状态估计。然而,粒子滤波器主要的问题在于粒子退化问题,由于“退化”会产生粒子数减少,进而会导致失去状态的多样性并最终产生“失真”问题。导致退化的主要原因在于第一,建议分布函数的选择;第二,粒子数的确定(由此要用到重采样的方法)。针对以上问题本文提出通过选择新的建议分布函数的方法来减少粒子滤波的“退化”问题。新算法称之为改进建议分布的混合粒子滤波算法(UEKF)。
1 非线性滤波算法
1.1 EKF滤波算法
扩展卡尔曼滤波器中系统的状态分布用高斯随机变量(GRV)来表示。在某一时刻,EKF方法将系统的非线性方程在当前关于系统状态X的估计处,展开成一阶泰勒展式。EKF的具体算法见参考文献[11-12]。不失一般性,非线性系统可表示如下:
式中,x k∈Rn表示系统状态量,vk∈Rq表示系统过程噪声,y k∈Rp表示系统输出,w k∈Rr表示系统观测噪声。以EKF为建议分布就得到了扩展卡尔曼粒子滤波器。
1.2 UKF滤波算法
对于UKF,这里仍采用如式(1)所示系统状态描述,其滤波算法如下:
1.2.1 UT变换
UT变换是计算进行非线性传递的随机向量概率的一种方法,它是基于这样考虑:近似一种概率分布比近似一种任意的非线性方程或者非线性变换要容易的多,设x是nx维的随机向量,f:nx→nz是一非线性函数z=f(x),考虑将x通过非线性函数f传递,假定x的均值和协方差分别为^x和p x,为了计算关于z的统计量,我们首先选择2nx+1个带有权值的样本点(也称Sigma点),使其能够完全获取随机变量x的真实的均值和协方差。
1.2.2 UKF
UKF是UT的直接扩展,系统的状态分布仍然用一个高斯随机变量来表示,用一个经过选择的Sigma点的集合来具体表示,但是状态随机变量被重新定义为原始状态和噪声变量的扩张向量=上标T表示转秩。通常,UKF使用高斯近似来表示先验及后验密度,同样能够获得先验及后验密度上的离散度。关于UKF算法的具体实现,参看文献[3-5]。
1.3 粒子滤波算法
但是,粒子滤波算法的一个主要问题是退化问题,即经过几步迭代以后,除了极少数粒子外,其他的粒子权值小到可以忽略不计的程度。减少退化现象影响的方法一般有两种:一是选择好的重要密度函数,即选择较好的建议分布;另一种是使用再采样技术[3,11-13]。再采样方法就是去除那些权值较小的粒子,而复制权值较大的粒子,即采集更多的权值较大的粒子;但会失去状态信息的多样性。
2 改进建议分布的混合粒子滤波算法
针对上述滤波方法在纯方位跟踪中的缺点,这里采用EKF与UKF混合滤波器作为建议分布,新算法简称为改进建议分布的混合粒子滤波算法(UEPF),新算法通过改进粒子滤波的建议分布进而改进粒子滤波的“退化”问题,而且通过新的建议分布函数进而改进其跟踪精度。具体过程为:在时刻k首先用UKF更新粒子,采用表达式UKF算法的更新步骤获得状态估值^x k,然后计算系统模型与测量模型的雅克比矩阵,利用EKF更新粒子,此时采用所获得的状态估值^xk作为k-1时刻的粒子滤波的状态估计,经过计算得到k时刻最终的状态及其相应的协方差估计值¯xik和^Pik。从而可以从建议分布中抽取粒子。假设k-1时刻的状态及使用UKF更新粒子。Sigma点的选择依据UT变换。此后Sigma点分别通过系统模型与测量模型向前传递,得到状态与协方差的预测值,其均值可按表达式UKF预测步骤计算得到,得到新的测量值y k后,预测状态估计量^xk|k-1按照表达式UKF的更新步骤计算得到,其中Kk=为卡尔曼增益,亦可按照表达式UKF的更新步骤来计算,由此可获得状态估计量^x k。然后利用EKF执行粒子更新过程。首先预测状态及协方差,据此求取卡尔曼增益,修正预测量得到最终所需的估计量。
通过第一小节的分析可以得出EKF算法通过泰勒展式将系统非线性化进行局部线性化,因此系统非线性性质得不到好的描述,并且在计算中要计算雅克比矩阵,因此大大增加了计算量,故在纯方位跟踪中与其所需的实时性相悖,另外该算法只能达到一阶的精度。UKF算法是用确定的采样来近似状态的后验概率密度函数,可以有效解决由系统非线性的加剧而引起的滤波发散问题。但UKF仍是用高斯分布来近似逼近系统状态的后验概率密度函数,所以在系统状态的后验概率密度函数是非高斯的情况下,滤波结果将有极大的误差。粒子滤波算法较简单,但在采样过程中有时会出现比较严重的退化现象。抑制粒子滤波算法退化的主要手段就是增加粒子数和重采样。但是,重采样会降低粒子的多样性;而大量增加粒子数,将大大增加计算量。因此,主要依赖选择好的重要密度函数,而本文的滤波算法就是基于这种思想的一种PF改进算法。在粒子滤波中选取状态转移概率密度作为重要函数没有考虑最新观测到的数据,使得粒子严重依赖于系统状态转移模型,如果模型不准确,从重要性函数抽取的样本与真实的后验概率密度函数产生的样本存在较大的偏差,特别是当似然函数出现转移概率密度函数的尾部或者似然函数与转移概率密度函数相比过于集中(呈尖峰)时,这种情况在高精度测量场合经常遇到,此时偏差尤为明显。本文算法就是针对上述问题加以改进,通过混合建议分布产生的重要密度函数与真实状态概率密度函数的支集重叠部分更大,估计精度高,即便在非高斯情况下其误差也较小,通过对算法的实验仿真验证了该算法的优越性。
3 仿真分析
将UEPF应用于纯方位跟踪问题中与其他方法相比较来验证此方法的有效性。这里通过匀速直线运动和匀速转弯机动目标两个纯方位跟踪仿真实例,与其他滤波器进行了仿真对比,分析了跟踪性能和误差,本文首先用该算法对一个xy平面上作匀速直线运动和转弯机动目标进行了跟踪仿真。同时,本文也对扩展卡尔曼滤波(EKF),无迹卡尔曼滤波(UKF),以及一般的粒子滤波(PF)作了仿真实验并对仿真结果进行了比较,其状态转移方程为:
状态转移方程表示的是一机动目标在 xy平面上作非线性运动,其中 ωk+1=ωk+wω,k为转弯速度模型,(x,y)为目标位置,(˙x,˙y)为目标速度,T为采样间隔,wk,wω,k为系统噪声。量测方程为:
式中,r为目标的斜距,θ为目标的方位角,˙r为距离变化率。vk=(vk,r,vk,θ,vk,r)为量测噪声。由于本文仅考虑对状态的滤波跟踪问题,因此假设系统状态服从一阶马尔可夫过程,且观测量独立于已知的状态量,即由概率密度描述:
这里Unscented变换参数分别设定为α=1,β=2,k=0。对模型和算法在如下背景和参数下进行仿真:首先跟踪匀速直线运动目标,仿真时长200 s,采样频率1 Hz,粒子数为1 000,单观测站位于原点开始匀速直线运动,初始航向为30°(以逆时针方向为正),速度为10 m/s。在时刻100 s时进行转向机动,保持速度大小不变,航向角为60°。接下来目标匀速直线运动,初始距离为10 000 m,速度为15 m/s,目标的初始方位为60°,航向角为150°。这里系统噪声和观测噪声均为独立的零均值高斯白噪声,系统噪声均方差0.01 m,速度为0.000 1 m/s,观测方位噪声均方差为1°。仿真初始阶段采用伪线性法获得粒子滤波器的估计初值x 0,用于产生先验概率p(x0)。进行100次仿真,得到4种滤波算法对目标的轨迹跟踪曲线以及RMSE对比,如图1、图2所示。
图1 匀速直线运动轨迹跟踪Fig.1 Constant speed linear motion trajectory tracking
图2 RM SE对比Fig.2 RMSE compare
从仿真结果可以看出,在观察站机动前,EKF与UKF有较大的偏差,呈现发散的特征;在观测站机动后EKF与UKF缓慢收敛,但仍然有偏差,跟踪效果较差。由 PF及 UEPF曲线变化可看出,与EKF和UKF相比,以粒子为基础的滤波器对目标跟踪具有较好的效果,在观测站机动前,虽然没有收敛,但其收敛性能要好于EKF与UKF;但当观测站机动时,由于粒子滤波器对于传感器观测值的突变非常敏感,所以用先验概率作为建议分布的PF滤波在观测站机动后误差增大很明显,而UEPF使用UKF与EKF产生建议分布,能够适应观测值的突变,快速地减小 RMES。
以下为跟踪匀速转弯机动目标。仿真初始条件为测量点在坐标原点,机动目标转弯角速率为3°/s,初始位置与速度为x0=[0,0,0,100]T,系统噪声协方差阵为diag([5,0.1,5,0.1]),观测噪声协方差阵为diag([200,0.1])采样时间为60 s,采样间隔为1 s,图3为几种算法的仿真结果。
图3 目标在转弯过程中的位置误差Fig.3 The position error of the target in the process of turning
由于其轨迹近似相同,难以看出较大变化,故这里只给出其在坐标平面上每个采样时刻估计航迹的位置和实际航迹的位置的距离偏差,从图3中可清晰看出:EKF由于线性化损失的影响,具有较大的跟踪误差,PF则由于在观测更新过程中,建议分布未能包含新的观测信息,所以跟踪性能不够理想,UEPF算法明显好于EKF、UKF及PF算法,主要由于UEPF充分利用了每次测量的信息,故优于一般的滤波算法。在实际应用当中由于使用EKF及UKF产生建议分布,UEPF在提高纯方位性能的时候,由于要处理多个粒子及多次计算雅克比矩阵,故也增加了滤波所需的时间,但UEPF在每个采样点状态估计平均时间约为0.2 s相对与观测频率(1~3 s),约占观察时间的7%~20%,可以满足实际应用中在线式跟踪的实时性要求,其次针对其运算复杂性的增加,随着计算机技术发展,多核多任务的出现,计算机完全能满足其复杂性的增加。
4 结论
通过对UEPF的分析及在纯方位跟踪中的实验仿真可得出:传统的粒子滤波方法由于其“退化”问题,不能很好地应用于纯方位跟踪问题中。采用EKF、UKF混合作为建议分布应用于粒子滤波中可以很好的减少粒子退化问题,并且增加粒子的多样性以及提高滤波精度。该算法在每次递推产生新的粒子时充分考虑了当前时刻的量测,使得该算法能很好的利用量测带来的信息,通过仿真实验证明了UEPF在纯方位跟踪应用中具有良好的跟踪性能。
[1]DENG Xiaolong,XIE Jianying,GUO Weizhong.Bayesian target tracking based on particle filter[J].Journal of Systems Engineering and Electronics,2005,16(3):545-549.[2]CHANG Cheng,Ansari Rashid.Kernel particle filter for visual tracking[J].IEEE Signal Processing Letters,2005,12(3):242-245.
[3]Merwe R,Doucet A,Freitas Nando de,et al.Theunscented particle filter[R].Cambridge University,engineering department:Technical report,CUED/F-INFENG/TR 380,2000.
[4]Julier SJ,Uhlmann J K.Unscented filtering and nonlinear estimation[J].Proceedings of the IEEE,2004,92(3):401-422.
[5]Wan Eric A,Merwe R.The unscented kalman filter for nonlinear estimation[C]//Proceedings of International Symposium on Adaptive Systems for Signal Processing,Communications and Control.Canada:Alberta,2000:153-158.
[6]Pitt M K,Shephard N.Filtering via simulation:auxiliary particle filters[J].Journal of the American Statistical Association,1999,94(2):590-599.
[7]Kotecha Jayesh H,Djuric Petar M.Gaussian particlefiltering[J].IEEE Transactions on signal processing,2003,51(10):2 592-2 601.
[8]Jayesh H Kotecha,Petar M Djuric.Gaussian sum particle filtering[J].IEEE Transactions on signal processing,2003,51(10):2 602-2 611.
[9]Lehn Schiler T,Erdogmus D,Principe J C.Parzen particle filters[C]//Proceedings of International Conference on Acoustics,Speech,and Signal Processing.Montreal,Canada:2004(V):781-784.
[10]袁泽剑,郑南宁,贾新春.高斯-厄米特粒子滤波器[J].电子学报,2003,31(7):970-973.YUAN Zejian,ZHENG Nanning,JIA Xinchun.The Gauss-Hermite Particle Filter[J].Acta Electronica Sinica,2003,31(7):970-973.
[11]Anderson B D O,Moore J B.Optimal Filtering.Englewood Cliffs[M].New Jersey:Prentice-Hail,1979.
[12]Welch G,Bishop G.An introduction to the Kalman filter[R].University of North Carolina at Chapel Hill:Technical Report TR 95-014,2004.
[13]Arulampalam M S,Maskell S,Gordon N,Clapp T.A tutorial on particle filters for on-linenonlinear/non-gaussian bayesian tracking[J].IEEE Transactions on Signal Processing,2002,50(2):174-188.