大模型在具身智能系统中的角色定位与长程规划技术文档
文档类型:技术说明文档
主题:大模型在具身智能系统中的角色定位;大模型如何解决具身智能中的长程规划问题
日期:2026-07-09
目录
- 概述
- 具身智能系统基本框架
- 大模型在具身智能系统中的角色定位
- 具身智能中的长程规划问题
- 大模型解决长程规划问题的关键机制
- 典型系统案例分析
- 工程实现参考架构
- 评估指标
- 局限性与改进方向
- 总结
- 参考资料
1. 概述
具身智能(Embodied Intelligence)强调智能体不仅要具备语言理解、视觉感知和推理能力,还要能够在真实或模拟物理环境中执行动作、接收反馈并持续调整行为。
大模型,尤其是大语言模型(LLM)、视觉语言模型(VLM)和视觉-语言-动作模型(VLA),为具身智能提供了新的技术路径。它们能够把自然语言、视觉感知、任务知识、常识推理和动作规划连接起来,使机器人或虚拟智能体从“执行固定程序”逐渐走向“理解目标并自主规划”。
本文重点讨论两个问题:
- 大模型在具身智能系统中的角色定位是什么?
- 大模型如何解决具身智能中的长程规划问题?
2. 具身智能系统基本框架
一个典型具身智能系统通常包含以下模块:
| 模块 | 功能 | 典型输入 | 典型输出 |
|---|---|---|---|
| 感知模块 | 获取环境状态 | 图像、深度、语音、触觉、位姿 | 物体、场景、状态 |
| 认知模块 | 理解任务目标和上下文 | 用户指令、环境描述 | 任务语义、约束条件 |
| 规划模块 | 生成任务步骤 | 目标、状态、技能库 | 子任务序列 |
| 技能模块 | 提供可复用动作能力 | 子任务指令 | 抓取、导航、放置等动作 |
| 控制模块 | 执行低层运动控制 | 轨迹、目标点、姿态 | 电机命令、机械臂控制量 |
| 反馈模块 | 监测执行结果 | 新状态、错误信息 | 成功、失败、异常反馈 |
可以将系统结构抽象为:
在该结构中,大模型主要位于认知与规划层,负责高层理解、任务分解、动作选择和动态重规划。
3. 大模型在具身智能系统中的角色定位
3.1 总体定位
大模型在具身智能系统中的核心定位不是单纯的运动控制器,而是:
认知中枢 + 高层规划器 + 语义理解器 + 技能调度器 + 反馈修正器。
它更适合解决“做什么”“为什么做”“先做什么后做什么”“当前计划是否合理”等问题,而不是直接控制每个关节、电机或连续轨迹。
3.2 角色一:自然语言任务理解器
具身智能系统通常需要接受人类自然语言指令,而人类指令往往是不完整、模糊或隐含常识的。
例如:
“把餐桌整理一下。”
这句话并没有明确说明:
- 哪些物体需要移动;
- 垃圾应放到哪里;
- 餐具是否需要送到厨房;
- 桌面是否需要擦拭;
- 哪些物品不能移动。
大模型可以利用语言理解和常识知识,将模糊目标转化为可执行任务:
整理餐桌 =
识别桌面物体
+ 分类垃圾、餐具、私人物品
+ 将垃圾丢入垃圾桶
+ 将餐具送到厨房
+ 保持重要物品原位或放到安全区域
因此,大模型承担了从“自然语言目标”到“结构化任务目标”的转换工作。
3.3 角色二:环境语义解释器
具身智能中的环境不是纯文本,而是由视觉、深度、触觉和空间位置构成。大模型可以与视觉语言模型结合,把感知结果解释为具有语义意义的状态。
例如视觉系统检测到:
object_1: yellow peel
object_2: ceramic cup
object_3: plastic wrapper
object_4: notebook
大模型可以进一步理解:
yellow peel -> 香蕉皮 -> 垃圾
plastic wrapper -> 包装袋 -> 垃圾
ceramic cup -> 杯子 -> 可能需要送到水池
notebook -> 笔记本 -> 不应丢弃
这使机器人不仅“看见物体”,还能理解物体在任务中的作用。
3.4 角色三:高层任务规划器
大模型可以把复杂目标拆解成有顺序的子任务。
例如用户指令:
“帮我准备早餐。”
大模型可生成:
- 前往厨房;
- 找到面包;
- 找到盘子;
- 将面包放入烤面包机;
- 准备饮品;
- 将早餐送到餐桌。
这种规划结果通常不是最终电机动作,而是高层任务序列,需要交由底层技能模块执行。
3.5 角色四:技能调度器
具身智能系统通常维护一个技能库,例如:
| 技能名称 | 功能 |
|---|---|
navigate(target) |
导航到目标位置 |
detect(object) |
识别目标物体 |
grasp(object) |
抓取物体 |
place(object, location) |
放置物体 |
open(container) |
打开柜门或抽屉 |
wipe(surface) |
擦拭表面 |
ask_user(question) |
请求人类澄清 |
大模型的作用是根据任务需要调用合适技能:
navigate("dining_table")
detect("dirty_cup")
grasp("dirty_cup")
navigate("kitchen_sink")
place("dirty_cup", "sink")
这种方式避免让大模型直接输出连续控制量,而是让它调度可验证、可复用的动作原语。
3.6 角色五:异常处理与动态重规划器
具身智能面对真实环境,执行过程经常出现异常:
- 目标物体不在预期位置;
- 机械臂抓取失败;
- 路径被阻挡;
- 工具缺失;
- 人类改变任务要求。
大模型可以基于反馈重新规划。
示例:
原计划:
去餐桌 -> 拿杯子 -> 去厨房 -> 清洗杯子
执行反馈:
餐桌上没有杯子。
重规划:
搜索茶几 -> 搜索水池附近 -> 找到杯子后继续执行
这使系统从“开环计划执行”转变为“闭环反馈控制”。
3.7 角色六:知识与经验管理器
大模型可以结合记忆模块、检索增强生成(RAG)或技能库,将历史经验沉淀为可复用知识。
例如系统第一次学会:
清洗杯子 = 抓取杯子 -> 移动到水池 -> 打开水龙头 -> 冲洗 -> 放入杯架
以后面对“清洗碗”“清洗盘子”“清洗马克杯”等类似任务时,可以复用这一技能结构。
4. 具身智能中的长程规划问题
4.1 什么是长程规划?
长程规划(Long-horizon Planning)指的是任务需要经过较多步骤、较长时间、多阶段状态变化才能完成。
例如:
“把客厅桌上的脏杯子拿到厨房,倒掉剩余饮料,冲洗干净,再放回杯架。”
该任务至少包括:
- 定位客厅桌子;
- 识别脏杯子;
- 抓取杯子;
- 导航到厨房;
- 找到水池;
- 倒掉剩余液体;
- 打开水龙头;
- 清洗杯子;
- 找到杯架;
- 放回杯子。
这类任务具有明显的长程依赖:前一步失败会影响后续所有步骤。
4.2 长程规划的主要难点
| 难点 | 说明 |
|---|---|
| 状态空间巨大 | 环境中物体、位置、动作组合很多 |
| 动作序列长 | 错误会逐步累积 |
| 目标描述模糊 | 人类目标常常不完整 |
| 物理约束复杂 | 机器人能力和场景可达性有限 |
| 环境动态变化 | 物体可能移动,人可能干预 |
| 反馈不确定 | 感知误差和执行失败常见 |
| 奖励稀疏 | 最终成功前可能没有明确奖励 |
因此,长程规划不能只依赖一次性生成计划,而需要“分解—执行—观察—修正”的闭环过程。
5. 大模型解决长程规划问题的关键机制
5.1 机制一:目标分解
大模型首先将抽象目标分解为多个短期子目标。
示例:
目标:整理餐桌
子目标:
1. 识别桌面物体
2. 区分垃圾、餐具和个人物品
3. 将垃圾放入垃圾桶
4. 将餐具送到厨房
5. 擦拭桌面
6. 检查是否还有未处理物体
这样可以把一个难以直接执行的长期目标变成多个可操作的局部任务。
5.2 机制二:层次化规划
长程规划通常需要分层:
典型层次包括:
| 层级 | 作用 | 示例 |
|---|---|---|
| 目标层 | 理解最终任务 | 整理房间 |
| 任务层 | 分解为子任务 | 收垃圾、归位物品、清洁表面 |
| 技能层 | 调用技能库 | 抓取、导航、放置 |
| 控制层 | 执行连续动作 | 轨迹规划、电机控制 |
大模型主要工作在目标层和任务层。
5.3 机制三:引入可供性约束
大模型具有丰富常识,但可能产生“想得到但做不到”的计划。
例如,模型可能生成:
打开冰箱 -> 取牛奶
但机器人可能没有“打开冰箱”的技能,或者冰箱当前不可达。
因此,长程规划需要引入可供性(Affordance)约束:
动作选择 = 任务相关性 × 当前可执行性 × 安全性
例如:
| 候选动作 | 任务相关性 | 可执行性 | 安全性 | 是否选择 |
|---|---|---|---|---|
| 拿杯子 | 高 | 高 | 高 | 是 |
| 打开冰箱 | 中 | 低 | 中 | 否 |
| 倒掉杯中液体 | 高 | 中 | 中 | 视场景决定 |
| 扔掉笔记本 | 低 | 高 | 低 | 否 |
这种方法可以减少大模型幻觉和不现实计划。
5.4 机制四:推理—行动—观察闭环
长程任务需要不断接收环境反馈。推荐采用如下闭环:
该闭环可以表示为:
Plan -> Act -> Observe -> Replan
这种机制可以显著提高系统在动态环境中的鲁棒性。
5.5 机制五:技能库复用与组合
长程任务往往由多个可复用技能组成。
大模型可以从技能库中选择、组合、排序已有技能。
示例技能:
find_object(object)
navigate_to(location)
grasp(object)
place(object, location)
open(container)
close(container)
wipe(surface)
示例组合:
整理餐桌 =
find_object("trash")
+ grasp("trash")
+ navigate_to("trash_bin")
+ place("trash", "trash_bin")
+ find_object("plate")
+ grasp("plate")
+ navigate_to("kitchen")
+ place("plate", "sink")
这比端到端直接学习完整任务更稳定,也更容易调试。
5.6 机制六:记忆与经验沉淀
长程规划依赖历史经验。系统可以记录:
- 成功任务轨迹;
- 失败原因;
- 常见环境布局;
- 用户偏好;
- 可复用子任务;
- 工具和物体位置。
例如:
{
"user_preference": {
"cup_location": "kitchen_shelf",
"trash_bin_location": "under_sink",
"do_not_move": ["laptop", "notebook"]
}
}
以后执行类似任务时,大模型可以利用记忆减少搜索和试错。
5.7 机制七:任务规划与运动规划结合
大模型擅长高层任务规划,但机器人还需要低层运动可行性判断。
例如高层计划:
把杯子放进柜子
低层还需要判断:
- 机械臂是否够得到杯子;
- 抓取姿态是否稳定;
- 路径是否碰撞;
- 柜门是否打开;
- 放置位置是否有空间。
因此,大模型需要与任务与运动规划(Task and Motion Planning, TAMP)结合。
6. 典型系统案例分析
6.1 SayCan:语言模型 + 可供性函数
SayCan 的核心思想是:
大模型判断“什么动作有助于完成任务”,可供性函数判断“机器人当前能否执行该动作”。
例如任务:
把桌上的苹果拿给我。
候选动作包括:
- 找苹果;
- 拿苹果;
- 去用户位置;
- 放下苹果;
- 打开微波炉。
语言模型会给“找苹果”“拿苹果”较高任务相关性;可供性函数会判断当前机器人是否能看到苹果、是否能够抓取。最终系统选择既符合目标又能执行的动作。
适用价值:
- 缓解大模型缺乏物理 grounding 的问题;
- 避免生成不可执行计划;
- 提升长程任务成功率。
6.2 RT-2:视觉-语言-动作模型
RT-2 将视觉语言模型与机器人动作数据结合,把机器人动作表示为 token,使模型能够从图像和语言直接预测动作。
其技术意义在于:
- 将互联网规模视觉语言知识迁移到机器人任务;
- 提升对新物体、新指令的泛化能力;
- 使机器人具备一定语义推理能力。
例如机器人没有专门训练过“扔垃圾”,但可以基于视觉语言知识理解:
吃完的香蕉皮 -> 垃圾 -> 应放入垃圾桶
这类能力对于开放环境中的具身智能非常重要。
6.3 Code as Policies:用大模型生成机器人策略代码
Code as Policies 将大模型生成代码的能力用于机器人控制。
大模型根据自然语言任务生成程序,通过调用已有 API 完成感知、几何计算和控制。
示例:
objects = detect_objects()
cup = find_object(objects, "cup")
target = find_location("sink")
grasp(cup)
move_to(target)
place(cup, target)
这种方式的优势是:
- 计划结果更结构化;
- 可以调用外部工具库;
- 便于工程系统集成;
- 适合空间几何推理和技能组合。
6.4 ReAct:推理与行动交替
ReAct 强调模型不只输出推理,也输出行动,并根据行动反馈继续推理。
形式上可以表示为:
Thought -> Action -> Observation -> Thought -> Action -> ...
在具身智能中,对应为:
思考下一步 -> 执行动作 -> 观察环境变化 -> 修正计划
该机制适合长程任务,因为它允许系统在执行过程中发现错误、更新状态并继续完成目标。
6.5 Voyager:开放式具身智能体与技能库
Voyager 在 Minecraft 环境中展示了大模型驱动的开放式探索能力。
其关键思想包括:
- 自动生成探索目标;
- 根据反馈改进策略;
- 不断积累技能库;
- 将已学技能组合成更复杂行为。
这说明大模型不仅可以执行单个任务,还可以支持长期持续学习和技能积累。
7. 工程实现参考架构
7.1 系统模块设计
7.2 核心数据结构
7.2.1 任务表示
{
"task_id": "clean_table_001",
"goal": "整理餐桌",
"constraints": [
"不要移动笔记本电脑",
"垃圾放入垃圾桶",
"餐具送到厨房"
],
"success_condition": [
"桌面无垃圾",
"餐具已归位",
"桌面干净"
]
}
7.2.2 环境状态表示
{
"objects": [
{
"name": "cup",
"location": "dining_table",
"state": "dirty",
"graspable": true
},
{
"name": "banana_peel",
"location": "dining_table",
"state": "trash",
"graspable": true
}
],
"robot_state": {
"location": "dining_room",
"holding": null,
"battery": "high"
}
}
7.2.3 技能表示
{
"skill_name": "grasp",
"input": ["object"],
"precondition": [
"object.visible == true",
"object.graspable == true",
"robot.hand_empty == true"
],
"effect": [
"robot.holding = object"
]
}
7.3 长程规划伪代码
def embodied_long_horizon_planning(user_instruction, environment):
goal = LLM.parse_goal(user_instruction)
plan = LLM.decompose(goal, environment)
while not task_completed(goal, environment):
candidate_actions = LLM.propose_next_actions(goal, plan, environment)
scored_actions = []
for action in candidate_actions:
relevance = LLM.score_task_relevance(action, goal)
affordance = evaluate_affordance(action, environment)
safety = evaluate_safety(action, environment)
score = relevance * affordance * safety
scored_actions.append((action, score))
best_action = select_best_action(scored_actions)
if best_action.score < THRESHOLD:
plan = LLM.replan(goal, environment)
continue
result = execute_skill(best_action)
environment = observe_environment()
if result.failed:
plan = LLM.replan(goal, environment, error=result.error)
return "task completed"
8. 评估指标
具身智能长程规划系统可以从以下指标评估:
| 指标 | 含义 |
|---|---|
| 任务成功率 | 最终是否完成用户目标 |
| 子任务完成率 | 每个中间步骤是否完成 |
| 规划有效性 | 生成计划是否符合目标 |
| 动作可执行性 | 计划动作是否符合机器人能力 |
| 重规划能力 | 出现失败后是否能恢复 |
| 安全性 | 是否避免碰撞、破坏和危险动作 |
| 泛化能力 | 是否能处理新物体、新环境、新指令 |
| 执行效率 | 完成任务所需步骤和时间 |
| 可解释性 | 是否能说明为什么这样规划 |
| 人类满意度 | 结果是否符合用户偏好 |
9. 局限性与改进方向
9.1 局限性
1. 物理 grounding 不足
大模型可能知道“应该打开柜门”,但不知道机器人当前是否够得到柜门,也不知道柜门是否被锁住。
2. 幻觉问题
大模型可能生成不存在的物体、工具或位置。
3. 长程误差累积
任务越长,中间任何一步失败都会影响最终目标。
4. 安全约束不足
大模型可能提出高风险动作,例如移动易碎品、靠近热源或误处理私人物品。
5. 实时性挑战
大模型推理成本较高,在需要快速反应的场景中必须与低延迟控制器配合。
9.2 改进方向
| 方向 | 说明 |
|---|---|
| 多模态感知融合 | 融合图像、深度、语音、触觉和位姿信息 |
| 检索增强规划 | 从历史案例和知识库中检索类似任务 |
| 可供性学习 | 学习每个动作在当前环境中的可执行概率 |
| 世界模型 | 预测动作对环境状态的影响 |
| 安全约束层 | 在执行前过滤危险动作 |
| 人类反馈学习 | 根据用户评价持续优化策略 |
| 技能库增长 | 自动沉淀成功轨迹为新技能 |
| 任务与运动联合规划 | 将高层目标和低层轨迹可行性结合 |
10. 总结
大模型在具身智能系统中的角色不是单一的控制器,而是位于高层认知与规划环节的核心模块。它主要承担以下功能:
- 理解自然语言任务;
- 解释环境语义;
- 分解复杂目标;
- 生成长程计划;
- 调用底层技能;
- 结合可供性判断动作是否可执行;
- 根据环境反馈动态重规划;
- 沉淀可复用技能和经验。
对于长程规划问题,大模型的主要解决路径是:
长期目标
→ 语义理解
→ 子任务分解
→ 技能匹配
→ 可供性约束
→ 执行动作
→ 环境反馈
→ 动态重规划
→ 技能沉淀
因此,大模型使具身智能系统从“被动执行程序”逐步发展为“能够理解目标、规划步骤、适应环境并持续学习”的智能体系统。
11. 参考资料
-
Brohan et al. / Zitkovich et al., RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control, 2023.
https://arxiv.org/abs/2307.15818 -
Ahn et al., Do As I Can, Not As I Say: Grounding Language in Robotic Affordances, 2022.
https://arxiv.org/abs/2204.01691 -
Liang et al., Code as Policies: Language Model Programs for Embodied Control, 2022.
https://arxiv.org/abs/2209.07753 -
Yao et al., ReAct: Synergizing Reasoning and Acting in Language Models, 2022.
https://arxiv.org/abs/2210.03629 -
Wang et al., Voyager: An Open-Ended Embodied Agent with Large Language Models, 2023.
https://arxiv.org/abs/2305.16291 -
Wang et al., Large Language Models for Robotics: Opportunities, Challenges, and Perspectives, 2024.
https://arxiv.org/abs/2401.04334
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)