在列车组合定位系统基于奇异值分解的粒子滤波算法研究

2014-06-26 15:49鲁志刚王更生
新媒体研究 2014年10期

鲁志刚+王更生

摘 要 粒子退化是粒子滤波算法存在的主要问题之一,针对该问题,提出了一种基于奇异值分解的粒子滤波算法。测试表明,所提算法能够提供更高地定位精度。

关键词 粒子滤波;奇异值分集;组合定位

中图分类号:U284 文献标识码:A 文章编号:1671-7597(2014)10-0054-02

在列车定位系统中,提高定位精度的方法有两种:一种是提升传感器的精度,另一种是多种定位方式相融合的组合式定位。在第二种方法中,通过对现有的多个单一定位系统中的传感器所提供的信息进行融合,从而实现了定位精确地提升。组合定位系统一般采用扩展卡尔曼(Extended KF,简称EKF)滤波算法[1],该算法虽然实现简单,但是难以适用于高维且非线性很大的复杂系统模型。因此,针对非线性系统的粒子(Partile Filter,简称PF)滤波算法得到了越来越多的关注[2]。

PF滤波算法使用非参数化的随机模拟办法来递推贝叶斯滤波,而PF算法的滤波器的精度取决于目标概率函数与重要性函数是否相近。并且粒子退化问题也影响了PF算法的性能。针对这一问题,文献[3]一种改进的PF(Improved PF,简称IPF)算法,该算法通过对重要性分布函数进行调整来抑制退化现象,但是IPF算法还会遇到协方差矩阵病态条件的困扰。而奇异值分解(Singular Value Decomposition,简称SVD)是能够有效地解决上述问题。因此,本文提出了一种基于奇异值分解的粒子滤波(SVD-based PF,简称SVD-PF)算法。仿真表明同PF算法相比较,SVD-PF算法稳定性更好,定位精度更高。

1 基于奇异值分解的粒子滤波算法

SVD-PF的算法步骤为:

1)从先验密度中采用粒子,假设粒子初始权值为,。

2)使用IPF算法计算粒子集的均值、方差。

①初始化()

(1)

令,,,其中,为系统噪声方差,为测量噪声方差。

②当

a.奇异值分解和特征点矩阵的计算

特征点矩阵

() (2)

其中,是合成比例参数,,决定周围特征点的扩散,为状态向量的维度,为二级尺度参数,为的第列,为的第个对角元素,。

奇异值分解:

(、正交,对角矩阵) (3)

b.更新时间

, (4)

其中,为系统输入,,,。

(5)

其中,,为关于的先验知识,,。

, (6)

c.更新量测

(7)

其中,,,。

3)从重要性分布函数采样粒子,。

4)利用公式求粒子权值。

5)对粒子权值进行归一化,。

6)对粒子样本集采样。

7)状态更新,。

2 列车组合定位系统的数学模型

组合定位系统由与北斗组成。该系统的状态向量采用北斗与惯性导航所输出的导航误差,并使用间接法滤波来进行处理。同时,北斗的伪距误差只作为量测噪声来对待。

2.1 系统状态方程

状态向量:

(8)

其中,是速度误差,是位置误差,是四元数误差,为陀螺常值漂移,为加速度计零偏。

(9)

其中,是状态转移模型,是噪声系数阵,是系统噪声阵。

2.2 量测方程

北斗接收机的伪距可写成:

(10)

其中,为接收机到卫星的距离,是钟差等效距离,是非钟差测距误差,为接收机所收到的白噪声。

(11)

利用公式(11)来消除钟以及,从而得到公式(12):

(12)

其中,为输出的坐标, 为第颗北斗卫星的坐标。根据公式(12)可以得到/北斗组合定位系统的量测方程:

(13)

其中,为非线性函数,是量测噪声。

3 仿真分析

为了验证SVD-PF算法的性能,本文进行了如下仿真,仿真参数设置参照文献[3]。

图1 PE与SVD-PE定位误差比较

图1给出了PE算法与SVD-PF算法在东向位置的误差。从图1中可以看出,SVD-PF算法的定位误差要明显小于PF算法的。并且表1给出了两种算法定位误差的定量分析。从表1中可以看出,SVD-PF算法的误差最大值、均值与方差都小于PF算法的。

表1 东向位置误差(单位:米)

名称 误差最大值 均值 方差

PF 19.73 3.25 41.12

SVD-PF 16.812 2.67 36.65

4 结论

本文提出了一种基于奇异值分解的粒子滤波算法SVD-PF,并将其应用于列车组合定位系统中,仿真表明,SVD-PF算法能够显著地提高定位精度。

参考文献

[1]秦永元,汪叔华.卡尔曼滤波与组合导航原理[M].西安:西北工业大学出版社,1998.

[2]Meropolis N, Rosenbluth A W. Equation of state calculations by fast computing machines. Journal of Chemical Physics, 1953,21(6):1087-1092.

[3]赵梅,张三通,朱刚.改进粒子滤波算法在组合导航中的应用[N].中国公路学报,2007,20(2):108-112.

作者简介

鲁志刚(1988-),男,汉族,江西抚州人,硕士生,华东交通大学信息工程学院,研究方向计算机应用技术。

王更生(导师)(1964-),男,汉族,湖南邵东人,教授,硕士,华东交通大学信息工程学院,主要研究领域为计算机应用,全球卫星定位系统,数据挖掘。endprint

摘 要 粒子退化是粒子滤波算法存在的主要问题之一,针对该问题,提出了一种基于奇异值分解的粒子滤波算法。测试表明,所提算法能够提供更高地定位精度。

关键词 粒子滤波;奇异值分集;组合定位

中图分类号:U284 文献标识码:A 文章编号:1671-7597(2014)10-0054-02

在列车定位系统中,提高定位精度的方法有两种:一种是提升传感器的精度,另一种是多种定位方式相融合的组合式定位。在第二种方法中,通过对现有的多个单一定位系统中的传感器所提供的信息进行融合,从而实现了定位精确地提升。组合定位系统一般采用扩展卡尔曼(Extended KF,简称EKF)滤波算法[1],该算法虽然实现简单,但是难以适用于高维且非线性很大的复杂系统模型。因此,针对非线性系统的粒子(Partile Filter,简称PF)滤波算法得到了越来越多的关注[2]。

PF滤波算法使用非参数化的随机模拟办法来递推贝叶斯滤波,而PF算法的滤波器的精度取决于目标概率函数与重要性函数是否相近。并且粒子退化问题也影响了PF算法的性能。针对这一问题,文献[3]一种改进的PF(Improved PF,简称IPF)算法,该算法通过对重要性分布函数进行调整来抑制退化现象,但是IPF算法还会遇到协方差矩阵病态条件的困扰。而奇异值分解(Singular Value Decomposition,简称SVD)是能够有效地解决上述问题。因此,本文提出了一种基于奇异值分解的粒子滤波(SVD-based PF,简称SVD-PF)算法。仿真表明同PF算法相比较,SVD-PF算法稳定性更好,定位精度更高。

1 基于奇异值分解的粒子滤波算法

SVD-PF的算法步骤为:

1)从先验密度中采用粒子,假设粒子初始权值为,。

2)使用IPF算法计算粒子集的均值、方差。

①初始化()

(1)

令,,,其中,为系统噪声方差,为测量噪声方差。

②当

a.奇异值分解和特征点矩阵的计算

特征点矩阵

() (2)

其中,是合成比例参数,,决定周围特征点的扩散,为状态向量的维度,为二级尺度参数,为的第列,为的第个对角元素,。

奇异值分解:

(、正交,对角矩阵) (3)

b.更新时间

, (4)

其中,为系统输入,,,。

(5)

其中,,为关于的先验知识,,。

, (6)

c.更新量测

(7)

其中,,,。

3)从重要性分布函数采样粒子,。

4)利用公式求粒子权值。

5)对粒子权值进行归一化,。

6)对粒子样本集采样。

7)状态更新,。

2 列车组合定位系统的数学模型

组合定位系统由与北斗组成。该系统的状态向量采用北斗与惯性导航所输出的导航误差,并使用间接法滤波来进行处理。同时,北斗的伪距误差只作为量测噪声来对待。

2.1 系统状态方程

状态向量:

(8)

其中,是速度误差,是位置误差,是四元数误差,为陀螺常值漂移,为加速度计零偏。

(9)

其中,是状态转移模型,是噪声系数阵,是系统噪声阵。

2.2 量测方程

北斗接收机的伪距可写成:

(10)

其中,为接收机到卫星的距离,是钟差等效距离,是非钟差测距误差,为接收机所收到的白噪声。

(11)

利用公式(11)来消除钟以及,从而得到公式(12):

(12)

其中,为输出的坐标, 为第颗北斗卫星的坐标。根据公式(12)可以得到/北斗组合定位系统的量测方程:

(13)

其中,为非线性函数,是量测噪声。

3 仿真分析

为了验证SVD-PF算法的性能,本文进行了如下仿真,仿真参数设置参照文献[3]。

图1 PE与SVD-PE定位误差比较

图1给出了PE算法与SVD-PF算法在东向位置的误差。从图1中可以看出,SVD-PF算法的定位误差要明显小于PF算法的。并且表1给出了两种算法定位误差的定量分析。从表1中可以看出,SVD-PF算法的误差最大值、均值与方差都小于PF算法的。

表1 东向位置误差(单位:米)

名称 误差最大值 均值 方差

PF 19.73 3.25 41.12

SVD-PF 16.812 2.67 36.65

4 结论

本文提出了一种基于奇异值分解的粒子滤波算法SVD-PF,并将其应用于列车组合定位系统中,仿真表明,SVD-PF算法能够显著地提高定位精度。

参考文献

[1]秦永元,汪叔华.卡尔曼滤波与组合导航原理[M].西安:西北工业大学出版社,1998.

[2]Meropolis N, Rosenbluth A W. Equation of state calculations by fast computing machines. Journal of Chemical Physics, 1953,21(6):1087-1092.

[3]赵梅,张三通,朱刚.改进粒子滤波算法在组合导航中的应用[N].中国公路学报,2007,20(2):108-112.

作者简介

鲁志刚(1988-),男,汉族,江西抚州人,硕士生,华东交通大学信息工程学院,研究方向计算机应用技术。

王更生(导师)(1964-),男,汉族,湖南邵东人,教授,硕士,华东交通大学信息工程学院,主要研究领域为计算机应用,全球卫星定位系统,数据挖掘。endprint

摘 要 粒子退化是粒子滤波算法存在的主要问题之一,针对该问题,提出了一种基于奇异值分解的粒子滤波算法。测试表明,所提算法能够提供更高地定位精度。

关键词 粒子滤波;奇异值分集;组合定位

中图分类号:U284 文献标识码:A 文章编号:1671-7597(2014)10-0054-02

在列车定位系统中,提高定位精度的方法有两种:一种是提升传感器的精度,另一种是多种定位方式相融合的组合式定位。在第二种方法中,通过对现有的多个单一定位系统中的传感器所提供的信息进行融合,从而实现了定位精确地提升。组合定位系统一般采用扩展卡尔曼(Extended KF,简称EKF)滤波算法[1],该算法虽然实现简单,但是难以适用于高维且非线性很大的复杂系统模型。因此,针对非线性系统的粒子(Partile Filter,简称PF)滤波算法得到了越来越多的关注[2]。

PF滤波算法使用非参数化的随机模拟办法来递推贝叶斯滤波,而PF算法的滤波器的精度取决于目标概率函数与重要性函数是否相近。并且粒子退化问题也影响了PF算法的性能。针对这一问题,文献[3]一种改进的PF(Improved PF,简称IPF)算法,该算法通过对重要性分布函数进行调整来抑制退化现象,但是IPF算法还会遇到协方差矩阵病态条件的困扰。而奇异值分解(Singular Value Decomposition,简称SVD)是能够有效地解决上述问题。因此,本文提出了一种基于奇异值分解的粒子滤波(SVD-based PF,简称SVD-PF)算法。仿真表明同PF算法相比较,SVD-PF算法稳定性更好,定位精度更高。

1 基于奇异值分解的粒子滤波算法

SVD-PF的算法步骤为:

1)从先验密度中采用粒子,假设粒子初始权值为,。

2)使用IPF算法计算粒子集的均值、方差。

①初始化()

(1)

令,,,其中,为系统噪声方差,为测量噪声方差。

②当

a.奇异值分解和特征点矩阵的计算

特征点矩阵

() (2)

其中,是合成比例参数,,决定周围特征点的扩散,为状态向量的维度,为二级尺度参数,为的第列,为的第个对角元素,。

奇异值分解:

(、正交,对角矩阵) (3)

b.更新时间

, (4)

其中,为系统输入,,,。

(5)

其中,,为关于的先验知识,,。

, (6)

c.更新量测

(7)

其中,,,。

3)从重要性分布函数采样粒子,。

4)利用公式求粒子权值。

5)对粒子权值进行归一化,。

6)对粒子样本集采样。

7)状态更新,。

2 列车组合定位系统的数学模型

组合定位系统由与北斗组成。该系统的状态向量采用北斗与惯性导航所输出的导航误差,并使用间接法滤波来进行处理。同时,北斗的伪距误差只作为量测噪声来对待。

2.1 系统状态方程

状态向量:

(8)

其中,是速度误差,是位置误差,是四元数误差,为陀螺常值漂移,为加速度计零偏。

(9)

其中,是状态转移模型,是噪声系数阵,是系统噪声阵。

2.2 量测方程

北斗接收机的伪距可写成:

(10)

其中,为接收机到卫星的距离,是钟差等效距离,是非钟差测距误差,为接收机所收到的白噪声。

(11)

利用公式(11)来消除钟以及,从而得到公式(12):

(12)

其中,为输出的坐标, 为第颗北斗卫星的坐标。根据公式(12)可以得到/北斗组合定位系统的量测方程:

(13)

其中,为非线性函数,是量测噪声。

3 仿真分析

为了验证SVD-PF算法的性能,本文进行了如下仿真,仿真参数设置参照文献[3]。

图1 PE与SVD-PE定位误差比较

图1给出了PE算法与SVD-PF算法在东向位置的误差。从图1中可以看出,SVD-PF算法的定位误差要明显小于PF算法的。并且表1给出了两种算法定位误差的定量分析。从表1中可以看出,SVD-PF算法的误差最大值、均值与方差都小于PF算法的。

表1 东向位置误差(单位:米)

名称 误差最大值 均值 方差

PF 19.73 3.25 41.12

SVD-PF 16.812 2.67 36.65

4 结论

本文提出了一种基于奇异值分解的粒子滤波算法SVD-PF,并将其应用于列车组合定位系统中,仿真表明,SVD-PF算法能够显著地提高定位精度。

参考文献

[1]秦永元,汪叔华.卡尔曼滤波与组合导航原理[M].西安:西北工业大学出版社,1998.

[2]Meropolis N, Rosenbluth A W. Equation of state calculations by fast computing machines. Journal of Chemical Physics, 1953,21(6):1087-1092.

[3]赵梅,张三通,朱刚.改进粒子滤波算法在组合导航中的应用[N].中国公路学报,2007,20(2):108-112.

作者简介

鲁志刚(1988-),男,汉族,江西抚州人,硕士生,华东交通大学信息工程学院,研究方向计算机应用技术。

王更生(导师)(1964-),男,汉族,湖南邵东人,教授,硕士,华东交通大学信息工程学院,主要研究领域为计算机应用,全球卫星定位系统,数据挖掘。endprint