OpenSpiel:游戏强化学习框架
OpenSpiel 是一个用于游戏中通用强化学习和搜索/规划研究的环境和算法集合。OpenSpiel 支持 n 人(单人和多人)零和、合作和一般和博弈,一次性和序列性博弈,严格轮流和同时行动的博弈,完全信息和不完全信息博弈,以及传统的多智能体环境,如(部分和完全可观察的)网格世界和社会困境。OpenSpiel 还包括用于分析学习动态和其他常见评估指标的工具。游戏以程序化的扩展形式表示,并进行了一些自然扩展。核心 API 和游戏用 C++ 实现,并暴露给 Python。算法和工具同时用 C++ 和 Python 编写。
要在 Google Colaboratory 中试用 OpenSpiel,请参阅 open_spiel/colabs
子目录或从这里开始。
索引
请从以下选项中选择:
有关核心概念、形式和术语的更详细介绍,包括算法概述和一些结果,请参阅 OpenSpiel:游戏强化学习框架。
要了解 OpenSpiel 概述和核心 API 的示例用法,请查看我们的教程:
- Marc Lanctot 的 动机、核心 API、复制子动力学和不完全信息游戏简介。 (幻灯片) (colab)
- Edward Lockhart 的 动机、核心 API、在 Kuhn 扑克、Leduc 扑克和 Goofspiel 上实现 CFR 和 REINFORCE。 (幻灯片) (colab)
如果您在研究中使用 OpenSpiel,请使用以下 BibTeX 引用论文:
@article{LanctotEtAl2019OpenSpiel,
title = {{OpenSpiel}: A Framework for Reinforcement Learning in Games},
author = {Marc Lanctot and Edward Lockhart and Jean-Baptiste Lespiau and
Vinicius Zambaldi and Satyaki Upadhyay and Julien P\'{e}rolat and
Sriram Srinivasan and Finbarr Timbers and Karl Tuyls and
Shayegan Omidshafiei and Daniel Hennes and Dustin Morrill and
Paul Muller and Timo Ewalds and Ryan Faulkner and J\'{a}nos Kram\'{a}r
and Bart De Vylder and Brennan Saeta and James Bradbury and David Ding
and Sebastian Borgeaud and Matthew Lai and Julian Schrittwieser and
Thomas Anthony and Edward Hughes and Ivo Danihelka and Jonah Ryan-Davis},
year = {2019},
eprint = {1908.09453},
archivePrefix = {arXiv},
primaryClass = {cs.LG},
journal = {CoRR},
volume = {abs/1908.09453},
url = {http://arxiv.org/abs/1908.09453},
}
版本控制
我们使用语义化版本控制。