读《Visual Whole-Body for Loco-Manipulation》②论文
low
commands 指令由四部分组成
3维的末端执行器位置,3维的末端执行器方向(Euler角),1维的期望正向线速度,1维的偏航角速度
observations 观察值有七部分组成(共90维)
5维的当前四组基状态(行 row、节高 pitch、四足基角速度)
,12维的臂状态(除末端执行器外的位置和速度)
,28维的腿状态(每个腿关节的关节位置和速度,足接触模式为0或1)
,12维的策略网络最终输出,20维的环境外部向量(环境物理的编码)
,5维的额外时间参考变量(为了学习如小跑等稳定的行走行为。通过重复所需的对称四足接触模式的步态周期,从每只脚的偏移时间计算出来的)
,8维的commands
actions 行动
低水平策略可以输出机器人所有12个关节的目标关节角度,并由PD控制器转换为扭矩命令
手臂控制
已知全身RL策略擅长控制末端效应器的位置,但在控制末端效应器的方向方面却很困难。但是这对操作任务至关重要。于是用伪逆雅可比矩阵方法2求解逆运动学(IK),将末端执行器姿态命令转换为控制手臂的目标关节角度
reward 奖励,包含四部分
命令跟随奖励:鼓励机器人跟踪和遵循所提供的命令,探索各种全身行为
能量奖励:惩罚能量消耗,使其运动平稳合理
活奖励:鼓励机器人不失败
阶段奖励:鼓励机器人以如上所述的稳定行为行走
最终执行器目标姿态采样
为了训练一个鲁棒的低级控制器来达到目标,我们采样和跟踪各种抓手姿态。为了对夹持器目标姿态的平滑轨迹进行采样以进行跟踪,我们采用了一个来自机器人基础的高度不变坐标系,并在每个固定的时间步长上对该轨迹进行随机采样。这确保了采样的轨迹总是在一个平滑的球体上,并防止采样的目标受到四足动物机器人的高度的影响。详情请见附录II-A。
策略体系结构
低级控制策略网络是一个三层MLP,每层有128个维度和ELU激活。它接收观察结果,包括在训练期间由特权编码器编码的外部潜在环境,以及在测试时的自适应模块。模拟环境物理参数的特权信息编码器是一个两层MLP,隐藏大小为64;自适应模块编码历史的推出,这是一个两层卷积网络。
域随机化
在训练时,我们随机化了地形的类型,包括平面和粗糙的地形。我们还随机化了机器人和地形之间的摩擦。此外,我们将四足动物的质量和质心随机化。这些随机化,连同我们的ROA模块,有助于创建一个健壮的低级策略。
high
特权教师策略
当将我们的策略部署到现实世界中时,机器人只能通过深度图像来感知物体,从而实现高频控制。然而,具有视觉观察的RL是相当具有挑战性的,需要特殊的技术来作为有效的[30,77,29,28,70]。为了实现简单和稳定的训练,我们选择训练一个基于特权状态的策略,该策略可以访问对象的形状信息(如图3的橙色部分所示),并提取一个视觉运动学生(如图3的绿色部分所示)。
Privileged observations 特权观察,1094维
1024维的对象点云潜在形状特征向量(预训练pointnet++编码得到)
,6维的是机器人手臂基座局部观测中的物体姿态(包含了物体的局部姿态,本质上包含了与物体距离的相关信息)
,53维的关节位置(19维包括抓手关节位置在内的关节位置,18维不包括抓手关节速度的关节速度,6维末端执行器位置和方向)
,3维的机器人基本速度,9维的最终高层动作
High-level Actions 高层动作
决定了低级策略的速度和目标端执行器位置
6维的机械手姿态增量,2维的四足线速度和偏航角速度的指令,1维的机械手状态(关闭或打开)
奖励
-
阶段性奖励(Stage Rewards):
-
任务阶段:针对特定任务,设计了三个阶段的奖励:
- 第一阶段:接近(approaching):奖励 r a p p r o a c h r_{approach} rapproach 用于鼓励手爪(gripper)和四足机器人靠近目标物体。
- 公式 r a p p r o a c h = min ( d c l o s e s t − d , 0 ) r_{approach} = \min(d_{closest} - d, 0) rapproach=min(dclosest−d,0) 中,( d c l o s e s t d_{closest} dclosest ) 是手爪与目标物体之间的最小距离。
- 第二阶段:任务进展(task progress):奖励
r_{progress}
用于引导机器人达到所需的最终状态,例如在抓取任务中,提升物体的高度。- 公式 r p r o g r e s s p i c k u p = min ( d − d h i g h e s t , 0 ) r_{progress}^{pickup} = \min(d - d_{highest}, 0) rprogresspickup=min(d−dhighest,0) 中, d h i g h e s t d_{highest} dhighest 是物体当前的最大高度。
- 第三阶段:任务完成(task completion):当任务完成时,机器人会获得
r_{completion}
的奖励。- 公式 ( r_{completion} = 1 ) 当任务完成时。
- 第一阶段:接近(approaching):奖励 r a p p r o a c h r_{approach} rapproach 用于鼓励手爪(gripper)和四足机器人靠近目标物体。
-
例如,在抓取任务中,任务完成条件是物体的高度超过规定的阈值。
-
-
辅助性奖励(Assistant Rewards):
- 这些奖励设计用来平滑机器人的行为,便于在现实世界中的应用。
- a) 防止超大动作指令和关节加速,从而减少关节磨损。
- b) 防止偏离路径和收集无用的数据,比如获取机器人的身体和手爪对准目标物体的位置。
- 这些奖励设计用来平滑机器人的行为,便于在现实世界中的应用。
域随机化
当训练我们的高级策略时,我们随机化了机器人与地形之间的摩擦、机器人的质量和机器人的质心。虽然我们的低级控制政策可以在现实世界中处理这些差距,但它在不同的环境条件下的表现是不同的。这些随机化有助于高级策略更好地调整以适应不同的低级性能。此外,由于现实世界中高低信号传输的不确定性,我们还通过在一次高层呼叫中涉及不同的低级策略呼叫,将高水平频率随机化。我们还在仿真中使用内置的手臂位置控制模式时,随机化了手臂控制器的Kp和Kd参数。对于拾取任务,我们随机化了桌子的高度、机器人的初始位置和姿势,以及物体的位置和姿态。
视觉运动学生策略
我们发现,从特权教师政策训练中出现了稳健和自适应的挑选行为,在现实中具有难以接近的物体姿态和形状特征。为了在现实世界中部署我们的政策,我们必须使用易于访问的现实世界中的观察数据,比如图像。
观察和行动
虽然相机图像在模拟和现实世界中都很容易获得,但在模拟和现实世界之间,彩色图像存在着巨大的差距。这就说服了我们只使用深度图像。为了进一步减少噪声和背景间隙,我们使用了分割的深度图像及其分割掩模。在正式意义上,对我们的愿景政策的观察是
三部分组成:
目标分割掩模,分割后的深度图像
本体感觉观测值 proprioceptive observation
上述定义的最后一个动作
学生蒸馏的模仿学习
为了在现实世界中部署我们的策略,我们使用DAgger将基于状态的高级规划策略提炼为基于愿景的策略。我们通过老师对初始过渡数据进行热身。这就像行为克隆(BC),找到一个良好的初始化的视觉运动学生策略,以提高训练效率。然后,我们使用学生政策来抽样转换,并要求老师进行纠正。我们发现这比直接使用RL学习视觉运动的学生政策更有效。我们对深度图像采用了随机擦除、高斯模糊、高斯噪声和随机旋转等增强方法。更多细节请见附录II-B。
策略网络架构
我们的基于视觉的高级策略网络包括一个CNN和一个输出高级动作的两层MLP。我们将这些图像和其他状态作为观察结果连接起来。我们将核大小分别为5和3的两层CNN网络传递的4步图像堆叠,然后编码为64暗的潜在向量。然后,我们将这个潜在的向量与其他状态连接为一个扁平的向量。然后将这个向量传递到一个隐藏大小为64的两层MLP。我们使用ELU作为激活
现实
sim2real
我们做了几次努力来弥补模拟和真实的差距。具体来说,我们稍微随机化两个相机的位置和旋转,使我们的策略能够处理模拟的轻微相机偏移。此外,我们将深度图像剪辑到至少0.2m,以避免当距离太接近真实相机时的低质量图像,然后我们对深度值进行归一化。由于模拟中的周围环境和现实世界非常不同,为了减少噪声,我们只使用分割的深度图像来训练我们的视觉运动策略
视觉掩码
请注意,我们的系统只使用有限的人工干预,也就是说,我们需要从环境背景中注释和分割对象。为此,我们开发了跟踪SAM[56],这是一个结合了跟踪模型AOT(将对象与变压器关联)[76]和SAM(片段任何东西)[34]的工具。这允许我们在开始任务之前从两个相机或任意图像的图像上注释对象,并跟踪该对象以提供其实时分割掩模。该工具被集成到高级服务器中,其中的一个演示示例见图7。在真实世界的实验中,我们在每次复位试验开始时,对安装在抓手和机器人头上的两个RGBD摄像机上的物体进行了注释。跟踪SAM将继续跟踪分割的对象并提供掩模。对RGBD相机获得的深度图像进行孔填充和剪切进行预处理。在现实世界的实验中,只要对象对一个相机(头部或手腕相机)可见,注释掩码就可以传播到两个视图,以初始化自动拾取。