前言:
近日,来自斯坦福大学&DeepMind 的研究者提出一种学习机器人深度视觉运动策略的新方法,它结合强化学习和模仿学习来实现高效的强化学习智能体,该方法可解决大量视觉运动任务。实验证明该智能体性能显著优于仅使用强化学习或模仿学习训练出的智能体。
近期深度强化学习在多个领域取得了很好的表现,如视频游戏和围棋。对于机器人,RL 结合强大的函数逼近器(如神经网络)可提供设计复杂控制器的通用框架,而这种控制器很难靠人力搭建。基于强化学习的方法在机器人控制领域历史很久,但通常与低维动作表示结合使用。近年来,使用 model-based 和 model-free 技术的深度强化学习在机器人控制方面取得了大量成功案例,包括模拟和在硬件上运行两方面。然而,使用 model-free 技术端到端地学习视觉运动控制器来执行长跨度、多阶段控制任务仍然存在很大难度。
开发 RL 机器人智能体需要克服多项挑战。机器人策略必须将从带噪传感器中得到的多模态、部分观测数据改变为具备一定自由度的协作活动。同时,现实任务通常具备富接触动态,并且随着多个维度发生变化(视觉外观、位置、形状等),给泛化带来了很大挑战。
研究者提出一种 model-free 的深度 RL 方法,直接从像素输入入手解决大量机器人控制任务。本论文关键洞察有:1)利用少量人类演示数据减少在连续域执行探索(exploration)的难度;2)在训练过程中使用多种新技术(这些技术利用(exploit)了私有和任务特定的信息),以加速和稳定视觉运动策略在多阶段任务中的学习;3)通过增加训练条件的多样性来改善泛化性能。因此,这些策略在系统动态、目标外观、任务长度等发生显著变化的情况下仍然运行良好。
此外,研究者还展示了该方法在两项任务上的初步结果,仿真训练出的策略达到了向真实机器人的 zero-shot 迁移。
为了解决这些挑战,本论文研究者提出的方法将模仿学习和强化学习结合起来,构建一个统一训练框架。该方法以两种方式利用演示数据:使用混合奖励,基于生成对抗模仿学习将任务奖励与模仿奖励结合起来;使用演示轨迹构建状态的课程(curriculum),以在训练中初始化 episode。因此,该方法解决了全部六个任务,这些任务单凭强化学习或模仿学习都无法解决。
为了规避对真实硬件的训练限制,我们采用了sim2real范式,效果不错。通过使用物理引擎和高通量RL算法,我们可以模拟一个机器人手臂的平行副本,在一个接触丰富的环境中执行数百万个复杂的物理交互,同时消除机器人安全和系统重置的实际问题。此外,在训练过程中,我们可以利用一些新技术如在不同的模式下学习策略和价值,以对象为中心的生成对抗模仿学习,可视化辅助模块技术,开发在真实系统条件下的特定任务信息。这些技术可以稳定和加速策略学习,而不会在测试时对系统有任何限制。
最后,我们将训练条件多样化,如视觉外观、对象几何和系统动力学。这既提高了对不同任务条件的概括,也加速了从模拟到现实的转换。
图 1. 研究者提出的机器人学习流程。研究者使用 3D 运动控制器收集某项任务的人类演示。提出的强化学习和模仿学习模型利用这些演示促使模拟物理引擎的学习。然后执行 sim2real 迁移,将习得的视觉运动策略迁移至真正的机器人。
2.相关研究
强化学习方法已被广泛应用于低维度的策略模型,以解决模拟和现实中的各种控制问题,如移动元模型,。三种RL算法目前在连续控制问题上占主导地位:引导策略搜索方法(GPS;Levine和Koltun,基于价值的方法,如确定性政策梯度(DPG;Silver等,Lillicrap等,Heess等)或归一化优势函数(NAF;Gu等)算法和基于信任区域的策略梯度算法,如信任区域策略优化(TRPO)和近端策略优化(PPO)。TRPO和PPO由于其对超参数设置的健壮性以及它们的可扩展性而保持ap-peal,但缺乏有效样本使之并不适应于对机器人硬件的直接训练。
GPS已被Levine、Yahya人和Chebotar等人使用,在网络预训练阶段后,直接在真实的机器人硬件上学习visuomotor策略。Gupta等人和Kumar等人使用GPS作为机器人手模型的学习控制器。基于价值的方法已经被使用,例如Gu等人使用NAF直接在机器人上学习一门打开的任务,Popov等人演示了如何使用DPG的分布式变量有效地解决堆码问题。
处理数据需求的另一种策略是在模拟中训练,将学习的控制器转移到真正的硬件上,或者用合成数据增强现实世界的训练。Rusu等研究了一个Jaco机器人手臂的简单的视觉运动策略,并使用进步网络将其转移到现实中。Viereck等依靠深度来缩小现实差距。Tobin等人利用视觉变化来学习能够传输到现实的健壮的目标检测器;James等将随机化与引导性学习相结合。Bousmalis等用模拟数据增强训练,学习掌握各种形状的预测。
控制问题的成本函数和勘探策略对设计具有挑战性,因此,一直以来演示不可或缺。可以使用演示来初始化策略、设计成本函数、引导探索、增加训练数据,或者组合起来使用。成本函数可以通过跟踪目标(如Gupta等)或通过逆RL(如Boularias,Finn等)或通过生成对抗式模仿学习来获得。
在通过演示学习操作任务的情况下,此类方法本身就需要与演示相一致的状态和操作空间。相比之下,我们的方法是学习端到端的可视化策略,而不依赖于演示操作。因此,因此,它可以利用演示的过程,当原始的演示动作是未知的或由不同的身体产生的。Pinto和Peng认为从模拟到现实的转换,应分别聚焦于随机化的视觉表象和机器人的动力学。Pinto等人使用末端执行器位置控制的视觉输入不同的任务。这些现有的类同的研究都引入了我们的模型所使用的技术子集。这项工作是独立于并行工程开发的,将几种新技术集成到一个连贯的方法中。我们的实验结果表明,良好的性能来自于这些组合技术的协同作用。
3. 模型
本研究旨在为机器人控制任务学习深度视觉运动策略。该策略使用 RGB 摄像头观测结果和本体特征(proprioceptive feature)向量描述关节位置和角速度。这两种感官模态在真实机器人上同样可用,因此研究者进行仿真训练,并将习得的策略在不修改的情况下迁移至机器人。图 2 是模型概览。深度视觉运动策略使用卷积神经网络编码观测像素,使用多层感知机编码本体特征。这两种模块中的特征被级联并传输至循环 LSTM 层,然后输出关节速度(控制)。整个网络以端到端的方式进行训练。研究者首先简要介绍了生成对抗模仿学习(GAIL)和近端策略优化(PPO)的基础知识。该模型基于这两种方法扩展而来,提升视觉运动技能。
图 2. 模型概览。模型核心是深度视觉运动策略,其采用摄像头观测结果和本体特征作为输入,并输出下一个关节速度。
4. 实验
本节展示了该方法可向视觉运动策略学习提供灵活的框架。研究者在六个控制任务中对该方法的性能进行了评估(详见图 3)。视频包含了定性结果。
图 3. 实验中六项控制任务的可视化。左边三列展示了六项任务在仿真环境中的 RGB 图像。这些图像对应输入视觉运动策略的实际像素观测。右侧一列展示了真实机器人执行两项色块任务的表现。
研究者将 episode 平均返回值表示为训练迭代次数的函数,如图 4 所示。完整模型在六项任务中达到了最高的返回值。
图 4. 论文提出的强化与模仿学习模型和基线学习效率的对比。该图展示的是 5 次不同随机种子运行的平均值。所有策略使用同样的网络架构和超参数(λ 除外)。
图 5. 堆叠任务中的模型分析。左图展示了从完整模型中移除每个单独组件对性能的影响。右图展示了模型对超参数 λ 的敏感度,λ 调节强化学习和模仿学习的贡献。
在图 5a 中,研究者用多种配置训练智能体,从单个修改到修改整个模型。研究者发现这些缺失可分为两类:学习堆叠的智能体(平均返回值大于 400)和仅学会提升的智能体(平均返回值在 200 和 300 之间)。结果表明从状态中学习价值函数的混合 RL/IL 奖励和以目标为中心的鉴别器特征在学习优良策略的过程中发挥了重要作用。
图 5b 展示了该模型在 λ 值在 0.3 到 0.7 之间的运行效果,λ 值的大幅变化提供了 RL 和 GAIL 奖励的平衡混合。
结论:
在本文中,我们描述了一种通用的无模型深度强化学习方法,该方法用于从RGB摄像机图像和使用关节速度控制的每一种形式操作的策略的端到端学习。我们的方法结合使用演示,通过生成的敌对模仿学习15和无模型的RL来实现对不同任务的有效学习和强大的泛化。此外,这种方法可以从状态轨迹(没有演示动作)和鉴别器所看到的仅使用部分/特征化的演示相结合——这可以简化和增加数据收集过程中的灵活性,并促进在非执行的条件下的泛化(例如,可以通过一个不同的“主体”来收集演示,例如通过动作捕捉的人演示程序)。在每项任务不到30分钟的时间内,通过对模拟手臂的远程操作来收集演示。我们的方法集成了几种新技术,以利用模拟提供的灵活性和可伸缩性,例如获取特权信息和使用大型RL算法。实验结果表明,该算法在复杂的仿真操作中具有一定的有效性,并取得了初步的成功。我们使用相同的策略网络、相同的训练算法和相同的超参数来训练所有的策略。该方法利用了特定于任务的信息,特别是在选择以对象为中心的特征时,对鉴别器和RL奖励进行了选择。然而,在实践中,我们发现这些特性的特性是直观的,而我们的方法对于特定的选择来说是相当可靠的,因此在需要(有限的)先验知识的需求和可用于复杂任务的解决方案的一般性之间取得了良好的平衡。
为了充分挖掘机器人技术的潜力,我们必须面对现实世界的完全变化,包括对象外观、系统动态、任务语义等,因此我们将重点放在学习控制器上,以处理多个维度的任务变化。为了提高学习策略更加泛化,我们通过参数化、程序生成的3D对象和随机系统动力学增加了训练条件的多样性。这导致了在模拟和仿真和现实世界之间的某些领域不一致的情况下,在模拟的大变化中表现出稳健性的策略。
仿真是我们方法的中心。在仿真中进行的训练可以解决许多对机器人技术的实际挑战,比如获取用于奖励的状态信息、高样本复杂性和安全考虑等。模拟训练也允许我们使用模拟状态来促进和稳定训练(即通过向值函数提供状态信息),在我们的实验中,这对于学习良好的视觉运动策略非常重要。然而,尽管我们的方法在培训过程中利用了这些特定信息,它最终会产生只依赖于手臂的视觉和本体感受信息的策略,因此可以应用在真正的硬件上。
在真实的机器人上执行这些策略表明,在模拟和真实硬件之间仍然存在着相当大的领域差距。转移会受到视觉差异的影响,也会受到手臂动力学和环境物理性质的影响。当在真正的机器人上运行仿真策略时,这会导致一定程度的性能下降。不过,我们在现实世界中进行的实验已经证明,采用RL训练的策略执行像素到关节速度的控制,零发射的sim2real传输可以取得初步成功。
我们已经证明,结合强化和模仿学习可以显著提高我们训练系统的能力,这些系统能够从像素中解决具有挑战性的灵巧操作任务。我们的方法实现了机器人技术学习流水线的三个阶段:首先,我们收集了少量的演示数据来简化探索问题;其次,我们依靠物理仿真来进行大规模的分布式机器人训练;第三,我们对现实应用进行了sim2real传输。在未来的工作中,我们寻求提高学习方法的样本效率,并利用实际经验来缩小政策转移的现实差距。