XLeRobot · 仿真 / 训练策略 · 2026-08-28

仿真与 RL 训练策略:
该不该走这条路

sim2realRL vs ILOpen Duck MiniLeRobot simHIL-SERL

学习目标 · 看完这组页面

① 你应该能做到:

② 你应该能回答:

③ 可以进一步思考/优化的小 challenge:

起因是「Microduck」那条视频:小鸭机器人在 MuJoCo 里用 PPO 训练、导出 ONNX、部署到实体,靠仿真模拟执行器/延迟/摩擦/回差跨过 sim-to-real。问题很自然:我们抓杯子,是不是也该转去「仿真 + 强化学习」?这一页把三块底料查扎实后给结论 —— A 评估 Microduck 那套管线能不能搬,B 看 LeRobot 自带仿真能买到什么,C 就「抓杯」这一个目标做 IL vs sim-RL 的诚实对比。每条都带来源。

抓杯继续走 IL。真正的升级是 HIL-SERL(真机 RL,已在 LeRobot 里),不是仿真。

核心区分:locomotion ≠ manipulation

所有讨论的地基是这一条。Microduck 学的全是本体感知的 locomotion(走路、站立、踢腿)—— 恰好是 sim-to-real 最成熟、最 work 的领域;我们的任务是视觉驱动、富接触的抓取 —— 恰好落在仿真最弱的两个点上。

维度 Locomotion(鸭子) 抓杯(我们)
靠不靠视觉 不靠 —— 观测是 IMU/关节角/步态相位,无需渲染 强依赖 —— 相机像素是策略输入,有巨大视觉 gap
接触 脚-地接触,刚体、良性,仿真友好 指-杯接触:摩擦、打滑、软杯变形 —— 仿真最难精确的部分
监督来源 有参考步态生成器(Placo)可模仿,奖励好写 没有「参考抓取轨迹生成器」,奖励要从零设计
sim2real 成熟度 高 —— 四足/双足早已跨过(ANYmal 等) 低 —— 低成本臂上几乎没有已验证的原生配方

来源:reality-gap 综述 arXiv 2510.20808(接触/力-运动响应是操作 sim2real 的主瓶颈);四足 sim2real 见 ANYmal arXiv 1901.08652。

locomotion (走路) 仿真 1 个沟:动力学(好跨) 真机 ✓ 抓取 (视觉+接触) 仿真 沟1 视觉 沟2 接触(难) 真机
图 · locomotion 从仿真到真机只跨一个好跨的沟(动力学);抓取要同时跨两个 —— 视觉渲染 gap 和更难的接触/摩擦 gap(红)。这就是抓取 sim2real 难得多的原因。

先破一个误会:拦路虎是「任务类型」,不是「便宜」。 鸭子也只约 $400,照样 sim2real 成功 —— 便宜臂做抓取难,难在视觉+接触这类任务,与价格无关。仿真能在便宜臂上抓取成功(NVIDIA「Sim-to-Real SO-101」用 Isaac Sim 在便宜 SO-101 上做到了):它不是死路,只是重栈、对我们这组条件不是最快路。

那便宜臂为什么反而让仿真更难? 它加重的是接触 gap:Feetech 舵机只有位置控制、有回差、无力矩/力反馈、重复精度低。抓取成败取决于你测不到也控不准的接触力和柔顺,MuJoCo 模型又难把这些辨识准 —— 仿真里「抓稳了」,真机上力一偏就滑。这正是主瓶颈所在。

A. Microduck 管线:只有「建模→仿真训练→导出 ONNX→部署」的流程能复用 抓取:大绕路

Open_Duck_Mini · Open_Duck_Playground · reference_motion_generator · Mini_Runtime · MuJoCo Playground

它到底是什么(已核对)

搬到抓杯:能转 vs 不能转

裁决:抓取用不上,是大绕路。 Microduck 擅长本体感知 locomotion(sim2real 最容易的一类);抓杯是最难的一类(视觉 + 接触)。能复用的只有「建 MuJoCo 模型 → MJX 训练 → 导出 ONNX → 边缘部署」这套流程,加 BAM 执行器辨识和 export_onnx.py 代码。让它成功的部分(策略网络、奖励、观测、接触与渲染模型)要为抓取从零重写。所以只值得抄这套流程代码,不值得套它的任务。

范围界定:上面「大绕路」只针对抓取。 Microduck 的强项是腿式 locomotion,那对应 bartender 的移动段 —— 值得单独判:

B. LeRobot 自带仿真:只能验证训练管线能跑,给不了抓杯用的数据 用途有限

gym-aloha · gym-xarm · gym-pusht · SO-ARM100 sim(MJCF/URDF) · NVIDIA Sim-to-Real SO-101

现有的原生仿真环境

要 SO-101 的合成抓取数据?只有重栈

裁决:边角价值。 LeRobot 原生仿真买得到的,是把训练管线做冒烟测试 —— 在 lerobot/pusht 或 xarm_lift 上验证你的数据格式、train/eval CLI、ACT/SmolVLA 管道、GPU 流程能跑,和耳机/真机解耦。真实但有限。它买不到你这一个抓杯任务的合成数据(那要 Isaac,大工程)。它能给训练管线去风险,但不会替你省掉真正让杯子被抓起来的真示范工作。

🔎 深入一页: 在租的 GPU 上跑 Isaac SO-101 合成增强 —— 值不值、怎么上。里面查实了:4090 正好是对的卡(A100/H100 反而不支持)、云上成本 $0.13–1/hr、那门课只在仿真报 50–70%(真机无成功率数字),以及为什么它排在四张牌里最后。含管线图。

C. IL vs sim-RL —— 就「抓杯」这一个目标的诚实对比

低成本臂上,真正 work 的是 IL

ACT/ALOHA · Diffusion Policy · SmolVLA · π0 · OpenVLA

sim-RL 真正 work 过 —— 但代价是什么

OpenAI Rubik's Cube · arXiv 1910.07113 · Irpan 的批评

★ 中间地带里最该看的:HIL-SERL(真机 RL,已在 LeRobot)

Science Robotics · 项目页 · LeRobot 教程

🔎 深入一页(把它讲透 + 训练循环图 + 在你机子上怎么做):HIL-SERL:真机上的强化学习。

Transporter Networks —— 对象中心取放:方向对,但别照搬整套 思路可借·代码难直接用

arXiv 2010.14406 · Google Ravens · CoRL 2020 · (注意别和 Transformer 混 —— 那是 ACT/SmolVLA 已在用的网络架构)

另一条便宜候选是 VLA 预训练 + 少量真机微调,也就是你 SmolVLA/π0 本来的路。

★ 深度相机(RGB-D)—— 给抓取算出一个 6-DoF 位姿 不透明杯:可直接用

RealSense D405 · Contact-GraspNet · ClearGrasp · ArUco / AprilTag · easy_handeye

🔎 深入一页: 深度相机抓取 —— 材质决策 · 手眼标定 · 抓取管线。含材质→方案决策树(塑料/磨砂→深度,透明→标记,高脚杯抓杯身)、手眼标定 T 怎么接进运行时的数据流图、抓取检测选型(Contact-GraspNet vs 轻量 vs 质心+PCA),以及「transform 四个意思别搞混」的术语澄清。

整体学习策略架构(纳入深度后)

把上面选中的部件拼起来。深度插在「抓取位姿层」 —— 它把原来要 IL 从像素硬学的「杯子在哪、怎么抓」变成几何算出来,喂给策略一个干净的目标位姿,于是学习策略的负担从「整段抓取」缩到「最后柔顺闭合」。这是纳入深度后架构最核心的变化。

sim-RL / Microduck 暂缓 · 不在此流程 ① 感知 · SENSING 头/腕 RGB · ★深度 RGB-D · ArUco 标记 RGB-D / 标记 ② 抓取位姿 · 几何/深度【新】 深度点云 → 6-DoF 抓取位姿 或 标记 → 精确位姿(透明兜底) 6-DoF 目标位姿(位置无关) ③ 学习策略 IL(SmolVLA) 只学:最后贴近 + 柔顺闭合 升级:BC 见顶 → HIL-SERL 一个可靠技能 ④ 技能编排(later) PICK → 导航 → PLACE → POUR 深度:算「往哪抓/怎么抓」 IL:只做「最后一段接触」
图 1 · 纳入深度后的学习策略架构。绿色层是本次新增:深度把「杯子在哪、怎么抓」用几何算出来,给策略一个位置无关的目标位姿,于是 IL 的活从「整段抓取」缩到「最后柔顺闭合」。右侧虚线框 sim-RL/Microduck 不在此流程、暂缓。下面四块是各层详情。
① 感知层 · SENSING
头 RGB(上下文/绝对姿态,录制时锁头)· 腕 RGB(对象中心)· ★ 深度 RGB-D(新,D405 近距) · 难物体贴 ArUco/AprilTag 标记
↓
② 对象中心抓取位姿层 · 几何/深度驱动 【本次新增】
深度点云 → 6-DoF 抓取位姿(Contact-GraspNet 类 / 轻量 VGN·GIGA / 已知杯用质心+PCA)|或 标记 → 精确位姿(透明/高脚杯兜底)。材质路由:塑料·磨砂→深度;透明→标记;抓杯身不抓脚。经手眼标定→臂坐标,输出位置无关的目标抓取位姿。
↓
③ 学习策略层 · 模仿学习(IL)
SmolVLA/ACT 条件于抓取位姿,只学最后贴近 + 柔顺闭合 + 倒酒(不再从零学「杯子在哪」)。从遥操示范训练 · 开异步推理。升级:BC 见顶 → HIL-SERL(真机 RL,复用示范,不碰仿真)。
↓
④ 技能编排层 · SEQUENCING(later)
PICK → MOVE(经典 SLAM 导航,不进策略)→ PLACE → POUR;SayCan 式 LLM 排命名技能,每技能自报可行性。移动是最后一层,不是现在搭。

不在这张图里(暂缓): sim-RL / Microduck 那套 MuJoCo→PPO→ONNX。它是本体感知 locomotion 的配方,对视觉富接触抓取是绕路 —— 仅在「IL 和 HIL-SERL 都见顶 + 有精确接触模型 + 数十 GPU 算力 + 接受视觉掉点」四条件同时成立时才碰。

裁决:我们该怎么排

① 修真示范数据 覆盖·精度·一致 · 最便宜 ② 深度几何抓取 确定性 · 省示范 ③ HIL-SERL 真机 RL BC 见顶后顶上去 ④ Isaac 合成增强 覆盖倍增 · 重 · 证据弱 成本 / 难度 / 不确定性 增大 →
图 · 四步优先级阶梯:左下最便宜、先做,右上最重、最后。越往右,成本 / 难度 / 不确定性都增大;绿色的 ① 是现在就该做的,虚线的 ④ 排最后。

阶梯(自底向上,别跳级):

一句话收束: 通往「可靠抓起杯子」更快、更可能的路,是更好的真数据 + 真机 RL(HIL-SERL),不是仿真转向。Microduck 很酷,但它的酷在 locomotion;把它的酷搬到抓杯,酷会留在原地,难会全带过来。

来源均经检索核对(2026-08)。未逐一坐实、已在文中标注的项:Open Duck 的 randomize.py 具体参数范围、「电池电压/指令延迟/齿轮回差」是否被显式建模、PPO 是否确为 Brax 实现(PPO + MJX-Playground 已确认);SO-101 上 SmolVLA 约 40% 抓取为单份社区报告;HIL-SERL 的约 100% 在插装/装配任务上,抓杯迁移未直接测量;OpenAI 魔方的 GPU/CPU 数量为论文附录检索所得(量级正确)。