您的当前位置:首页正文

基于容积卡尔曼滤波的高斯粒子滤波算法

2023-10-04 来源:欧得旅游网
第36卷第1期 计 算技术与 自 动 化 Vol_36,No.1 2 0 1 7年3月 Computing Technology and Automation Mar.2 0 1 7 文章编号:1003—6199(2017)01~0082—05 基于容积卡尔曼滤波的高斯粒子滤波算法 赵丹丹”,刘静娜 ,贺康建 (1.陕西师范大学计算机科学学院,陕西西安710119; 2.云南大学信息学院,云南昆明 650500) 摘要:高斯粒子滤波是一种免重采样的粒子滤波,不会出现粒子退化,但其重要性密度函数由于没有 考虑到最新量测信息,使得滤波性能明显下降,且该算法没有较高的实时性。针对这个问题提出一种基于 CKF的高斯粒子滤波算法--CKGPF算法。该算法利用CKF算法构造高斯粒子滤波的重要性密度函数,且 在时间更新阶段借助CKF算法来完成只对高斯分布参数的更新。仿真结果表明,cKGPF算法相比于标准 GPF算法不仅提高了滤波精度,而且还具有较好的实时性。 关键词:高斯粒子滤波;重要性密度函数;实时性;容积卡尔曼滤波 中图分类号:TP391 文献标识码:A DOI:10.3969/i.issn.1003—6199.2017.01.017 Gaussian Particle Filter Based on the Cubature Kalman Filter ZHAO Dan-dan”,LIU Jing—na ,HE Kang—jian (1.School of Computer Science,Shaanxi Normal University,Xi’an,Shannxi 710062,China; 2.School of information,Yunnan University,Kunming,Yunnan 650500,China) Abstract:Gaussian particle filtering is a kind of particle filtering without particle resampling,but its importance density function because there is no consideration to the latest measurement information,make the filter performance is significantty reduced,and the algorithm does not have good real—time performance.For this,a new Gaussian particle filter algorithm based on CKF is proposed.The importance density function of Gaussian particle filter is structured by using CKF,and the update of Gouss distribution parametors were completed by using CKF in the time update stage.The simulation results show that CKGPF algorithm not only improves the filtering accuracy,but also has better real—time,compared with the standard GPF. Key words:gaussian particle filter;importance density function;real—time;cubature kalman filters 是当似然分布比较陡峭或是似然函数位于状态转 1 引 言 移概率密度的尾部时,出现的偏差就更为显著。因 此,为了在算法中将最新的量测信息考虑进去,通 粒子滤波口 是一种基于蒙特卡洛思想的非线 常是将不同卡尔曼滤波和粒子滤波结合来构造重 性、非高斯系统的滤波方法,已在定位、目标跟踪、 要性密度函数 ],但文献[8]已给出证明盲目将 无线通信、目标识别等领域得到了深入研究_‘2 和 两种算法结合来构造新的重要性密度函数并不一 广泛应用。但在标准的粒子滤波算法中,一般把先 定能获得较好的滤波精度,且会增加计算复杂度, 验概率密度函数作为重要性密度函数,这种方法没 降低算法的实时性,而且粒子滤波本身就存在实时 有把最新的量测值考虑进去,因而使得从重要性概 性较差的问题。随着有限集多目标跟踪的出现, 率密度函数采样得到的样本与从真实后验概率密 粒子滤波也进入了随机集粒子滤波[g 新的发展阶 度函数采样得到的样本之间存在很大的偏差,特别 段。文献[10]更是实现了随机集粒子滤波对多目 收稿日期:2016—04—15 作者简介:赵丹丹(199O一),女,河南商丘人,硕士生,研究方向:信号处理,目标跟踪。 十通讯联系人,E—mail:danzhaoy ̄r@163.com 第36卷第1期 赵丹丹等:基于容积卡尔曼滤波的高斯粒子滤波算法 标跟踪的应用。高斯粒子滤波口妇是针对解决粒子 滤波重采样中样本枯竭问题的一种改进的粒子滤 波,具有更高的滤波精度。但GPF同样也是把先 验概率密度函数作为重要性密度函数,没有考虑最 新的量测信息,更新阶段对所有的粒子进行更新, P I 一1一S I 一1S[I 一1 (6) 计算容积点集(i一1,2,…,2n): X , 1¨一Sk1H +z lH (7) 其中&一 [1] ,i一1,2,…,2 (8) 计算传导容积点集(i=1,2,…,2n): Z , I k-1一h(X , I k-1, 卜1) 使得高斯粒子滤波没有较高的实时性。文献[12] 提出了一种基于GHF的高斯粒子滤波算法,该算 法采用GHF构造高斯粒子滤波的重要性密度函 估计k时刻量测的预测值: 1 2n H 一 (9) 数但没有考虑算法实时性问题。本文提出选用滤 波精度明显高于EKF和UKF的CKF来构造 GPF的重要性密度函数,同时在GPF的时间更新 阶段通过CKF来完成只对高斯分布函数参数的更 新,仿真结果表明,本文算法不仅提高了滤波精度, 还具有更好的实时性。 2 CKF算法 CKF算法是以非线性高斯滤波用以框架为基 础,利用Cubature规则选取2n个等权值的Cuba- ture点,将这些Cubature点经过非线性的系统方 程进行变换,然后进行加权求和来近似系统状态的 后验均值和协方差。相比于EKF和UKF算法, CKF算法具有严密的理论推导,简单易于实现且 具有较高的滤波精度。 CKF具体算法和步骤如下 : (1)时间更新 假设k—l时刻的状态后验概率密度函数为 P( 一l}D 1)一N( l}卜l,P 1 I ~1) 通过Cholesky分解协方差矩阵P I H: PH f H—SH I卜1 S 1 I H (1) 计算容积点(i一1,2,…2n): X . 1 1卜1一S 一l I 一18+z 一1 I 一l (2) 其中8一 [1] ,i一1,2,…,2 。[1] 表示 基本容积点。 计算传导容积点集( 一1,2,…,2n): X I卜l:厂(X 一1 f 一l,“ 一1) (3) 估计k时刻状态预测值 2 主 一 一 一 (4) 估计k时刻状态预测协方差矩阵: , 2n L H 王 1H主 l卜1+QH (5) (2)测量更新 对矩阵平方根分解: 估计k时刻量测协方差矩阵: 1 2n 小一 一 ∑ H 一 一 乏 l I k-1+R^ (10) 估计k时刻互相关协方差矩阵: 2 小一 一 卜 一 主^IH主 I卜1 (11) 估计卡尔曼增益矩阵: W^:P∞:. I ~1P一 ’ l 一 (12) 计算k时刻状态估计值: .2Ck J z 1 一1十W (z 一Zk j ~1) (13) 估计k时刻协方差矩阵: P } 一P JH—W P , J川w (14) 3 高斯粒子滤波算法 非线性高斯状态空间模型如下: 状态模型: z 一fk(1z 一1)+删 (15) 量测模型: 一h(z )+ (16) 其中,32 为系统的 维状态向量,z 为 维量 测向量,训 和口 分别为系统噪声和量测噪声, 和 矗分别为系统的非线性状态转移函数和量测函数。 高斯粒子滤波将高斯滤波和粒子滤波相结合。 通过高斯密度函数进行逼近状态的后验概率分布, 并利用粒子滤波求取高斯密度函数的相关参数继 而进行状态估计。 设随机变量.z的高斯密度函数为 N(z; , ):( ) l }exp}一÷( 一 ) (.z~ )I L J (17) 式中, 为 维向量的均值, 为协方差。 假设在k一1有P(z1 I 2。)一N(z1;五1,妻1) 、 先验信息得出。在每接收到一个新的量 计算技术与自动化 测值时,都需要进行量测更新和时间更新来完成滤 波并得到预测概率分布。 具体算法和步骤如下: 1量测更新 1)从重要性密度函数q(z }z。: )中采样得到 样本集{ } ̄_ 。 2)计算各个粒子的权值。 叫 :丛 型 粤三 g( ,Zo ) 型 3)将各粒子的权值归一化。 : ∑叫 4)估计状态后验概率密度P( l : )的均值 和协方差三 =∑ 一 三 一 —1^ (z 一“^)(z 一 ~ 一 一 ) 2时间更新 5)假设是时刻状态后验概率密度表示为 P( 1 : )≈N( ; , )且从中抽样得到新的 粒子集{z } 。 6)对所有的i一1,2…,N,{z } N,由状态转 移方程(15)可得到更新的粒子集( } 7)计算状态预测概率分布函数 P(z抖 I z。: )的均值和协方差 u 一 而 一 一 一 因而,k+1时刻的预测概率分布可表示为 P(z抖1 J :&)≈N(z蚪1;Uk+1, 抖1) 4 基于CKF的高斯粒子滤波算法 为了提高高斯粒子滤波的滤波精度,需引入最 新的量测信息,利用CKF算法重新构造高斯粒子 滤波的重要性密度函数,同时为了使高斯粒子滤波 具有更好的实时性,需借助CKF算法的时间更新 思想来完成对高斯粒子滤波后验密度的预测 CKGPF算法的具体算法如下: 1.利用CKF算法构造新的重要性密度函 假设k一1时刻的状态后验概率密度函数服从 高斯分布且可表示为 P(xk-l l z0 卜1)一N(z 一1;主 1 l卜1, 1  l一1), 则第i个粒子的后验密度可表示为z0 ~ N(.z 一1;Xk一 1 I ~1,P 一1 I 一1) 1)通过CKF算法的时间更新完成对状态和 协方差的预测,得到k时刻的预测状态和预测协 方差 1 2n 量 (18) 1 2n P 一, x ~一 王 I H主 l川+Q (19) 其中x ¨为第i个粒子的容积点 2)通过CKF算法的测量更新得到愚时刻的状 态和协方差的估计 三 一互 {卜 +W (2 ~ H) (2o) P I :P IH—w P Hw (21) 其中W 一PL, j^一1P 。 f 一 , 2n Ai 一 一 . 2n 1 一 ~ 一 乏 IH乏 I +R Xm{卜l=S I 18+主 }^一l Z , } 一l—h(X , J 一l,“ i一1) (22) 此时,得到新的重要性密度函数可表示为 玎(z l 1 ^)=N( l ,P I&) 2.量测更新 3)从重要密度函数N(星 l ,P } )采样得到 粒子集{ } 4)计算各个粒子的权值为训 一 P( Iz )N(互 ) 一1,P 1 一1) N(z I ,P J^) 5)将粒子权值归一化 而一 ∑叫 6)估计状态后验概率密度的均值和协方差 主 I 一∑W kLT7l k P { 一∑西 ( 一 I )(z 一z { ) 得到状态后验概率密度P(z } : )一 N(xk;z I ,P^f^) 3.时间更新 7)用CKF算法的时间更新来完成只对高斯 分布函数参数的预测。根据k时刻得到的后验概率 密度函数N(z ;; { ,P^l )及状态转移方程(15), 第36卷第1期 赵丹丹等:基于容积卡尔曼滤波的高斯粒子滤波算法 利用CKF算法的时间更新完成对高斯分布参数的 预测,得到 厂1.2(尼一1)]+W 量测模型: 1 ̄ 2n X: i1 一zi/2o+ ^ 式中砌 ~N(0,Q )和73 ~N(0,R )分别是 抖L;抖 ; + Pk+ 蚪 服从高斯分布的过程噪声和量测噪声。 仿真参数设定为: 一10,R 一1,初始状态z 其中,X Ⅲ为k时刻状态方程传播后的容 积点。 一1,初始状态方差 =2,模拟长度tf一60,粒子 数N一500。仿真实验中采用均方根误差值 8)此时,状态预测概率分布函数可表示为 P( 十l I 。: )≈N( +l; +l,乡蚪1) (RMSE)对仿真结果进行评估 N:vg: 定义:RMSE一『-1/N ∑(xk一五)z] 。这 5 对CKGPF算法的仿真分析 仿真过程中选取单变量非静态增长模型 里N 为Monte Carlo仿真次数。 仿真实验中,估计输出选择后验均值的方式表 示。为了验证本文算法对状态估计的性能,给出了 两种算法的后验均值估计。图1为当采样点数N 一(UNGM)模型,其过程模型和量测模型如下: 过程模型: z 一0.5x 一】+2.5x 一1/(1+z;一j)+8cos 60两种算法的后验均值估计。 N 一60 图1 两种算法的后验均值估计 由图1可知,由于CKGPF考虑了最新的量测 信息,后验均值分布能够很好地逼近真实状态的分 布,而GPF的后验均值分布只有部分的粒子接近 真实状态分布。 图2是两种算法对系统状态估计的比较,图3 是进行5O次Monte Carlo仿真得到的均方根误差 表1 两种算法的RMSE值和状态估计时间 如表1中所示,GPF的RMSE=2.3981,CK— 图,表1是两种算法的RMSE和状态估计时间的 比较。从图2可看出,由于CKGPF构造的重要性 GPF的RMsE=1.2145,滤波精度明显得到提高。 由于在CKGPF算法中考虑了最新的量测信息,获 得了更加真实的后验概率密度,使有效粒子数增 加,因而具有比GPF算法更高的滤波精度,同时在 CKGPF的时间更新阶段不需要对每个粒子进行 更新只需利用CKF对高斯分布函数的参数更新, 密度函数考虑了最新量测信息,因而能够更好的达 到对状态的估计。图3表明,CKGPF考虑了最新 的量测信息,CKGPF的滤波性能明显高于GPF。 86 计算技术与自动化 2017年3月 lB∈茹s9 坩 因而CKGPF对状态估计具有更好的实时性。 Time 图2 两种算法对状态的估计 图3 两种算法的均方根误差曲线 6 结 论 本文提出的基于CKF的高斯粒子滤波算法, 通过CKF构造重要性密度函数,考虑了最新的量 测信息,增加了有效粒子数,使得滤波精度明显提 高,同时本文算法在时间更新阶段利用CKF来完 成只对高斯分布参数的更新,减少了算法的计算 量,使得算法具有更高的实时性。仿真结果表明, 本文算法无论是滤波精度还是实时性,都有了一定 的改善。 山∞ 参考文献 r1]GORDON N J,SALMOND D J,SMITH A F M.Novel ap— proach to nonlinear/non--Gaussian Bayesian state estimation EJ].1EE Proceedings F Radar and Signal Processing,1993, 140(2):1O7~113. [2] ZHOU S K,CHELLAPPA R,MOGHADDAM B.Visual tracking and recognition using appearance adaptive models in particle filters[J].IEEE Trans.on Image Processing,2004,13 (11):1492—1506. [3] SABUNCE M,DEMIREKLER M.IMM—PF for increased performance for maneuvering target[J].IEEE on Signal Pro— cessing and Communications Applications Conf.Antalya: IEEE,2011:1044—1047. [4] BANANI S A,VAuGHAN R G.Blind channel estimation and discrete speed tracking in wireless systems using inde~ pendent component analysis with particle filtering[J].IET Communications,2012,6(2):224—234. E53李良群,姬红兵,罗军辉.迭代扩展卡尔曼粒子滤波器[J].西 安电子科技大学学报:自然科学版,2007,34(2):233—238. [63 QI C,BONDON P.A new unscented particle filter[C].IEEE International Conference on Acoustics,Speech and Signal Processing,2008:3417—3420. [7]袁泽剑,郑南宁,贾新春.高斯厄米特粒子滤波器[J].电子学 报,2003,31(7):970—973.  ̄83 LI T C,CORCHADO J M,BAJO J,et a1.Effectiveness of Bayesian filters:an information fusion perspective[J].Infor— utition Sciences,2016,329:670—689. [93李天成,范红旗,孙树栋.粒子滤波理论、方法及其在多目标 跟踪中的应用[J].自动化学报,2015,4l(12):1981—2002. [10]UNEY M,CLARK D E,JULIER S J.Distributed fusion of PHD filters via exponential mixture densities[J].IEEE Jour— nil of Selected Topics in Signal Processing,2013,7(3):521 —531. [11]KOTECHA J H,DJURIC P M.Gaussian particle filtering [J].IEEE Transactions on Signal Processing,2003,51 (1O):2592—2601. [12]郑作虎,王首勇。一种基于GHF的高斯粒子滤波算法[J].控 制与决策,2014,29(9):1698—1702. [13]ARAsARATNAM I,HAYKIN S.Cubature Kalman Filters [J].IEEETransactions on Automatic Control,2009,54(6): ]254一】269. 

因篇幅问题不能全部显示,请点此查看更多更全内容