PULSE

/ 0评 / 0

Method

image.png

1. Motion Imitator

即预训练“运动模仿器”,目标是训练一个能完美复刻人类动作的网络。

2. Skill Distillation

只有一个模仿器$\pi$是无法在下游任务中直接使用的,因为我们无法知道未来参考动作 $q^*$是什么,因此先需要通过条件变分自编码器(cVAE)进行“技能蒸馏”。

2.1 Encoder

编码器$E(z|s, q^)$会观察当前状态$s$和未来参考动作$q^$,接着将$q^$压缩成一个仅有32维的低维隐变量分布$z$,可以将$z$理解为对$q^$的高度抽象概括,比如“左腿向前迈一小步”。

2.2 Decoder

解码器$D(a|s, z)$看不到未来的参考动作$q^$,只能接收当前状态$s$和编码器将$q^$压缩后的隐变量$z$,目标是输出物理动作$a$。

2.3 Loss

最终,我们扔掉模仿器和编码器,在面对新任务时,高层策略只需向解码器输入隐变量$z$。

3. Proprioception-conditioned Prior

在基于物理的人形机器人,接下来的动作(序列)是高度依赖当前状态的。比如机器人此时正躺在地上,那么接下来就不可能立刻做出“跨栏”的动作。

如果让解码器强行执行,机器人很可能会违反物理规律。也就是说,输入给解码器$D$的隐变量$z$,必须受限于机器人当前的物理姿态。

因此该论文引入了本体感受,即状态向量$s$,包括:

并引入了先验网络 $p_\theta(z|s)$,和编解码器联合训练:

这样先验网络就能学习到一个规律:在当前姿态$s$下,人类通常会采取哪些合理的下一步动作?

在先验网络训练完成后,我们可以将机器人当前状态$s$输入先验网络,其会输出一个高斯分布$\mathcal{N}(\mu_s, \sigma_s)$,这个分布框定了当前姿态下所有合理的动作指令合集。接着从这个分布中随机采样(输入高斯噪声)得到$z$,输入给解码器去执行,就能得到合理的随机动作生成。

4. High-Level Policy

利用分层强化学习,在进行下游的具体任务(如走迷宫、被击打后恢复平衡)时,之前训练的解码器和先验网络的参数不再更新,而是作为机器人的“基础运动反射神经”,然后引入高层策略网络$\pi_{high}$

Conclusion


Advantage

Limitation


Question

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注