堪称游戏 AI“养蛊”!OpenAI 发布大型多智能体游戏
最近,OpenAI 发布了一个名为“Neural MMO”的大型多智能体游戏,该平台支持在一个持久的任务中使用大量且数量可变的智能体。大量智能体和的加入导致了更好的勘探,不同的生态位形成,和更大的整体能力。
近年来,多智能体设置已成为深度强化学习的有效研究平台。尽管取得了这些进展,多智能体强化学习仍然面临两大挑战。我们需要创建具有高度复杂性上限的式任务:当前要么复杂但应用面太窄,要么但太简单。持久性和大规模等属性是关键,但是我们还需要更多的基准来量化大规模和持久性的学习进度。而这次大型多人在线游戏 (MMOs) 模拟了一个大型生态系统,该系统由数量不等的玩家在持久且广泛的中进行竞争。
1、持久性: 无需重置,智能体在其他学习智能体存在的情况下并发学习。策略必须考虑长期的范围,并适应其他智能体行为中潜在的快速变化。
2、规模:支持大量数量可变的实体。OpenAI 的实验考虑了在 100 个并发服务器中的每个服务器中 128 个并发智能体的最长 1 亿个期。
3、效率:入门计算门槛很低。OpenAI 可以在单个桌面 CPU 上训练出有效的策略。
4、扩展:与现有的 MMO 们类似,OpenAI 设计 Neural MMO 也是为了更新新内容。目前的核心功能包括瓦片地形的程序生成、食物和水的觅食系统以及战略作战系统。开源驱动的扩展在未来是有机会的。
在这个游戏中,玩家 (智能体) 可以加入任何可用的服务器 (),每个服务器 () 都包含一个自动生成的可配置大小的瓦片地形游戏地图。有些地砖,如可食用的森林地砖和草地砖,是可移动的。其他的,如水和固体石,则不是。智能体程序在边缘的随机生成。他们必须获得食物和水,并避免战斗从其他智能体,以维持他们的健康。踩在森林地砖上或靠近水砖的地方,分别会重新填充代理的部分食物或供水。然而,森林地砖的食物供应有限,随着时间的推移,食物会缓慢再生。这意味着智能体必须竞争食物砖,同时周期性地从无限的水砖中补充他们的水供应。玩家在战斗中使用三种战斗风格,代表肉搏(近战),射手(远程物理)和(远程魔法)。
这个平台提供了一个过程化的生成器和可视化工具,用于实现值函数、映射访问分布和学习策略的智能体依赖性。基线 个世界的策略梯度进行训练。
作为一个简单的基线团队使用普通的策略梯度来训练一个小型的、完全连接的体系结构,将值函数基线和励折扣作为唯一增强。智能体不会因为实现特定的目标而获得励,而是只根据其生命周期 (轨迹长度) 进行优化——即在其生命周期中,每一次滴答声都会获得 1 个励。团队通过计算所有玩家的最大值 (OpenAI Five 也使用了这个技巧),将可变长度的观察值 (比如周围玩家的列表) 转换为单个长度向量。源版本基于 PyTorch 和 Ray 实现,包括完全分布式培训。
图丨为了提高效率,策略在由 16 个智能体组成的组之间共享。在测试时,合并在成对实验中学到的总体,并在一个固定的总体大小下评估期,且只对觅食进行评估,因为作战策略更难直接比较。在更大的人群中训练出来的智能体总是更优秀(来源:OpenAI)
智能体的策略是从多个种群中均匀采样的——不同种群中的代理共享架构,但只有相同种群中的智能体共享权重。初步实验表明,随着多智能体交互作用的增加,智能体的能力逐渐增强。增加并发玩家的最大数量会放大探索;种群数量的增加放大了生态位的形成,也就是说,种群在地图不同区域的分布和觅食的趋势。
在老版本的 mmo 中没有标准的程序来评估跨服务器的相对玩家能力。然而,MMO 服务器有时会经历合并,即来自多个服务器的玩家被放置在单个服务器中。团队通过合并在不同服务器上训练的玩家基础来实现“锦标赛”风格的评估。这使团队能够直接比较在不同实验中学习到的策略。团队改变了测试时间范围,发现在较大中训练的智能体始终优于在较小中训练的智能体。
在自然界中,动物之间的竞争促使它们分散开来以避免冲突。OpenAI 观察到,随着并发智能体数量的增加,映射覆盖率也在增加。智能体学习探索仅仅是因为其他智能体的存在提供了这样做的自然动机。
图丨数量 (种群数量) 放大了生态位的形成。地图覆盖游戏地图;不同的颜色对应不同的。训练单一种群往往会产生单一的深度探索径。训练 8 个种群会导致许多更浅的径:种群分散以避免间的竞争(来源:OpenAI)
在一个足够大且资源丰富的中,团队发现不同的智能体种群分布在整个地图上,以避免在种群增长时与其他智能体竞争。由于实体无法在竞争中胜过其人口中的其他智能体 (即与它们共享权重的代理),它们倾向于在地图上寻找包含足够资源以维持其人口的区域。DeepMind 在并发多代理研究中也观察到类似的效果。
图丨每个正方形映射显示位于正方形中心的智能体对其周围的智能体的响应。我们展示了初始化和训练早期的觅食图;额外的依赖关系映射对应于不同的觅食和战斗公式(来源:OpenAI)
OpenAI 通过将智能体固定在假想映射作物的中心来可视化智能体-智能体依赖关系。对于该智能体可见的每个,OpenAI 将显示如果在该有第二个智能体,值函数将是什么。OpenAI 发现,在觅食和战斗中,智能体学习依赖于其他智能体的策略。智能体们学习“牛眼”地图,在仅仅几分钟的训练后就能更有效地开始搜寻。当智能体们学习中的战斗机制时,他们开始学会适当地评估有效的交战范围和接近的角度。
总而言之,OpenAI 的 Neural MMO 解决了之前基于游戏的两个关键,但仍有许多问题没有解决。未来我们还能期待更多的突破。