Embrace Collisions: Humanoid Shadowing for Deployable Contact-Agnostics Motions

Embrace Collisions: Humanoid Shadowing for Deployable Contact-Agnostics Motions

  • 研究动机
  • 解决方案
  • 技术路线
  • 方法限制
  • 实验结果

Embrace Collisions: Humanoid Shadowing for Deployable Contact-Agnostics Motions

研究动机

  • 运动命令接口挑战:当机器人经历显著滚转或俯仰旋转时,运动命令难以表述。常用数据集如AMASS主要包含站立姿势,限制了它们在极端运动场景中的适用性。此外,人类和人形机器人之间的运动学差异导致许多记录的运动不可行。
  • 可部署的人形控制策略挑战:碰撞模型的简化约束了部分可行的运动。

解决方案

提出一种通用框架,使人形机器人能够执行一系列极端动作。具体来说,无论机器人是站立还是躺下,在机器人基座坐标系中表达所有动作目标。使用关键帧方法来表达未来动作目标,从而使机器人获得未来动作预期的信息。为研究在真实机器人上训练此类不寻常的类人动作的可能性,文章构建了一个极端动作数据集,其中躯干处于极端的滚转和俯仰姿态。通过这个训练流程,展示了使用机器人简化碰撞形状和域随机化技术,仅在仿真中训练的控制策略可以在真实世界中成功跟随目标运动轨迹。

  • 基于 Transformer 的运动命令编码器与基于关键帧的运动命令:为满足运动指令输入维度变化的需求,采用多头自注意力网络作为运动指令的编码器。 使用基于Transformer的编码器模块,依次对关节位置指令、link位置指令和基本姿势指令进行编码,并对机器人当前状态相对于特定运动目标的误差进行编码。
  • 稀疏运动奖励与密集正则化奖励之间的差距通过优势混合来弥补:为执行极其困难的contact-agnostic运动,从现有数据集中采样的运动命令序列对于给定的机器人来说在物理上是不可行的。运动命令必须稀疏,并且要留有足够的空间供策略通过强化学习训练来探索和生成解决方案。这种任务设置迫使任务奖励在整个回合中保持稀疏。然而,在运行时为了保护硬件,通常使用密集的安全奖励项,例如最小化能耗、最小化扭矩输出、最小化关节加速度等。网络可能会错误地捕捉到任务信号。因此,使用一种称为优势混合的多评论家技术来弥合稀疏运动任务奖励和密集正则化奖励之间的差距。
  • 新设计的终止条件以适应所有基座旋转条件:先前的人形行走和模仿学习只考虑站立状态。因此,通常情况下,当机器人的基座姿态超过某个阈值或基座高度低于某个阈值时,训练轨迹可以终止。但在定义某些运动任务,如在地上旋转或从地上站起来时,这不是情况。人形机器人的设计工作条件本身就是先前工作的“失败条件”。因此,当运动目标即将达到时,如果机器人的当前状态与运动目标相差太大,则重新定义终止条件。

技术路线

Embrace Collisions: Humanoid Shadowing for Deployable Contact-Agnostics Motions_第1张图片
数据集:从AMASS数据集中构建了一个极端动作数据集,并使用4D-Human从互联网视频中提取极端的人类动作。

问题描述:任务定义为一个低级的人形控制策略,该策略在指定的未来时间到达目标运动。运动目标表示为运动目标刷新时一系列的关节位置、link目标位置和目标基座变换,结合从目标运动刷新到特定帧的时间间隔。训练低级全身控制策略,在特定帧尽可能接近目标运动,而不触发终止条件。

由于构建的是极端动作数据集,retarget SMPL格式的动作数据为世界坐标系下的机器人基位置(base position) p ^ ω \hat{p}_{\omega} p^ω、基轴角(base axis-angle) α ^ ω \hat{\alpha}_{\omega} α^ω、以及人形机器人的电机关节位置 θ ^ i \hat{\theta}^i θ^i。对于每个动作命令帧,获取机器人的基位置 p ω p_{\omega} pω和基轴角 α ω \alpha_{\omega} αω,计算当前机器人基坐标系下的机器人基座运动目标,并使用正运动学计算机器人基坐标系下的link目标位置。

网络:使用基于Transformer的运动参考编码器,并在运动目标序列中添加状态目标,防止在所有运动目标运行结束时出现数据错误。在获取编码器的隐变量后,选择具有最小正时间剩余值的帧(smallest positive time-left-to-target value)。将隐变量与机器人本体感知的历史信息堆叠起来,并输入至MLP中,以获取关节动作输出。

为基于运动指令序列训练人形运动,同时保留足够的灵活性以控制策略,仅在预期的运动目标帧将达到时计算运动目标奖励。换句话说,时间剩余量等于零。因此,必须使用一些正则化奖励项。例如动作速率、关节加速度、能量、关节位置超出限制等。然而,这些正则化项是密集的,而运动目标奖励是稀疏的。当预期的运动目标达到时,机器人的动作会出现尖峰。在这种情况下,使用多个评论家网络,并在 PPO 算法的基础上应用优势混合技术。

稀疏任务奖励下的优势混合:不同于传统的演员-评论家架构,使用一个Actor网络作为策略,并使用3个Critic网络分别对3个不同奖励组 ( r ( 1 ) , r ( 2 ) , r ( 3 ) ) (r^{(1)},r^{(2)},r^{(3)}) (r(1),r(2),r(3))进行评估 V Ψ ( i ) ( s i ) V_{\Psi ^{(i)}}(s_i) VΨ(i)(si)。每个奖励组包含多个奖励项。每个Critic网络通过其对应的奖励组 r ( i ) r^{(i)} r(i)的TD误差进行独立监督:

L ( Ψ ( i ) ) = E ^ t [ ∣ ∣ r t ( 1 ) + γ V Ψ ( i ) ( s i + 1 ) − V Ψ ( i ) ( s i ) ∣ ∣ 2 ] \mathcal{L}(\Psi^{(i)})=\mathbb{\hat{E}}_t[||r_t^{(1)}+\gamma V_{\Psi ^{(i)}}(s_{i+1})-V_{\Psi ^{(i)}}(s_i)||^2] L(Ψ(i))=E^t[∣∣rt(1)+γVΨ(i)(si+1)VΨ(i)(si)2]

优势值通过加权平均合并:

A ~ = ∑ i = 0 n ω i A i − μ i σ A i \tilde{A}=\sum_{i=0}^{n}{\omega}_i \frac{A_i - \mu_i}{\sigma_{A_i}} A~=i=0nωiσAiAiμi

终止条件:与地面互动,如爬行和旋转,本质上会使机器人的高度显著低于站立姿态。躺在地面上在站立的上下文中是一种“跌倒”状态。在这种情况下,通过人形机器人与目标运动之间的差异来定义终止条件。只有在预期的时间步长内运动命令预计能够实现时,才应用终止条件。如果在预期到达时间满足以下任何条件之一,则终止训练滚动。

∣ ∣ p ω − p ω ^ ∣ ∣ 2 > 0.5 ||p_{\omega}-\hat{p_{\omega}}||_2>0.5 ∣∣pωpω^2>0.5

∣ ∣ I m ( i n v ( q ω ) ∗ q ^ ω ∣ ∣ < 0.8 ||Im(inv(q_\omega)*\hat{q}_\omega||<0.8 ∣∣Im(inv(qω)q^ω∣∣<0.8

∀ j ∈ N , ∣ θ j − θ ^ j ∣ > 1.0 \forall j \in N, |\theta^j-\hat{\theta}^j|>1.0 jN,θjθ^j>1.0

其中, p ω p_{\omega} pω p ω ^ \hat{p_{\omega}} pω^是机器人的基位置和运动命令在世界坐标系中的基位置; I m ( ) Im() Im()是四元数的虚部, q ω q_\omega qω是机器人的基座四元数; N N N是机器人关节数量, θ j \theta^j θj是关节位置。

方法限制

  • 尽管这项工作展示了仅在模拟器中训练复杂动作并在现实世界中实现的可能性,但训练能够执行完整类人动作的低级控制器仍然需要高质量的动作数据集,而这些数据集不仅限于站立动作。需要一种方法来弥合收集的人类动作数据集与机器人模型之间的差距。
  • 对于高级命令,例如大规模动作模型,并未考虑腿部动作。需要构建一种抽象,例如在下肢命令上进行mask,以使未来的整个通用类人动作系统成为可能。

实验结果

请阅读原文。

你可能感兴趣的:(论文阅读)