用ChatGPT和强化学习玩转《我的世界》,智源Plan4MC攻克24个复杂任务
在开放式的环境中学习多种任务是通用智能体的重要能力。
具有无限生成的复杂世界和大量开放任务,游戏《我的世界》(Minecraft)成为近几年开放式学习研究的重要测试环境。
智源研究院和北京大学的团队提出了在无专家数据的情况下高效解决 Minecraft 多任务的方法 Plan4MC。目前可以完成 24 个复杂多样任务,为当前强化学习路径下最优表现,成功率相比所有的基线方法有巨大提升。
研究结合强化学习和规划的方法,将解决复杂任务分解为学习基本技能和技能规划两个部分。使用内在奖励的强化学习方法训练三类细粒度的基本技能。智能体使用大型语言模型构建技能关系图,通过图上的搜索得到任务规划。
论文链接:
https://arxiv.org/abs/2303.16563
代码链接:
https://github.com/PKU-RL/Plan4MC
项目主页:
https://sites.google.com/view/plan4mc
学习 Minecraft 中的复杂任务对当前强化学习算法是巨大挑战
另一方面,复杂任务通常需要很长的执行时间,要求完成许多隐含子任务。
目前围绕 MineRL 挖钻石竞赛的研究普遍使用专家演示的数据集,面临诸多研究困难:
此前OpenAI 的 VPT 等研究使用大量带标签的数据学习策略。在缺少额外数据集的情况下,用强化学习训练 Minecraft 的任务较为低效;
NVIDIA 的 MineAgent 研究使用 PPO 算法仅能完成若干个简单任务;
DeepMind 的 Dreamer-v3 基于模型的 SOTA 方法,在简化环境模拟器的情况下,也需要采样 1000 万步学会获得原石。
Plan4MC 如何应对以上挑战?
1.使用强化学习和规划解决 Minecraft 中的多任务。
Minecraft 中玩家通过探索能够获得数百种物品。任务定义为初始条件和目标物品的组合,例如,“初始化工作台,获得熟牛肉”。解决这个任务包含 “获得牛肉”、“用工作台和原石制作熔炉” 等步骤,这些细分的步骤称为技能。人类在世界中掌握和组合此类技能来完成各种任务,而不是独立地学习每个任务。Plan4MC 的目标是学习策略掌握大量的技能,再通过规划将技能组合成任务。
作者在 MineDojo 模拟器上构建了 24 个测试任务,它们涵盖了多种行为(砍树、挖原石、与动物交互)、多种地形,涉及 37 个基本技能。需要数十步的技能组合和数千步的环境交互来完成各个任务。
2、使用内在奖励的强化学习训练基本技能,利用大语言模型构建技能图进行任务规划,解决探索困难和样本效率的问题。
学习技能
由于强化学习在训练中难以让玩家大范围跑动探索世界,许多技能仍不能被掌握。作者提出将探索和寻找的步骤分离出来,将 “砍树” 技能进一步细化为 “找树” 和 “获得木头”。Minecraft 中的所有技能被分为三类细粒度的基本技能:
寻找:给定目标物品,玩家要在世界中探索,找到和接近该物品。 操作:利用现有的工具在附近完成一些任务,如放置工作台、与动物交互、挖方块。 合成:用低级物品合成高级物品。
Plan4MC 相较包括 ChatGPT 等的各种基线方法的优势,在大量困难 Minecraft 任务上得到验证 。