✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
🔥 内容介绍
摘要:同时定位与地图构建(Simultaneous Localization and Mapping, SLAM)是移动机器人领域的核心问题。扩展卡尔曼滤波(Extended Kalman Filter, EKF)是早期SLAM应用中广泛采用的方法,但其一致性问题,尤其是在观测信息不足时,容易导致估计结果发散。本文探讨基于可观测性的EKF SLAM一致估计器设计规则,深入分析可观测性与一致性的关系,提出在滤波器设计中应考虑的关键因素,以提升SLAM系统的鲁棒性和准确性。
引言
移动机器人需要在未知环境中实现自主导航,SLAM技术为其提供了解决方案。SLAM的目标是在运动过程中同时估计机器人的自身位姿并构建周围环境的地图。EKF-SLAM以其简单直观、易于实现的优点,曾经是SLAM领域的主流方法。然而,EKF作为一种线性化滤波算法,在SLAM问题中固有的非线性特性下,不可避免地会产生线性化误差。此外,EKF-SLAM还面临着一致性问题,即估计结果与真实值之间的误差统计特性不符合滤波器本身提供的协方差估计。如果滤波器对自身误差过于自信(协方差估计过小),则容易受到错误观测的影响,导致估计结果发散,进而影响后续的定位和建图。
EKF-SLAM一致性问题的根本原因在于线性化误差和观测不足带来的信息缺失。本文将重点关注基于可观测性的EKF SLAM一致估计器设计规则,分析可观测性如何影响估计结果的一致性,并提出在设计滤波器时应考虑的策略,以提高EKF-SLAM系统的一致性和鲁棒性。
可观测性与EKF SLAM
可观测性是指根据系统输入和输出,能否唯一确定系统内部状态的能力。在SLAM问题中,可观测性指的是能否根据机器人的控制输入和传感器观测,唯一确定机器人的位姿和环境地图。一个可观测的系统,原则上可以通过适当的滤波器算法来实现精确的位姿和地图估计。
然而,在实际应用中,由于传感器精度有限、环境特征分布不均、以及运动模式的限制,SLAM系统往往不是完全可观测的。尤其是在早期的EKF-SLAM中,所有的状态变量(包括机器人位姿和地图特征点)都被联合估计,导致状态空间的维度非常高,可观测性条件更加难以满足。
可观测性不足会直接影响EKF-SLAM的一致性。具体来说,如果某个状态变量是不可观测的,那么滤波器无法通过观测信息对其进行有效修正,从而导致估计误差累积。更重要的是,由于EKF假定误差服从高斯分布,而不可观测的状态变量实际上并不满足高斯分布的假设,因此滤波器输出的协方差估计将与实际误差的统计特性不符,从而造成不一致性。
EKF SLAM一致估计器设计规则
为了提高EKF SLAM的一致性,需要从可观测性的角度出发,在滤波器设计中采取有效的策略。以下是一些关键的设计规则:
-
状态变量选择与参数化:
-
避免过度参数化: 在地图表示中,尽量选择最小化的参数集来描述环境特征。例如,如果仅仅需要利用路标进行定位,则可以使用路标的方位角和距离来表示,而不是采用三维坐标。这样可以减少状态空间的维度,降低对观测信息的需求。
-
选择适当的坐标系: 机器人的位姿可以用不同的坐标系来表示,例如世界坐标系或机器人局部坐标系。选择适当的坐标系可以改善系统的可观测性。例如,将特征点的坐标表示在机器人局部坐标系下,可以减少估计的耦合性,提高可观测性。
-
考虑状态变量的相关性: 在选择状态变量时,应该考虑它们之间的相关性。如果某些状态变量之间存在强烈的依赖关系,则可以将它们合并成一个状态变量,以减少状态空间的维度,提高可观测性。
-
-
观测模型设计:
-
选择信息量大的观测: 传感器提供的信息量直接影响系统的可观测性。例如,使用视觉传感器可以提供丰富的环境信息,从而提高系统的可观测性。在使用视觉传感器时,应该选择能够提供高精度、高区分度的特征点。
-
融合多种传感器信息: 通过融合来自不同传感器的信息,可以提高系统的可观测性。例如,将里程计、IMU和视觉信息融合在一起,可以有效地提高系统的定位精度和鲁棒性。
-
考虑观测噪声模型: 准确的观测噪声模型是保证滤波器一致性的重要因素。如果观测噪声模型不准确,则会导致滤波器对观测信息的信任度不准确,从而影响估计结果的一致性。
-
-
滤波器参数调整:
-
调整过程噪声: 过程噪声反映了系统状态的变化程度。在EKF中,过程噪声协方差矩阵需要根据实际情况进行调整。如果过程噪声过小,则会导致滤波器对自身估计的信任度过高,从而难以纠正错误;如果过程噪声过大,则会导致滤波器对观测信息的利用不足,从而影响估计精度。
-
观测噪声修正: 即使在理论上确定了观测噪声模型,但在实际应用中,由于各种因素的影响,观测噪声可能会发生变化。因此,需要根据实际情况对观测噪声进行修正。例如,可以使用自适应滤波算法来动态调整观测噪声。
-
保证正定性: EKF计算中涉及的协方差矩阵必须是正定的。如果协方差矩阵不正定,则会导致计算错误。可以使用各种方法来保证协方差矩阵的正定性,例如Schur补、Cholesky分解等。
-
-
可观测性分析:
-
离线可观测性分析: 在系统设计阶段,可以通过离线可观测性分析来评估系统的可观测性。可以使用各种可观测性判据来判断系统是否可观测,例如雅可比矩阵秩条件、代数可观测性判据等。
-
在线可观测性监测: 在系统运行过程中,可以通过在线可观测性监测来判断系统是否处于可观测状态。可以使用各种指标来评估系统的可观测性,例如信息矩阵的最小特征值、条件数等。如果系统处于不可观测状态,则可以采取相应的措施,例如调整运动模式、增加观测信息等。
-
-
避免线性化误差累积:
-
使用更高级的滤波算法: EKF的线性化误差是导致不一致性的重要因素。 可以考虑使用Unscented Kalman Filter (UKF) 或者 Particle Filter (PF) 等非线性滤波算法来减少线性化误差。
-
采用关键帧技术: 在视觉SLAM中,可以采用关键帧技术来减少累计误差。只对关键帧进行优化,可以有效地提高系统的效率和精度。
-
结论与展望
EKF-SLAM的一致性问题是一个复杂的问题,受到多种因素的影响。本文从可观测性的角度出发,分析了可观测性与一致性的关系,并提出了在滤波器设计中应考虑的关键因素。通过合理地选择状态变量、设计观测模型、调整滤波器参数、进行可观测性分析以及避免线性化误差累积,可以有效地提高EKF-SLAM系统的一致性和鲁棒性。
虽然EKF-SLAM已经逐渐被更新颖的SLAM算法所取代,例如基于图优化的SLAM方法,但是理解EKF-SLAM的一致性问题对于理解SLAM系统的本质仍然具有重要意义。未来的研究方向可以包括:
-
基于学习的可观测性分析: 利用深度学习等方法来学习环境特征的可观测性,并根据可观测性动态调整滤波器参数。
-
一致性约束下的滤波器设计: 将一致性作为滤波器设计的目标函数,设计出更加鲁棒的一致估计器。
-
高维SLAM的一致性问题研究: 在高维SLAM中,由于状态空间维度更高,可观测性问题更加突出,需要进一步研究一致估计器的设计方法。
总而言之,理解可观测性对SLAM系统一致性的影响,并在此基础上进行滤波器设计,是保证SLAM系统鲁棒性和准确性的重要手段。希望本文能够为SLAM领域的研究者和工程师提供有益的参考。
📣 部分代码
function x = repvec(x,N)
x = x(:, ones(1,N));
⛳️ 运行结果
🔗 参考文献
🎈 部分理论引用网络文献,若有侵权联系博主删除
👇 关注我领取海量matlab电子书和数学建模资料
🌿 往期回顾可以关注主页,点击搜索
🏆团队擅长辅导定制多种科研领域MATLAB仿真,助力科研梦:
🌈 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度、港口岸桥调度、停机位分配、机场航班调度、泄漏源定位
🌈 机器学习和深度学习时序、回归、分类、聚类和降维
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN|TCN|GCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类
2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
2.19 Transform各类组合时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
🌈图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
🌈 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻
🌈 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划
🌈 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信、通信上传下载分配
🌈 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
🌈电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化、家庭用电
🌈 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
🌈 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别
🌈 车间调度
零等待流水车间调度问题NWFSP 、 置换流水车间调度问题PFSP、 混合流水车间调度问题HFSP 、零空闲流水车间调度问题NIFSP、分布式置换流水车间调度问题 DPFSP、阻塞流水车间调度问题BFSP
👇