Instruction Following with Goal-Conditioned Reinforcement Learning in Virtual Environments

TL;DR

IGOR以LLM规划、PPO执行,在IGLU与Crafter实现语言驱动的分层控制。

cs.AI 🔴 高级 2024-07-12 28 次浏览
Zoya Volovikova Alexey Skrynnik Petr Kuderov Aleksandr I. Panov
大语言模型 强化学习 目标条件控制 具身智能 虚拟环境

核心发现

方法论

IGOR由Language Module、Task Manager和Policy Module组成。LLM将复杂指令转为有序子目标,Task Manager把子目标编码并监测完成状态,基于异步PPO的策略在视觉观测与目标编码上执行动作。策略采用目标化单子任务训练,并以课程采样调整困难任务比例。

关键结果

  • 论文在IGLU与Modified Crafter上验证方法。IGLU包含109条训练指令和41条测试指令,使用F1评价;作者报告IGOR超过NeurIPS IGLU竞赛方案,但所给正文未提供具体F1数值。
  • IGLU中,Flan-T5 base把语言映射为坐标或长方体primitive;策略学习放置/移除单块。Crafter中,IGOR超越基于Dreamer-v3的基线,但提供文本未列出具体分数或提升百分比。
  • 课程采样依据任务平均奖励调整概率:成功任务取1/d,低于阈值τ的任务加入δ_i·d,再经softmax归一化。论文称课程学习提升最终智能体质量,并报告附录含消融实验。

研究意义

研究把LLM擅长的语言理解与RL擅长的细粒度环境操作分离并衔接,缓解通用LLM多步执行成功率低、空间推理弱的问题。它说明有限标注数据也可通过ChatGPT改写、任务分解和目标化训练构建可泛化的指令执行系统,对机器人、游戏代理和交互式自动化具有参考价值。

技术贡献

核心工程贡献是把复杂指令拆成可独立学习的目标单元,并由Task Manager统一编码、奖励和终止逻辑。PPO优化裁剪目标函数,策略输入扩展为包含子目标的POMDP观测;课程采样根据表现重分配训练概率。IGLU中还比较coords与primitives两种表示,Crafter则新增文本指令数据管线。

新颖性

新颖性不在于单独提出LLM规划或PPO,而在于针对虚拟环境建立可替换的三模块接口:语言规划、目标管理、视觉控制分别训练,再组合推理。相较端到端文本嵌入控制或手工动作翻译,IGOR更强调子任务级监督、课程学习和有限数据增强。

局限性

  • 论文正文只给出“超过”基线的定性结论,未在提供文本中列出IGLU F1、Crafter得分、置信区间或显著性检验,难以精确衡量收益。
  • IGLU语言数据规模仅109条训练、41条测试指令,Crafter指令由Mistral-7B-Instruct生成,可能存在模板偏差、语言分布有限和合成噪声。
  • 模块独立训练可能产生规划—执行分布错配;LLM若输出错误顺序或不可执行目标,Task Manager缺少显式纠错与重新规划机制。

未来方向

后续应公开完整分数、消融和计算成本,测试更长、更开放的指令及未见组合;可加入执行反馈驱动的LLM重规划、层级RL、奖励塑形和好奇心探索。还应研究跨环境迁移、多模态语言 grounding,以及真实机器人中的安全约束与人机澄清对话。

AI 总览摘要

复杂自然语言常要求智能体完成一长串相互依赖的动作。通用LLM虽然能生成计划,却缺乏稳定的空间理解和环境操作能力;传统强化学习则能学习细粒度动作,却通常只针对固定任务。论文提出IGOR,试图把两种能力组合起来。

IGOR包含三个模块:Language Module用微调LLM把指令转成子任务序列;Task Manager将子任务编码为策略输入,并判断何时完成、何时获得奖励;Policy Module使用异步PPO,在视觉观测和目标条件下执行单个子任务。训练时不让策略一次解决整条指令,而是采用目标化单任务和课程采样,逐步增加困难目标。语言模块还使用ChatGPT改写数据,并把常见动作合并为primitives。

实验覆盖IGLU和Modified Crafter。IGLU有109条训练指令、41条测试指令,智能体需按语言建造彩色方块结构;Crafter要求收集资源、制造工具和击败生物。作者报告IGOR超过IGLU竞赛中的T5、Pegasus和BrainAgent方案,并超过Dreamer-v3 Crafter基线,但所给正文未报告具体分数。研究的主要价值是提供了一个清晰、可替换的LLM—RL接口;主要风险则是数据规模小、合成语言偏差和缺少详细统计结果。

深度分析

研究背景

LLM规划研究已覆盖提示工程、机器人控制和语言到动作转换;CLIP、Dynalang、Emma、EmBERT及MineDojo等工作推进了语言 grounding。Crafter、Text-Crafter和IGLU提供了更复杂的具身任务,但LLM仍常缺少环境经验,端到端RL又难处理长指令与巨大状态空间。

核心问题

目标是让智能体依据复杂、含多个依赖关系的语言指令,在部分可观测虚拟环境中完成连续动作。难点包括指令分解、空间关系、动作可执行性、长时序信用分配,以及有限语言标注下的泛化。

核心创新

  • �� IGOR以Language Module、Task Manager、Policy Module形成显式接口。
  • �� LLM输出子任务而非低层动作,降低语言到控制的映射难度。
  • �� PPO策略以目标编码为条件,逐个学习目标。
  • �� ChatGPT数据增强、primitive表示和课程采样共同缓解小数据与任务难度问题。
  • �� Modified Crafter加入自由文本指令和相应数据集。

方法详解

  • �� 输入:用户指令与环境观测。
  • �� 规划:Flan-T5 base等LLM将指令转换为坐标、颜色或Crafter子任务序列。
  • �� 管理:Task Manager把目标编码为向量,检测完成并给予r=+1奖励。
  • �� 控制:异步PPO在POMDP中依据视觉观测和目标选择动作,优化裁剪目标E[min(ρ_tÂ_t, clip(ρ_t,1−ε,1+ε)Â_t)]。
  • �� 训练:课程采样依据平均奖励r_i、波动δ_i和阈值τ调节任务概率。

实验设计

IGLU观测包括64×64×3 POV图像、6维库存和pitch/yaw信息;动作含13个离散动作及6个连续移动量,测试walking与flying。数据为109条训练、41条测试英文指令。基线包括T5、Pegasus、BrainAgent;指标为IGLU F1。Crafter把每个原始achievement对应为子任务,使用Mistral-7B-Instruct生成与改写文本,并比较Dreamer-v3基线。

结果分析

作者报告IGOR在两个环境均有效:IGLU上超过NeurIPS竞赛方案,Crafter上超过Dreamer-v3基线。IGLU中coords与primitives支持不同粒度的规划,ChatGPT旋转增强扩展了语言—结构对应关系。课程学习被认为提升了最终策略,但所给正文没有提供具体F1、Crafter分数、运行成本或消融数值。

应用场景

该框架适合游戏代理、虚拟建筑、模拟训练、数字孪生和机器人预训练。部署前需要环境动作接口、少量指令—子任务标注、可检测的目标完成器,以及能处理视觉观测的RL策略。对工业系统而言,模块化结构便于替换LLM或控制器,但必须增加安全检查和失败恢复。

局限与展望

方法依赖环境特定的子任务定义和完成判据,跨环境迁移尚未证明。LLM规划错误会直接影响执行,策略也可能只在训练过的目标组合上可靠。数据由人工或其他LLM构造,存在偏差;异步PPO训练仍可能消耗较多计算。未来应增加闭环重规划、真实世界测试、严格统计报告和更强的多模态 grounding。

通俗解读 非专业人士也能看懂

可以把IGOR想成一家接复杂订单的厨房。顾客说:“先打败两个怪物,再取水。”总厨,也就是语言模块,不亲自切菜,而是把订单拆成“打败怪物、打败怪物、取水”。领班Task Manager把每张小菜单递给厨师,并检查一道菜是否完成;厨师则像训练好的强化学习代理,只负责眼前这一道工序。

厨师不是第一次接到订单才学习,而是提前练习许多单独动作。简单任务先练,困难任务后练;做得不好的菜会被更频繁地安排。这样,复杂订单就不再是一口气完成,而是变成一串可检查的小步骤。

在IGLU里,厨房变成方块建筑工地,代理按文字放置或移除彩色方块;在Crafter里,它要收集资源、制造工具和对付生物。这个方法的优点是分工清晰,缺点是总厨若理解错订单,后面的厨师可能会认真完成错误计划。

简单解释 像给14岁少年讲一样

想象你在玩一个很复杂的沙盒游戏。朋友发来一句话:“打倒两个僵尸,拿到水,再做一把铁剑。”如果让一个只会聊天的AI直接操作,它可能知道这些词,却不知道先做什么、去哪里、按哪个键。IGOR的办法是找两个搭档:一个负责读懂任务,一个负责真正玩游戏。

第一个搭档像班长,把长句拆成清单:“打僵尸、打僵尸、取水、造剑”。第二个搭档像游戏高手,每次只看清单中的一项,再根据屏幕画面行动。完成一项后,班长发奖励并换下一项。训练时,高手先练简单关卡,再练更难的关卡,就像游戏教学关逐渐升级。

研究者在IGLU中让AI按照描述搭方块建筑,在Crafter中让它收集东西、制造工具和打怪。论文说IGOR超过了若干比赛方法和Dreamer-v3基线,不过给出的正文没有具体分数。

它厉害的地方是把“读懂人话”和“控制角色”分开,坏处是如果班长一开始理解错,高手可能会非常认真地做错事。未来可以让系统边做边检查,发现不对就重新计划。

术语表

Large Language Model(大语言模型)

能处理和生成自然语言的大型神经网络。论文中它负责把复杂指令转换为可执行的高层子任务。

Language Module使用Flan-T5 base,并用ChatGPT或Mistral-7B-Instruct辅助数据增强。

Goal-Conditioned RL(目标条件强化学习)

策略不仅观察环境,还接收当前目标,并学习为该目标选择动作。它把长任务拆成多个较易学习的目标。

IGOR让策略一次执行一个子任务,而不是直接学习整条指令。

PPO(近端策略优化)

通过裁剪新旧策略概率比,限制策略更新幅度的策略梯度算法。这样可在探索与稳定性之间取得平衡。

Policy Module采用异步PPO,并优化论文给出的裁剪替代目标。

Task Manager(任务管理器)

连接语言规划和环境控制的中间模块。它编码子任务、检测完成、发放奖励并决定是否切换目标。

子任务完成时提供r=+1奖励,并负责结束回合。

Curriculum Learning(课程学习)

按照智能体能力逐步调整训练难度。表现较差的任务会获得更高采样机会。

IGOR依据平均奖励、奖励波动和阈值τ调整任务分布。

IGLU

要求智能体依据自然语言建造三维彩色方块结构的虚拟环境。其评价指标是F1。

论文使用109条训练指令和41条测试指令进行实验。

开放问题 这项研究留下的未解疑问

  • 1 缺少完整分数、置信区间和统计检验,因此尚不能判断优势在不同随机种子下是否稳定。
  • 2 模块独立训练如何影响错误传播、重新规划和长序列泛化,论文尚未充分回答。
  • 3 合成指令能否代表真实用户语言,以及方法能否迁移到新环境和真实机器人,仍需实验证明。

应用场景

近期应用

游戏与虚拟训练代理

游戏开发者可为环境定义可检测的achievement或子任务,再用少量指令训练LLM规划器和PPO控制器。系统适合资源收集、建筑和战斗等组合任务,但需要安全的动作接口与失败终止规则。

数字孪生操作助手

在模拟工厂或仓储环境中,用户可用自然语言发布多步骤订单;Language Module生成流程,Policy Module执行视觉操作。部署前应提供设备状态观测、目标完成检测和人工审批机制。

远期愿景

语言驱动机器人

未来可将IGOR迁移到机器人,让人用自然语言布置整理、搬运或装配任务。关键障碍是真实世界感知噪声、动作安全、未见物体和LLM计划错误,需要闭环反馈与物理约束。

原文摘要

In this study, we address the issue of enabling an artificial intelligence agent to execute complex language instructions within virtual environments. In our framework, we assume that these instructions involve intricate linguistic structures and multiple interdependent tasks that must be navigated successfully to achieve the desired outcomes. To effectively manage these complexities, we propose a hierarchical framework that combines the deep language comprehension of large language models with the adaptive action-execution capabilities of reinforcement learning agents. The language module (based on LLM) translates the language instruction into a high-level action plan, which is then executed by a pre-trained reinforcement learning agent. We have demonstrated the effectiveness of our approach in two different environments: in IGLU, where agents are instructed to build structures, and in Crafter, where agents perform tasks and interact with objects in the surrounding environment according to language commands.

cs.AI