卡尔曼滤波粗差修正方法应用
2010-11-15齐公玉邱卫宁花向红
齐公玉,邱卫宁,花向红
(1.武汉大学 测绘学院,湖北 武汉 430079;2.武汉大学 灾害监测与防治研究中心,湖北 武汉 430079)
卡尔曼滤波粗差修正方法应用
齐公玉1,2,邱卫宁1,2,花向红1,2
(1.武汉大学 测绘学院,湖北 武汉 430079;2.武汉大学 灾害监测与防治研究中心,湖北 武汉 430079)
基于标准卡尔曼滤波,提出对含有粗差的观测值进行整体修正和局部修正。最后,通过工程实例验证,两种修正方法均能够有效抵抗粗差的影响,并可获得比标准卡尔曼滤波更准确的滤波结果。
卡尔曼滤波;粗差修正;应用
卡尔曼滤波理论作为一种重要的最优估计理论被广泛用于各种动态数据处理中。其采用线性状态方程描述系统,结合观测方程,采用递推形式计算系统的最优估值[1]。它无需存储大量观测数据,便可进行参数估计。但是,卡尔曼滤波容错能力很差,观测值中有很小的粗差,会使滤波发散,使滤波估值发生大的偏移。所以,如何有效地探测和修正动态测量数据中粗差观测值是非常值得研究的问题。
目前,粗差的定位常用的方法有以均值漂移模型为基础的粗差探测法和以污染误差模型理论为基础的抗差估计[2-3]等方法,但是,这些方法要求观测网必须具有一定的几何图形强度和多余观测数。在实际工程中,如水准检测网中,一般多余观测数很少,如果将含有粗差的观测值剔除将使一些状态参数无法得到估计。这样就需要对含有粗差观测值进行修正,而不能简单的舍弃。本文将粗差修正分为两类—整体修正和局部修正,并根据实际的工程数据,分析两种方法均可以获得比标准卡尔曼滤波更加准确的滤波结果,因此,这种方法的研究具有实际的工程应用价值。
1 标准卡尔曼滤波
设一线性系统的状态方程和观测方程为
式中:Xk为状态向量,Lk为观测向量,Φk,k-1为状态转移矩阵,Uk-1为控制向量,一般不考虑,Γk,k-1,Bk为系数矩阵,Ωk-1为系统动态噪声向量,Δk为观测噪声向量,其随机模型为
2 粗差探测方法
令
由统计性质可知,Vk是均值为0的高斯随机量,根据式(4),可以得到其协方差阵为
式中:Dx(k/k-1)为预测误差协方差阵,DΔ(k)为观测误差协方差阵。
假定滤波模型是正确的,需要判断观测值是否存在粗差,根据文献[4]中,构造检验统计量 Tk=VkTDV(k)Vk~χ2(nk,0),对于给定的显著水平α,当Tk<χ2a时,认为滤波正常,反之认为滤波不正常,即观测值存在粗差。
3 粗差修正
在判断观测值存在粗差后,粗差的修正可以分为2种方法,一种为整体修正,一种为局部修正。整体修正为对k期的观测值统一进行迭代运算;而局部修正是对探测到的个别粗差观测值进行迭代修正。
3.1 整体修正法
设k期的观测值Lk,探测到存在粗差观测,假设 k期以前滤波均正常,并且已经求得^X(k-1/k-1),则加入粗差修正过程的第k期卡尔曼滤波过程为
1)根据式(1)的状态方程,可知 k期的预测值X^(k/k-1),并计算出其协方差阵;
5)迭代结束后,选择修正后的L′k计算参数的滤波估值。
3.2 局部修正法
在文献[5]中提出根据式(5)判别粗差观测值的判别式为
式中:i,i为对角线上第i个元素;Vi(k)为V(k)第 i个分量。C为常数,可根据实际物理背景确定。根据式(6),探查到含有粗差观测值的具体位置。
设k期的观测值Lk,探查到第 j个观测值Lkj存在粗差,假设 k期以前滤波均正常,并且已经求得^X(k-1/k-1),则加入粗差修正过程的第 k期卡尔曼滤波局部修正过程如下:
1)根据式(1)的状态方程,得到 k期的预测值X^(k/k-1),并计算出其协方差阵;
2)按照标准卡尔曼滤波进行计算,得到滤波结果^X(k/k);
Lk的修正值,将第 j个观测值换为L′k中第j个值;
4)对步骤2)、3)进行迭代运算,并计算每次迭代 后 的 单 位 权 方 差 因 子 σ^2
5)迭代结束后,选择最后修正后的 L′k计算参数的滤波估值。
4 实验分析
为验证本方法的计算精度,文中采用某一地表沉降监测项目中的对动态水准监测网数据进行处理。监测网中共有12个未知地表点D1~D12和1个已知点。数据采样时间为3~4 d,共监测20期。本文对3期数据进行处理,根据前2期确定的初值,对第3期数据进行滤波。选取未知点的高程和高程的变化率为状态参数,其中Δt=4。
滤波参数初值的选取:X0选取第2期高程平差结果。X˙0选取为第1期和第2期平差结果之差与数据采样间隔的比值。X(0/0)=X0;DΩ=E;D(0/0)=E。状态方程和观测方程为
数据处理过程:首先,根据仅有偶然误差时的观测值进行粗平差得到结果作为真值。其次,在观测值 H2,H9中分别加入5 cm的观测误差,用标准卡尔曼滤波及整体修正和局部修正法分别进行求解,并分别求出与真值的差值。最后,对数据结果进行比较,得出结论。
假设预测值准确,通过MA TLAB程序解算得到表1中的数据。
表1 数据计算结果比较
通过表1中数据比较,可以得到如下结论:
1)整体和局部修正方法都可以有效地抵抗粗差的影响,获得比较接近平差值的滤波结果。
2)整体修正法比局部修正法收敛较快。
3)局部修正结果比整体修正总体上结果要准确。但是局部修正需要提前进行粗差定位。经检验,如果粗差定位时存在未被探测到的粗差观测,则滤波结果会变坏。但是如果定位粗差观测值多于实际的粗差观测值,滤波结果仍然较好。
5 结束语
本文提出卡尔曼滤波在进行有粗差观测值的滤波时发散的问题,基于此问题在标准卡尔曼滤波的基础上,并在假定滤波模型正确后,将卡尔曼滤波粗差修正分为整体修正和局部修正两方法,并给出各自的计算步骤。最后,将两种方法应用于工程实际数据的解算中,通过与标准卡尔曼滤波比较计算可以得出,两种修正方法在含有粗差时的滤波中均能够有效抵抗粗差观测值的影响,获得比较接近真值的滤波结果。但从结果分析可以发现,两种方法又有各自的优缺点。计算结果表明,卡尔曼滤波粗差修正方法具有实际的应用价值和研究价值。但如何快速准确的粗差定位仍需要进一步的研究。
[1]王秋平,陈 娟,王显利,等,一种新的自适应非线性卡尔曼滤波算法[J].光电工程,2008,35(7):17-21.
[2]朱建军,曾卓乔.污染误差模型下的测量数据处理理论[J].测绘学报,1999(3):215-220.
[3]宋力杰,杨元喜.均值漂移模型粗差探测法与LEGE法的比较[J].测绘学报,1999(4):295-300.
[4]许国辉,张新长.卡尔曼滤波模型粗差的探测及其在施工变形中的测量[J].中山大学学报:自然科学版,2003,42(3):89-91.
[5]祝转民,秋宏兴,李济生,等.动态测量数据野值的辨识与剔除[J].系统工程与电子技术,2004,26(2):147-149.
[6]刘大杰 ,于正林,陶本藻.形变测量动态数据的处理方法[M].北京:测绘出版社,1992:185-193.
[7]HAMPEL.Robust Statistics App roach Based on Influence[M].John Wiley Press,1986.
Themethod of grosserror modification in Kalman Filtering and itsapplication
Q IGong-yu1,2,Q IU Wei-ning1,2,HUA Xiang-hong1,2
(1.School of Geodesy and Geomatics,Wuhan University,Wuhan 430079,China;2.Hazard Monitoring and Prevention Research Center,Wuhan University,W uhan 430079,China)
M ethods of integralmodification and part modification are raised to modify gross error based on the standard Kalman Filtering.In the end,the resultsof an engineering examp le indicate that themethods can both effectively control the effects of gross error and obtain the more accurate results.
Kalman Filtering;gross error modification;app lication
P207
A
1006-7949(2010)01-0050-03
2009-04-22
国家863计划资助项目(2008AA 12Z308);国土资源大调查项目(1212010914015);武汉市科技计划资助项目(200760323113)
齐公玉(1986-),女,硕士研究生.
[责任编辑李铭娜]