Farama-Foundation/Gymnasium
A standard API for single-agent reinforcement learning environments, with popular reference environments and related utilities (formerly Gym)
什么是 Gymnasium?
Gymnasium 是一个 Python 库,为强化学习(RL)研究提供 标准 API。它允许你针对各种模拟环境创建、运行和比较 RL 智能体——从简单的经典控制任务到复杂的基于物理或 Atari 游戏。它是 OpenAI 原始 Gym 库的社区维护分支,也是未来更新发布的地方。
为什么重要
- 统一接口 – 所有环境都公开相同的
reset、step、action_space和observation_space方法,因此相同的学习代码可以跨多个任务使用。 - 可复现性 – 环境是版本化的(例如,
CartPole-v1),每当更改可能影响学习结果时,版本号就会增加。 - 广泛的生态系统 – 包括经典控制、Box2D、玩具文本、MuJoCo、Atari,以及许多已经遵循 Gymnasium API 的第三方环境。
- 社区支持 – 文档网站、Discord 聊天和清晰的贡献指南使新手容易获得帮助,开发者也可以轻松添加新环境。
如何开始(来自 README 的代码片段)
import gymnasium as gym
env = gym.make("CartPole-v1")
observation, info = env.reset(seed=42)
for _ in range(1000):
action = env.action_space.sample() # 挑选随机动作
observation, reward, terminated, truncated, info = env.step(action)
if terminated or truncated:
observation, info = env.reset()
env.close()
创建环境、重置它、采取行动并处理情节终止——只需几行代码。
安装
pip install gymnasium # 仅核心库
pip install "gymnasium[atari]" # 添加 Atari 依赖
pip install "gymnasium[all]" # 安装所有可选依赖
(可选包很大,有时难以构建,因此你可以只安装所需的部分。)
你可能也会使用的相关项目
| 项目 | 添加内容 |
|---|---|
| CleanRL | 使用 Gymnasium API 的简单参考 RL 算法实现。 |
| PettingZoo | Gymnasium 的多智能体扩展,带有自己的环境集。 |
| Farama Foundation 环境 | 遵循相同 API 的其他精选环境。 |
参与贡献
阅读 CONTRIBUTING.md 获取指南。 如果可能,请通过 GitHub Sponsors 链接支持该项目。
摘要 – Gymnasium 是任何构建或测试强化学习智能体的人的首选库,为大量模拟任务提供干净、版本化的接口。
相关
- 项目
- 项目
- 项目
- 项目
- 项目