- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 同时定位与制图(SLAM)算法
3.1 同时定位与制图算法介绍
移动机器人的定位和地图创建是机器人领域的热点研究问题,也是导航中重要环节。 对于已知环境中的机器人自主定位和已知机器人位置的地图创建已经有了一些实用的解决方法。 然而在很多环境中机器人不能利用全局定位系统进行定位,而且事先获取机器人工作环境的地图很困难,甚至是不可能的。这时机器人需要在自身位置不确定的条件下,在完全未知环境中,创建地图同时利用该地图进行自主定位和导航。 这就是移动机器人的同时定位与地图创建(SLAM) 问题,也称为CML (Concurrent Mapping and Localization) 。该研究领域的代表人物有Smith,Self 和Cheeseman [23] 。由于SLAM算法具有重要的理论与应用价值,被很多学者认为是实现真正全自主移动机器人的关键。近几年来,其研究取得了很大的进展,并已应用于各种不同的环境,如: 室内环境[24 ][25] 、水下[26 ][27] 以及室外环境[28 ][29]。
3.1.1 SLAM算法性质
SLAM算法有很多重要的属性,影响着地图特征和机器人位置估计中的不确定性。包括:状态估计的收敛性,估计过程的一致性,状态协方差矩阵更新的计算复杂度[23]。
收敛性:SLAM算法具有三个重要的收敛性,这三个关键的收敛结果是:A.地图协方差矩阵的任意子矩阵地行列式随着每一次观测单调下降;B.在极限情况下,随着观测数量的增加,特征估计变得完全相关。C.地图的精度与第一个特征被观测时机器人的位置精度有关。这些结果表明:随着观测数量的增加,地图估计的不确定性将降低到有限的误差范围内,地图特征的关系将是完全确定的。
一致性:为了维护SLAM算法估计的一致性,对状态协方差矩阵进行更新维护是必要的。既然对环境的观测是相对机器人的,所以机器人估计中的任何误差和地图估计中的误差使绝对相关的。在没有其它外部的关于特征和机器人位置信息情况下,为了使系统状态估计的误差在有限的范围内,保持状态估计之间的一致性是很必要的。所以就必须维护机器人状态与环境特征之间的协方差矩阵。
计算复杂度:SLAM算法应用到大规模环境时的一个重要局限性是计算环境特征之间,特征与机器人之间的相关信息时的计算负担。由于特征数量很大,协方差矩阵的更新维护导致了SLAM算法的计算复杂性。对于那些包含上万个特征的环境,计算负担使得系统协方差的更新变的难以执行。所以需要一个有效的方法来提高算法的计算效率。
3.1.2 SLAM算法分类
根据所依据的理论基础的不同,SLAM可以分为以下几种:
(1)基于扩展卡尔曼滤波(EKF)的CML/ SLAM
这是最常用的一种SLAM方法,适合解决非线性系统的估计问题。该方法用平面坐标表示机器人和环境特征的位置,将机器人运动与环境特征的关系描述为两个非线性模型:机器人运动模型和观测模型.通过这两个模型,运用扩展卡尔曼理论的思想来实现。主要包括预测与更新两个阶段[26][28]。
(2)基于概率的CML/ SLAM
尽管不如EKF 那样流行,但由于用概率表达机器人定位问题的不确定性非常自然合理,基于概率的CML 也吸引了很多人的目光。其中,较流行是最大相似性(Maximum Likelihood Estimation ,MLE)方法。一种非常有效的最大相似性估计算法称为Baum-Welch (或α-β) 算法[30],基于这种方法的机器人制图与定位问题可看作是机器人位置与环境特征位置的最大相似性估计问题。该算法包括两步:E-Step (expectation) 和M-Step (maximization)。
(3)基于粒子滤波器( particle filter) 的CML/SLAM
粒子滤波器定位也称为Monte Carlo 定位[31][32],其基本思想是用一组滤波器来估计机器人的可能位置(处于该位置的概率),每个滤波器对应一个位置,利用观测对每个滤波器进行加权传播,从而使最有可能的位置的概率越来越高。
(4)基于空间扩展信息滤波器的SLAM[33]
该方法由Sebastian Thrun 等人提出,是对EKF 算法的改进。它不再用协方差矩阵表示空间信息的相关性,取而代之用空间信息矩阵来表示空间信息间的内在固有的关系,并且使用网状数据结构仅维护邻近的环境特征(地图)。
(5)基于集合理论估计的SLAM[34]
基于集合理论的方法不假设噪声服从某种分布,而只假设噪声是有界的。 具体方法是:定义一个可行状态集合(feasible state set) 和一个观测集合(measurement set) ,前者表示机器人和环境特征的状态估计,后者表示符合条件(观测误差小
文档评论(0)