[论文阅读] Learning Complex Dexterous Manipulation with Deep Reinforcement Learning and Demonstrations

时间: 2018/08/01

会议:Robotics: Science and Systems XIV

摘要&introduce

  • 灵巧的多指手操作由于高维数和大量的潜在接触,有效地控制仍然具有挑战性。
  • 我们证明了无模型DRL可以有效地扩展到高维24自由度手的复杂操作任务
  • 通过使用少量的人工演示,可以显著降低样本复杂性,这使得学习的样本量相当于几个小时的机器人经验
  • 使用演示导致policy表现出非常自然的运动,和鲁棒性
  • 用行为克隆对策略进行预训练,然后用策略梯度进行微调,并增加损失以接近演示,大大降低了样本复杂性,使训练能够在相当于真实世界机器人几个小时的时间内进行
  • 人类演示的使用还提供了额外的理想品质,例如类似人类的平滑行为和对环境变化的鲁棒性
  • 贡献:
    • 使用无模型DRL演示了高维类人五指手的灵巧操作,第一个演示这种复杂任务的无模型学习的经验结果(只在模拟环境中实验)
    • 通过少量的人工演示,样本复杂性可以显著降低,并达到可以在物理系统上执行的水平
    • 经过演示训练的policy更像人,对环境的变化也很稳健
    • 提出了一组灵巧的手操作任务
  • 我们的算法不对动力学模型的结构进行任何假设,只需要生成样本轨迹的能力
  • 纯模仿学习方法不能超过演示者的能力,在这项工作中,我们不仅仅进行模仿学习,而是使用模仿学习来引导 bootstrap 强化学习的过程
    • 自举 bootstrapping 有助于克服探索挑战,而RL微调允许策略根据实际任务目标进行改进。

DEXTEROUS MANIPULATION TASKS

  • 我们提出了四类任务——对象重新定位、输入操作、工具使用和操作环境道具(如门)
  • 根据这四个类所面临的技术挑战来描述它们
    • Object relocation:从RL的角度来看,这里的主要挑战是探索,因为为了取得成功,手必须到达物体,抓住它,并将其带到目标位置
      • 如果没有成形奖励或演示形式的先验知识,这一壮举很难实现
    • In-hand Manipulation:如重新抓取、重新定位、旋转物体等,需要利用高自由度机械手的灵活性,有效地在充满关节限制和频繁变化的接触施加的约束和不连续性的困难环境中导航,传统的基于模型的方法依赖于通过动力学模型对梯度的准确估计,在这些问题环境中很困难
      • 主要挑战是表示不同机动所需的复杂解决方案
    • Manipulating Environmental Props:需要在以人为中心的环境中不断进行交互和操作,解决方案通常是多步骤的,带有隐藏的子目标
    • Tool Use – Hammer:涉及手指和手臂之间的协调,有效地使用工具需要多个步骤,包括抓握重新配置和小心的运动协调,以施加所需的力
  • 采集准确的演示数据来帮助加速各种学习算法,为所有任务收集了25个成功的演示,每个演示都由在模拟中执行任务所需的状态行动轨迹组成,向执行器添加少量噪声,策略能够更好地捕获有关数据的相关信息、

DEMO AUGMENTED POLICY GRADIENT (DAPG)

Preliminaries 准备工作

  • 我们将控制问题建模为马尔可夫决策过程MDP
    • 使用元组定义:\mathcal{M}=\{\mathcal{S},\mathcal{A},\mathcal{R},\mathcal{T},\rho_0,\gamma\}.
    • 其中\mathcal{S}\in\mathbb{R}^n\mathrm{~and~}\mathcal{A}\in\mathbb{R}^m表示状态和actions;\mathcal{R}:\mathcal{S}\times\mathcal{A}\rightarrow\mathbb{R} 是衡量任务进度的奖励函数;、
    • T:S×A→ S,是过渡动力学transition dynamics,可以是随机的
      • 无模型RL中,我们不假设关于该转换函数的知识,只对该函数进行采样
    • ρ0是初始状态上的概率分布,γ∈[0,1]为折现因子 discount factor
    • \rho_D=\left\{\left(s_t^{(i)},a_t^{(i)},s_{t+1}^{(i)},r_t^{(i)}\right)\right\}表示演示数据集;t表示时间,i表示不同的轨迹
    • 求解一个形式为π: S × a→R+的随机策略来优化期望奖励总和:\eta(\pi)=\mathbb{E}_{\pi,\mathcal{M}}\bigg[\sum_{t=0}^{\infty}\gamma^{t}r_{t}\bigg].
    • 我们还定义了value、Q和advantage函数:
    • 考虑参数化策略\pi(\theta),因此希望对参数(θ)进行优化,故交替使用η(π)和η(θ)

Natural Policy Gradient

  • 我们主要考虑策略梯度方法,这是一类无模型RL方法,我们考虑了NPG算法
  • 在策略梯度方法中,使用梯度上升等局部搜索方法直接优化策略参数,使目标η(θ)最大化
  • NPG计算the vanilla policy gradient,或REINFORCE gradient:g=\frac{1}{NT}\sum_{i=1}^{N}\sum_{t=1}^{T}\nabla_{\theta}\log\pi_{\theta}(a_{t}^{i}|s_{t}^{i})\hat{A\pi}(s_{t}^{i},a_{t}^{i},t)
  • 其次,用Fisher信息矩阵(逆)作为这个梯度的前提条件:F_\theta=\dfrac{1}{NT}\sum_{i=1}^N\nabla_\theta\log\pi_\theta(a_t^i|s_t^i)\nabla_\theta\log\pi_\theta(a_t^i|s_t^i)^T
  • 最后进行如下归一化梯度上升更新:\theta_{k+1}=\theta_{k}+\sqrt{\frac{\delta}{g^{T}F_{\theta_{k}}^{-1}g}}F_{\theta_{k}}^{-1}g,,δ是步长选择
  • 已经发展了许多预置策略梯度方法,原则上它们中的任何一种都可以使用。我们在实验中实现的NPG是基于Rajeswaran等人

Augmenting RL with demonstrations

  • 需要结合演示来改进强化学习
    • 强化学习只能够解决我们通过仔细、费力的任务奖励塑造的任务
    • 虽然RL最终通过适当的塑造解决了任务,但它需要学习的样本数量很大
    • 纯RL学习的行为不自然,有噪声,对环境变化的鲁棒性不强
  • 提出了演示增强策略梯度(DAPG)方法,该方法以两种方式将演示纳入策略梯度
    • 用行为克隆进行预训练:
      • 策略梯度方法通过策略本身定义的动作分布的随机性来进行探索。如果策略没有很好地初始化,学习过程可能会非常缓慢,因为算法会探索与任务无关的状态-动作空间
      • 使用行为克隆(BC)进行策略初始化来高效探索
      • BC对应于解决以下最大似然问题:\text{maximize}_\theta\sum_{(s,a)\in\rho_D}\ln\pi_\theta(a|s).
      • 在实践中,行为克隆并不能保证克隆的策略是有效的,因为在被演示的状态和策略本身的状态之间存在着分布转移the distributional shift
    • RL fine-tuning with augmented loss
      • 行为克隆为RL提供了一个很好的初始化,但演示数据的不同部分在学习的不同阶段是有用的
      • 为了捕获演示数据中存在的所有信息,我们在梯度中添加了一个附加项:\begin{gathered}g_{aug}=\sum_{(s,a)\in\rho_{\pi}}\nabla_{\theta}\ln\pi_{\theta}(a|s)A^{\pi}(s,a)+\\\sum_{(s,a)\in\rho_{D}}\nabla_{\theta}\ln\pi_{\theta}(a|s)w(s,a).\end{gathered}
        • 其中ρπ表示对MDP执行policy π得到的数据集;w(s, a)为加权函数
        • 在eq.(4)梯度更新公式中使用这个增广梯度来执行协变co-variant更新
      • 如果w(s,a)=0\ \forall(s,a),则我们在等式2g=\frac{1}{NT}\sum_{i=1}^{N}\sum_{t=1}^{T}\nabla_{\theta}\log\pi_{\theta}(a_{t}^{i}|s_{t}^{i})\hat{A\pi}(s_{t}^{i},a_{t}^{i},t)中恢复策略梯度
      • 如果w(s,a)=c\ \forall(s,a),具有足够大的c,则它简化为行为克隆,如等式\text{maximize}_\theta\sum_{(s,a)\in\rho_D}\ln\pi_\theta(a|s).所示
      • 然而,我们希望同时使用模仿和强化学习,因此我们需要一个替代的加权函数
      • 分析表明,g=\frac{1}{NT}\sum_{i=1}^{N}\sum_{t=1}^{T}\nabla_{\theta}\log\pi_{\theta}(a_{t}^{i}|s_{t}^{i})\hat{A\pi}(s_{t}^{i},a_{t}^{i},t)也适用于形式为\rho=\alpha\rho_\pi+(1-\alpha)\rho_D的混合轨迹分布
      • 因此,加权函数的选择是w(s,a)=A^{\pi}(s,a)\forall(s,a)\in\rho_{D}
      • 然而,如果没有额外的推出或假设,就不可能计算出这个数量,因此,我们使用启发式加权方案:w(s,a)=\lambda_0\lambda_1^k\max_{(s',a')\in\rho_\pi}A^\pi(s',a')\forall(s,a)\in\rho_D,其中λ0和λ1是超参数,k是迭代数
      • 权重项通过\lambda_1^k衰减的前提是,最初由demonstrations提出的actions至少与政策产生的行动一样好
      • 然而,在接近尾声时,当策略的性能与演示相当时,我们不希望偏差梯度,因此,我们渐近地衰减辅助目标

RESULTS AND DISCUSSION

Reinforcement Learning from Scratch

本次实验评估中,我们旨在解决以下问题:

  • 现有的强化学习方法能否应对高维灵巧操作任务带来的挑战?
  • 所产生的策略是否表现出诸如对环境变化的稳健性之类的理想特性?
  • 生成的动作是否安全,是否适合在物理硬件上执行,是否优雅/灵活/像人类?

  • 有了成形的奖励,我们发现NPG确实能够在这些任务上获得很高的成功率
  • DDPG尽管进行了大量的超参数调整,但无法学习成功的策略,DDPG可以非常有效地采样,但已知对超参数和随机种子非常敏感,这可能解释了将其扩展到复杂、高维任务(如灵巧操作)的困难
  • 通过奖励塑造融入人类知识是有帮助的,但由此产生的策略:
    • 经常表现出看起来不自然的行为
    • 样本效率太低,对物理硬件上的训练无效
    • 可以看到其不自然的动作
  • 策略往往过于适合它们被训练来操作的特定对象,并且无法应对环境中的变化,如图
    • 使用DAPG训练的策略更稳健,这可能是由于通过使用演示捕获的人类策略的内在稳健
    • 当环境的多样性增加时,从头开始的RL无法学习,而DAPG能够学习并制定更稳健的政策
  • 我们将上述人为因素和脆弱性归因于将人类经验纳入policy搜索过程的方式
  • 我们使用数据驱动的方法以演示的形式合并人类的先验,在很大程度上缓解了这些问题

Reinforcement Learning with Demonstrations

在本节中,我们旨在研究以下问题:

  • 通过DAPG合并演示是否将学习时间缩短到实际时间尺度?
  •  DAPG与其他包含演示的无模型方法(如DDPGfD)相比如何?
  •  DAPG是否能够在没有奖励塑造的情况下获得稳健的人类行为?

用hand tasks任务集测试比较了DAPG算法与最近提出的DDPGfD方法

DDPGfD建立在DDPG算法的基础上,并通过以下方式结合演示来引导学习:

  • 将演示添加到重播缓冲区中
  • 使用优先经验回放prioritzed experience replay
  • 采用n步回归
  • 增加policy和critic网络的regularizations

评估中我们只使用稀疏的任务完成奖励,因为我们使用演示

通过使用演示,我们希望算法隐含地学习如何完成任务的人类先验

上图中,早在DDPGfD开始显示出进步的迹象之前,DAPG在所有任务中就令人信服地优于DDPGfD

DAPG能够在几个机器人小时内为这些复杂任务训练策略

与使用成形奖励训练的策略相比,使用DAPG训练的策略明显更稳健,可由策略生成类人运动

  • 13
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值