论文部分内容阅读
同步定位与地图构建(SLAM)以其定位精度高和能够获得未知环境信息的特点,成为了解决机器人在未知环境中实现自主导航的关键技术。本文针对SLAM算法存在的计算量大、计算复杂度高、容错性差、滤波器动态重构困难等问题,将分布式思想与FastSLAM算法相结合,提出了一种分布式FastSLAM算法,并在其基础上展开研究。主要研究内容包括以下几个方面:首先,本文以未知环境下的机器人自主导航技术为出发点,介绍了SLAM问题的基本原理。在介绍SLAM算法基本原理的基础上,对FastSLAM算法进行了详细的介绍,给出了算法的基本原理和实现流程,并对近年来广泛应用的FastSLAM 1.0和FastSLAM 2.0进行了详细的对比分析。其次,在充分理解和剖析FastSLAM的基础上,引入分布式思想,提出了分布式FastSLAM算法。将机器人位姿估计和路标点状态估计分成两个部分分别建立了分布式系统模型,利用归一化估计方差(NEES)对提出算法的一致性进行分析,并对环境特征的不确定性进行深入分析,从而验证所建立的算法模型的可行性。然后,针对机器人位姿估计和路标点状态估计两个模块,分别采用分布式粒子滤波和联邦Kalman滤波进行状态估计,并给出分布式FastSLAM算法的详细实现流程。对于分布式FastSLAM算法存在严重依赖模型等问题,通过用分布式UPF取代各个子滤波器,在主滤波器中,通过综合新息融合和有效粒子数融合方法,重新分配子滤波器权重提出了改进的分布式无味FastSLAM(DUFastSLAM)算法,并根据滤波器收敛性证明定理对算法的收敛性进行了证明。仿真结果表明,改进后的算法能够有效提高状态估计的精度。最后,针对DUFastSLAM算法存在的计算量增大的问题,通过引入边缘化滤波思想,提出了一种改进的分布式边缘无味FastSLAM(DMUFastSLAM)滤波算法。该算法在利用UKF优化重要性函数、提高估计精度的同时,忽略除边缘时刻以外的无关历史信息,而从边缘时刻采样,在降低算法计算量的同时调整粒子的权值,降低粒子退化。仿真结果表明,改进后的算法能够在保证算法性能的前提下减小算法的计算量,提高算法的运行速度。