
基于改进高斯混合模型的机器人运动状态估计
状态估计理论被广泛应用于各领域, 例如太空监测[1]、无线通信、机器人运动跟踪以及金融行业等[2]. 当系统为线性、噪声统计特性服从高斯分布并完全已知时, 卡尔曼滤波器是最优的解决方案[3-4]. 在大多数实际工程应用中, 系统往往存在非线性、非高斯等复杂特征, 此时若采用经典卡尔曼滤波方法来对实际系统进行状态估计, 将出现估计精度下降和收敛性变差等情形, 甚至会出滤波发散现象, 这严重制约了经典卡尔曼滤波理论在实际工程中的应用. 因此, 深入开展非线性非高斯系统下的卡尔曼滤波方法研究具有重要的意义.
近几十年来, 研究人员已提出诸多面向非线性系统的卡尔曼滤波方法, 如扩展卡尔曼滤波、无迹卡尔曼滤波、容积卡尔曼滤波(Cubature Kalman filter, CKF)[5], 以及一些相应的改进算法. 其中, 扩展卡尔曼滤波因结构简单在早期大受欢迎, 但该方法只能处理弱非线性问题, 当系统非线性增强时其估计性能将急剧下降; 与扩展卡尔曼滤波相比, 无迹卡尔曼滤波引入了采样近似技术, 估计精度和稳定性有了很大提升; CKF则是在无迹卡尔曼滤波基础上提出的一种改进型卡尔曼滤波方法, 基于三阶球面径向容积准则来进行采样近似, 是理论上当前最接近贝叶斯滤波的基础性非线性滤波算法. 现有研究表明, CKF的数值稳定性及滤波精度优于传统的扩展卡尔曼滤波和无迹卡尔曼滤波, 尤其是在高维非线性系统状态估计中具有更为明显的算法优势[6-7].
此外, 针对非高斯系统的状态估计问题研究也取得一些进展, 目前已建立了基于高斯和、粒子滤波和极大相关熵等技术在内多种非高斯滤波方法[8]. 文献[9]基于最大相关熵准则提出一种适用于非高斯噪声的卡尔曼滤波算法, 但是其高斯核大小对结果影响较大. 为了克服这一缺陷, 研究者们对极大相关熵准则中的核函数进行一系列的改进[10], 如对高斯核大小进行自适应处理, 但都难以从根本解决对核敏感的问题. 高斯和技术是一种比较直观和受欢迎的非高斯处理方法之一, 其基本原理是采用多个有限高斯项概率密度去逼近非高斯概率密度, 即利用多个高斯分布的和去近似表示一个非高斯分布, 从而可以基于传统的卡尔曼滤波框架实现滤波[11]. 因此, 通过将高斯和技术和CKF结合, 可进一步构建相应的滤波算法来解决非线性非高斯系统的状态估计问题[3, 12]. 事实上, 高斯和滤波器设计的关键问题主要包括高斯混合模型的参数估计和高斯项优化合并[13-14], 其中高斯混合模型参数估计主要采用期望最大化(Expectation-maximum, EM)算法, 该算法是由Dempster等[15]于1977年提出的一种迭代算法, 其通过估计参数的极大似然值来分析不完全数据集, 从而达到获取最佳聚类结果的目的. 然而, EM算法存在对初始值比较敏感、收敛速度慢、容易陷入局部收敛以及需要知道混合成分个数等缺陷, 在工程应用受到极大的限制[16-17], 依然有待进一步深入改进. 此外, 在高斯和滤波过程中, 高斯项的个数会呈指数型递增, 这使得对高斯项进行合理有效地合并就显得非常必要. 目前典型用于高斯项合并的距离度量包括马氏(Mahalanobis)距离和Kullback-Leibler (KL)距离[18-19], 其中马氏距离度量倾向于采用剪枝方式来删除权重较低的高斯项, 而KL距离度量更倾向于合并而不是剪枝方式[19]. 由于这两种高斯混合项处理方式机理不同, 所产生的高斯项约简效果也有差异, 一般很难从理论上验证孰优孰劣.
针对上述问题, 本文以自由度为3 (包括x、y与朝向) 的地面移动机器人的运动状态估计系统为对象, 提出一类改进的非线性非高斯CKF的设计. 该工作主要创新包括建立一种改进的鲁棒EM算法, 并提出了基于信息融合技术的高斯项合并方法. 在鲁棒EM算法改进方面, 本文将引入加权信息量概念来进一步完善EM算法中的目标函数惩罚项, 使得在优化过程中能考虑包括隐含信息量在内的更全面的参数信息. 通过这种方式, 得到的权重更新参数将更具有代表性, 从而减少EM算法的迭代次数并提高其收敛速度. 在高斯项合并方法方面, 综合考虑上述两类高斯项合并方法原理和性能上的差异性和互补性, 基于信息融合技术提出一种新的高斯合并项融合方法: 先单独对马氏距离和KL距离度量进行高斯混合项合并, 以改善高斯项合并距离度量的合理性; 再以两个距离度量独立运行输出的高斯合并项为基础, 提出对两类高斯合并项进行加权融合的高斯混合项融合方法. 基于传统高斯和容积卡尔曼滤波的设计框架, 本文提出新型非线性非高斯滤波方法, 并通过理论分析和机器人转弯运动状态估计仿真场景来验证新算法的有效性.
1. 问题描述
1.1 系统描述
考虑如下一类非线性非高斯估计系统:
(1) |
(2) |
式中,
1.2 高斯和容积卡尔曼滤波
根据高斯和定理, 任意分布的概率密度函数都能够用
(3) |
(4) |
式中,
高斯和容积卡尔曼滤波( Gaussian-sum cubature Kalman filter, GSCKF)的基本框架如图1所示. 主要步骤包括: 近似高斯分布集合估计、并行容积卡尔曼滤波、高斯项合并和信息融合等. 其中, 高斯分布集合估计是确定几个高斯分布的和来近似表示原非高斯分布, 并估计出各个高斯分布的特征参数, 从而可以建立高斯混合模型; 并行容积卡尔曼滤波是以多高斯分布估计为基础, 分别执行单高斯分布下的标准CKF来获得相应的状态估计; 随着估计时间增加, 高斯项个数将呈几何级增长, 因此进行高斯项即多个高斯分布的滤波估计结果合并约简就显得非常必要; 当完成高斯项合并约简后, 将剩余的高斯分布滤波估计进行融合获得最终的高斯和滤波估计.
现有的高斯和容积卡尔曼滤波方法研究重点集中在算法设计上, 主要包括如下2个核心问题: 1)对于非高斯噪声特性的参数估计研究. 虽然通过高斯和原理可将非高斯噪声表示为多个高斯分布的混合模型, 但应用传统的EM算法及改进方法对高斯混合模型的参数进行估计时, 往往需要提前确定混合成分个数, 并且初始参数值对算法性能的影响较大, 因此提高EM算法的鲁棒性对于改善高斯和滤波的性能非常重要; 2)对高斯混合项的合并模型降阶方法的研究. 高斯和滤波过程将产生大量的高斯项, 这是非高斯模型高斯化的必然结果. 但过多的高斯项必然会对整个滤波过程和结果性能产生不利影响, 尤其是高斯项合并结果将直接影响非高斯状态估计的性能. 现有研究大都采用单一距离的合并机制, 如基于马氏距离的高斯项合并, 该方法主要倾向于合并均值相近的高斯项. 事实上, 高斯化后产生的众多高斯项类型和特征各有不同, 单一的合并基准或策略往往难以尽可能有效地衡量出所有需要合并或剪枝的高斯项, 同时又需要考虑最大高斯分量数的约束, 使得寻找一个合适的动态阈值来降低算法复杂度的同时又能保证算法精度是一个挑战性的问题. 因此, 如何设计更加高效的高斯项合并策略成为改善高斯和滤波性能的一个重要方向.
1.3 研究动机
由于准确确定高斯混合模型中混合成分的具体类簇和数量是非常困难的, 从而导致传统EM算法的应用和性能受到很大的限制. 因此, 针对第1.1节的问题1), 本文借鉴文献[21]引进信息量概念的思路, 通过对传统EM算法目标函数添加惩罚项, 优化EM算法中权重参数的更新规则, 得到一种中引进信息量概念来改进EM算法输出性能的思想, 通过进一步增加传统EM算法目标函数惩罚项(即加权信息量)的方式来实现EM算法中权重参数更新规则的深度优化, 从而获得一种改进的鲁棒EM算法. 该改进算法将混合成分个数的初值作为采样点数, 从而能有效改善对初始参数值敏感的问题, 随后应用各个类簇竞争性的关系和迭代过程中删除权重低的项来获得混合成分的具体参数, 从而EM算法的鲁棒性能够得到有效改善.
针对问题2), 考虑到基于单一距离指标的高斯项合并方式存在适用性和鲁棒性等受限问题, 加之高斯化得到的高斯混合项具有各自的特性以及每种距离指标拥有天然不同的明确倾向性, 使得采用信息融合技术来实现多种距离指标下高斯项合并方法的融合成为可能, 因此提出基于多距离指标高斯项的二次融合模式来设计一种改进的高斯混合项合并方法. 理论上使用更多的距离指标更够更加符合和逼近高斯混合项的复杂特征, 但为了研究阐述的简便性和直观性, 本文只讨论基于马氏距离和基于KL距离的高斯混合项融合合并方法, 即将基于上述两种距离方法的合并结果进行凸组合加权融合[22]来获得最终的非高斯状态估计. 需要提及的是, 一般意义上更多距离指标的融合参与过程可类推获得, 但鉴于计算复杂性和实时性的要求, 过多的距离指标使用也会产生一些新的问题.
2. 改进鲁棒EM算法
EM算法是一种针对不完全数据进行参数估计值求解的迭代算法, 其在观测数据的基础上引进不可观测的潜在数据, 从而将复杂的不完全数据问题转化为完全数据问题[23], 并通过迭代算法完成不完全数据的参数的估计.
2.1 EM算法
假定存在一组观测数据
(5) |
式中,
经典EM算法的流程如图2所示, 其中
E-step: 给定初始参数
(6) |
M-step: 计算新一轮迭代模型参数:
1)混合高斯项的权重为:
(7) |
2)高斯混合模型分量的均值为:
(8) |
3)高斯混合模型分量的协方差为:
(9) |
对于上述传统EM算法, 一般需要提前给定混合成分的具体个数, 且对于初始参数比较敏感, 容易陷入局部最优, 这些都限制了EM算法应用.
2.2 一种改进鲁棒EM算法
Yang等[21]提出一种鲁棒EM算法, 通过对传统EM算法目标函数添加惩罚项, 以优化EM算法当中高斯混合项的权重更新方式, 进而改变混合模型的具体参数更新规则. 但添加的惩罚项仅考虑优化权重参数
(10) |
其中
(11) |
进一步考虑约束条件
(12) |
每次迭代时, 若
(13) |
同时, 为了保证约束条件
(14) |
(15) |
流程如图3所示, 本文改进鲁棒EM算法具体步骤如下:
步骤 1. 初始化参数
步骤 2. E-step: 根据式(6)计算
步骤 3. M-step: 由式(12)更新权重, 由式(8)计算
步骤 4. 当
步骤 5. 根据式(14)和式(15)更新得到
步骤 6. 根据式(6)更新
步骤 7. 若
本节提出改进鲁棒EM算法, 对初始的参数值不敏感, 迭代过程中各个高斯项之间是竞争关系, 每次迭代删除权重较小的高斯项, 通过不断迭代可得到混合成分具体参数估计.
3. 改进高斯和容积卡尔曼滤波
3.1 高斯和容积卡尔曼滤波
本文将给出非高斯噪声环境下的高斯和滤波算法(Improved GSCKF, IGSCKF), 算法流程如图4所示. 在非高斯噪声环境下, 用改进鲁棒EM算法进行高斯混合模型的求解, 通过高斯和原理, 使用多个并行的CKF进行状态预测与更新, 求解得到目标的状态估计值. 然而, 随着时间推移, 高斯项的个数会越来越多从而限制算法的使用. 为了有效地对高斯项进行合并, 本文将利用现有两类方法来进行高斯项的合并, 并将合并后的高斯混合项进行凸组合融合. 结合图4具体阐述改进后的高斯和容积卡尔曼滤波算法的滤波过程如下.
1)时间更新:
假设已知
(16) |
根据贝叶斯滤波递推公式可得
(17) |
式中,
(18) |
和
(19) |
式中, 各中间变量为:
(20) |
式中,
2)量测更新: 当接收到
(21) |
式中,
(22) |
和
(23) |
式中, 各中间变量为:
(24) |
量测更新后每一项的权重为:
(25) |
(26) |
和
(27) |
3.2 基于凸组合技术的高斯混合项融合方法
高斯和滤波算法中初始高斯项有
3.2.1 基于马氏距离的高斯项合并
Salmond[18]提出一种高斯项合并方法, 首先定义一个马氏距离为:
(28) |
式中,
设定最大高斯项数为
(29) |
3.2.2 基于KL距离的高斯项合并
(30) |
依据
(31) |
3.2.3 基于凸组合的高斯合并项融合
第3.2.1节和第3.2.2节分别介绍了2种基于不同准则的高斯项合并方法, 但是其均存在高斯项合并失真的问题. 因此, 为了保证高斯项合并的保真度, 本文将对上述两种方法得到的高斯合并项进行凸组合融合[22]. 融合过程可以表示为:
(32) |
其中
(33) |
式中,
进而, 可以得到每一项的后验概率密度:
(34) |
式中,
(35) |
和
(36) |
每一项的权重为:
(37) |
对权重归一化后得到:
(38) |
最终融合得到
(39) |
(40) |
定理1. 融合后的子滤波器精度高于基于不同距离高斯项合并方法中的子滤波器的估计精度[24]:
(41) |
证明. 由式 (35)可得:
(42) |
式中,
(43) |
同理可得:
(44) |
从而可知式(41)成立. □
3.2.4 简要分析
针对非高斯系统的状态估计问题, 通过高斯项混合成分特性参数估计和高斯项合并方式两个角度的改进来开展新型高斯和容积卡尔曼滤波器设计, 主要工作包括: 1)算法的权重更新方式得到进一步优化, 进而可获得改进后的混合模型参数更新规则, 最终实现非线性高斯和滤波估计性能的提高. 此外,该方法不需要提前设定混合成分数目, 能够自适应估计混合成分的具体参数; 2)针对单一距离指标的倾向性和基于单一距离指标的高斯项合并方法的局限性, 提出基于多模式融合策略的高斯项合并思想, 并以马氏距离与KL距离为代表给出了两种高斯项合并方式下的多模式融合计算过程. 需要注意的是,不同距离指标下高斯项融合合并实现包括2种方式, 本文采用第2)种方式: 1)两者距离指标计算直接融合形成新距离指标后再进行高斯项合并操作; 2)先采用各自距离指标进行高斯项合并后再进行融合操作. 同时, 从信息论角度采用更多的距离指标能够实现对高斯混合模型特征更好的表征,相应的融合方法也可以从两个距离指标融合模式中类推获得. 然而, 距离指标类别数增加必然会产生一些新的问题, 如类别增加对高斯混合模型特征表达能力改善的量化表示、在状态估计正方向改善目标下的类别增加优化选择以及多距离指标融合下高斯项合并过程的收敛性与稳定性分析等, 这些问题的进一步研究有助于推动更多距离指标参与下高性能高斯和容积卡尔曼滤波算法的设计.
4. 仿真结果与分析
本文以机器人运动状态估计为仿真场景[5], 考虑机器人在进行半圆周运动. 定义其运动状态矢量
(45) |
观测模型可以表示为:
(46) |
地标集合
(47) |
机器人的运动模型如下:
(48) |
式中, 控制量
(49) |
式中,
式中, 各权重参数设定为:
4.1 仿真实验1
为探究改进鲁棒EM算法对非高斯噪声参数的估计效果, 利用第3.2节中改进鲁棒EM算法对非高斯系统噪声和量测噪声各采样
式中,
以过程噪声为例, 本文的改进鲁棒EM算法求解高斯混合模型参数的迭代过程如图5所示, 修改为其中空心圆为噪声的采样点, 实心点为用改进鲁棒 EM 算法估计得到高斯项的均值(用MuE表示), 实线椭圆为其协方差(用SigmaE表示), 三角形与虚线椭圆代表真实的高斯混合模型的均值(用MuR表示)与方差(用SigmaR表示). 图6为文献[21]的鲁棒 EM 算法仿真, 其中三角形为用鲁棒 EM 算法估计得到高斯项的均值(用MuE表示), 实线椭圆为其协方差(用SigmaE表示).
表1为本文利用估计分布与原始分布的马氏距离衡量改进鲁棒EM算法前后的性能对比, 马氏距离越小表明估计分布越接近于原始分布, 其估计精度越高. 从图5、图6和表1可以看出, 改进的鲁棒EM算法能有效地解决了EM算法鲁棒性差的缺点, 相对于鲁棒EM算法其参数性能、收敛速度都表现优越. 以马氏距离作为衡量标准改进后的鲁棒EM算法性能相比改进前提升83.56%.
同时, 由迭代结果可以看出, 改进鲁棒EM算法可以解决高斯混合模型的参数求解问题, 获得了较好的高斯混合模型参数, 且收敛速度较快. 同理, 量测噪声的求解与过程噪声相同, 二者用改进鲁棒EM算法迭代出来的结果为:
4.2 仿真实验2
仿真实验2是为了比较基于马氏距离的Salmond方法[18]、基于KL距离的
对机器人进行运动状态估计的仿真结果如图7所示, 其对应的机器人位置的均方根误差计算结果如图8所示, 方位角度误差如图9所示.
由图7 ~ 9可以看出, 基于凸组合融合的高斯混合项合并方法的滤波精度要高于常规的Salmond方法, 以及
5. 结束语
针对非高斯非线性环境下的机器人状态估计问题, 本文首先对于非高斯噪声环境建立高斯混合模型, 并利用改进的鲁棒EM算法进行高斯混合模型参数的求解, 相比传统EM算法, 改进鲁棒EM算法对于初始参数不敏感, 不需要提前设定混合成分个数. 其次, 利用由改进鲁棒EM算法得到的高斯混合模型参数, 进行高斯和容积卡尔曼滤波的设计. 考虑到高斯和滤波过程中会出现高斯项冗余的情况, 本文利用凸组合融合, 得到了Salmond方法与
附录A
在2个约束条件
对
对
由式(A3)可见, 二阶导数小于0说明
将式(A6)代入式(A2), 可得:
下一篇:没有了
- 2025年中科院分区表已公布!Scientific Reports降至三区
- 官方认定!CSSCI南大核心首批191家“青年学者友好期刊名单”
- 2023JCR影响因子正式公布!
- 国内核心期刊分级情况概览及说明!本篇适用人群:需要发南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的学者
- 我用了一个很复杂的图,帮你们解释下“23版最新北大核心目录有效期问题”。
- 重磅!CSSCI来源期刊(2023-2024版)最新期刊目录看点分析!全网首发!
- CSSCI官方早就公布了最新南核目录,有心的人已经拿到并且投入使用!附南核目录新增期刊!
- 北大核心期刊目录换届,我们应该熟知的10个知识点。
- 注意,最新期刊论文格式标准已发布,论文写作规则发生重大变化!文字版GB/T 7713.2—2022 学术论文编写规则
- 盘点那些评职称超管用的资源,1,3和5已经“绝种”了