一、阅读文献
本文提出了一种新颖的、具有强泛化能力的基于学习的控制策略,该策略能使移动机器人在充满静态障碍物和密集行人的空间中自主导航。该策略通过独特的输入数据组合来生成期望的转向角和前进速度,这些数据包括激光雷达数据的短时间历史记录、附近行人的运动学数据以及一个子目标点。该策略在强化学习环境中进行训练,使用的奖励函数包含一个基于速度障碍物的新项,以引导机器人主动避开行人并朝着目标移动。
虽然使用 DRL 生成控制策略正变得越来越普遍,但本文仍做出了几项主要贡献:
1)我们为基于神经网络的控制策略的输入创建了一种新颖的数据表示组合,使用了池化后的激光雷达数据的短时间历史记录、附近行人的当前运动学数据以及一个子目标点。我们将所有数据转换到机器人的局部坐标系中,使这些表示对定位误差具有鲁棒性,并通过从原始传感器数据手工制作更高级别的表示来提高对新环境的泛化性。
2)我们应用速度障碍物理论为 DRL 框架创建了一个新的奖励函数,鼓励机器人主动避免碰撞。
3)我们在多个模拟的 3D 环境中验证了导航性能,并证明所提出的控制策略在避障和速度之间实现了更好的权衡,并且比最先进的方法(包括基于模型的控制器、基于监督学习的方法以及两种基于 DRL 的方法)对不同的人群规模和新的未知环境具有更好的泛化性。
4)我们证明了仅在单个模拟环境中、针对单一人群规模训练的策略,可直接应用于现实世界中未知环境的机器人上,包括天普大学校园内的室内和室外场所,且无需重新训练即可适应不同的人群密度。
机器人的导航问题可以分为两类:基于模型的方法和基于学习的方法。基于学习的方法可以进一步分为基于监督学习的方法和基于强化学习的方法。
基于模型的方法
一种典型的基于模型的方法是 ROS 导航堆栈,它使用代价地图存储障碍物信息,并使用动态窗口方法(DWA)规划器进行局部规划。基于 ROS 导航堆栈,最近有研究将人类安全和可见性代价地图添加到全局和局部规划器中,以处理人机感知导航问题。另一类基于模型的方法是基于速度障碍物的算法,这些算法将动态环境映射到机器人速度空间,并根据这些速度约束生成安全的控制速度。类似地,Arul 等人将互惠速度障碍物与缓冲沃罗诺伊单元相结合,以解决多智能体导航问题。第三类基于模型的方法使用模型预测控制,它可以将避障和障碍物动力学集成到机器人约束中。其他基于模型的方法试图直接对人类和机器人的交互进行建模,使用社会力、高斯混合模型(GMM),或势函数和极限环的组合。所有这些基于模型的方法都需要行人运动学知识,利用多阶段过程处理传感器数据,并且通常需要从业者仔细手动调整模型参数,这使得它们难以实现,并且难以推广到新场景。
基于监督学习的方法
随着深度学习在计算机视觉领域的成功,许多研究人员开始将基于学习的方法应用于其他问题,包括机器人导航。与具有多阶段过程的传统基于模型的方法不同,最近的一些工作使用深度神经网络来学习端到端的控制策略,这些策略可以直接从原始传感器数据生成转向命令。Pfeiffer 等人创建了一个数据驱动的端到端运动规划器,该规划器使用卷积神经网络(CNN)从原始激光雷达数据生成线性和角速度。Tai 等人也使用 CNN,以原始深度相机数据为输入,从五个离散的机器人控制命令中进行选择。Loquercio 等人对原始相机图像数据采用类似方法,训练出一种控制策略,使无人机能够在街道上安全行驶。同样,Kahn 等人也使用原始相机图像数据训练了一个基于端到端学习的移动机器人导航系统,该系统可以在存在几何干扰障碍物的现实世界环境中导航。然而,这些端到端方法大多只关注静态环境。
对于动态环境,Pokle 等人使用多个 CNN 网络从原始传感器数据中学习多模态高级特征。一个基于 CNN 的局部规划器融合这些特征以生成速度命令。然而,他们基于学习特征的策略仅在相对开放的模拟环境中进行了测试,其中移动行人不超过 3 个。对于有多达 50 个移动行人的高度拥挤动态环境,我们之前的工作提出了一种基于 CNN 的策略,该策略将激光雷达数据的短时间历史记录与附近行人的运动学数据相结合。然而,正如我们将展示的,在监督学习环境中训练的这种策略不如本文提出的方法成功,特别是在应用于新环境或不同人群规模时。
基于强化学习的方法
与基于监督学习的方法相比,基于 DRL 的方法更常用于动态环境中的导航。Long 等人使用近端策略优化(PPO)算法,首先提出了一种完全去中心化的多机器人避障框架,该框架使用 2D 原始激光雷达距离数据。沿着这一思路,Guldenring 等人研究了 2D 激光雷达数据的不同状态表示,并使用 PPO 训练算法训练了一种人机感知导航策略。Arpino 等人提出了一种多布局训练机制,使用原始激光雷达数据作为输入来训练室内导航策略。Huang 等人构建了一个多模态后期融合网络,以融合原始激光雷达数据和原始相机图像数据。虽然这些传感器级别的方法可以快速轻松地生成控制策略,但它们无法区分静态和动态障碍物,也无法利用障碍物的位置和速度等高级信息。
为了解决仅使用原始传感器数据的局限性,许多其他工作利用行人运动信息,以实现动态环境中的安全导航。Everett 等人将行人的相对位置和速度直接输入神经网络,并为行人密集的环境生成具有社会感知的避障策略。Chen 等人专注于通过自注意力机制对人机和人人交互进行联合建模。随后,他们还提出了一种关系图学习网络,以推断人机交互并预测其轨迹。同样,另一项工作使用图卷积网络(GCN)对人群状态进行编码,并预测人类注意力。最近,Liu 等人使用去中心化的结构递归神经网络(RNN)对机器人和行人之间的交互进行建模。这些智能体级别的方法的一个主要缺点是,它们仅适用于解决开放空间中的拥挤导航问题,而忽略了布局中的静态障碍物和几何约束。为了解决这个问题,Liu 等人通过添加额外的静态障碍物地图扩展了之前工作的内容,但他们需要两个并行的网络模型来处理有无行人的情况。Sathyamoorthy 等人通过使用后期融合网络将原始激光雷达数据与行人轨迹预测相结合,扩展了之前的 PPO 训练策略。Dugas 等人使用无监督学习架构来预测和重建未来的激光雷达潜在状态。然而,上述大多数工作仅关注利用传感器感知信息及其数据表示,而忽略了奖励函数的设计。
为此,Xu 等人提出了一种知识蒸馏奖励项,以鼓励机器人学习专家行为。Patel 等人提出了一种基于方形警告区域的奖励函数,以鼓励机器人朝着与障碍物前进方向相反的方向导航。然而,知识蒸馏奖励的效果在很大程度上取决于专家数据集的质量,并且基于方形警告区域的奖励函数过于保守,导致行动缓慢。
对比分析
经典的基于模型的方法能够计算出高效的路线,并且参数易于解释,但需要针对不同场景手动调整模型参数。基于监督学习的方法完全由数据驱动,使用方便,但需要费力收集一组由代表性的专家演示来训练网络。基于强化学习的方法由经验驱动,类似于人类学习,但需要仔细设计奖励函数。
对于任何一种自主导航方法,一组关键的问题是使用那些传感器数据、如何处理这些数据以及使用何种数据表示。基于模型的方法通常会对原始传感器数据进行预处理,并使用提取的高级信息,如障碍物代价地图、障碍物的相对速度以及环境动力学。另一方面专注于静态环境学的端到端学习方法直接将原始传感器数据和目标信息输入CNN。基于 DRL 的方法则更加多样,一些方法也将原始激光雷达扫描数据(和目标点)输入 CNN,而另一些方法则提取并利用行人的位置和速度、对人机交互进行建模、预测行人轨迹、预测潜在状态或构建障碍物代价矩阵。
基于模型的方法的长期成功以及最近 DRL 研究的结果表明,预处理后的数据表示比原始传感器数据更有用,因为它们包含了更多关于行人运动的有用信息,进而提高了动态环境中的安全性。基于这些趋势,我们也将利用预处理后的传感器数据,即激光雷达数据的短时间历史记录和行人的当前运动学数据,我们之前的研究表明,在监督学习环境中,这些数据能够提高导航安全性。这种数据表示的一个显著优点是,它比其他基于 DRL 的工作中使用的复杂行人预测或交互更加简单、易于解释。此外,所有数据都完全在机器人的局部坐标系中表示,这使得解决方案对定位误差具有鲁棒性,而定位误差在密集拥挤的动态环境中很常见。
使用 DRL 的最大挑战之一是设计合适的奖励函数。大多数方法包含两个项,一个用于奖励朝着目标前进的进度,另一个用于惩罚碰撞。虽然这种简单的奖励函数设计可能有效,但其稀疏的避障奖励函数仅在发生碰撞时给予较大的负奖励,并没有提供直接有效的奖励信号来引导机器人主动避开障碍物。实际上,被动避障奖励函数是零阶函数,这意味着它假设碰撞风险仅取决于与障碍物的距离。我们认为行人(和其他物体)的相对运动更为重要,因为在密集人群中人们通常彼此靠近行走,而在相向行走时会留出更多空间。一种尝试是来自文献 [41] 的反向奖励函数,它优先考虑安全性,但会导致运动缓慢,并且在密集人群中可能导致僵局。
我们提出了一种新颖的奖励函数,该函数使用一阶速度障碍物来惩罚可能导致碰撞的航向,从而引导机器人不断调整其航向,在朝着目标前进的同时主动避开行人。请注意,Han 等人同时开发了一种用于分布式多机器人导航的基于互惠速度障碍物(RVO)的奖励函数。这与我们的速度障碍物概念相似,但有两个主要区别。第一,我们的工作和他们的工作解决了两个不同但相关的问题。我们试图通过使用速度障碍物(VOs)来防止人机碰撞,由于我们无法直接对人类行为进行建模或控制,因此将避障的责任完全放在机器人身上。另一方面,Han 等人试图通过使用 RVO 来防止机器人之间的碰撞,RVO 基于两个智能体运行相似控制策略的假设,在智能体之间分担避障责任。第二,我们的方法鼓励机器人在避开潜在的未来人机碰撞的同时主动朝着目标转向,而他们的方法鼓励机器人仅关注潜在的机器人之间的碰撞(通过预期碰撞时间判断),并忽略目标。Sun 等人还将 RVO 与基于 DRL 的控制策略结合用于多机器人导航。然而,他们没有在 DRL 奖励函数中使用 RVO,而是将其作为并行控制策略,在即将发生碰撞时从 DRL 切换到 RVO。
本文从传感器数据表示和奖励函数设计这两个核心问题入手,解决动态人群中的自主导航问题。我们使用独特的预处理传感器数据组合作为控制策略的输入。具体来说,我们从激光雷达数据的短时间历史记录中获取静态障碍物和环境几何布局的信息,从多目标跟踪器中获取动态障碍物的运动学信息,从子目标点获取到达目的地的信息。在设计新颖的奖励函数时,我们利用基于模型的方法(即速度障碍物)的优势,创建了一种没有速度障碍物缺点的导航策略。具体而言,我们的策略不要求机器人拥有关于行人运动学的完美信息。这个新项将使我们的机器人能够学习到一种强大的导航策略,在避障和速度之间取得良好的平衡。