本文介绍了PettingZoo库及其附带的Agent环境循环(“AEC”)游戏模型。PettingZoo是一个具有通用、优雅的Python API的多智能体环境集合库。PettingZoo的开发目标是加速多智能体强化学习(“MARL”)的研究,通过使工作更具可互换性、可访问性和可复制性,类似于OpenAI的gym库对单智能体强化教学的作用。PettingZoo的API继承了gym的许多特性,在MARL API中是独一无二的,因为它基于新颖的AEC游戏模型。我们认为,部分通过对流行MARL环境中主要问题的案例研究,流行游戏模型是MARL常用游戏的糟糕概念模型,它们促进了难以检测的严重错误,AEC游戏模型解决了这些问题。
多智能体强化学习(MARL)是现代机器学习的许多最著名成就的背后-AlphaGo Zero〔Silver等人,2017〕、OpenAI Five〔OpenAI,2018〕、AlphaStar〔Vinyals等人,2019〕。这些成就激发了MARL研究的热潮,仅在2020年,谷歌学者就为9480篇讨论多智能体强化学习的新论文编制了索引。尽管如此,在MARL进行研究仍然是一项重大的工程挑战。这在很大程度上是因为,与OpenAI的健身房中的单代理强化学习不同,MARL中不存在代理如何与环境交互的事实上的标准API。这使得为了新的目的重用现有的学习代码需要付出大量的努力,消耗了研究人员的时间,并阻碍了研究中更彻底的比较。缺乏标准化API也阻止了MARL中学习库的扩散。虽然存在大量基于Gym的单代理强化学习库或代码库(粗略衡量,在编写GitHub[2021]时,669个pip可安装软件包依赖于它),但只有5个具有较大用户群的MARL库存在[Lanctot等人,2019年,Weng等人,2020年,Liang等人,2018年,Samvelyan等人,2019年,Nota,2020年]。事实证明,这些基于健身房的学习库的激增对于机器人或金融等领域应用RL的采用至关重要,如果没有它们,应用MARL的增长将面临更大的挑战。受此启发,本文介绍了PettingZoo库和API,创建该库的目的是使MARL中的研究更易于访问,并作为Gym的多代理版本。在PettingZoo之前,众多的单次使用MARL API几乎完全继承了MARL文献《部分可观测随机游戏(“POSG”)》和《扩展形式游戏(“EFG”)中两个最著名的游戏数学模型的设计。在我们的开发过程中,我们发现这些常见的游戏模型对于以代码实现的多智能体游戏来说在概念上并不清晰,并且不能构成干净地处理所有类型的多智能环境的API的基础。为了解决这个问题,我们引入了一种新的正式游戏模型,代理环境循环(“AEC”)游戏,它是PettingZoo API的基础。我们认为这个模型在概念上更适合用代码实现的游戏。并且特别适用于一般MARL API。然后我们证明了任何AEC游戏都可以用标准POSG模型表示,任何POSG都可以用AEC游戏表示。为了说明AEC游戏模型的重要性,本文进一步涵盖了流行MARL实现中有意义的错误的两个案例研究。在这两种情况下,这些bug很长一段时间都没有被注意到。两者都源于使用令人困惑的游戏模型,如果使用基于AEC游戏的API,这将是不可能的。可以通过pip安装PettingZoo来安装PettingZoo库