
1. 项目概述当机器人需要“看得见”的长期规划在机器人操作领域让机械臂完成“把桌上的红色杯子拿到厨房水槽里”这样的指令听起来简单但背后却是一个极其复杂的认知与执行链条。传统的任务规划Task Planning擅长处理逻辑序列比如“拿起杯子 - 走到厨房 - 放下杯子”但它通常假设世界是符号化的、完美的不关心“杯子具体在桌子的哪个位置”、“去厨房的路上有没有障碍物”这些现实细节。而另一方面运动规划Motion Planning和感知Perception则专注于处理具体的几何空间和物理约束但它们往往只解决“从A点移动到B点”的瞬时问题缺乏对长期目标的宏观把控。GroundedPlanBench的出现正是为了弥合这个鸿沟。它的核心目标是推动“空间锚定的长时域任务规划”这一研究方向。简单来说就是让机器人不仅能规划出“做什么”的逻辑步骤序列还能将这个序列中的每一个抽象动作如“拿起”、“放置”与真实物理环境中的具体空间位置、物体姿态和可行路径紧密“锚定”起来。这不再是纸上谈兵式的规划而是从一开始就“脚踏实地”考虑执行可行性的规划。想象一下你让家用机器人“整理客厅”。一个理想的规划系统应该能输出1. 识别到散落在沙发和地上的三本书空间定位2. 规划出“先捡起沙发上的书A走到书架前放入第二层空位然后返回捡起地上的书B和C”逻辑与空间序列3. 在执行“放入第二层空位”时精确计算出机械臂末端以何种姿态避开书架隔板将书平稳放入那个具体的、物理存在的空隙中空间锚定。GroundedPlanBench致力于为这类复杂、多步骤、且与空间环境深度交互的任务建立一个标准的评估体系和基线方法推动机器人从“能规划”走向“能执行且执行成功”。2. 核心挑战与基准设计思路为什么“空间锚定”的长时域规划如此困难又该如何系统地评估它这是GroundedPlanBench要回答的根本问题。其设计思路紧密围绕以下几个核心挑战展开。2.1 从符号世界到几何世界的“语义鸿沟”传统AI规划基于PDDL规划领域定义语言等描述世界被抽象为“杯子在桌子上”、“桌子在客厅里”这样的逻辑谓词。但这对机器人执行来说远远不够。“在桌子上”是一个巨大的连续空间区域杯子可能靠近边缘也可能被其他物体半遮挡。规划器必须能将“拿起杯子”这个动作关联到通过视觉系统获取的杯子的具体6D位姿3D位置3D旋转以及围绕该位姿的一系列可供抓取的抓取点Grasp Pose。这个从离散符号到连续几何的映射就是第一道难关。GroundedPlanBench的任务场景设计必然要求环境提供精细的、带物体实例分割和位姿标注的3D场景信息规划算法需要消费这些信息。2.2 长时域下的状态推演与可行性验证一个规划包含10个步骤当执行到第5步“将牛奶倒入杯中”时机器人、杯子、牛奶盒的空间关系已经与初始状态大不相同。规划器在进行前瞻时不能只做逻辑状态推演“杯子中有牛奶”为真还必须能够推演几何状态的改变。例如执行“倒牛奶”后牛奶盒的重量、重心变化可能影响后续“将牛奶盒放回冰箱”这个动作的抓取姿态和运动轨迹。更复杂的是需要验证每个动作在改变后的几何环境下是否依然可行。比如规划“移动椅子后通过门口”必须计算移动椅子后的剩余空间是否仍大于机器人本体的包围盒。GroundedPlanBench需要通过模拟器为每个规划步骤提供几何状态验证接口或者设计任务使得失败的规划在模拟执行中会暴露问题如碰撞、不可达。2.3 多模态约束的联合优化一个优秀的空间锚定规划是逻辑正确性、几何可行性、甚至效率如路径总长度、操作时间的帕累托最优解。例如“清理餐桌”任务中先收碗还是先收盘子不同的顺序会导致机械臂的移动路径、避障复杂度、手爪的抓取姿态序列完全不同。规划器需要在庞大的组合搜索空间动作序列 × 物体选择 × 空间位姿选择 × 路径选择中进行搜索并评估每个候选方案的综合成本。GroundedPlanBench的评估指标绝不会仅仅是“任务是否完成”一定会包含“规划路径长度”、“总操作时间”、“机械臂关节总运动量”、“是否产生不必要的碰撞风险”等量化指标以衡量规划的质量。2.4 基准的构成任务、环境与评估协议基于以上挑战一个完整的基准通常包含几个部分多样化任务集包含不同复杂度步骤数从5到50、不同领域厨房整理、家具组装、实验室操作的任务描述。任务指令可能是自然语言“为我准备早餐”或形式化语言“实现目标面包在盘子上且盘子餐桌上”。高保真仿真环境使用如PyBullet、MuJoCo或Isaac Sim等物理仿真器构建包含丰富家居物品的3D场景。每个物体都有精确的网格模型、物理属性质量、摩擦系数和语义标签。真值数据与API提供场景的初始状态所有物体位姿、任务的目标状态、以及用于验证动作可行性的底层API如逆运动学求解器、碰撞检测接口、抓取姿态生成器。评估指标体系一套自动化的评分系统。除了最终任务成功与否的布尔值还应包括任务完成度百分比对于部分可完成的任务、规划动作序列的长度、模拟执行的总时间、能量消耗、安全性评分如最小碰撞距离等。3. 实现空间锚定规划的核心技术栈要攻克GroundedPlanBench提出的挑战需要融合多个技术领域的进展。下面我们拆解一个现代空间锚定规划系统可能采用的技术栈。3.1 分层混合规划架构这是目前最主流的范式核心思想是“逻辑规划粗调几何规划细调”。顶层符号任务规划器。使用基于PDDL的规划器如FastDownward、或大型语言模型LLM作为“任务分解器”。输入是任务描述和场景的符号化初始状态通过视觉系统生成如“存在(杯子 桌子)”输出一个初步的、抽象的动作序列例如[Pick(杯子) NavigateTo(厨房) Place(杯子 水槽)]。中层空间动作实例化。这是关键的一层。对于顶层规划的每个抽象动作此层负责将其“锚定”到具体的几何实体和空间坐标。例如Pick(杯子)需要物体实例匹配在场景中所有检测到的“杯子”类物体中选择哪一个可能需要基于属性如“红色的杯子”、或位置离机器人最近的杯子。位姿选择为选定的杯子实例从一组预计算或实时生成的可行抓取位姿中选择一个。选择标准可能包括抓取稳定性、抓取后物体姿态对后续操作的影响、以及从当前机械臂位置到达该抓取点的运动代价。参数填充将Pick(杯子)实例化为Pick(object_idcup_003, grasp_pose[x,y,z, qx,qy,qz,qw])。底层运动规划与执行。接收实例化后的动作调用运动规划器如RRT* CHOMP生成无碰撞的关节轨迹最后在仿真或现实中执行。注意这个分层过程不是单向的。中层在实例化时可能发现某个动作在几何上不可行如抓取位姿被遮挡或放置目标位置被占用需要向顶层反馈触发重新规划回溯。这就是“几何可行性”对逻辑规划的反馈闭环是空间锚定规划区别于传统规划的核心。3.2 基于学习的规划与推理传统符号规划器在复杂环境中的搜索效率可能不高且难以处理模糊的自然语言指令。因此基于学习的方法成为重要补充。视觉语言模型VLM作为场景理解与任务分解器给定一张场景图像和“把可乐罐放进冰箱”的指令VLM如GPT-4V, LLaVA可以直接输出步骤序列甚至以像素或边界框的形式指出“可乐罐”和“冰箱”的位置。这替代或辅助了传统的物体检测与符号化过程。大语言模型LLM作为常识与规划知识库LLM蕴含丰富的物理常识和任务知识。可以提示LLM“为了把披萨从烤箱拿到餐桌上我需要先戴上隔热手套吗步骤是什么”LLM能生成符合人类经验的细粒度步骤。在GroundedPlanBench中可以评估纯LLM规划、LLMVLM规划与符号规划器的效果对比。强化学习RL用于策略优化对于极其复杂的操作序列如灵巧手操作物体可以将整个任务建模为马尔可夫决策过程用RL训练一个策略网络直接根据当前视觉观察和任务目标输出底层控制指令如关节扭矩。这种方法能发现人类难以设计的精妙操作但样本效率低训练成本高解释性差。在基准中RL更多作为对比基线存在。3.3 空间关系表示与推理如何让机器“理解”“放在桌子上”、“放进冰箱里”这些空间关系锚定点Anchor Point将抽象的空间关系转化为具体的3D坐标或区域。例如“放在桌子上”可以定义为桌子表面上方5厘米的一个水平面区域“放进冰箱里”可以定义为冰箱内部储物架上的一个空闲容积。规划器需要为每个Place动作计算一个具体的锚定点。关系图Spatial Relation Graph将场景表示为图节点是物体边是它们之间的空间关系如“在...之上”、“在...左侧”、“靠近”。规划时可以查询此图例如要“拿起电视遥控器”推理出它可能“在沙发上”或“在茶几上”从而引导视觉搜索。** affordance 检测**这是更深层的“功能”理解。不仅知道“这是一个平面”还知道它“可供放置物体”不仅知道“这是一个把手”还知道它“可供抓握和拉动”。基于学习的affordance检测模型可以直接输出物体上可用于执行特定动作的位姿区域极大简化了空间动作实例化过程。4. 构建与评测一个GroundedPlanBench任务的实操流程假设我们要在PyBullet仿真环境中为GroundedPlanBench贡献一个新的测评任务“在办公室场景中将散落的文件归档到文件柜并将空咖啡杯放到茶水间”。4.1 任务定义与环境搭建首先我们需要用精确的语言定义任务这本身就是一项严谨的工作。初始状态S0形式化描述几何状态在仿真中精确摆放办公桌、椅子、文件柜带多个抽屉、茶水间推车、垃圾桶、以及多个文件A4纸模型和咖啡杯的3D模型。文件随机散落在桌面、地面咖啡杯在桌面上。符号状态自动或手动生成On(file1, floor),On(file2, desk),On(coffee_mug, desk),IsOpen(drawer1, false),At(robot, charging_station)等。目标状态G形式化描述In(file1, drawer1)∧In(file2, drawer1)∧In(coffee_mug, tea_cart)∧IsOpen(drawer1, false)。所有文件在关上的抽屉里杯子在茶水间推车上。动作模型定义需要定义机器人可执行的基础动作及其前提条件和效果。这通常用一个PDDL域文件来描述。Pick(?obj)前提是HandEmpty且Near(robot, ?obj)效果是Holding(?obj)且not(HandEmpty)。Place(?obj, ?loc)前提是Holding(?obj)且IsPlaceableSurface(?loc)效果是On(?obj, ?loc)且not(Holding(?obj))且HandEmpty。NavigateTo(?loc)前提是无效果是At(robot, ?loc)。OpenContainer(?container)前提是At(robot, ?container)效果是IsOpen(?container, true)。CloseContainer(?container)前提是At(robot, ?container)且IsOpen(?container, true)效果是IsOpen(?container, false)。仿真环境构建在PyBullet中加载URDF或MJCF格式的机器人模型如Franka Panda, Fetch以及所有物体的网格文件。设置好物理引擎参数重力、时间步长。编写重置函数能随机化物体初始位置在合理范围内并记录其唯一ID和初始位姿。4.2 规划算法接入与实现接下来我们需要实现或接入一个规划算法它要能处理我们定义的任务。纯符号规划基线使用FastDownward规划器输入PDDL域文件和问题文件包含S0和G。它会输出一个动作序列如[NavigateTo(desk), Pick(file2), NavigateTo(file_cabinet), OpenContainer(drawer1), Place(file2, drawer1), CloseContainer(drawer1), ...]。但这个序列里的所有位置参数desk,drawer1都是符号没有几何信息。空间锚定规划器实现我们需要扩展上述基线。符号-几何映射表维护一个字典将符号地点如desk映射到仿真环境中的具体3D坐标区域如一个长方体区域。将符号物体如file2映射到其仿真ID。动作实例化模块遍历符号规划序列。对于NavigateTo(desk)查询映射表得到目标区域然后调用一个简单的局部规划器如A*在2.5D导航网格上或直接向该区域中心点移动。对于Pick(file2)首先通过视觉或真值数据获取file2的当前6D位姿然后调用一个抓取姿态生成算法可以是基于规则的如从物体顶部垂直向下抓取或基于学习的抓取预测网络选择一个可行的抓取位姿并检查当前机械臂姿态是否能无碰撞地运动到该预抓取位姿。如果检查失败则触发重规划比如尝试抓取另一个文件或先移开障碍物。可行性检查与回溯在实例化每个动作前进行快速的碰撞检测和逆运动学求解预检查。如果失败则尝试同一动作的其他参数如选择另一个抓取点。如果所有参数都失败则向上层符号规划器返回失败信号请求新的动作序列。4.3 评估脚本编写与指标计算最后我们需要一套自动化评估流程来客观打分。任务成功判定模拟执行完毕后检查目标状态的所有条件是否满足。例如检查所有文件的父链接parent link是否是抽屉的内部链接并且抽屉关节角度是否小于阈值表示已关闭。这需要访问仿真器的内部状态API。指标计算任务完成度(已完成的目标子句数) / (总目标子句数)。例如3个文件只归档了2个则完成度为66.7%。规划长度计数规划器输出的动作序列中的动作数量。执行时间从第一个动作开始到最后一个动作结束仿真中经历的时间考虑每个动作的运动时间。路径效率记录机器人基座移动的总路程米以及机械臂末端执行器移动的总路程。安全性记录执行过程中发生的碰撞次数除预期接触外或总碰撞力。计算时间规划器本身求解计划所花费的CPU时间。基准测试运行将任务随机初始化N次如100次每次运行规划与执行流程收集所有指标最后计算平均值、标准差和成功率。这能公平地比较不同规划算法在不同场景下的鲁棒性和效率。实操心得在构建评测环境时最大的坑往往在于“模拟与现实的差距”。仿真中的碰撞检测、物理参数摩擦系数、质量如果设置不当可能导致在仿真中成功的规划在现实中必然失败。因此在定义“可行性”时要加入足够的余量。例如定义抓取位姿时不仅要考虑夹爪与物体的碰撞还要考虑抓取后物体是否稳定可通过在仿真中施加微小扰动来测试。此外评估脚本的健壮性至关重要要能处理规划器崩溃、执行超时等各种边缘情况并妥善记录日志否则大规模自动化测试无法进行。5. 当前局限与未来演进方向尽管GroundedPlanBench这样的基准推动了领域发展但我们必须清醒地认识到当前技术的局限。5.1 仿真与现实的“最后一公里”问题仿真环境再逼真也与真实世界存在差异。光线、纹理、物体形变、传感器噪声等都是仿真的难点。在仿真中训练和评估的规划器在迁移到真实机器人时性能通常会下降。未来的基准可能需要包含“数字孪生”环节即在高度逼真的仿真中验证后在标准化的真实机器人测试平台上进行小规模验证并研究sim-to-real的迁移技术。5.2 对动态与不确定性的处理不足目前的基准任务大多假设静态环境。但真实世界是动态的人可能会走过宠物可能会闯入。规划器需要处理部分可观察性和不确定性。未来的任务可能会引入移动的障碍物、动作执行失败的概率如抓取滑脱、或者不完整的场景信息如物体被部分遮挡要求规划器具备重新感知、重新规划和故障恢复的能力。5.3 对复杂物理交互与形变物体的建模挑战许多长时域任务涉及复杂的物理交互如折叠衣服、揉面团、给手机插充电线。这些任务涉及非刚性物体的形变、软体力学、以及高精度的力控交互。当前的仿真器和规划技术对此类任务的支持还很薄弱。未来的基准需要纳入更先进的物理引擎如支持柔性体的和相应的力-运动混合规划评估指标。5.4 从任务级到终身学习现有的基准评估的是“单次任务”的规划能力。但一个真正的智能机器人应该能在长期运行中积累经验。例如第一次整理某个房间很慢但记住了物品的惯常位置后第二次就能更快。未来的基准可能会设计“课程学习”或“终身学习”轨道评估规划器在新任务中利用旧经验的能力以及知识表征的泛化性。在我个人看来GroundedPlanBench这类基准的价值不仅在于给算法排名更在于它像一面镜子清晰地照出了我们当前技术的边界在哪里。它把“让机器人像人一样思考和工作”这个宏大目标拆解成了一个个具体、可测量、可迭代的科学问题。每一次基准性能的提升都意味着我们朝着实用的通用机器人助理又迈进了一小步。对于研究者而言深入理解这个基准的每一个设计细节都相当于拿到了一张通往机器人核心智能领域的路线图。