AREX Feed Article
Apple 研究团队发布 HALO:用 1,000 个合成家庭训练人形机器人,360 次真实试验报告 91% 成功率
「人形机器人能翻跟头、跳舞、奔跑。然而,没有一台能被请进一间陌生的客厅,被要求坐下。」论文开篇这样写道。2026 年 11 月 4 日,Apple 的八位研究人员在 发表《Perceptive Humanoid Motion from Simulation》(arXiv:2611.06908,cs.RO),给出他们对这个问题的回答:HALO(Humanoid Autonomy, Learned in simulation, running Onboard,仿真中学习、机载运行的人形自主系统)。署名作者为 Siyuan Hu、Abulikemu Abuduweili、Yue Meng、Shipeng Liu、Quentin Leboutet、Chen Chen、Matthias Müller 和 Vladlen Koltun,八人均属 Apple。
按的口径,HALO 的训练语料完全在仿真中合成:1,000 个程序化生成的家庭、约 300 小时成对的视觉-语言-动作数据,训练全程未见过任何真实家庭;部署后零样本迁移,在六个未扫描、未建图的真实环境完成 360 次试验,成功率 91%。全部模型默认机载运行:一台 Unitree G1,背部驮一台 Mac mini。代码与视频发布在。上述成功率与能力描述均为论文作者自报口径。
一小时的演示数据,至少要一小时人力
论文的出发点是一个数据瓶颈:把像素和自由语言映射到关节指令,需要成对监督——一段自我视角图像、一条指令、一条满足它的全身轨迹——而这样的语料没有现成的大规模版本。遥操作平台(论文点名 ALOHA、TWIST)和穿戴式动捕设备(如 UMI)能产出演示,但每一段都得由人亲自演一遍,一小时数据至少消耗一小时人工。
HALO 的替代路线是让数据「随算力而非人力扩展」:场景可以生成、动作可以合成、对应的自我视角视频可以渲染,全程无需人工介入,数据量只受算力约束。
合成引擎:三道工序,162,698 条片段
每条训练片段经过三道工序。论文描述:先用运动扩散模型 Kimodo 把任务拆成的段落(文本提示、路径航点、收尾关键帧)合成为全身动作,几何验证器给候选打分,筛掉滑脚、穿地、腾空等物理上不成立的轨迹;再用 Infinigen 程序化生成房间,1,200 个生成、1,178 个完成,其中客厅占 45%、办公室 30%、卧室 25%,单边 3.5~9.5 米、20~80 件家具,训练用 1,000 个、留出 178 个;最后在 Isaac Sim 中以与真机匹配的鱼眼镜头渲染自我视角,叠加曝光、对比度、运动模糊与传感器噪声的随机化。
语料合计 162,698 条片段、约 300 小时(附录口径为 296.3 小时),合成过程在 250 块 H100 GPU 上跑了 48 小时。「完全合成」指的是成对的视觉-语言-动作片段:动作先验里仍有人的痕迹,追踪器第一阶段训练用了公开动捕数据集 LAFAN1 重定向到 G1 的片段,蹲与爬的关键帧取自手机视频并抬升到三维,推箱动作里接了一段动捕记录。
机载三层栈:0.5 Hz 分解任务、3 Hz 画轨迹、50 Hz 落到关节
最上层编排器是一个现成的视觉-语言模型(VLM),约每两秒调用一次,把自由形式的请求拆成子任务序列,持续监控执行、失败就重试。运行时它把自由指令翻译成十条固定指令之一,语料里只有「坐扶手椅」「穿过半开的门」「推箱」等十条。编排器默认在机载 Mac mini 上以 4 位精度运行 Qwen3.6-35B-A3B(MLX 框架),与运动生成器共享推理引擎,断网也能工作;也可经 API 把请求交给云端前沿模型。
中间层运动生成器以 3 Hz 运行:冻结的 Qwen3.5-2B 充当视觉编码器,接一个 4,930 万参数、以流匹配训练的扩散 transformer 解码器,把自我视角 RGB 与当前子任务变成 5 秒的全身运动计划,即 150 帧、每帧 29 个关节角加骨盆位姿共 36 个数值。生成是异步的:机器人已承诺执行的前 15 帧(0.5 秒)作为干净前缀直接进模型,只对剩余 135 帧去噪,让相邻计划无缝衔接;消融显示去掉这套机制后,坐椅成功率跌到 24%。
最底层运动追踪器以 50 Hz 运行,经三阶段强化学习训练:每个技能先训一个特权 PPO(近端策略优化)专家,再蒸馏成只依赖机载输入——运动计划、深度图、本体感觉与 IMU(惯性测量单元)——的学生,最后做多评论家微调。它以 C++ 实时进程跑在 G1 出厂的 Jetson Orin NX 上;深度图不走 RealSense D435i 的原生输出,而是把原始双目红外帧送进 TensorRT 加速的立体匹配模型,以 30 Hz 生成干净的 48×84 深度图。
一次改装两处:头顶 OAK-1W,背后一台 Mac mini
整套系统对 Unitree G1 只做了两处物理改装:头部支架装一台 OAK-1W 相机,提供 120° 视场、1,280×800、30 fps 的 RGB 画面,镜头下俯 25°;背部罩壳里放一台 Mac mini M4 Pro(64 GB 内存)。两台机器经 ZeroMQ 组成完全无线的异步级联:OAK-1W 的画面流进 Mac mini,编排器与运动生成器在那里算出参考轨迹,交给 Jetson Orin NX 上的追踪器,配合朝下的 D435i 深度流输出 29 个关节指令。追踪器运行在 PREEMPT_RT 实时内核上,以无锁三缓冲保证控制回路不被阻塞。
真实环境分项与多步链条:下蹲 100%,三步链条 50%
单任务评测覆盖六项技能:走向指定物体(Go-To)、坐椅(Sit)、侧步穿过半开的门(Door)、下蹲(Crouch)、爬行(Crawl)、推箱(Push),在 100 个留出仿真房间里做了 6,000 次试验,在六个真实环境里做了 360 次,每项技能在每个环境各试 10 次。真实环境分项成绩:下蹲 100%、穿门 93%、走向物体 92%、爬行 90%、推箱 88%、坐椅 85%,平均 91%;仿真侧平均同为 91%。
长时程任务由编排器接管后,三条链条的成绩明显分化:穿门再走向物体在真实环境 10 次全成;下蹲后坐椅 60%;下蹲、走向箱再推箱 50%。多任务评测只用了 1 个真实环境。论文分析,链条成功率低于单任务成功率的乘积,仿真中「穿门→走向物体」为 71%,按单任务率推算应为 89%。共同原因是上一个子任务结束时,下一个目标恰好在视野之外:真实环境「下蹲→走向箱→推箱」的 5 次失败中,3 次是机器人蹲完时头朝向别处,始终没把箱子看进眼里。作者提出的改法是加入搜索、原地转身等恢复行为。
消融实验把增益拆开,都在坐椅任务的留出仿真房间上测:训练房间从 1 个扩到 100 个,成功率从 43% 升到 81%,扩到 1,000 个再升到 84%;去掉追踪器的深度输入降到 74%;把扩散解码器换成普通回归解码器只剩 19%。
对照、发布与作者自己画出的边界
与既有工作的对照集中在论文的一张表里,列出能力开关与试验数量:ZeroWBC 报告 300 次真实试验,VLK 120 次、且只在训练时扫描过的 2 个房间里评测,GRAIL 100 次,TANGO 45 次、3 个房间;HALO 是 360 次、6 个未建图环境。作者称,HALO 在「在线串联技能」与「把机载外部感知直接接入追踪器」两方面为此前系统所无。行业通讯 在 11 月 5 日的报道中指出,论文没有提供与这些系统在相同任务上的成功率对照。
代码已按模块开源:含 datagen(Infinigen 场景、Kimodo 动作与渲染)、generator、tracker、orchestrator、system(MuJoCo 与真机 G1 的闭环启动器)等目录;真机视频发布在项目页。Humanoids Daily 同时指出,仓库 README 未提供训练好的模型权重或这套语料的下载。
边界写在论文的局限一节:管线把操作员从数据采集中移除了,但没有从任务设计中移除,新增一项物理技能仍需人撰写提示、设计运动序列的关键帧;论文写道,技能库「只会以人能指定新任务的速度增长」。机器人只靠视觉感知,物体一旦被遮挡或离开视野,策略就失去它仍在原处的信号,作者认为触觉是自然的解法;生成器与追踪器之间的接口很窄,追踪器并不知道计划是为了什么;编排层也还简单。这六项技能——坐、走、穿门、蹲、爬、推——无一涉及用手抓取物体。