资源描述
第6期 基于改进粒子滤波算法的GPS非高斯伪距误差修正 · 29 ·
基于改进粒更多电子资料请登录赛微电子网
子滤波算法的GPS非高斯伪距误差修正*
涂刚毅 金世俊 祝雪芬 宋爱国
(东南大学仪器科学与工程学院, 南京 210096)
摘 要: 针对城市环境中由于受到多径效应影响, GPS伪距误差呈非高斯分布的问题, 本文通过对实测数据进行分析, 在建立正确的伪距误差分布模型的基础上, 提出了一种改进粒子滤波修正算法, 用于优化PVT解算结果, 提高了GPS在城市环境中定位的精度。并通过与卡尔曼滤波定位优化算法结果进行比较, 验证了此算法的有效性。
关键词: GPS;粒子滤波器;伪距;定位精度
中图分类号: TP228 文献标识码: A 国家标准学科分类代码: 510.40
Compensation of GPS non-Gaussian pseudorange error based on
improved particle filter algorithm
Tu Gangyi Jin Shijun Zhu Xuefen Song Aiguo
(School of Instrument Science and Engineering, Southeast University, Nanjing 210096, China)
Abstract: Due to the multi-path effect in urban environment, GPS pseudorange error appears non-Gaussian error distribution. In this paper, the correct pseudorange error distribution model has been established according to the analysis of the measured data. Based on this non-Gaussian model, an improved particle filter algorithm is implemented to compensate the non-Gaussian pseudorange error and optimize the estimations of PVT. The accuracy of GPS urban positioning is improved and the validity of this algorithm has been verified by comparing with Kalman filter experiments.
Keywords: GPS; particle filter; pseudorange; positioning accuracy
1 引 言
目前, 全球定位系统(global positioning system, GPS)在军事和民用方面均得到了越来越广泛的运用。GPS定位技术要求接收机和卫星之间无遮挡, 但在城市环境中, 由于伪距测量会受到多径效应的影响, 造成信号延迟, 从而引入较大误差, 影响定位精度。统计实验结果显示, 受到多径效应影响的伪距误差, 其误差分布为非高斯分布[1]。常规卡尔曼滤波方法不能用来对非高斯的误差进行修正。粒子滤波作为一种非线性滤波方法, 随着采样粒子数的不断增大, 逐渐趋向状态的后验概率密度, 在解决非高斯分布误差问题时具有明显的优势[2]。
基于以上理论, 本文提出了一种利用粒子滤波器对非高斯的伪距误差进行修正的方法, 用于提高GPS在城市环境中位置、速度、时间(position、velocity、time, PVT)解算的精度。该算法具体实现分为三步: PVT位置解算; 建立伪距误差分布模型; 在此模型基础上利用粒子滤波器对伪距误差进行修正, 从而提高GPS定位精度。限于篇幅, 本文仅对后两步研究结果进行介绍, 并且将本文提出的粒子滤波算法与卡尔曼滤波(Kalman filter, KF)定位优化算法结果进行了比较。
2 伪距误差分布特性
由于粒子滤波器应用是建立在误差分布已知的前提下, 所以实验的第一步就是建立精确的伪距误差分布模型[1]。首先需要获知接收机在测试点的精确坐标。该坐标可以通过在房顶使用高精度接收机测得同一位置坐标, 减去两点间高程差获得。
实验显示伪距误差分布因信噪比(signal-to-noise ratio, SNR)不同而变化。故在利用粒子滤波器对伪距误差进行修正时, 应根据信噪比选用不同的误差模型。本文研究对象为城市环境中的GPS信号, 特点是由于受建筑物或树木遮挡的影响, 可视卫星数量少, 且GPS信号的信噪比普遍较低。伪距误差分布特性统计结果如图1(a),(b)所示。
如图1(a),(b)所示, 在城市低信噪比环境下, 伪距误差方差较大, 误差均值也发生较大偏移, 其分布呈非高斯分布。因而利用粒子滤波器对此非高斯分布的伪距误差进行修正, 方法可行。需要指出的是伪距误差的均值和方差因接收机型号的不同而有所不同。
(a) 统计分布图
(a) Chart distribution
(b) 方差及均值曲线(信噪比: 15-45 dB)
(b) Variance and mean curve
图1 伪距误差曲线
Fig. 1 Pseudorange error curve
3 系统状态方程及观测方程
离散系统的非线性, 非高斯随机状态空间模型可表示为下式[2]:
(1)
式中: xk为系统在k时刻的状态向量, yk为观测向量, wk与vk分别为系统噪声和量测噪声, 二者相互独立。f, h分别为有界非线性映射。
为避免粒子滤波器当状态向量的维数增加, 粒子总数迅速增加, 运算效率迅速降低的问题, 应尽量减少状态向量的维数。在本文中, k时刻粒子滤波器的状态向量设为四维, 即。其中Lonk为经度值, Lank为纬度值, Hk为高度坐标, bk为时钟误差。
测量值。
式中: 为在k时刻可视卫星的数量。为接收机与卫星i之间的伪距误差,可以通过下式计算得到[1]:
(2)
式中: i为卫星编号,Ri是从卫星i到接收机的距离,当接收机估计坐标已知时,该参数可通过计算得到。为接收机计算得到的卫星i到接收机的距离,为卫星时钟偏差,可通过PVT解算获得;和分别为对流层和电离层的传输延时,该两项误差可以通过导航电文中的参数计算得到。
4 粒子滤波器算法及实现
粒子滤波器是通过递归蒙特卡罗采样实现跟踪
的一种统计计算方法, 其算法包括4个主要步骤: 初始化粒子集、预测、更新和重采样。粒子滤波器在计算过程中随着时间的增长, 一部分粒子的权值会变得非常大, 而其余粒子的权值很小, 从而丧失粒子的多样性, 导致精度下降, 这一现象被称为粒子退化。为了解决这一问题, 本文中采用了顺序重要重采样(sequential importance resampling, SIR)算法[2-4]。根据处理对象, 具体实现步骤如下:
1) 初始状态, k=0, 根据PVT解算估算的结果, 将其作为状态空间中心, 生成个样本。每个样本被认为是一个粒子。
2) 给每一个粒子分配相同的权值:
(3)
3) 对粒子的权值进行更新。
a. 计算粒子j与卫星i之间的伪距误差, 并将其作为k时刻的测量值
(4)
式中: 为在k时刻被接收机捕获的卫星数量。
b. 根据式(5), 逐个更新粒子的权值[2]
(5)
式中: N, 为重要性密度函数, 即粒子的取样分布函数, 为后验密度函数。
不同卫星间伪距误差可认为相互独立, 由式(4), 可认为
(6)
将其代入式(5), 得到
(7)
其中, 后验密度函数可以根据图1(a)伪距误差分布模型得到。
c. 对粒子权系数进行规一化:
(8)
图2 粒子滤波器算法结构框图
Fig. 2 Block diagram of particle filters algorithms
4) 计算有效粒子数Neff和门限粒子数Nth [3]:
(9)
5) 如果, 记录所有粒子及其权值, 。否则根据重采样算法对粒子进行重采样, 并重复步骤2)至5)。
6) 计算优化后的状态参量xk:
(10)
7) 重复步骤3至6, 直到轨迹结束。具体流程如图2所示。
此外, 在步骤1生成粒子时, 可根据PVT解算结果中的水平精度因子(horizontal dilution of precision, HDOP)、高程精度因子(vertical dilution of precision, VDOP)和时间精度因子(time dilution of precision, TDOP)值决定粒子状态空间的大小和粒子的数量。在用户距离误差的标准差不变的情况下, DOP与同方向上的位置误差成比例关系。当HDOP, VDOP和TDOP值较大时, 表明当前卫星分布不合理, 通常定位结果误差较大, 则需扩大粒子滤波器粒子分布的状态空间, 并增加粒子的数量。
5 实验结果
本实验选用的GPS接收机为一款商用蓝牙接收机Globalsat BT338。较一般商用接收机, 该接收机支持伪距等原始数据输出, 且小巧, 便于携带和安装在如移动机器人等小型设备上。为便于比较定位误差, 实验时, 接收机不移动, 位置固定。实验环境如图3所示, 部分信号被高层建筑遮蔽, 同时接收机受到前方屋顶反射造成的多径效应误差的影响, 是典型的城市环境。
图3 实验环境
Fig. 3 Experiment environment
为对算法的有效性进行验证, 本文将粒子滤波器算法结果与卡尔曼滤波算法结果进行了比较。GPS卡尔曼滤波方法及模型在多本专著中都有论述, 针对GPS定位精度优化问题, 本文采用文献[5]的模型及方法。由于篇幅有限, 在此不做介绍。实验时, 卡尔曼滤波算法中接收机在经度、纬度、高度方向上速度分量误差的均方差均取为0.5 m/s, 时钟漂移造误差的均方差均取为10 m。
通过对约8分钟的连续GPS信号进行处理, 得到以下结果。在图4精度因子曲线图中, HDOP、VDOP、TDOP值均在正常范围内, 据此可知PVT解算结果正确, 未出现定位异常。
图4 精度因子曲线图
Fig. 4 DOP curves
通过将PVT、卡尔曼滤波和粒子滤波定位结果与真实坐标进行比较, 得到图5定位误差曲线和
表1。
实验证明, 利用卡尔曼滤波算法和粒子滤波算法对PVT定位结果进行优化, 均取得了较好的效果, 其中粒子滤波算法定位误差被减少了37.10%。
同时, 为了对PVT和粒子滤波算法定位结果的离散情况进行比较, 可对两种算法的定位误差的方差值进行比较。实验结果显示, 通过应用本文提出的粒子滤波算法, 在经度和纬度方向上, 定位误差的方差均得到了优化。其中经度方向上粒子滤波算法改进明显, 定位方差减少了68.15%。
图6为定位结果分布图, 粒子滤波算法定位结果较卡尔曼滤波算法定位结果更加集中, 从而提高了GPS在城市环境中定位的准确度。
图5 定位误差曲线
Fig. 5 Positioning error curves
表1 定位误差均值
Table 1 Mean error of positioning
定位误差/m
较PVT优化
PVT
22.5959
卡尔曼滤波
18.0848
19.96 %
粒子滤波
14.2128
37.10 %
表2 定位误差方差
Table 2 Variance of positioning error
方向
定位方差/m
较PVT优化
PVT
经度
14.782 5
纬度
21.554 9
卡尔曼滤波
经度
13.054 5
11.69%
纬度
16.033 3
25.62%
粒子
滤波
经度
4.708 2
68.15%
纬度
15.085
30.02 %
6 结 论
综上所述, 本文提出的改进的粒子滤波器算法可以用于对城市环境下的非高斯伪距误差进行补偿, 减少PVT定位误差, 提高其定位精度, 同时使得定位结果更加集中, 提高了系统的稳定性。
图6 定位结果分布图
Fig. 6 Positioning distribution
参考文献:
[1] TORREA D, GHINAMO G, DETOMA E, et al. Analysis of the accuracy of indoor GNSS measurements and positioning solution [C]. Toulouse: The European Navigation Conference-Global Navigation Satellite Systems, ENC- GNSS, 2008: 22-25.
[2] ARULAMPALAM S, MASKELL S, GORDON N, et al. A tutorial on particle filters for on-line non-linear/non- gaussian bayesian tracking [J]. IEEE Transactions on Signal Processing, 2002, 50(2): 174-188.
[3] AGGARWAL P, SYED Z., ELSHEIMY N. Hybrid extended particle filter (HEPF) for integrated civilian navigation system[C]. Monterey: Position, Location and Navigation Symposium, IEEE/ION, 2008: 984–992.
[4] BOLIC M, DJURIC P M, HONG S. Resampling algorithms for particle filters: A computational complexity perspective[J]. EURASIP Journal on Applied Signal Processing, 2004, 2004(15): 2267-2277.
[5] BROWN R G, HWANG P Y C. Introduction to random signals and applied kalman filtering [M]. New York: John Wiley & Sons, Inc., 1997. 438-457.
[6] VERMAAK J, GODSILL S J, PÉREZ P. Monte Carlo filtering for multi-target tracking and data association [J]. IEEE Transactions on Aerospace and Electronic Systems, 2005, 41(1): 309- 332.
[7] SÄRKKÄ S, VEHTARI A, LAMPINEN J. Rao- Blackwellized particle filter for multiple target tracking[J]. Information Fusion, 2007, 8 (1): 2-15.
[8] 胡士强, 敬忠良. 粒子滤波算法综述[J]. 控制与决策, 2005, 20 (4): 361-365, 371.
HU SH Q, JIN ZH L. Summary of particle filter algorithm[M]. Control and Decision-marking, 2005, 20 (4): 361-365, 371.
作者简介:
涂刚毅: 男, 1981年出生, 现为东南大学博士研究生。 主要研究方向为卫星信号处理与自主移动机器人。
E-mail: tugangyi@
Tu Gangyi: male, was born in 1981. Now he is a PhD candidate in Southeast University. His research interests are in the area of satellite signal processing and autonomous mobile robot.
金世俊: 1998年博士毕业于东南大学, 现为东南大学仪器科学与工程学院副教授。主要从事智能机器人传感与路径规划技术等方面研究。
E-mail: jinsj@
Jin Shijun: received PhD in Southeast University in 1998. Now, he is an associate professor of School of Instrument Science and Engineering, Southeast University. His research interests include intelligent mobile robot path planning and sensing technology etc.
第3期 汤清虎 等: 非晶态Mn-Ce-O催化芒香醇选择氧化 5
展开阅读全文