您好,欢迎来到金属加工网 登录 | 免费注册 | 忘记密码
当前位置: 首页 > 技术中心 > 专业论文 > 机器人强化迁移学习指南:架设模拟和现实的桥梁2

机器人强化迁移学习指南:架设模拟和现实的桥梁2

http://www.b2b.hc360.com 中国金属加工网 信息来源:Author发布时间:2019年12月30日浏览:370

  变分推理


  在多任务设置中,使用T={1,...,N}预先定义一组低级技能,以及每项技能的奖赏函数r(s,a)。除了像经典强化学习方法中学习低级技能策略π_θ,作者提出使用类似变分推理的办法再学习一个嵌入函数p_φ。使用一个潜在变量z参数化低级技能库,而真正的技能标识t包含在嵌入函数p_φ的策略中。也就是说,并不以显示ID的方式直接向策略给出技能ID,而是通过随机嵌入函数p_φ将编码为独热向量(one-hot vector)的技能ID t输入到策略中,生成一个潜在向量(latent variable)z。将这个相同的z值输入到整个策略中,以便轨迹中的所有步骤都与相同的z值相关联。


图1.jpg

  其中有参数:

图2.jpg

  为了辅助嵌入函数的学习,这篇文章还增加学习了一个推理函数q_Ψ,其作用为给定一个状态唯一的轨迹窗口,预测生成潜在向量z。它在给定一个仅包含状态的轨迹窗口的情况下,预测生成该轨迹时输入到低级技能策略的潜在向量z。定义一个增强的奖赏函数,它鼓励策略为不同的潜在向量探索不同的轨迹,学习的过程并行学习策略、嵌入函数p_φ和推理函数q_Ψ。此外,文章还添加了一个策略熵奖励H(πθ(ai|si,z)),它确保策略不会崩溃为每种技能的单个解决方案。


  策略梯度强化学习


  本文使用近端策略优化(PPO)来训练强化学习的策略和嵌入网络,使用MuJoCo物理引擎来实现Sawyer机器人仿真环境,另外使用多元高斯分布来表示策略、嵌入和推理函数,由多层感知器的输出参数化实现其平均和对角协方差,最后,利用强化学习算法对策略分布和嵌入分布进行联合优化,同时利用监督学习和简单的交叉熵损失对推理分布进行训练。


  模型预测控制(MPC)和物理模拟


  在前两步强化学习中,机器人是在一个仿真框架中进行训练的,因此在适应未知任务时,可以将训练前的仿真作为一种辅助工具。这使得机器人可以选择一个潜在的在线技能,只需要满足任务的局部最优约束,而不要求在训练期间就存在该任务,这也被成为是一种zero-shot任务执行。


  这种处理方法与我们上面介绍的「缩小模拟和现实的差距」以及「对模拟阶段的策略训练进行随机化处理」不同,上述两种方法尽管对模拟环境进行了大量的仿真处理工作,但都没有证明能够提供现实世界中通用机器人所需的适应能力。本文的方法是机器人强化迁移学习中一种适应实际探索的更高层次的补充方法。


  首先,将在策略梯度强化学习阶段得到的潜在技能向量序列输入到模型中,每个潜在的技能都与不同的预学习行为相关。通过选择这些预学习行为序列(通过技能嵌入持续参数化),能够有效解决新任务的适应问题。重复使用模拟阶段的预训练结果,作为在现实场景中适应未知任务时的预见工具,包括技能嵌入向量概率分布p_φ、潜在条件低级技能策略π_θ等。MPC过程如图5所示:

1.jpg

  图5.嵌入函数和多任务策略的模型预测控制


  候选潜在向量Z={z_1,...,z_k}是根据概率分布p_φ得到的。在T个时间步长的时间范围内,对策略π_θ进行抽样,以潜在的候选策略为条件,执行模拟环境的操作,得到每个潜在向量z_i的奖赏Ri_new。计算得到最大奖赏值:

图3.jpg

  再以此为依据调整多任务策略。重复这个MPC过程来依次选择和执行新的潜在向量,直到任务完成。


  本文通过在Sawyer机器人上完成两个排序任务来评估不同的方法:绘制一个点序列并沿着一个序列路径推一个盒子。对于每一个实验,机器人必须通过在嵌入学习过程中学习到的排序技能来完成一个整体任务。

6.jpg

  图6.在现实机器人上进行矩形绘制实验的夹具位置图,在这个实验中,未知任务是画一个矩形

7.jpg

  图7.在现实机器人上进行三角形绘制实验的夹具位置图,在这个实验中,未知任务是移动夹持器来画一个三角形

8.jpg

  图8.现实机器人实验中的挡块位置和夹持器位置图,(左图):机器人将盒子向左推,然后向下推;(右图):机器人将盒子向上推,然后向左推


  图6-8给出了使用本文提出的方法完成Sawyer机器人画和推两个动作的实验。其中,Sawyer机器人通过实时选择62个潜在向量,在2分钟内成功地完成了未知的矩形绘制任务,选择53个潜在向量,在2分钟内完成了未知的三角形绘制任务。Sawyer机器人选择3个潜在变量,在大约1分钟的时间内完成了未知的左下推任务,选择8个潜在变量,在大约1.5分钟的时间内完成了未知的上左推任务。


  4、力的转移学习和控制


  Rae Jeong,Jackie Kay,et al,「Modelling Generalized Forces with Reinforcement Learning for Sim-to-Real Transfer」,


  这篇文章主要研究如何有效地利用少量的现实世界数据来改善仿真效果,从而实现机器人的强化迁移学习。通过学习一个依赖于状态的广义力模型实现强化迁移学习,使用神经网络作为表达函数逼近器来模拟动力系统的约束力。


  在前三篇文章中,不管是一致性处理、随机化处理还是zero-shot的策略学习,都不使用任何现实世界的数据来改进模拟器,并且需要手动调整物理参数的选择和范围以改进模拟的效果。这篇文章的思路是,直接引入现实世界中机器人的物理动作(作用力),而不是仅依靠模拟环境中的参数,从而改进模拟器的效果。


  首先,介绍一下力学相关的背景知识。在经典力学中,任何受外力作用的刚体系统都可以用下列运动方程来描述:

图4.jpg

  其中q和v分别是系统配置和速度,m为质量矩阵;c为偏心力,包括科里奥利力、离心力、关节摩擦力和重力。τ表示内部、驱动、扭矩,0_m表示未驱动变量。6维的力f_k通过对应的接触雅可比J_k映射为广义力。如果系统相互作用或与环境相互作用,则上式还需要补充描述接触约束的附加方程。在不假设接触类型的情况下,本文将这些约束表示为相关系统状态的一般函数:

图5.jpg

  仍使用MDP描述强化学习过程。强化学习的目标是找到最佳策略π:

图6.jpg

  引入一个动作值函数,利用一步Bellman方程Q(s,a)计算策略π的期望奖赏之和:

图7.jpg

  在策略评估阶段通过策略外强化学习计算得到期望奖赏之和,在策略改进阶段利用策略评估结果改进策略本身。公式(1)和(2)代表的策略优化和期望奖赏值计算两个步骤迭代执行。


  针对机器人强化迁移学习问题,除了驱动力和外力外,在运动方程中添加了一个与状态相关的广义力项:

图8.jpg

  由此,得到一个以矢量θ为参数的混合离散动力学模型s_t+1=f_θ(s_t,a_t),以当前状态和作用为输入、下一状态s_{t+1}的预测为输出。目标是找到参数向量θ*,它使沿水平面t的动力学间隙最小化:

图9.jpg

  此时,强化学习的目标函数为:

图10.jpg

  其中,P_S为未修正力学动态模型的转移概率分布。将得到的广义力模型(Generalized Force Model,GFM)F_φ用作过渡模型P_f,然后,使用带有转移概率分布P_f的混合模型为感兴趣的控制任务训练策略,得到以下强化学习目标:

9.jpg

  图9.所提出方法步骤的描述


  图9给出所提出方法步骤的完整描述。1)使用原始模型参数对agent进行模拟训练。2)使用步骤1中训练得到的agent收集现实世界的数据。3)学习广义力模型(GFM):将仿真初始化为现实世界轨迹的初始状态,选择与现实机器人相同的动作推进模拟过程。


  本文将所提出的方法与三种基线方法进行了比较,分别是:i)用原始动态模型训练的策略,ii)用原始模型训练的策略和使用课程学习的策略,以及iii)用广义力随机扰动训练的策略和使用课程学习的策略。表1和表2分别为位置和姿态匹配的结果。本文的方法获得了与基线方法相比显著的改进,这也证明了引入现实场景中的力学参数对于改进强化迁移学习的效果有正向的作用。

表1.jpg

  表1.位置匹配任务评估

表2.jpg

  表2.姿势匹配任务评估


  这篇文章引入了状态相关广义力(Generalized Forces)建模和学习,以捕获模拟环境与现实环境间的差异。从力学角度分析,在控制相互作用力时,通常选择扭矩控制作为底层控制器,但是这篇文章认为在强化学习中使用扭矩控制并不常见,因此采用了「在运动方程中添加了一个与状态相关的广义力项(GFM)」的处理方式。未来的工作可以进一步探讨,使用本文提出的广义力模型是否有助于学习交互任务,同时也可以引入扭矩控制来控制机器人。


  5、其它任务学习方法


  Oier Mees,Markus Merklinger,et.al.,「Adversarial Skill Networks-Unsupervised Robot Skill Learning from Video,」


  这篇文章提出了一种对抗技能网络(Adversarial Skill Networks,ASN),它仅依赖于未标记的多视图观察(视频输入)来学习任务不可知的技能嵌入空间,而不需要任何额外的监督信息,就能找到一个适用于不同任务域的嵌入空间。ASN是作为Sim-to-Real方法的前置步骤提出的,它不仅适用于机器人的强化迁移学习,也适用于其它发现并学习可转移的技能任务。在这篇文章中,只进行了模拟环境中的实验验证,这与前四篇文章的分析是不同的。下一步,可以进一步研究扩展将ASN学习到的度量应用于现实世界中的强化学习任务中。


  ASN的主要目的是生成可以重复使用并适用于新任务的技能表现(Skill Representation),对应的嵌入空间具有如下特点:


  通用性:多个任务可以在同一个嵌入空间中表示;


  技能识别能力:可以通过嵌入输入视频中的两个连续帧来描述技能,帧之间有时间延迟(步幅);


  独立于任务的技能:所提取的嵌入空间能够保证在不同环境中执行相同任务都具有良好的性能。


  ASN整体结构如图10所示。在对抗性框架中学习技能度量空间,其中编码部分使用最大化熵来保证通用性,鉴别器部分则使用最小化预测熵来提高对技能的识别能力。最后,最大化所有技能的边际类熵从而有效提取独立于任务的技能特征。

10.jpg

  图10.对抗技能网络结构


  首先,引入一种新的熵正则化方法,对抗性地联合训练两个网络:编码器E和鉴别器D。给定输入视频中的时间间隔为∆t的两个连续帧(v,w),定义一个未标记的技能嵌入向量x=(E(v),E(w))和X={x^1,…,x^N}。编码器E将d1×d2的单个帧嵌入到n维的低维表示中,计算嵌入空间中的欧氏距离来比较帧的相似性。鉴别器D采用两个串联的嵌入式帧,定义一个未标记的技能x作为输入,输出为y_c。


  使用度量学习损失和最大化鉴别输出的熵来更新编码器参数。给定两个视图对(v1,v2),给定边际参数λ,从不同角度同步视频:

图11.jpg

  其中,S_ij=E(X_i)·E(X_j)。在给定一个未标记的技能嵌入x的情况下,鉴别器网络D将熵最小化,以确定该技能来自哪个任务C,值得注意的是,D仅在训练阶段使用。这篇文章对鉴别器的处理是根据预测类别分布的信息论测度,在技能嵌入空间中将未标记的技能划分为多个类别,而不需要对p(x)进行显式建模。编码器试图最大化熵H[p(y_c|x,D)],在最佳情况下,能够保证任务类的均匀条件分布。具体地说,将嵌入技能样本X上的条件熵的经验估计定义为:

图12.jpg

  引入一个附加的正则化算子进一步增强所有任务类的等价使用,对应于最大化均匀的边缘分布:

图13.jpg

  为了分离学习到的度量和任务ID的映射,添加一个采样的潜在变量z。使用重参数化技巧通过随机节点反向传播利用潜在变量z的Kullback-Leibler散度正则化,使得D能够有效表征技能的相似性质。最终,E和D的目标函数为:

图14.jpg

  图11给出了ASN应用于机器人学习的实验结果,其中使用时间对比网络(Time-Contrastive Networks,TCN)作为对比基线算法。将使用ASN学习到的度量集成到机器人强化学习的agent中,以模拟给定单个视频演示的不可见任务。具体说明,为了学习颜色叠加(C)任务的连续控制策略,训练了两块叠加(A)和颜色推送(B)任务的嵌入。在给定关于叠加和颜色叠加任务的嵌入训练结果的前提下,学习预先未知的颜色推送任务的连续控制策略。该实验中使用策略优化算法PPO训练agent。实验结果证明了在该场景下ASN的有效性,ASN能够将学习到的技能用于新任务,且获得了较好的性能。


11.jpg


  图11.使用学习的奖赏函数训练PPO对不可见的颜色推送和颜色叠加任务的连续控制策略的结果。图中显示了五次训练的平均值和标准差。


分享到:0

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品 均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

【我要评论】 【全部评论(共0条)】

  • 还可输入(1000个字符)
  • *网友评论仅供其表达个人看法,并不表明中国金属加工网同意其观点或证实其描述
精华文章

先临三维:VCU人文研究项目打开喜马拉雅古老文明的3D数字世界

Bernard K.Means是美国弗吉尼亚联邦大学的助理教授,在弗吉尼亚联邦大学虚拟[更多]

FDM(熔融堆积)3D打印机的五大优势—创想三维

3D打印技术是一种越来越有价值的商业工具,其中FDM(熔融堆积)是3D打印技术是[更多]

高熵合金3D打印进展

高熵合金处于金属材料界的前沿。它们被用作生产高温涡轮叶片、高温模具、切[更多]

访谈:AM CEO介绍LAPS3D打印技术

3D打印机制造商Ascend制造公司透露了其新颖的大面积投影烧结(LAPS)3D打印方[更多]

生物3D打印入门概述

生物3D打印是目前正在兴起的研究领域,狭义上的生物3D打印可以理解为操纵细胞[更多]