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