定位、建图与 SLAM

机器人定位

机器人定位,就是机器人在一张它早已拥有的地图上,弄清楚自己身处何处。想象你在一家旅馆里醒来,手里被塞了一张楼层平面图,可上面没有一个写着“你在这里”的小点。你环顾四周——左边有扇窗、前方是一条长走廊、右边亮着出口标志——再把看到的一切去和平面图对照,直到只剩一个位置对得上。这个对上的结果,也就是机器人对自己所在位置、以及正朝哪个方向的最佳猜测,正是定位要交付的东西。在机器人学里,这种“位置加朝向”的猜测,被称为机器人的位姿。

它的做法是把两样东西作比较:机器人传感器此刻报告的内容,以及地图说它从每一个可能的位置应当看到的样子。一台激光扫描仪也许报告前方两米有一堵墙、左侧有一道门口;机器人便发问:在这张地图上的所有位置里,哪些会产生这一模一样的景象?通常会有好几个位置大致吻合,所以机器人并不只保留一个答案,而是保留一片可能位姿的分布;每当它移动一下、再感知一次,这片分布就会朝着真实位置进一步收紧。轮子的计数器和运动传感器告诉它滚动了多远,而激光或摄像头则纠正那些计数器慢慢累积起来的漂移。

它之所以重要,是因为机器人几乎其余的一切,没有它都干不成。配送机器人没法规划到 304 房间的路线,仓库机器人没法停在正确的货架前,扫地机器人也没法避免把同一条地带重复清扫两遍——除非它们各自先知道自己站在哪里。关键在于,定位预设地图已经给定、并且可信;那个更难的表亲——机器人必须一边建地图、一边给自己定位——则叫作 SLAM。

一台博物馆导览机器人每天清晨从它的充电座出发,然后在各个展厅里穿行。靠着把激光读数与建筑地图相匹配,它始终知道自己——比如说——正处在第二展厅内四米处、面朝那幅莫奈的画,于是它能恰好停在正确的画作前,开始它的讲解。

手握一张可信的地图,机器人唯一要做的,就是找到那个能解释它所见景象的唯一位置。

有一种特别棘手的情形叫“被绑架的机器人”问题:机器人被关机、搬到一个随机的地方、再开机,对自己身在何处毫无头绪——它必须在完全不知起点的情况下,从零开始重新定位。

又称
pose estimation in a known map位置估计定位