【学习笔记】IMR-LLM:基于大语言模型的工业多机器人任务规划与程序生成

摘要

在现代工业生产中,多机器人常协作完成复杂的制造任务。大语言模型(LLM)凭借强大的推理能力,在协调机器人完成简单的家庭和操作任务方面已展现出潜力。然而在工业场景中,更严格的顺序约束和更复杂的任务间依赖关系给 LLM 带来了新的挑战。

本文提出 IMR-LLM,一个新颖的 LLM 驱动的工业多机器人任务规划与程序生成框架。具体而言:

  • 利用 LLM 辅助构建析取图(disjunctive graph)
  • 采用确定性求解方法获得可行且高效的高层任务计划
  • 使用过程树(process tree) 引导 LLM 生成可执行的底层程序
  • 创建 IMR-Bench 基准,涵盖三个复杂度级别的多机器人工业任务

实验结果表明,该方法在所有评估指标上均显著优于现有方法。


1. 研究背景与动机

1.1 工业场景的挑战

方面 挑战
任务规划 需同时解决分解、分配、调度三个子问题
程序生成 需涵盖所有关键步骤并适配生产特定约束
多机器人协作 严格的执行序列和复杂的资源冲突约束

1.2 现有方法的局限

任务规划方面

方法类型 代表工作 局限
分散式 ROCO, CoELA 多轮对话后 prompt 过长,性能不稳定
集中式 SMART-LLM, LaMMA-P, LiP-LLM 依赖 LLM 直接生成执行顺序,在工业场景中不可靠

工业 vs 家庭场景的关键差异

维度 家庭/操作任务 工业任务
执行顺序 相对灵活(可并行) 严格顺序约束
资源依赖 较简单 机器人和机器互斥访问
任务复杂度 较低 高(可达 24 个操作)

程序生成方面

方法 策略 问题
ProgPrompt 少量示例引导代码生成 过拟合示例,无法对齐实际执行环境
Code-as-Policies 生成包含 API 的 Python 代码 在约束性工业场景中可能失败

1.3 核心研究问题

如何结合 LLM 的推理能力与确定性算法,实现工业多机器人任务的高效规划和可执行程序的自动生成?


2. 问题定义

2.1 析取图(Disjunctive Graph)

定义 :G={V,C,DM,DR}G = \{\mathbb{V}, \mathbb{C}, \mathbb{D}{\mathbb{M}}, \mathbb{D}{\mathbb{R}}\}G={V,C,DM,DR}

元素 说明
顶点集 V\mathbb{V}V 每个顶点代表一个操作(运输、抛光、焊接、倒角、装配)
合取弧 C\mathbb{C}C 有向边,表示同一工件内操作的前后顺序约束
机器析取弧 DM\mathbb{D}_{\mathbb{M}}DM 无向边,表示竞争同一台机器的冲突
机器人析取弧 DR\mathbb{D}_{\mathbb{R}}DR 无向边,表示竞争同一个机器人的冲突

核心问题:确定所有无向边的方向,使图保持无环,同时最小化完工时间(makespan)。

2.2 输入与输出

输入

符号 含义
S={R,M,W}S = \{\mathbb{R}, \mathbb{M}, \mathbb{W}\}S={R,M,W} 工业场景(机器人、机器、工件)
III 用户自然语言指令
E\mathbb{E}E 程序示例(指令-场景-程序对)

输出

符号 含义
H={O,A,F}H = \{\mathbb{O}, \mathbb{A}, F\}H={O,A,F} 高层任务计划(操作集、分配、调度图)
P={PC,PW,PE}P = \{\mathbb{P}{\mathbb{C}}, \mathbb{P}{\mathbb{W}}, \mathbb{P}_{\mathbb{E}}\}P={PC,PW,PE} 底层程序(函数调用、包装函数、执行函数)

3. 方法:IMR-LLM

3.1 任务规划模块

核心思路:LLM 只负责"简单"的部分(操作分解、分配、工件内顺序),复杂调度交给确定性算法。

步骤

步骤 负责模块 输出
1. 操作分解与分配 LLM(CoT + 通用规则) 操作集 O\mathbb{O}O、分配 A\mathbb{A}A、工件内顺序 Q\mathbb{Q}Q
2. 析取图构建 程序化转换 图 GGG
3. 调度求解 启发式算法(FIFO) 调度图 FFF

与现有方法的对比

方法 LLM 承担的工作 调度可靠性
SMART-LLM 直接生成完整调度 ❌ 低
LaMMA-P 分配后直接生成顺序 ⚠️ 中等
LiP-LLM 生成依赖图 ⚠️ 不完整
IMR-LLM(Ours) 仅生成工件内顺序 ✅ 高(确定性算法保证)

优势

  • LLM 无需处理复杂资源冲突
  • 析取图求解保证可行性和效率
  • 增强可解释性,便于工程师审查

3.2 程序生成模块

关键观察

  • 同类操作遵循一致且严格的顺序流程
  • 不同生产线的配置差异导致实现变化
  • 不同操作可能共享通用步骤(如拍照定位)

过程树(Process Tree)设计

特点 说明
结构 树形结构,节点代表功能步骤
节点属性 索引、类型、功能描述、代码片段
分支 表示不同场景下的实现变体
共享 不同操作可复用通用节点

节点示例

复制代码
Index: 2
Type: General
Functional description: Photo using handheld camera.
Snippet: 
  photo_point_robot = convert_to_robot(robot, machine_1['Points']['Photo_Point'])
  photo_path = motion_plan(robot, photo_point_robot)
  move_by_path(robot, photo_path)
  image = control_device(robot, 'camera', 'on', machine_1)

生成流程

步骤 说明
1. 树合成 LLM 从程序示例中提取并归纳过程树(一次性构建,人工验证)
2. 路径选择 为每个操作在树中找出从根到叶的完整分支
3. 代码组合 将路径上所有节点的代码片段组合成执行函数
4. 包装生成 为每个操作生成调用执行函数的包装函数

优势

  • 代码生成 → 路径选择问题,更简单
  • 明确表示场景差异,避免歧义
  • 高可扩展性,新增操作类型只需添加节点

3.3 执行模块

  • 调度图 FFF 决定操作执行顺序
  • 操作前置依赖全部完成后才能启动
  • 通过函数调用执行相应操作

4. 实验

4.1 IMR-Bench 基准

场景:23 个场景(1-7 个机器人),基于真实工业环境设计

任务:50 个制造任务,分为三个难度级别:

级别 机器人数 操作数 任务数
Single Robot 1 ≤5 ~
Simple Multi-Robot ≤3 ≤10 ~
Complex Multi-Robot ≤7 ≤24 ~

评估指标

指标 全称 计算方式
OC Operation Consistency 生成分配与 GT 的 IoU
SE Scheduling Efficiency 基于完工时间比率的调度效率
Exe Executability 程序能否实际执行
GCR Goal Condition Recall 完成目标状态的比例
SR Success Rate SE=1 且 GCR=1 时为 1,否则 0

4.2 仿真实验结果

基线方法

方法 特点 程序来源
SMART-LLM 同时处理所有子问题 内置示例
LaMMA-S 任务规划 + SMART-LLM 程序 SMART-LLM
LaMMA-O 任务规划 + IMR-LLM 程序 过程树
LiP-O 依赖图 + 线性规划 + 过程树 过程树

定量结果(Complex Multi-Robot)

方法 OC↑ SE↑ Exe↑ GCR↑ SR↑
SMART-LLM 0.50 0.04 0.00 0.03 0.00
LaMMA-S 0.56 0.26 0.20 0.33 0.16
LaMMA-O 0.56 0.26 0.28 0.37 0.20
LiP-O 0.63 0.28 0.36 0.42 0.24
Ours (GPT-4o) 0.88 0.75 0.76 0.79 0.68
Ours (Qwen3-32B) 0.85 0.71 0.76 0.79 0.68

关键发现

  • 复杂任务中,LaMMA 系列 SE 低至 0.26-0.28(LLM 直接调度不可靠)
  • LiP-O 依赖图不完整导致 OC 下降
  • IMR-LLM 在所有指标上显著领先
  • Qwen3-32B 与 GPT-4o 性能相当,验证了方法的模型泛化能力

4.3 消融实验

变体 说明 SR (Complex)
w/order 直接 LLM 生成执行顺序 0.00
w/dependency LLM 生成依赖图 0.36
w/o T 直接输入程序示例(无过程树) 0.44
Ours 析取图 + 过程树 0.68

结论

  • 无析取图 → SE 严重下降(复杂任务中 LLM 无法直接调度)
  • 无过程树 → Exe 和 GCR 显著降低

4.4 真实世界实验

场景:3 个机械臂 + 支架安装相机,协作完成工件传送带放置任务

流程

  1. 专家手动构建场景描述(约 15 分钟)
  2. 输入场景文件和任务描述
  3. 在仿真中验证安全性和正确性
  4. 直接部署到真实场景

结果:产生合理、高效的计划和可正确执行的程序


5. 核心创新总结

创新点 说明
LLM + 确定性算法混合范式 LLM 负责分解/分配,析取图负责调度,避免 LLM 直接调度
过程树引导程序生成 树结构表示操作流程变体,将代码生成转化为路径选择
IMR-Bench 基准 首个工业多机器人任务规划与程序生成基准
Sim2Real 验证 仿真规划直接部署真实场景
模型无关 GPT-4o 和 Qwen3-32B 性能相当

6. 与现有方法的关键区别

维度 现有方法 IMR-LLM
调度方式 LLM 直接生成 析取图 + 确定性算法
程序生成 少量示例 ICL 过程树路径选择
适用场景 家庭/操作任务 工业场景
可扩展性 示例依赖 树结构易扩展
可解释性 低(LLM 黑盒) 高(析取图可审查)

7. 局限性与未来方向

局限性 未来方向
复杂任务中 LLM 仍可能产生次优分解/分配 结合更多约束验证
程序生成上下文变长导致幻觉 更结构化的生成方式
当前为开环系统 集成执行反馈,建立闭环系统
场景描述需人工构建(约 15 分钟) 自动化场景理解

8. 结论

本文提出的 IMR-LLM 是首个专门针对工业多机器人场景的任务规划与程序生成框架。核心贡献:

  1. 混合调度范式:LLM 只负责分解和分配,复杂调度由析取图 + 确定性算法完成,避免 LLM 直接调度不可靠的问题
  2. 过程树程序生成:树结构编码操作流程变体,将代码生成转化为路径选择,提高可执行性
  3. IMR-Bench 基准:50 个任务 × 3 个难度级别,推动工业机器人 LLM 研究

实验证明该方法在仿真和真实场景中均显著优于现有方法,为工业智能制造中的 LLM 应用提供了新路径。


9. 资源

  • 📄 论文标题:IMR-LLM: Industrial Multi-Robot Task Planning and Program Generation using Large Language Models
  • 👨‍🔬 作者:Xiangyu Su, Juzhan Xu, Oliver van Kaick, Kai Xu, Ruizhen Hu
  • 🏫 机构:深圳大学 + SpeedBot Robotics + 卡尔顿大学 + 中国科学院