BADGR:
The Berkeley Autonomous Driving Ground Robot
看上面的图片。如果我要您在草地上给我铺上野餐毯,您可以吗?当然。如果我要您带满载食物的小车去参加派对,您会沿着铺好的小路还是在草地上推小车?显然是铺平了道路。
尽管这些问题的答案似乎很明显,但当今的移动机器人可能会在这些任务上失败:他们会认为高高的草丛与混凝土墙相同,并且不知道平滑的道路与坑坑洼洼的草丛之间的区别。这是因为大多数移动机器人纯粹是根据几何学来思考的。他们检测障碍物的位置,并规划绕过这些感知障碍物的路径,以达到目标。这种纯粹的世界几何视图不足以解决许多导航问题。
先前仅基于几何推理的导航方法错误地认为高草是障碍(左),并且不了解平路和草地(右)之间的区别
那么我们可以使机器人直接从图像中推断出导航路径吗?我们开发了一种机器人,该机器人可以通过自身在现实世界中的经验来自主学习环境的物理属性,而无需任何模拟或人工监督。我们将我们的机器人学习系统称为BADGR:伯克利自动驾驶地面机器人。
BADGR的工作依据:
1.自主收集数据
2.通过自我监督自动标记数据
3.训练基于图像的神经网络预测模型
4.使用预测模型来规划未来并执行,使得机器人完成所需导航任务的动作
(1)数据收集
BADGR在野外(左)和城市(右)环境中自动收集数据
BADGR需要大量不同的数据,才能成功学习如何导航。机器人使用时间相关的随机行走控制器收集数据 。当机器人收集数据时,如果遇到碰撞或卡住,则机器人将执行简单的重置控制器,然后继续收集数据。
(2)自监督数据标签
然后,BADGR会遍历数据并为特定的导航事件(例如,机器人的位置以及机器人是否碰撞或在崎岖的地形上行驶)计算标签,并将这些事件标签重新添加到数据集中。这些事件通过让人们写一小段代码来标记,这些代码将原始传感器数据映射到相应的标签。例如,用于确定机器人是否在颠簸地形上的代码片段会获取IMU数据,并在角速度幅度较大时将地形标记为颠簸。
我们将这种标记机制描述为自监督,因为尽管人们必须手动编写此代码段,但该代码段可用于标记所有现有和将来的数据,而无需任何额外的人工输入。
(3)神经网络预测模型
BADGR核心的神经网络预测模型
然后,BADGR使用该数据来训练深度神经网络预测模型。神经网络将当前的摄像机图像和未来计划的动作序列作为输入,并输出对未来相关事件的预测(例如机器人是否会在崎岖的地形上碰撞或行驶)。训练了神经网络预测模型,以尽可能准确地预测这些未来事件。
(4)规划与导航
BADGR预测哪些动作会导致崎岖的地形(左)或碰撞(右)
部署BADGR时,用户首先定义一个奖励函数,该函数对他们希望机器人完成的特定任务进行编码。例如,奖励功能可以鼓励在阻止碰撞或在崎岖不平的地形上行驶的同时朝目标前进。然后,BADGR使用训练有素的预测模型,当前图像观察和奖励功能来计划使奖励最大化的一系列动作。机器人执行此计划中的第一个动作,BADGR继续在计划和执行之间交替,直到任务完成。
在我们的实验中,我们研究了BADGR如何在加州大学伯克利分校附近的大型复杂地形设施中了解环境的物理属性。我们将我们的方法与使用LIDAR计划无冲突路径的基于几何的策略进行了比较。(但请注意,BADGR仅使用板载摄像头。)
BADGR成功地达到了目标,同时避免了碰撞和崎岖不平的地形,而基于几何的策略无法避免崎岖不平的地形
我们首先考虑了在城市环境中避免碰撞和崎岖地形的同时达到目标GPS位置的任务。尽管基于几何的策略始终成功地实现了目标,但是它未能避免坑中的草。BADGR也成功地达到了目标,并且通过在铺有路面的道路上行驶成功避免了崎岖的地形。请注意,我们从未告诉机器人在道路上行驶;BADGR从车载摄像头图像中自动获悉,在混凝土路径上行驶比在草地上行驶更平稳。
BADGR成功地实现了目标,同时避免了碰撞,而基于几何的策略却未能取得进展,因为它错误地认为草是不可穿越的障碍
我们还考虑了到达目标GPS位置的任务,同时避免了碰撞和卡在越野环境中。基于几何的策略几乎从来不会崩溃或卡在草地上,但有时会拒绝移动,因为它被草所包围,被错误地标记为不可穿越的障碍。BADGR几乎总是通过避免碰撞和卡住而成功地达到了目标,同时没有错误地预测所有草都是障碍。这是因为BADGR从经验中学到,大多数草实际上都是可遍历的。
随着数据集的增大,BADGR性能不断提高
除了能够了解环境的物理属性之外,BADGR的一个关键方面是它能够不断自我监督并在收集越来越多的数据时改进模型。为了证明这种能力,我们进行了一项对照研究,其中BADGR收集并训练来自一个区域的数据,移至新的目标区域,在该区域导航失败,但随后在收集并训练其他数据后,最终在目标区域成功收集来自该区域的数据。
该实验不仅证明BADGR在收集更多数据方面可以改善,而且当BADGR遇到新环境时,以前收集的经验实际上可以加速学习。随着BADGR在越来越多的环境中自动收集数据,成功学习每种新环境中的导航所需的时间将越来越少。
我们还评估了BADGR在新型环境(从森林到城市建筑物)中的导航效果如何,这些数据在训练数据中没有显示。该结果表明,如果BADGR在足够大且多样化的数据集上收集和训练,则可以推广到新颖的环境。
点击观看:实验结果视频
BADGR背后的关键见解是,通过直接从现实世界中的经验中自主学习,BADGR可以了解导航能力,随着收集更多数据而不断完善并推广到看不见的环境。尽管我们认为BADGR是朝着全自动,自我完善的导航系统迈出的有希望的一步,但仍然存在许多未解决的问题。比如:机器人如何在新环境中安全地收集数据?在线适应新的数据流?应对非静态环境,例如人走动?我们认为,解决这些挑战和其他挑战对于使机器人学习平台能够在现实世界中学习和行动至关重要。
参考文献:
Kahn G, Abbeel P, Levine S. Badgr: An autonomous self-supervised learning-based navigation system[J]. arXiv preprint arXiv:2002.05700, 2020.
网站:https://sites.google.com/view/badgr
代码:https://github.com/gkahn13/badgr
jackal UGV产品参数:
Donghu Robot Laboratory, 2nd Floor, Baogu Innovation and Entrepreneurship Center,Wuhan City,Hubei Province,China
Tel:027-87522899,027-87522877