对比基线

和谁比、怎么改造、用什么执行:在 8 个任务(Con-01 到 Con-04、Rea-01 到 Rea-04)上比较"选出最小支撑集"的方法。 ← 返回任务页 · 方法汇报(一页看懂) · 生成于 2026-10-24 00:42

对比基线

2026-10-23 定稿。要实现哪些部分、按什么顺序:docs/ROADMAP.md §3(工作包)。

问题。 一个任务到底需要多大的团队,也就是要回答:

以往的方法回答的是相邻的问题:

这些方法按原样都说不出"这只臂不需要""做不到""这件东西能顶替那只臂"。所以每个方法只改输入输出,不改推理方式,就像 SQuAD 2.0 给它的基线加了一个"无答案"输出一样。原样版不跑,各自缺什么见文末对照表。

试验机会人人相同

主表

共享执行器给只做规划的行用,它就是 v5 的第二阶段:

方法 测什么(预期在哪儿失分) 改造 执行器
参照 Oracle-脚本 每个可行版本都做得到;SR 的上限 gold 团队 + 手写 reference Isaac 回放,5 个 seed
参照 Oracle-团队 只在执行上丢掉的 SR 直接给 gold 团队 共享
参照 模式猜测器 题目猜不中:开跑任何模型前,任务级必须接近 0 规则:3 臂以上,用西、东、南三只;2 臂且有东西,用这 2 臂加最大的那件;否则判做不到 不执行(离线评分)
参照 盲试 只靠试够不够(会把执行失败当成"人不够",于是多派人) 从最小团队开始逐个试,第一个成功的就是答案;预算用完就判做不到 共享
参照 LLM + 求解器(v3+) 只靠推理够不够(会出翻译错误) 求解器搜索四类执行者:臂、臂 + 工具、搬运件、被动件。无解即判做不到,并列出没被覆盖的 job 共享
参照 Claude Code harness 不用我们的方法,强通用 agent 能做到什么:v5 的主要对手 只统一输出格式和预算;保留它自带的 Bash 和 Python;隔离运行,读不到仓库 自己
文献 SMART-LLM 式 固定流程的集中式方法(预期在少臂、借物上失分) 组队时不读技能表,改为查询各臂(can_reach、measure);东西作为被动候选;组不成队就判做不到;分配时用最少的机器人 共享
文献 EMOS 式 对所有任务都一样的简历 vs. 在本任务具体点位上查询(预期在厘米级余量、借物上失分) 每只臂开局写一次简历(工作半径、高度范围、夹爪开口、负载、底座位置),之后不能再逐点查询;输出里加上闲置臂、做不到、用到的东西 共享
文献 RoCo 式 各臂自荐 vs. 集中决策(预期会多派人) 每臂一个 LLM,能看固定相机,腕部相机、read_arm、can_reach 只能用自己的;可以选择"我不参加";全队可以声明"做不到、缺什么";东西当作资源 自己(对话后写程序)
文献 HMAS-2 式 中央提议、各臂否决(预期在少臂、借物上失分) 提议里要写明团队、闲置臂、用到的东西、能不能做;各臂(所见和 RoCo 式相同)用自己的 can_reach 否决 自己(中央写程序)
我们 v5 所有版本都要对,且运行次数最少 — 自己(第二阶段,失败后回到第一阶段)

CaP-X 不单列一行,因为它没有选团队这一步。共享执行器沿用了它的设计,编程 agent 这一类由 Claude Code 代表。

共用什么

包括 v5 在内,每一行用的都是同一个环境服务器(mrbench-env,经 MCP)、同一个控制端、同一个评分器。不同的只有决策层:谁来想、按什么流程想,以及少数几个只属于某个方法的推理工具。任何一行都只能通过 program API 让臂动起来。 状态一栏中,"现有"指 mrbench/agent/ 里已经有;"WPn"指待建(见 docs/ROADMAP.md §3)。

层 组件 作用 状态
任务 场景与版本 同一个实例(同 seed;exact、surplus、shortfall、borrow 或放宽孪生),Isaac Sim 4.5 + Isaac Lab 2.1 现有(版本待建:WP2–WP4)
指令 只给目标,不提臂、分工、步骤、工具 现有
感知与测量 briefing 目标、坐标系、每只臂的型号、安装位置和朝向;每件东西带粗略质量(见下) 现有
look 一张图:桌边固定相机,或某只臂的腕部相机 现有
read_arm 一只臂的本体感知:关节角和限位、工具点位姿、夹爪开度、关节力矩 现有
locate 物体或部件的包围盒,由相机估计,有几毫米误差 现有
can_reach 臂自身的 IK:工具点能否以某个姿态到达某点;带余量,并报告差多少 现有的是 check_reach(只答能不能);余量 WP6
measure 物体的部件和尺寸(长度、高度、开口) WP6
heft 由一只够得着的臂把东西抬起 2 cm、读关节力矩:质量误差几个百分点以内,或"太重"(按模型计算,不在仿真里执行) v4 现有;改为共用 WP9
probe 在仿真里试一个小动作,读回结果(门会不会弹回?);每个 case 2 次 WP9
note 记事本:记下已确认的事实和证据 现有
输出 submit_team_plan v2 能不能做;用哪几只臂;闲置臂及理由;用了哪些东西、做哪个 job;拒绝了哪些东西及证据;缺什么 v1 现有;v2 WP5
控制端 program API tool_pose、above、shift、back、where、move、grip、push、release、open_fingers、phase;代码只设 PLAN,只能 import math 现有
check_program 在沙箱里运行程序,每条路径解 IK,走一遍间距检查(臂与臂 3 cm、臂与场景 1 cm、手里的物体 1.5 cm),逐条列出冲突 现有
try_in_sim 在 Isaac 里带物理执行:关节位置目标、特权吸附(2 cm 以内)、布料捏取;返回关键帧、事件日志、是否成功;每个 case 5 次 现有(现在每个 case 2 次)
开口检查 比夹爪开口还宽的东西抓不起来 WP9
失败报告 各 job 的失败信号,以及 IK 和间距检查给出的原因 WP1、WP9
submit_program 提交最终程序 现有
评分 评分器 任务自带的成功公式;gold 由声明的 job 算出;团队 = 声明的 ∪ 实际用到的 成功公式现有;gold 和团队认定 WP1、WP5
预算 每个 case 2 次 probe、5 次运行;LLM 调用次数和费用上限相同 WP9
运行条件 模型 每张表用同一个 backbone(主表 Opus 5.5,附录 Qwen-27B) —
隔离 读不到仓库:v5 用 claude -p --tools "";Claude Code harness 放进容器,只暴露 MCP socket v5 现有;Claude Code WP9

各行自己的部分:

行 怎么决策 只属于它的东西 控制端
Oracle-脚本 不用 LLM gold 团队 + 手写 reference(script(inst)) 直接回放(它是参照)
Oracle-团队 1 个 LLM,只写程序 直接拿到 gold 团队 共享执行器
模式猜测器 一条规则,不用 LLM 只看臂数和物体尺寸 不执行
盲试 一条规则,不用 LLM 从最小团队开始逐个试 共享执行器
LLM + 求解器 1 个 LLM 翻译,求解器决定 solve_team:在四类执行者上精确搜索 共享执行器
Claude Code harness 1 个通用 agent 它自带的 Bash 和 Python,只能用来计算(要碰 Isaac 只能经共用工具) 同一套 API,自己迭代
SMART-LLM 式 1 个 LLM,固定流程 它的 prompt 和流程 共享执行器
EMOS 式 每只臂写一份简历,再集中组会 简历:开局用共用工具写一次,之后不能再逐点查询 共享执行器
RoCo 式 每只臂一个 LLM,相互对话 消息通道(原型的 mas/);每只臂只看自己(见下) 汇总者经同一套 API 执行
HMAS-2 式 中央提议,各臂否决 计划板(mas/plans.py);每只臂只看自己 中央经同一套 API 执行
v5 1 个 LLM,固定流程 + 回环 who_can、check_team(四类执行者、带余量)、证据规则、约束监视器;v4 的 scene_graph、check_hold 同一套 API;运行失败后回到第一阶段

三条边界(2026-10-24 确定):

评分

规则

  1. 同一个 backbone:主表用 Opus 5.5,附录用 Qwen-27B。
  2. 同一信息档(query),同一套工具;EMOS 式按其设计,用简历代替逐点查询。
  3. 统一输出格式:submit_team_plan v2。
  4. 同样的试验机会(见上),同样的调用次数和费用上限。
  5. 同样的调优投入:都只在开发池上调 prompt,绝不在这 8 个任务上调。
  6. 抓取统一用吸附,但吸附前先检查东西能不能放进两指之间。
  7. 同样的观察:每一行都拿到粗略质量,heft 是共用的测量工具;道具和干扰物不能只靠质量区分。按臂分开决策的行里,每只臂能看固定相机,腕部相机、read_arm、can_reach 只能用自己的(见共用什么)。

开跑前

任务。 8 个(2026-10-23 确定):Con-01 到 Con-04(Concurrency-bound:原型 P01、P05、P07 和 HA2),Rea-01 到 Rea-04(Reach-bound:HO1、TR1、TR2、TR3)。开发池是未入选的任务(HA1、HA3、AS1、TR4-TR6、原型 P03);见 README 的"任务"一节。

规模。 8 个任务 × 5 个实例 × 3 次重复 = 每行每种设定 120 个 session。同等预算设定最多约 180 GPU·h(按每次运行约 3 分钟估计)。

附录。

以往方法具备什么

依据各论文的方法部分整理,引用前要逐格核实。✓ 有,~ 部分有,✗ 没有,? 未核实。

方法 说"不需要" 说"做不到、缺 X" 东西顶替臂 带余量的几何 区分同型号的臂 失败后会修改 会执行
SMART-LLM ~ ✗ ✗ ✗(技能表) ✓ ✗ ✓
EMOS ~ ✗ ✗ ~(与任务无关的简历) ✓ ? ✓
RoCo ✗(WAIT 只管一步) ✗ ✗ ~(IK 和碰撞反馈) ✓ ~(改方案) ✓
HMAS-2 ✗ ✗ ✗ ✗ ✓ ~(改方案) ✓
VIKI-R(L1) ✓ ? ✗ ✗ ✗(只有类型) ✗ ✗
v5 ✓ ✓ ✓ ✓ ✓ ✓(改团队) ✓

RoboFactory(模仿学习策略)和 CaP-X(代码即策略的闭环)都没有选团队这一步。

参考文献。

由仓库的 docs/BASELINES-zh.md 生成(英文版 docs/BASELINES.md)。