0
点赞
收藏
分享

微信扫一扫

[论文笔记]Learning exploration policies for navigation

Learning exploration policies for navigation

任务驱动的导航问题已经得到较好的解决,但是如何有效地探索一个新环境,这就是本文关注的点。

本文主要研究了行动体在没有任务奖励的情况下自主探索3D环境。提出一种基于学习的方法,并研究了不同的策略架构、奖励函数和训练模式。

视频和代码

简单介绍一下 导航:

· 基于几何重构和路径规划的方法:

基于SLAM的方法,首先构建地图,然后使用定位和路径规划进行导航。但是如何构建地图呢,当前的方法或者使用人类操作员来控制机器人来构建地图。

· 基于学习的方法:

对于使用学习的方法,大多数只学习特定任务的策略。而且对于这种方法,训练时和测试时的探索都很重要。

对于这两种方法探索策略就是一个大瓶颈,对于任务无关的策略,它探索环境以构建地图或样本轨迹,从而以高效采样的方式学习导航策略。所以如何学习这种独立于任务的策略?

·使用强化学习的方法学习内在奖励。探索过程中定义预测误差为奖励,然后重复访问做一个惩罚。

虽然这看起来是一种有效的奖励,但这种方法仍然是低效的,因为黑盒奖励函数不能被区分来有效地计算梯度。

所以本文从 结构设计、奖励函数设计、奖励优化三个角度来提出一种基于学习得导航探索策略的方法。

相关工作

经典机器人学中的导航

传统的导航方法是通过构建环境地图,在地图中定位行动体,然后规划路径将行动体传送到所需的目标位置。然后定位建图、路径规划也有很多研究,但是大部分研究都是被动的SLAM。而主动SLAM(如何自动遍历一个新的环境来构建空间表示)的研究还是比较少的。部分可观测马尔可夫决策过程Partially Observable Markov Decision Processes (POMDPs)或者选择减少估计地图不确定性的行动

虽然这些公式能够进行理论分析,但它们主要依赖传感器来构建地图和定位,因此,这种方法对测量噪声非常敏感。此外,这种方法将探索纯粹视为几何问题,完全忽略了探索的语义线索。

导航学习

很多研究在比较不同的网络结构,如:前馈网络、空间记忆和规划模块,半参数拓扑记忆等。

比较不同的训练范式,如:模仿学习、强化学习、学习逆动力学模型等。

而本文就借鉴了之前的工作,策略架构和奖励定义就使用了空间记忆来实现长期的探索,并且模仿人类探索来引导策略的学习。但不依赖外在定义的奖励信号进行训练。

导航探索

最近有关探索的研究往往和强化学习联系起来。通过设计内在的奖励函数来获取状态或状态-动作转换 的新奇。然后通过使用强化学习优化这些奖励函数来学习探索策略。而本文和这些工作也非常相似,

本文的方法

设定的场景为行动体在一个未知的新环境,并且想学习一种探索策略,使这个行动体能够有效地探索这个新环境。对新环境的成功探索应该使行动体能够在新环境中高效地完成任务。

而本文工作的关键就是 :

· 策略的设计

· 奖励函数的设计

· 使用专家演示来加速策略的训练

地图的构建

本文的地图构建主要使用深度相机采集的数据。

假设行动体在 t t t时刻对其当前未知的估计是 x ^ t \hat{x}_t x^t,该时刻的动作定为 a t a_t at,同时通过转换函数更新其位置请添加图片描述

使用估计得到的位置 x ^ t + 1 \hat{x}_{t+1} x^t+1对3D点进行变换,并向下投影以生成环境的2D地图。而由于位置估计的误差,会导致生成的地图出现锯齿。通过学习的方法能够提高位置估计的鲁棒性。

策略架构

如何定义好的探索策略

·对新环境的良好探索需要行动体通过有意义的移动来探测和避开障碍;

·良好的政策还要求行动体识别语义线索;

·行动体跟踪环境的哪些部分已经或尚未被探索,并估计如何到达环境中可能尚未被探索的部分。

请添加图片描述

RGB图像信息

使用一个在ImageNet上预训练的ResNet-18来提取图像的语义信息。

栅格地图信息

使用过去的观察来得到一个以行动体为中心的栅格地图,并且使用ResNet-18来提取特征。网络不仅用来探测未搜索空间,并且还有定位作用。

共使用两个地图,一个是40m*40m的粗略地图,一个是4m * 4m的精确地图。

循环策略

来自RGB图像和地图的信息被融合并传递到RNN。重复可以使行动体表现出一致的行为。

覆盖范围奖励机制

覆盖范围定义为 C ( M t ) C(M_t) C(Mt)为地图中已知(可穿越、不可穿越)的总面积。

t时刻的奖励 R i n t c o v ( t ) R_{int}^{cov}(t) Rintcov(t) C ( M t + 1 ) − C ( M t ) C(M_{t+1}) -C(M_t) C(Mt+1)C(Mt),直观地说,如果当前的观察没有给地图增加任何障碍或自由空间,那么它就不会增加任何信息,因此也不会给出任何回报。并且定义碰撞惩罚 R i n t c o l l ( t ) = − B u m p ( t + 1 ) R_{int}^{coll}(t) = -Bump(t+1) Rintcoll(t)=Bump(t+1),表示执行动作 a t a_t at是否导致碰撞。

策略优化

对于复杂三维空间下的导航,例如离开房间、穿过门、走下走廊。考虑到奖励的稀缺性,这种长期行为很难用强化学习来学习。这导致学习的样本复杂度过大。作者选择首先预训练探索策略来模仿人类如何探索新环境。

实验部分

实验设置

本文的实验在House3D的仿真环境中进行。使用SUNCG 数据集。20个房屋进行训练和测试。测试和训练的环境没有交集。

观察空间

视角为60°的RGB-D相机和一个碰撞检测器,深度信息的范围为3m,

动作空间

共6个动作单元:向前移动0.25m、向后移动0.25m、向左移动0.25m、向右移动0.25m、右转9°、左转9°。

内在奖励

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aqcDC7tK-1641285008202)(C:\Users\CwwwwS\AppData\Roaming\Typora\typora-user-images\image-20210519222703051.png)]

训练

· 模仿学习 :总共使用了693条人类轨迹进行模仿。

· 强化学习:在模仿学习之后使用强化学习进一步训练,每次训练,行动体在地图中随机初始化,然后进行训练。

Baselines

· 纯几何方法:每次迭代,它在当前未探索的空间中采样一个点,并从当前位置规划一条通向它的路径(未观察的空间被假设为自由的)。随着计划的执行,地图和计划都会更新。一旦达到所选的点,就重复这个过程。

· Curiosity-based 方法:

方法对比

请添加图片描述

无噪声: 若位置估计无误差,无观测噪声,表现最好的是Frontier-based exploration,这种方法可以获得完美的、完全配准的地图,并采用最佳路径规划算法从一个地方移动到另一个地方,但是实际上只有一个RGB相机的情况下这种无噪声的假设很难实现。

有噪声:

在转移函数 f 中添加一个高斯噪声,4%的噪声下,基于学习的方法已经比基于前沿的方法做得更好了。

几何和显示不匹配

设置门 ,但是门不进行碰撞检测,

消融实验

· 模仿学习: 通过对比先预训练网络的探索能力,

· Map: 表示使用构建的地图作为输入

· RGB: 使用RGB图像作为输入

请添加图片描述
· 外在奖励的设置: 随机生成了一些均匀分布在房屋可通行区域的位置,如果代理靠近这些位置中的任何一个,代理将获得正面奖励。

下游任务

既然已经建立了如何更好地探索,我们接下来要问的是任务不可知的探索是否对下游任务有用。我们在目标驱动导航的背景下展示了这一点。我们执行所学的探索策略1500个时间步骤)来探索新房子,并收集经验(一组图像和它们的姿势p)。一旦这个探索完成,代理被赋予不同的导航任务。这些导航任务将代理放在环境中的任意位置,并给它一个它需要到达的目标图像。更具体地说,我们在每个测试室(总共20个测试室)将代理重置为50个随机姿势(位置和方向),并获得RGB相机视图。然后,代理需要使用在探索期间获得的环境经验来有效地导航到期望的目标位置。这些测试查询的导航效率衡量了探索的效用。

请添加图片描述

举报

相关推荐

0 条评论