LEARNING TO EXPLORE USING ACTIVE NEURAL SLAM
Project webpage: https://devendrachaplot.github.io/projects/Neural-SLAM
Code: https://github.com/devendrachaplot/Neural-SLAM
本文将基于学习的方法和传统的方法融合,学习室内环境的结构规律。核心思想是在探索中能够最大化覆盖范围。主要利用了将长期目标转化为短期目标,并利用局部策略降低了姿态估计错误的鲁棒性。通过迁移学习的方法,可以将不确定的长期目标转化为确定的例如点目标的长期目标。
INTRODUCTION
导航可分为点任务:到达指定坐标;语义导航:寻找到特定场景或对象的路径。
未知环境中导航的核心问题是探索,即如何有效地访问尽可能多的环境。
2019年就有人使用端到端学习来解决这个问题,而学习的方法优点在于:
·比起经典方法,其输入的形式更灵活;
·提高对错误的鲁棒性;
·学习可以有效地利用现实世界的结构规律,在未知环境中有更好的效果。
但是将探索问题作为端到端的学习问题计算量往往非常大而且需要大量的数据集。而且可能仍然比不过传统方式。
Tao Chen, Saurabh Gupta, and Abhinav Gupta. Learning exploration policies for navigation. In ICLR, 2019.
本文所提出的方法保留学习方法的优点同时避免其的缺点。关键概念是通过学习的方法学习:
·室内环境的结构特点;
·对状态估计误差的鲁棒性;
·对输入方式的灵活。
这使得导航策略可以处理原始的感官输入,如RGB图像,对状态估计错误具有鲁棒性,并且能够利用真实世界布局的规则性。
TASK SETUP
遵循Chen等人提出的勘探任务设置,其目标是在固定时间预算内最大化覆盖范围。覆盖范围定义为地图中已知可穿越的总面积。
本文的目标是训练一个策略,输入数据是在每一个时间 t 时的观察$ s_t$ ,输出是能够使得导航覆盖面积最大化的动作$a_t $。
本文使用Habitat模拟器和 Gibson和Matterport数据集进行实验,均基于真实世界场景重建,为了将训练好的策略转移到现实世界中。由于在真实环境下存在噪声误差,并添加了噪声模型。
使用 ( x , y , o ) (x,y,o) (x,y,o) 表示代理得位姿,其中x,y 表示坐标,o表示代理方向,假设从 p 0 = ( 0 , 0 , 0 ) p_0 = (0,0,0) p0=(0,0,0) , 对于预计位姿 p 1 = ( x ∗ , y ∗ , o ∗ ) p_1 = (x^*,y^*,o^*) p1=(x∗,y∗,o∗) ,其噪声即为实际动作与预期动作的差值
同理对于位姿估计也同样存在噪声, p 1 p_1 p1实际位姿, p 0 p_0 p