使用 OpenAI Gym 作为实践环境,这是一个可以用来研究和比较强化学习算法的开源工具包,包含了各种可用来训练和研究新的强化学习算法的模拟环境。
首先需要安装 OpenAI Gym,最简洁的方法是使用 pip install gym。
OpenAI Gym 提供了多种环境,比如 Atari、棋盘游戏以及 2D 或 3D 游戏引擎等。在 Windows 上的最小安装只支持算法基本环境,如 toy_text 和 classic_control 这几种。
如果你想研究其他环境,需要安装更多依赖项,如 OS X 和 Ubuntu 系统支持完整版本。详细的说明可以在 OpenAI Gym 的 GitHub 链接(https://github.com/openai/gym#installing-dependencies-for-specific-environments)中阅读。
上述代码实现了智能体如何从四个动作中随机选择其中一个:
另一个需要注意的是,在这个环境中,动作空间是离散的,观测空间是 Box 类型的。在 OpenAI Gym 中提到的动作空间和观测空间的离散和 Box 是指它们允许的数值。离散空间是一个非负数值区间,在这里为(0...3);而观测空间是一个 n 维的盒子,比如 Pac-Man 中任何合理的观测都是一个 210×160×3 的数组。
OpenAI Gym 里包含很多环境,这都是它们社区的积极贡献。若要获取所有环境列表,可以运行如下代码(来自https://github.com/openai/gym):
目前,OpenAI Gym 里共包含 777 种不同的环境,下图是早先使用相同随机算法的 Pac-Man 游戏的图像。