Abstract
我们提出了一种从粗到细的离散化方法,该方法能够在连续机器人领域中使用离散强化学习方法来代替不稳定和数据低效的行动者批评方法。这种方法建立在最近发布的arm算法的基础上,该算法将连续的次佳姿态agent替换为离散的,具有从粗到细的q-attention。给定一个体素化的场景,从粗到细的q-attention会学习“放大”场景的哪个部分。当迭代应用这种“缩放”行为时,它会导致translation空间的近乎无损的离散化,并允许使用离散动作的深度q学习方法。我们证明,我们的新粗到细算法在几个困难的、奖励很少的基于rlbench视觉的机器人任务上实现了最先进的性能,并且可以在几分钟内训练出真实世界的policies,tabula rasa,只需3次演示。
1. Introduction
在本文中,我们感兴趣的是一种通用的现实世界操纵算法,该算法可以使用少量的演示以及少量奖励较少的探索数据,在模拟和现实世界中完成一系列不同的任务。为了开发这种方法,我想到了两种范式:模仿学习(IL)和强化学习(RL)。模仿学习方法,如行为克隆,由于协变量变化而存在复合误差,而强化学习则存在训练时间长的问题,通常需要数百万次环境交互。然而,最近Q-attention和ARM系统[14]已被证明可以绕过强化学习带来的许多缺陷,最明显的是训练负担大、探索难度大、奖励少、任务时间长。
不幸的是,与许多现代连续控制rl算法一样,arm的下一个最佳姿势agent遵循一种actorcritic范式,当从奖励稀少和基于图像的任务中学习时,这种范式可能特别不稳定[14]:这两个属性对于机器人操纵任务特别重要。在本文中,我们重新审视了如何最好地表示机器人操纵所需的连续控制动作,放弃了标准的行动者批评方法,转而采用更稳定的离散动作q学习方法。因此,挑战在于如何有效地离散6d姿势。考虑到其有界性,旋转和夹持器动作的离散化是微不足道的,但由于通常空间要大得多,平移仍然具有挑战性。我们通过从粗到细的q-attention来解决这个问题,从平移空间的粗体素化开始,使用3d q-attentions来识别下一个最感兴趣的点,并逐渐提高每个点的分辨率。
通过这种新的从粗到细的Q-attention,我们提出了我们的由粗到细注意力驱动的机器人操纵(C2FARM)系统。我们将该系统在仿真中与增强学习和模仿学习文献中的其他机器人学习算法进行了基准测试,并表明C2F-ARM比其他方法更具样本效率和稳定性。我们还证明,C2F-ARM能够从3个演示中学习5组不同的、奖励很少的现实世界任务。
总之,本文提出了以下三个贡献:(1)一种通过从粗到细的q-attention对平移空间进行离散化的新方法,使我们能够抛弃经常不稳定的演员-评论家框架,转而采用更简单的深度q-学习方法。(2) 我们的操作系统c2f-arm使用从粗到细的q-attention以及控制agent来实现模拟和现实世界中稀疏奖励任务的样本高效学习。(3) 首次将体素表示用于6d机器人操纵的基于视觉的强化学习。补充材料中的代码和视频可在以下网址找到:sites.google.com/view/c2f-q-attention.
2. Related Work
Learning for manipulation
操纵学习的最新趋势已经看到了连续控制强化学习算法,如ppo[34]、ddpg[22]、td3[4]和sac[8],这些算法在各种任务上进行了训练,包括布料操纵[23]、乐高堆叠[7]、推[28]和手部操纵[29]。这些方法依赖于演员-评论家公式,该公式通常样本效率低且训练不稳定。降低不稳定性的一种方法是使用替代的policy参数化,而不是高斯参数化,例如,下一个最佳姿势动作的bignham分布[12]。或者,离散化可以显著减少动作空间,并使用更简单的方法,如q学习。我们的工作并不是第一次使用离散动作进行视觉操纵;james等人[15]对关节空间进行了离散化,其中在每一步中,agent可以选择将6个关节中的一个移动1度。离散化关节空间的另一种方法是离散化平面工作空间,其中来自自上而下相机的像素充当高级动作,如抓取[26]、推动[43]和拾取放置[42]。然而,目前尚不清楚这些任务如何超越自上而下的拾取和放置任务,例如本文中介绍的一些任务,例如堆放葡萄酒和从架子上拿东西。
我们的论文提出了一个完整的6D操作系统,可以扩展到一系列任务,而不仅仅是自上而下的任务。“从粗到细”这一术语最近被用于抓取检测[40],但含义不同,其中粗部分是抓取置信度网格,细部分是指粗预测的细化阶段。另一方面,我们的工作使用从粗到细的方法来指代我们的Q-attention“放大”到场景的特定部分以获得更准确的3D信息的想法。与我们的粗到细机制相关的是Gualtieri等人[5,6]的工作,该工作采用点云(高度图形式)并逐渐放大到局部区域以生成抓取和定位;然而,这项工作仅限于“拾取和放置”任务,而我们的方法是一种通用的6D操纵算法,其中手臂可以完全自主地在场景中的任何地方移动,而不需要预先编程的“抓取”和“放置”动作。这导致了一个无需修改即可应用于一系列任务的系统,正如我们的RLBench和现实世界实验所证明的那样。
Voxel representation for manipulation.
通过体素对3d环境进行建模的历史可以追溯到20世纪80年代[25,32]。由于体素网格可以在每个体素中存储任意值,因此之前的工作将其用于导航和操纵的各种表示(几何、语义、学习特征)。大多数探索体素表示的作品都将其用于导航[3,10,11];然而,操纵领域也有一些值得注意的例外。wada等人[38]使用体素网格来存储杂乱场景中对象的占用率和语义,以选择下一个目标对象和抓取点。morefusion[39]是一种使用体素进行多对象推理以改进6d姿态估计的系统;该系统给出了准确的物体姿态,可以在杂乱的场景中进行精确的拾取和放置。最近,将体素表示与基于学习的模型一起使用已经变得很常见。song等人[35]和breyer等人[2]将体素网格表示输入神经网络,以生成6dof抓握动作;这些工作与我们的不同之处在于,它们考虑在监督学习领域进行抓取,因为我们的系统属于具有完整6d动作空间的强化学习领域,抓取只是其中的一个组成部分。此外,强化学习带来了监督学习中不存在的许多挑战,例如探索、稀疏奖励和长期规划。我们唯一知道的将体素与rl结合使用的工作是在杂乱中找到一个红色立方体[27];然而,该任务假设可以访问对象检测器和平面工作空间,体素网格不直接由rl agent处理,而是被裁剪并展平为一个68维