Home / 机器人学习 / 灵巧手:用随机化模拟学习物体重定向

031|灵巧手:用随机化模拟学习物体重定向

系列首页 · 上一篇 · 下一篇

原论文:Learning Dexterous In-Hand Manipulation,OpenAI,2018 年首次公开。论文。

先接住前作的问题

动力学随机化在推盘中处理物理偏差,但灵巧手持续重定向还涉及传动、软接触和视觉位姿误差。这里把物理与感知随机化、循环记忆组合到同一系统,追问这些误差叠加后还能连续完成多少次操作。

五个前置概念

五个前置概念:手指换位在保持物体时改变接触手指;动力学随机化在训练中改变物理属性;非对称 Critic利用训练特权信息;循环策略通过记忆历史适应;连续成功次数测量掉落前完成多个目标的持续能力。

一、问题设定:多指接触误差下怎样持续重定向物体

五指手旋转物体,需要一部分手指支撑、一部分手指换位,还要利用接触和重力。手指传动、软指尖和摩擦很难在刚体仿真中精确建模。本文没有等到模型完美,而是把大量可能误差加入仿真,训练带记忆的策略,再直接迁移到真实 Shadow 手。

物体先放在朝上的手掌中,系统给出一个目标方向;接近目标后再换下一个,直到掉落、超时或达到评估上限。物体是方块和八棱柱,不涉及魔方各面的相对转动或符号求解。

Shadow 手有 24 自由度、20 组驱动。动作是相对当前关节角的目标变化,每个坐标离散为 11 档。低层控制约 1 kHz,策略约 12 Hz。离散化不意味着只有 11 个完整手部动作,而是每个动作维度各有 11 个选择,组合空间仍很大。

Actor 使用五个指尖的三维位置、物体位置和相对目标方向等。关节传感器用于低层执行,却因为噪声与校准问题不直接给策略;触觉传感器也没有使用。Critic 在训练中获得无噪声及额外模拟状态,属于非对称 Actor–Critic。

视觉版只替代物体位姿来源,指尖仍用 PhaseSpace 动作捕捉。它不是完全脱离外部追踪的端到端视觉五指手,也不是以触觉为核心的策略。

二、区分回合偏差、瞬时噪声与循环适应

控制策略与视觉模型分别训练:策略输入指尖位置和物体相关状态;视觉模型从三个相机图像估计物体位姿。训练没有人类动作示范,但有姿态误差奖励、成功奖励和掉落惩罚。动作经验来自大规模仿真。

1. 区分持续偏差与瞬时误差

质量、摩擦、尺寸和阻尼等回合开始采样后固定;观测既有每回合固定的相关偏差,也有每步独立噪声。这样策略可能通过交互识别一个持续存在的世界,同时容忍测量抖动。

论文还加入难以由基础刚体仿真表达的现象:传动间隙、动作延迟、动作噪声、追踪点短暂冻结、遮挡以及物体小外力。关节电机模型经过校准,但仍未真实模拟全部肌腱与软接触。迁移依赖“校准加随机化”,不能简化成完全不用了解硬件。

2. LSTM 保留交互历史

策略可写为:

zt=fθ(zt−1,ot),at∼πθ(⋅∣ot,zt).z_t=f_\theta(z_{t-1},o_t),\qquad a_t\sim\pi_\theta(\cdot|o_t,z_t).

oto_t 是可测观测,ztz_t 是内部记忆。相同手指指令在不同物体质量下产生不同运动,历史因此能帮助调整动作。网络不必显式输出质量,只需要记住对控制有用的差别。

PPO 最大化裁剪优势目标,价值网络估计未来奖励。这里使用 PPO 并未解决全部迁移问题,关键还包括能被仿真建模的观测选择与足够多样的训练分布。

3. 奖励鼓励减少方向差

令 dtd_t 为物体方向到目标方向的旋转角:

rt=dt−dt+1+5 1[目标完成]−20 1[物体掉落].r_t=d_t-d_{t+1} +5\,\mathbf1[\text{目标完成}] -20\,\mathbf1[\text{物体掉落}].

角度差下降产生正反馈,达到目标给额外奖励,掉落有较大惩罚。这引导长期保持与旋转,但没有直接标注“用三指抓握”或“让小指换位”。作者所说行为自然出现,指具体手指协调模式没有被演示或逐个奖励编码,不是奖励完全没有人工设计。

4. 感知单独学习

从仿真策略访问的状态中收集一百万状态,随机化材质、光照、相机参数与物体姿态,渲染三视角图像。CNN 共享部分视角特征处理,输出物体位置和方向。这个监督数据没有真实图像标签参与训练;真实图像用于后续评估。

训练与部署可用以下教学伪代码概括:

连续重定向次数能放大小误差。教学近似:若每个目标独立以概率 pp 完成、失败即结束,完成 nn 个目标的概率是 pnp^n,失败前完成数期望为 p/(1−p)p/(1-p)。p=0.95p=0.95时连续20次概率仅约0.358;p=0.98p=0.98时约0.668。真实目标间并不独立,但算例说明“多数单次成功”与“长时间不掉落”不是同一指标。

原文记忆消融还分开更强critic与有记忆actor;仅增大critic表达力没有复现循环actor全部收益。图9的区间来自单seed移动窗口,而非多次独立训练,因此不应把它读成种子稳健性证据。原文§6.4

Learning Dexterous In-Hand Manipulation,图9:原文记忆消融还分开更强critic与有记忆actor;仅增大critic表达力没有复现循环actor全部收益。图9的区间来自单seed移动窗口,而非多次独立训练,因此不应把它读成种子稳健性证据。原文§6.4
原图摘引:OpenAI,2018 年首次公开,HTML S6.F9.fig1,图9。核对原文。原文记忆消融还分开更强critic与有记忆actor;仅增大critic表达力没有复现循环actor全部收益。图9的区间来自单seed移动窗口,而非多次独立训练,因此不应把它读成种子稳健性证据。原文§6.4

一个能解释记忆的例子

自构例子,未运行:两个外观相同的方块质量不同,初始方向一致。第一次食指推动后,轻块转得快,重块变化小。LSTM 记下这种动作响应,在后续目标中调整速度和支撑方式。仅看当前方向误差的前馈策略更难知道为什么相同指令效果不同。

三、分别训练循环控制与多相机位姿估计

策略在随机物理中练习接触,视觉模型在随机图像中学习位姿,真实执行再把它们接起来。两条训练数据来源不同,无人类动作示范不等于没有监督或工程先验。

校准机器人仿真,定义持续参数与瞬时噪声分布
并行训练控制策略:
    每回合随机物理参数,设置初始物体与目标
    LSTM 根据可部署观测选择各关节相对位置档位
    用方向改善、达标和掉落奖励,通过 PPO 更新策略
    Critic 使用额外仿真状态训练
单独训练视觉:
    从策略状态渲染随机化的三视角图像
    监督拟合物体位姿
真机运行:
    动作捕捉获得指尖,视觉或追踪获得物体位姿
    循环策略持续更新记忆并输出关节目标
    达标后换目标;掉落、超时或达到上限后结束

四、用中位旋转次数和视觉配置判断可靠性

实验支持真实手连续旋转方块与八棱柱。视觉方块实验每次试验成功旋转次数的中位数为 11.5,不能把最好一次 46 次或演示中的 50 次当成典型可靠性。

原图怎么读: 图10,原论文图注与图像。左图按墙钟时间、右图按消耗的经验年数比较算力规模;GPU增加时批大小也随之变化。两图一起看才能区分训练更快与交互更省。

Learning Dexterous In-Hand Manipulation,图10:左图按墙钟时间、右图按消耗的经验年数比较算力规模;GPU增加时批大小也随之变化。两图一起看才能区分训练更快与交互更省。
实验图原图摘引:OpenAI,2018 年首次公开,HTML S6.F10,图10。原图面板重新排版,数据未改。核对原文。原版权保留。

视频中的最佳连续旋转片段不能替代十次试验的完整统计;达到50次即停止的运行按右删失解释。

维度 原文设置与意义
仿真与渲染 MuJoCo 物理,Unity 为视觉训练渲染
并行采样 384 台各 16 核 worker,共 6144 CPU 核
策略优化 一台八 GPU 机器;每小时生成约两年模拟经验
训练难度 无随机化约三年模拟经验,全随机化达到相当水平约一百年
对应墙钟 该系统下约 1.5 小时与 50 小时,不是真机练习时长
真实重复 每策略十次试验;仿真一百次
终止 掉落、单目标 80 秒未完成、或连续完成 50 次
指标 连续完成次数的均值、中位数及逐次结果;不是百分比成功率
视觉检验 992 个真实样本,每样本含同场景三张图像
校准限制 设备维修会改变状态,部分比较在不同时间完成

方块物理参数有尺寸正负约 5%、质量 0.5–1.5 倍、摩擦 0.7–1.3 倍等随机化。范围以校准值为中心,不代表机器人可处理任何尺寸或任意物体类别。

锁定腕部俯仰的版本是在已有策略上继续训练,而非从头成功训练。八棱柱也从方块策略微调得到,因此相关结果不能写成同一通用策略零样本处理所有形状。

五处证据:迁移成功,但差距仍明显

位置 观察 支持与限制
表3 方块状态版仿真中位 50,真实中位 13;视觉真实中位 11.5 有实际迁移,现实差距仍大,50 是截断上限
表4 真实全随机化中位 13,无随机化为 0,去物理或额外效应均为 2 支持随机化必要性,但不是每项独立充分
表5 LSTM Actor 中位 13,前馈 Actor 配 LSTM Critic 为 3.5 记忆在执行策略中有作用,不只是更强 Critic
图10 增大并行规模缩短达到目标表现的时间 支持计算扩展,不能推导无限线性加速
表6 真实视觉旋转误差约 5.01°、位置误差约 9.27 毫米 感知误差可被部分容忍,不等于视觉达到追踪系统精度

真实状态方块均值 18.8±17.118.8\pm17.1,锁腕版本 26.4±13.426.4\pm13.4,视觉版 15.2±14.315.2\pm14.3;真实八棱柱均值 7.8±7.87.8\pm7.8。表中逐次结果波动很大。中位数、均值和最佳演示分别回答不同问题,读论文时应同时保留。

随机化也有代价:更简单仿真学得更快,却更难迁移。图8、图9 的阴影是单种子运行的移动窗口 90% 区间,不能把它读成多个独立训练种子的置信区间。表4 前五组真实试验交错进行以减少硬件变化影响,视觉组则在另一时间测量;作者对这种限制有说明。

Learning Dexterous In-Hand Manipulation,图8:更简单仿真学得更快,却更难迁移。图8、图9 的阴影是单种子运行的移动窗口 90% 区间,不能把它读成多个独立训练种子的置信区间。表4 前五组真实试验交错进行以减少硬件变化影响,视觉组则在另一时间测量;作者对这种限制有说明。
原图摘引:OpenAI,2018 年首次公开,HTML S6.F8.fig1,图8。核对原文。更简单仿真学得更快,却更难迁移。图8、图9 的阴影是单种子运行的移动窗口 90% 区间,不能把它读成多个独立训练种子的置信区间。表4 前五组真实试验交错进行以减少硬件变化影响,视觉组则在另一时间测量;作者对这种限制有说明。

关于记忆,隐藏状态在五秒交互后能以约 80% 准确率区分物体大于或小于平均尺寸。这支持内部包含环境信息,却不证明策略精确识别所有物理参数,也不排除其他相关信号被利用。

五、截尾次数和受控追踪限制长期推断

贡献是把高维五指操作从仿真演示推进到真实手,并将传感可模拟性、随机化、记忆与规模组合起来。它展示了手指换位与重力利用可以由任务奖励驱动产生,但没有提出新的通用最优控制定理。

作者记录的失败包括向下转腕时掉物、物体边缘卡进未建模的螺孔、早期掉落,以及硬件损坏。球体尝试未达到长序列旋转,说明滚动接触与物体形状仍是边界。视觉实验还使用白背景,并在试验间清洁物体以去除碎屑;这些实验条件不应从最终叙述中消失。

本文的分析是,目标姿态与物体类别事先定义、物体已放在掌中、外部追踪仍参与,距离自主抓起陌生物体并进行任意工具操作还有多个子问题。相同骨架上的训练成功也不能直接推广到另一种肌腱结构的灵巧手。

追问:怎样判断失败首先来自视觉位姿还是手内控制?

参考答案:可在相同任务与控制策略下对照外部核对的位姿和视觉估计,并记录失败前的位姿残差、接触变化与动作。视觉估计误差较大但未失败不等于它无关,控制策略可能暂时补偿。应按相同评价口径报告两层误差,而不是把最好演示的连续次数当作整个感知控制链的可靠性。

六、沿机制关系继续读

本篇组合视觉域随机化与动力学随机化方向;后作机器人解魔方直接承接同一灵巧手迁移路线,再加入自动随机化课程与魔方面旋转等系统要求。

七、自测三题与参考答案

问题1:视觉版为什么还不能叫完全无外部追踪?

答案:三个相机估计的是物体位姿,指尖位置仍来自 PhaseSpace。要去掉外部追踪,还需要可靠地获取手指状态并处理它的误差分布,属于另一个感知与迁移问题。

问题2:无随机化在仿真学得快,为什么不先认为它更好?

答案:仿真学习速度与真实部署回报不是同一目标。固定世界更容易被拟合,但策略可能依赖错误的摩擦与延迟。表4 显示这种快学策略在真机连续旋转中位数为零,说明最终评价场景决定效率的含义。

问题3:完成 50 次能否说明平均寿命超过 50 次?

答案:不能。试验达到50就停止,属于右删失,只知道该次至少完成50。应保留其他运行的失败时刻,才能估计观察区间内的存活概率;超过50次的平均寿命还需要延长实验或明确尾部模型假设,不能由最大完成数推断。