论文部分内容阅读
自主式水下机器人( autonomous underwater vehicle, AUV)的导航技术已成为当今研究热点问题之一。机器人的自身定位是一项最基本、最重要的功能,而同时定位与地图构建(simultaneous localization and mapping, SLAM)方法是机器人在未知环境下实现真正自主导航的关键。SLAM算法是一种建立环境地图与产生机器人位姿估计同时进行的过程,被看做是自主式机器人探索未知环境的最基本能力。 在过去的二十年里,SLAM方法已成为机器人导航领域显著成就之一。从理论和概念层面上来说,SLAM是一个需要解决的导航问题,而它也已经被许多不同的形式制定和解决,被应用到室内、室外、水下和空中等许多不同的机器人导航领域。扩展卡尔曼滤波器(Extended Kalman Filter, EKF)算法是解决SLAM问题最基本的方法。它通过对非线性函数进行一阶泰勒展开,得到SLAM问题的最优解。但基于EKF的SLAM算法通过维持一个协方差来描述SLAM的不确定信息,计算量与地图中环境特征个数的平方成正比,从而大大地限制了该算法在大尺度复杂环境下的应用。后来提出的稀疏化扩展信息滤波(Sparse Extended Information Filter, SEIF)方法解决了计算复杂度高的问题,它是EKF的信息形式,该方法通过删除机器人与特征之间弱的关联使得所有的基本更新公式都能够在恒定的时间内完成,极大的提高了运算速度。 然而由于SEIF的稀疏化策略和线性化产生的误差,使得不一致特性一直存在于估计算法中,并且表现更为复杂。本文将采用一种一致性约束的方法来改善SEIF-SLAM算法。此方法从观测的角度研究算法的一致性,且保留了SEIF的稀疏化特性。从线性化误差状态系统模型的分析中可知,SEIF产生不一致性的一个重要原因是SEIF-SLAM观测模型的雅克比矩阵比非线性SLAM系统有更高的观测子空间。而本文通过使用首次的变量估计计算滤波器的雅克比矩阵,可以保证线性化误差状态系统与非线性系统有一样的观测子空间,这种方法称为首次估计雅克比(First Estimates Jacobian, FEJ)。此方法可以使SEIF算法呈现更好的一致性。 就精确性和一致性而言,仿真结果表明FEJ-SEIF可以改善SEIF的估计性能。此外,FEJ-SEIF算法的导航应用还通过了以C-Ranger AUV为平台的海洋试验的验证。