当前位置:   article > 正文

带RL的机器人:从类似预测下一个token的伯克利Digit到CMU 18万机器人_on bringing robots home

on bringing robots home

这两天,我在朋友圈说道,本质上来讲,斯坦福mobile aloha就是大模型机器人领域里的缩略版ChatGPT时刻,虽然aloha本身并没有像ChatGPT那么强大(毕竟才三人团队),但会让大模型机器人成为今2024年最大的爆发点,为何这么讲呢?

  • 一方面,ChatGPT对于各大公司最大的意义是,让大家看到了在大模型上投入的希望,而mobile aloha则让大家看到了在大模型机器人上投入的希望,更会加大:大家在RL上的投入与决心
  • ​二方面,虽说视频生成也会很火,但还没到能改变许多行业的地步,估计得明后年,至于无人驾驶还得再搞几年

而第二大爆发点,我觉得是agent,这个“大”更多是对社会的影响力,当然,agent是一个框架流程,本身也会嵌入在大模型机器人的设计里头

由于我今年特别看好大模型机器人的发展,且作为一个创业者 我希望不断挑战难度更大的事情,而作为一个技术研究者或大模型开发者 我希望把各个领域的技术给串起来(比如NLP大模型和CV大模型),综合为一个大场景而服务,毕竟作为大模型应用而言,场景第一 数据第二 模型第三

第一部分 Digit:基于类似下个token预测策略 + RL训练机器人

1.1 Digit所使用的动作预测模型:Causal Transformer

目前,尽管一些人形机器人在特定环境下表现良好,但一般存在泛化和适应新环境方面的问题

为了更好的解决这个问题,来自加州大学伯克利分校的研究人员于23年3月通过此篇论文《Real-World Humanoid Locomotion with Reinforcement Learning》提出了运用Causal Transformer的方法,其通过自回归的方式从观察-动作历史信息中预测下一个动作,也就是模型的输出(预测的动作)只依赖于其输入(观察-动作历史信息)中的先前信息(看到这,我惊呆了,它竟然把动作预测干成了类似于:对NLP句子中下一个token的预测)

  1. 具体来说,在处理“观察-动作对”时,模型会将每个“观察-动作对”作为一个token,并通过自注意力机制来学习这些token之间的关系
    在自注意力计算中,模型会为每个token分配权重,这些权重反映了在预测当前动作时,序列中其他token的重要性
  2. 由于Causal Transformer限制了自注意力只能考虑前面的token,它能够捕捉到序列中的因果依赖,即当前动作的决策是基于之前观察-动作的历史信息

最终,Causal Transformer能够使机器人在复杂和动态的环境中,在没有未来信息的情况下做出适应性更强的决策,从而使得机器人可以在室内外各种环境中稳健行走,应对不同地形,甚至还能背个书包,提袋垃圾

顺带说两点 你可能意想不到的点

  1. Our controller is trained entirely in simulation and deployed to the real world zero-shot,from page 5
  2. This setting is relevant since our robot is blind and may find itself in such situations during deployment,form page13

1.2 Digit的原理与框架

如下图所示

  • (A)我们的训练分为两个步骤
    \rightarrow  首先,我们假设环境是完全可观察的,并训练一个「教师状态策略」\pi_{s}\left(a_{t} \mid s_{t}\right)
    \rightarrow  其次,我们采用教师模仿和强化学习相结合的方法来培养「学生观察策略」
    即,The policy learning includes two steps: teacher state policy training and student observation policy learning
  • (B)利用Isaac Gym模拟器,在4个A100 GPU和数千个随机环境中进行大规模并行训练,模拟了机器人的刚体和接触动力学

    图片

    最后,将该策略迁移到真实机器人上
  • (C)Causal Transformer通过对下一个动作进行自回归预测来从观察和行动历史中进行训练。我们认为观察-行动历史包含有关世界的有用信息,而强大的Transformer模型可以利用这些信息来调整上下文中的动作

1.2.1 问题建模:可观察的马尔可夫决策过程POMDP

他们将控制问题描述为马尔可夫决策过程MDP,为离散时间决策过程提供了一个数学框架

  1. MDP包括
    状态空间S、动作空间A
    转移函数P\left(s_{t+1} \mid s_{t}, a_{t}\right)和标量奖励函数R\left(s_{t+1} \mid s_{t}, a_{t}\right),分别确定在时间步长t采取行动a_t后从状态s_t转移到状态s_{t+1}的概率,以及对智能体行动质量的反馈
  2. 解决MDP问题的方法是通过强化学习,旨在找到最优策略,以有限或无限的时间范围内最大化预期累积奖励。实际应用中,由于无法准确估计真实环境中潜在状态,在存在噪声观测空间时需要修改MDP框架以反映观测不确定性(In practice, estimating true underlying state of an environment is impossible for real-worldapplications. In the presence of a noisy observation space, the MDP framework needs to bemodified to reflect the uncertainty in the observations)
  3. 故通过引入观测空间O和观测函数Z\left(o_{t} \mid s_{t}\right)来实现,该函数确定将状态s_t观察为o_t的概率(This can be done by introducing an observation space O and an observation function Z(ot|st), which determines the probability of observing state st as ot)
    此时,MDP变成部分可观察的马尔可夫决策过程POMDP,智能体必须根据噪声观测而非真实环境状态做出决策(The MDP now becomes a Partially Observable Markov DecisionProcess (POMDP), where the agent must make decisions based on its noisy observations ratherthan the true state of the environment.)

1.2.2 Causal Transformer基于观察-动作序列确定行动策略

接下来的目标是找到一个策略\pi _o,用于在POMDP问题中进行实际部署

我们的策略将由“观察-动作”组成的长度为l的历史轨迹作为输入,该历史轨迹表示为o_{t}, a_{t-1}, o_{t-1}, a_{t-2}, \ldots, o_{t-l+1}, a_{t-l},并输出下一个动作a_t

  1. 为了实现这一目标,我们采用Transformer(50)来进行序列轨迹建模和动作预测,Transformer最关键的特征是使用自注意力机制,在计算输出时能够权衡每个输入元素的重要性。自注意力机制通过自注意力函数实现,该函数接收一组查询Q、键K和值V,并输出加权和,计算方式如下所示:
                                                                            \operatorname{Attention}(Q, K, V)=\operatorname{softmax}\left(\frac{Q K^{T}}{\sqrt{d_{k}}}\right) V
    其中d_k代表键的维度
  2. 通过自注意力机制,Transformer能够捕获输入元素之间较长距离上的依赖关系。我们将运动轨迹中每个观察-动作对表示为一个token。Transformers可以通过反复这样一个过程:向每个token(Q和K上使用softmax)分配权重并将token(V)映射到特征空间,从而有效地突出相关观察和动作信息,并推断步态和接触状态等重要信息
    We represent each observation-action pair in the locomotion trajectory as a token. Transformers are able to extract the structural information of these tokens through a repeated processof assigning weights to each token (softmax on Q and K) in time, and mapping the tokens (V )into features spaces, effectively highlighting relevant observations and actions and thus enablingthe inference of important information such as gait and contact states.
    我们利用多层感知机(MLPs)将每个观察-动作对嵌入到特征空间中去(We employ Multi-LayerPerceptrons (MLPs) to embed each observation-action pair into a feature space)
  3. 为了捕捉序列中每个token位置信息,在特征中添加正弦位置编码器(sinepositional encoding)
    且通过限制自注意力机制只关注前面的token,在利用时间依赖关系推断观察与行动之间产生causal Transformer(We leverage the temporal dependencies among the observations and actions byrestricting the self-attention mechanism to only attend to preceding tokens, resulting in a causaltransformer)

1.2.3 确定目标函数:基于模仿学习和RL联合训练

在强化学习中,智能体必须通过试错不断积累经验并更新策略以优化决策过程。然而,在复杂的高维环境中,获得有用的奖励信号可能需要大量交互和模拟步骤,因此直接使用RL来优化策略在观测空间中是缓慢且资源密集的。为了克服这些限制,他们采用了以下方法

  1. 首先,假设环境是完全可观测的(模拟环境中一切可观测),并通过模拟训练一个教师状态策略\pi_{s}\left(a_{t} \mid s_{t}\right),该训练快速且资源高效。我们调优奖励函数(如步态参数),直到在模拟中获得最佳状态策略
    First, we assume that the environment is fully observable and train a teacher state policy πs(at|st) using simulation. Thistraining is fast and resource-efficient, and we tune the reward functions, such as gait-parameters,until an optimal state policy is obtained in simulation.
  2. 接下来,通过Kullback-Leibler(KL)发散将学习到的状态策略提炼为观测策略(Next, we distill the learned state policy to an observation policy through Kullback-Leibler (KL) divergence)
  3. 同时考虑状态空间和观测空间之间差异可能导致次优决策问题,采用一种联合优化方法将RL损失与状态策略监督相结合定义目标函数L\left(\pi_{o}\right)=L_{R L}\left(\pi_{o}\right)+\lambda D_{K L}\left(\pi_{o} \| \pi_{s}\right)
    Joint optimization with reinforcement learning.The discrepancy between the state spaceand the observation space can result in suboptimal decision-making if relying solely on state-policy supervision, as policies based on these separate spaces may have different reward man-ifolds with respect to the state and observation representations.
    To overcome this issue, weutilize a joint optimization approach combining RL loss with state-policy supervision

    \rightarrow  相当于训练目标包括两项,一项是基于教师监督策略的模仿学习,一项是强化学习两个方面(an imitation learning term based on teacher policy supervision and a reinforcement learning term based),其中\lambda代表状态策略监督的权重因子,L_{R L}\left(\pi_{o}\right)表示强化学习损失,D_{K L}\left(\pi_{o} \| \pi_{s}\right)是观察策略\pi _o和状态策略\pi _s之间的KL散度
    \rightarrow  在训练过程中,权重因子\lambda逐渐退火至零,在训练视界的中点通常达到零,这使得观测策略能够早期从老师那里获益(即状态策略是观测策略的老师),并最终超越它(The weighting factor λ is gradually annealed to zero over the course of the training process,typically reaching zero at the mid-point of the training horizon, which enables the observation policy to benefit from the teacher early on and learn to surpass it eventually)

    值得注意的是,我们的方法不需要任何预先计算的轨迹或离线数据集,因为状态策略监督和强化学习监督都通过策略学习进行优化
    It is importantto note that our approach does not require any pre-computed trajectories or offline datasets, asboth the state-policy supervision and RL-supervision are optimized through on-policy learning.
  4. 实验中使用了actor-critic方法来训练RL策略,并且没有共享权重
    动作空间由16个驱动关节PD设定值和8个驱动腿关节预测PD增益组成。我们未训练任何控制四个脚趾电机的策略,而是使用固定PD增益将电机设置为默认位置。这种方法在基于模型控制中被广泛采用(55,56)。奖励函数受人类行走生物力学研究启发,并经过试错调整。在奖励设计中没有预先计算步态库​​​​​

1.3 迁移到现实中后的表现

为了模拟机器人的闭链动力学,引入了“虚拟弹簧”模型。在模拟中随机化机器人的动态属性、控制参数和环境物理属性,以及添加噪声和延迟到观察中

从模拟到现实的转移方面,研究人员在机器人公司Agility Robotics(前身是Dynamic Robotics Laboratory)提供的高保真度模拟器中验证策略,该模拟器准确模拟了Digit机器人的动态和物理属性

  1. 经过实验,Digit机器人能够在多种环境中可靠行走,展现出对外部干扰的鲁棒性

    图片

  2. 以及在不同地形和载荷条件下的适应性(左:脚被绊住,右:下坡)

    图片

  3. 顺带保持手臂摆动协调有力,不顺拐

    图片

第二部分 不用RL而直接类似Next Token Prediction训练机器人

  • 上一部分的论文《Real-World Humanoid Locomotion with Reinforcement Learning》,其作者是Ilija Radosavovic, Tete Xiao, Bike Zhang, Trevor Darrell, Jitendra Malik, Koushil Sreenath
  • 24年2.29,上一团队(Ilija Radosavovic, Bike Zhang, Baifeng Shi, Jathushan Rajasegaran, Sarthak Kamat, Trevor Darrell, Koushil Sreenath, Jitendra Malik)通过此篇论文《Humanoid Locomotion as Next Token Prediction》,把机器人动作的预测干成类似下一个token预测的工作进一步推进了下

本质区别在于后者去掉了RL

2.1 根据YouTube视频且基于Transformer做自回归预测

最新这篇论文,我个人觉得比较重要的一个价值在于,它可以把比如YouTube上大量的人类走路的视频都作为训练数据来源之一,很有我之前介绍过的Google genie的感觉(详见此文:Google发布Genie硬杠Sora:通过大量无监督视频训练最终生成可交互虚拟世界)

他们使用由Agility Robotics开发的全尺寸Digit类人机器人

首先在仿真中收集传感器运动轨迹的数据集。 这些包括通过强化学习训练的神经网络策略的完整轨迹(即上一部分的这个工作:Real-world humanoid locomotion with reinforcement learning),以及来自三个不同来源的不完整轨迹:

  1. 基于模型预测控制的Agility Robotics控制器
  2. 人体动作捕捉
  3. 人类的YouTube视频

使用计算机视觉技术重建人类视频,并通过逆向运动学重新定位动作捕捉和YouTube轨迹。 然后,我们训练一个Transformer模型来自回归地预测轨迹。 在测试时,我们自回归地执行动作,并忽略感知预测

最终,研究发现,仅使用离线数据训练的自回归策略在测试环境中与使用强化学习的最先进方法相当(We find that our autoregressive policies trained from offline data alone are comparable to the state-of-the-art approaches that use reinforcement learning (33 ) in tested settings)

2.1.1 训练方法

  1. 首先,每个传感器运动轨迹都是一系列感官观察和动作的序列:\mathcal{T}=\left(o_{1}, a_{1}, o_{2}, a_{2}, \ldots, o_{T}, a_{T}\right),然后将轨迹分词为K个token,以获得t=\left(t_{1}, t_{2}, t_{3}, \ldots, t_{K}\right)
    接下来,我们的目标是训练一个神经网络自回归地建模p(t)p(t)=\prod_{k=1}^{K} p\left(t_{k} \mid t_{k-1}, \ldots, t_{1}\right)
  2. 然后,通过最小化轨迹数据集上的负对数似然来训练我们的模型L=\sum_{t \in \mathcal{D}}-\log p(t)
  3. 我们假设一个具有恒定方差的高斯分布,并训练一个神经网络来最小化均方误差,即预测token与实际token之间的误差:
    L=\frac{1}{K} \sum_{k=1}^{K}\left(\widehat{t}_{k}-t_{k}\right)^{2}

2.1.2 模型架构之Transformer

我们的模型是一个基本的Transformer

  1. 给定完整或不完整数据的轨迹,首先将轨迹分词为token
  2. 为每个模态学习单独的线性投影层,但在时间上共享
    为了编码时间信息,我们使用位置嵌入。 假设o_{i} \in \mathcal{R}^{m}a_{i} \in \mathcal{R}^{n},则:
    t_{i}=\operatorname{concat}\left(o_{i}, a_{i}\right)
    h_{i}^{0}=W t_{i}
    其中W \in \mathcal{R}^{d \times(m+n)}是一个线性投影层,用于将连接的观测和动作模态投影到一个d维嵌入向量中,上标 0表示第0层的嵌入,即输入层
  3. 当动作不可用时,我们使用一个掩码token [\mathrm{M}] \in \mathcal{R}^{n}来替代 a_i,并且 [M]被初始化为一个随机向量,并与整个模型一起进行端到端的学习,该模型将嵌入向量序列H_{0}=\left\{h_{1}^{0}, h_{2}^{0}, \ldots, h_{t}^{0}\right\}作为输入
  4. Transformer架构包含 L个层,每个层由一个多头自注意模块和一个MLP模块组成。 假设第l层的输出是H_l,则H_{l+1}的输出为
    \begin{aligned} \tilde{H}_{l} & =\text { LayerNorm }\left(H_{l}\right) \\ \tilde{H}_{l} & =\tilde{H}_{l}+M \operatorname{HSA}\left(\tilde{H}_{l}\right) \\ H_{l+1} & =\tilde{H}_{l}+M \operatorname{LP}\left(\tilde{H}_{l}\right) \end{aligned}
    在这里,多头自注意力具有因果掩码(the multi-head self-attention has causal masking),其中token只关注自身和过去的token
    一旦token通过所有层进行处理,我们通过学习线性投影层\widehat{W} \in \mathcal{R}^{(m+n) \times d}将嵌入投影到预测的状态和动作(we project the embedding to predicted states and actions, by learning a linear projection layer cW ∈ R(m+n)×d)
    \begin{aligned} \widehat{t}_{i+1} & =\widehat{W} h_{i}^{L} \\ \widehat{o}_{i+1} & =\left(\widehat{t}_{i+1}\right)_{0: m} \\ \widehat{a}_{i+1} & =\left(\widehat{t}_{i+1}\right)_{m:(m+n)} \end{aligned}
  5. 然后使用目标函数L=\frac{1}{K} \sum_{k=1}^{K}\left(\widehat{t}_{k}-t_{k}\right)^{2}来训练transformer。 在token被屏蔽的情况下,我们不应用任何损失。 我们使用两种类型的数据来训练我们的变压器,如下图所示

    这使我们能够使用各种数据源,从而在数据方面实现扩展

在推理时,我们的transformer模型始终可以访问观察-动作对。 在这种设置下,我们为每个观察-动作对token自
回归地应用transformer模型

  1. 通过对过去的观察和动作进行条件预测,我们预测下一个动作(或观察-动作对)并执行该动作
  2. 然后我们从机器人那里获取观察结果并丢弃预测的观察结果,使用观察到的观察结果和预测的动作作为下一组token,并将它们与过去的对连接起来以预测下一个观察-动作对

2.2 数据集

如之前所述,数据集包括来自不同来源的轨迹:

  1. 神经网络策略
    作为训练轨迹的第一个来源,我们使用了一个经过大规模强化学习训练的神经网络策略(33)
    具体来说,这个策略是在Isaac Gym(Isaac gym: High performance gpu-based physics simulation for robot learning)中的数千个随机环境中使用数十亿个样本进行训练的。在Agility Robotics的模拟器中运行这个策略,并收集了10秒钟的10k个轨迹,这些轨迹都是在平坦的地面上进行的,没有进行域随机化。 每个轨迹都以从截断正态分布中采样的速度命令为条件,具体如下:向前的线性速度为[0.0, 1.0]m/s,向侧面的线性速度为[−0.5, 0.5]m/s,旋转角速度为[−0.5, 0.5]rad/s。 由于我们可以访问数据生成策略,我们能够记录完整的观测结果以及模型预测的准确动作
  2. 基于模型的控制器
    作为轨迹的第二个来源,我们使用了由Agility Robotics开发的基于模型的控制器。它是部署在Digit人形机器人上并在Agility Robotics的模拟器中可用的控制器。我们收集了两组10k个行走轨迹,每个轨迹持续10秒,在平坦的地面上进行。 在这两种情况下,我们对速度指令进行采样如下:
    线性前进速度 [−1.0, 1.0]米/秒
    线性侧向速度 [−1.0, 1.0]米/秒,以及转向角速度 [−1.0, 1.0]弧
    度/秒

    我们使用默认的基于模型的配置为一个集合,并对另一个集合的腿长、步行间隙和地板的弹性进行随机化。
    由于该控制器输出关节力矩,与我们的关节位置动作空间不一致。 我们只记录观测结果,不记录动作。 这些数据作为具有合理观测结果的轨迹的来源,但没有动作。
  3. 人体动作捕捉
    作为轨迹的下一个来源,我们使用来自KIT数据集(The KIT motion-language dataset)通过AMASS存储库(AMASS: Archive of motion capture as surface shapes)分发的人体动作捕捉(MoCap)记录。 这些数据是在实验室环境中使用光学基于标记的跟踪记录的。 该数据集包含约4k个轨迹。
    我们使用约1k个站立、行走和奔跑的轨迹的子集。除了不包含地面真实动作外,MoCap轨迹还面临着额外的挑战:不同的形态。 也就是说,MoCap轨迹捕捉到了人体关键点在3D空间中的位置。 为了将这些轨迹用于训练机器人,我们解决了一个逆运动学问题,以找到相应的机器人姿势。
    我们制定了一个逆运动学优化问题:

    其中,q是广义坐标下的机器人状态,Nd_t是优化的时间范围和采样时间,优化变量包括q\dot{\mathbf{q}}
    对于约束条件,(12b)是姿势 q的欧拉积分,(12c)约束了q\dot{\mathbf{q}}在它们的可接受集合 Q和 V内的范围
    在成本函数中, φtraj跟踪人类轨迹中的关键点位置,而 φreg表示正则化成本,例如关节速度最小化和平滑性
  4. 以及来自YouTube的人体视频
    人们进行各种活动的互联网视频是学习人类步态的潜在数据来源。
    然而,原始像素没有关于人类状态和行为的信息。 为了恢复这一点,首先运行一个计算机视觉跟踪算法PHALP(Tracking people by predicting 3d appearance, location and pose)来提取3D中的人类轨迹。 这提供了人体关节SMPL(Smpl: A skinned multi-person linear model)参数的估计和世界坐标系中人体关节的嘈杂估计。 我们使用人体关节位置将运动重新定位到人形机器人上,使用上述逆运动学优化
    一旦我们将运动重新定位从互联网视频到人形机器人轨迹,我们使用低优化成本对轨迹进行过滤。 请注意,这些数据的规模带来了噪声的代价

第三部分 CMU 18万机器人:模仿学习 + RL之后,一切自主操作

3.1 先模仿学习(通过演示数据进行行为克隆),后RL(通过CLIP视觉语言模型给予环境反馈)

24年1月,CMU一团队通过这篇论文《Adaptive Mobile Manipulation for Articulated Objects In the Open World》提出了开放世界移动操作系统(Open-World Mobile Manipu-lation System),这是一个全栈方法,用于解决开放世界中真实关节物体的移动操作问题

  1. 通过“带有相关参数的结构化动作空间”来实现有效的学习
    Efficient learning is enabled by a structured ac-tion space with parametric primitives
  2. 自适应学习允许机器人通过在线RL从自我实践数据中不断学习
    by pretraining the Adaptive learning allows the robot to keep learning fromself-practice data via online RL
  3. 我们介绍了一种低成本的移动操作硬件平台,该平台具备高有效载荷,使其能够与物体进行重复交互。例如,在开放世界环境下穿越各种门以及在狭窄和杂乱的空间中导航等任务都可以完成。为了测试系统的有效性,我们对大学校园内4栋建筑中的8个新物体进行了现场测试,并发现自适应收益将成功率从预训练策略的50%提高到适应后的95%
    We introduce a low-cost mobile manipulation hardware plat-form that offers a high payload, making it capable of repeatedinteraction with objects, e.g. a heavy, spring-loaded door, anda human-size, capable of maneuvering across various doorsand navigating around narrow and cluttered spaces in theopen world. We conducted a field test of 8 novel objectsranging across 4 buildings on a university campus to testthe effectiveness of our system, and found adaptive earningboosts success rate from 50% from the pre-trained policy to 95% after adaptation

3.1.1 策略的初始化:通过收集到的演示数据进行行为克隆

为了实现高效学习,采用了一个结构化的分层动作空间。该空间包括一个固定的高级动作策略和可学习的低级控制参数。通过利用遥操作演示产生不同数据集进行行为克隆(BC),然后初始化了策略(To achieve efficient learning, we use astructured hierarchical action space. This uses a fixed high-level action strategy and learnable low-level control param-eters. Using this action space, we initialize our policy viabehavior cloning (BC) with a diverse dataset of teleoperated demonstrations)

然而,在开放世界环境中,对象变化范围广泛,因此初始的BC策略可能无法适应机器人可能遇到的每个未见物体。为解决这一问题,我们使机器人能够从在线样本中持续学习和适应,并描述了在线学习过程(we enable the robot to learn from the online samples it collects to continually learn andadapt. We describe the continual learning process as well asdesign considerations for online learning)

为了提高学习效率,采用参数化的基本动作空间(parameterized primitive action space)

  1. 具体来说,假设使用一个被g参数化的抓取原语G(.)进行访问
    Concretely, we assume access to a grasping primitive G(.) parameterized by g.
  2. 此外,还引入了一个受限的移动操作原语M(.),其中包含两个参数:一个离散参数C和一个连续参数c
    We also havea constrained mobile-manipulation primitives M(.), whereprimitive M(.) takes two parameters, a discrete parameter C and a continuous parameter c.
    轨迹以开环方式执行,即在每个抓取原语之后跟随一组N个受限的移动操作原语
    Trajectories are executed in an open-loop manner, a grasping primitive followed by asequence of N constrained mobile-manipulation primitives:

\left\{I_{s}, G(g),\left\{M\left(C_{i}, c_{i}\right)\right\}_{i=1}^{N}, I_{f}, R\right\}

其中Is代表初始观察图像,G(g)和M(Ci,ci)分别表示参数化抓取和约束操作原语,If代表最终观察图像,ris表示轨迹的奖励(where Is is the initial observed image, G(g), M(Ci,ci))denote the parameterized grasp and constrained manipulationprimitives respectively, I f is the final observed image, and ris the reward for the trajectory)

尽管这个结构化空间在表达能力上不如完整的动作空间强大,但它足以学习我们每天遇到的铰接对象的有效策略,并包括20个不同门、抽屉和冰箱等开放世界环境中的情景。该结构只需使用20-30个轨迹序列就能从少量样本中进行学习

3.1.2 自适应学习:模仿学习 + 在线RL

给定初始观测图像I_s,我们使用分类器\pi_{\phi}\left(\left\{C_{i}\right\}_{i=1}^{N} \mid I\right)来预测N个离散参数\left\{C_{i}\right\}_{i=1}^{N}序列的约束移动操作,并利用条件策略网络\pi_{\theta}\left(g,\left\{c_{i}\right\}_{i=1}^{N} \mid I,\left\{C_{i}\right\}_{i=1}^{N}\right)生成抓取原语的连续参数和N个约束移动操作原语序列(Given an initial observation image Is, we use a classifierπφ({Ci}Ni=1|I) to predict the a sequence of N discrete pa-rameters {Ci}Ni=1 for constrained mobile-manipulation, anda conditional policy network πθ(g,{ci}Ni=1|I,{Ci}Ni=1) whichproduces the continuous parameters of the grasping primi-tive and a sequence of N constrained mobile-manipulationprimitives),机器人按照开环方式逐个执行参数化原语(The robot executes the parameterized primitivesone by one in an open-loop manner)

  • 模仿学习
    模仿学习旨在通过学习策略参数\pi_{\theta, \phi},以最大化专家动作的可能性(The imitation learning objective is to learn policy pa-rameters πθ,φ that maximize the likelihood of the expertactions)
    具体而言,对于给定图像观测数据集I_s和相应的动作\left\{g,\left\{C_{i}\right\}_{i=1}^{N},\left\{c_{i}\right\}_{i=1}^{N}\right\},模仿学习目标是:

\max _{\phi, \theta}\left[\log \pi_{\phi}\left(\left\{C_{i}\right\}_{i=1}^{N} \mid I_{S}\right)+\log \pi_{\theta}\left(g,\left\{c_{i}\right\}_{i=1}^{N} \mid\left\{C_{i}\right\}_{i=1}^{N}, I_{S}\right)\right]

  • 在线RL
    在线RL面临着一个核心挑战,即操作新的铰接对象,这些对象不符合行为克隆训练数据分布(The central challenge we face is operatingnew articulated objects that fall outside the behavior cloningtraining data distribution)。为了解决这一问题,我们使策略能够利用机器人收集的在线样本进行持续改进。换言之,我们致力于最大化策略下预期奖励总和
                                                                                    \max _{\theta, \phi} \mathbb{E}_{\pi_{\theta, \phi}}\left[\sum_{t=0}^{T} r\left(s_{t}, a_{t}\right)\right]
    由于我们采用了前文所述的高度结构化的行为空间,因此我们可以使用相对简单的强化学习算法来优化该目标。具体而言,我们应用了REINFORCE目标(分别定义为公式3、公式4)
                                                                    \begin{array}{l} \nabla_{\theta, \phi} J(\theta, \phi)=\mathbb{E}_{\pi_{\theta, \phi}}\left[\sum_{t=0}^{T} \nabla_{\theta} \log \pi\left(a_{t} \mid s_{t}\right) \cdot r_{t}\right] \\ =\mathbb{E}_{\pi_{\phi, \theta}}\left[\left(\nabla_{\phi} \log \pi_{\phi}\left(C_{i} \mid I\right)+\nabla_{\theta} \log \pi_{\theta}\left(g, c_{i} \mid C_{i}, I\right)\right) \cdot R\right] \end{array}
    其中R代表轨迹执行结束时所获得的奖励。需要注意的是,我们只有单个时间步长过渡,并且所有动作都由观察到的图像I_s决定,并以开环方式执行(where R is the reward provided at the end of trajectory execution. Note that we only have a single time-step transition, all actions are determined from the observed image Is , and executed in an open-loop manner)
  • 整体微调
    为了确保策略不会与模拟数据集的初始化偏离过大,我们在微调时采用加权目标进行优化。整体损失函数定义如下(定义为公式5):

    其中,在线采样数据的损失通过上面的公式4进行优化,而批量离线数据的损失则通过上面公式2的BC算法进行优化。在执行更新操作时,我们对在线和离线数据使用相同大小的批次

3.2 训练细节

3.2.1 抓取细节与受限的移动操作

给定从真实感相机获得的场景RGBD图像,使用现有的视觉模型[Detecting twenty-thousand classes using image-level supervision],[Segment anything]来获取门和手柄的掩码,并仅提供文本提示

  1. 此外,由于门是一个平面,我们可以利用相应的掩码和深度图像来估计门的表面法线(Furthermore, since the door is aflat plane, we can estimate the surface normals of the doorusing the corresponding mask and the depth image)
  2. 这被用于将底座移动到靠近门位置并使其垂直,并设置抓取手柄时的方向角(This is used to move the base close to the door and align it tobe perpendicular, and also to set the orientation angle forgrasping the handle)
  3. 通过使用相机标定将手柄2D掩码中心投影到3D坐标中,即可得到名义上的抓取位置
    The center of the 2d mask of the handle is projected into 3d coordinates using camera calibration,and this is the nominal grasp position. 
  4. 抓取原语的低级控制参数指示了抓取位置偏移量。这对于不同类型手柄可能需要稍微调整位置以达到最佳效果非常有帮助,并且可以通过学习低级连续值参数来实现
    The low-level control parameters to the grasping primitive indicate an offset for this position at which to grasp. This is beneficial since dependingon the type of handle the robot might need to reach a slightlydifferent position which can be learned via the low-levelcontinuous valued parameters

在SE2平面中,我们有一个9维向量对机器人手臂末端执行器和机器人底座的速度进行控制,其中前6个维度对应于手臂控制,最后3个维度对应于底座。我们所采用原语对该空间施加以下约束(We use velocity control for the robot arm end-effector and the robot base. With a 6dof arm and 3dof motion for the base (in the SE2 plane), we have a 9-dimensional vector -):

\text { Control : } \quad\left(v_{x}, v_{y}, v_{z}, v_{\text {yaw }}, v_{\text {pitch }}, v_{\text {roll }}, V_{\mathrm{x}}, V_{\mathrm{y}}, V_{\omega}\right)

且对这个空间施加的约束如下

\begin{aligned} \text { Unlock : } & \left(0,0, v_{z}, v_{\text {yaw }}, 0,0,0,0,0\right) \\ \text { Rotate : } & \left(0,0,0, v_{\text {yaw }}, 0,0,0,0,0\right) \\ \text { Open : } & \left(0,0,0,0,0,0, V_{\mathrm{x}}, 0,0\right) \end{aligned}

对于控制部分,策略输出与要执行原始数据相关联索引及其相应运动低级参数。低级控制命令范围为-1至1,并具有固定持续时间执行时间。参数符号决定速度控制方向,在解锁和旋转时顺时针或逆时针,在打开时向前或向后(For control, the policy outputs an index corresponding to which primitive is to executed, as well as the corresponding low-level parameters for the motion. The low-level control command is continuous valued from -1 to 1 and executed for a fixed duration of time. The sign of the parameters dictates the direction of the velocity control, either clockwise or counter-clockwise for unlock and rotate, and forward or backward for open)

3.2.2 预训练数据集

在此项目中考虑铰接对象由三个刚性部分组成:基座部分、框架部分和手柄部分

为了在操作未见过的新型铰接物体时提供泛化效益,我们首先收集了一个离线演示数据集。我们在BC训练数据集中包括每个类别3个对象,并为每个对象收集10个演示轨迹,共产生120条轨迹记录

此外,在泛化实验中还从每个类别中选取2个测试对象。训练和测试对象在视觉外观方面具有显著差异,例如纹理、颜色;在物理动力学方面也存在差异,例如弹簧加载;以及驱动方式上可能出现顺时针或逆时针等差异性质量特征

3.2.3 自主和安全的在线适应设计

如前所述,为了更好的操作BC训练领域之外的新对象,该团队开发了一个能够完全自主强化学习(RL)在线适应的系统

  • 安全感知探索:确保机器人在进行探索时所采取行动对其硬件是安全的至关重要,特别是因为它需要与对象进行关节约束下交互。然而,由于我们使用低成本手臂(如xarm-6),无法精确支持力感应

    为了部署我们的系统,在线采样期间读取关节电流并设置一种基于此机制来确保安全性。如果机器人采样到一个导致关节电流达到阈值的动作,则会立即终止该事件并重置机器人,以防止手臂从潜在地对自身造成损害,并提供负奖励以阻止此行为
  • 奖励规格:在我们的主要实验中,一名人类操作员会根据机器人是否成功打开门来给予奖励。成功打开门则得到+1分,失败则得到0分,违反安全规定则得到-1分。这种设置是可行的,因为系统只需要很少样本进行学习(ahuman operator provides rewards- with +1 if the robot suc-cesfully opens the doors, 0 if it fails, and -1 if there is a safetyviolation. This is feasible since the system requires very fewsamples for learning)
    然而,在自主学习中,我们希望消除依赖人类参与的瓶颈。因此,故研究了使用大型视觉语言模型作为奖励来源的方法(For autonomous learning however, wewould like to remove the bottleneck of relying on humansto be present in the loop. We investigate using large visionlanguage models as a source of reward)

    具体而言,我们使用CLIP计算两个文本提示和机器人执行后观察到的图像之间的相似性得分,而所使用的两个提示是“关闭的门”和“打开的门”(Specifically, we use CLIP [52] to compute the similarity score between two textprompts and the image observed after robot execution. Thetwo prompts we use are - ”door that is closed” and ”door that is open”)
    然后通过计算最终观察到图像与这些提示之间的相似性得分(We compute the similarity score of the finalobserved image and each of these prompts)
    \rightarrow  如果图像更接近指示门被打开,则给予+1奖励;否则给予0奖励(assign areward of +1 if the image is closer to the prompt indicatingthe door is open, and 0 in the other case)
    \rightarrow  如果违反安全规定,则给予-1奖励
  • 重置机制:机器人采用视觉里程计,并利用底座上安装的T265跟踪摄像头导航回初始位置。每次情节结束时,机器人释放夹具并移动回原始SE2基地位置,并获取IF图像以计算奖励值。随后,在基地SE2位置上应用随机扰动以增强策略学习鲁棒性
    The robot employs visual odometry,utilizing the T265 tracking camera mounted on its base,enabling it to navigate back to its initial position. At theend of every episode, the robot releases its gripper, andmoves back to the original SE2 base position, and takes animage of I f for computing reward. We then apply a randomperturbation to the SE2 position of the base so that the policylearns to be more robust
    此外,在获得+1奖励(即成功打开门)时,机器人有一个脚本程序来关闭门

3.3 硬件情况

// 待更

参考文献与推荐阅读

  1. 上文正文中的一系列原始论文(文中都已附有对应的链接),它们是本文最最关键的参考文献
  2. CMU华人18万打造高能机器人,全自主操作,1小时学会开12种门
  3. “机器人正在接管旧金山”
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/391416
推荐阅读
相关标签
  

闽ICP备14008679号