外部环境¶
第一方环境¶
Farama 基金会维护着许多其他项目,它们使用 Gymnasium API,环境包括:网格世界 (Minigrid)、机器人 (Gymnasium-Robotics)、3D 导航 (Miniworld)、网页交互 (MiniWoB++)、街机游戏 (Arcade Learning Environment)、Doom (ViZDoom)、元目标机器人 (Metaworld)、自动驾驶 (HighwayEnv)、复古游戏 (stable-retro) 等等。
Farama 基金会还维护着 RL 的替代 API,包括:多智能体 RL (PettingZoo)、离线 RL (Minari)、多目标 RL (MO-Gymnasium)、目标 RL (Gymnasium-Robotics)。
使用 Gymnasium 的第三方环境¶
此页面包含非 Farama 基金会维护的环境,因此无法保证其功能按预期运行。
如果您想贡献一个环境,请通过 Discord 联系我们,然后通过编辑此文件提交一个 PR,更多说明可以在该文件中找到。
自动驾驶环境¶
自动驾驶车辆和交通管理。
-
一个用于空中交通管理任务的 Gymnasium 环境集合,支持民用和城市航空应用。基于开源空中交通模拟器 BlueSky 构建。
gym-electric-motor: 电机模拟的 Gym 环境
一个用于模拟各种电机驱动的环境,考虑了不同类型的电机和转换器。
racecar_gym: 使用 PyBullet 的微型赛车环境
一个使用 PyBullet 物理引擎的微型赛车 Gym 环境。
-
SUMO 交通模拟器中各种环境的 Gymnasium 包装器。支持单智能体和多智能体设置(使用 pettingzoo)。
生物 / 医疗环境¶
与生物系统交互。
-
ICU-Sepsis 是一个表格强化学习环境,模拟重症监护室 (ICU) 中败血症的治疗。该环境在论文 ICU-Sepsis: A Benchmark MDP Built from Real Medical Data 中介绍,它轻量级且易于使用,但对大多数强化学习算法来说具有挑战性。
经济 / 金融环境¶
所有与经济学相关的内容。
-
AnyTrading 是一个 Gym 环境集合,用于基于强化学习的交易算法,重点关注简洁性、灵活性和全面性。
gym-mtsim: MetaTrader 5 平台的金融交易
MtSim 是一个用于 MetaTrader 5 交易平台的模拟器,用于基于强化学习的交易算法。
-
Gym Trading Env 从历史数据模拟股票(或加密货币)市场。它设计为快速且易于定制。
电气 / 能源环境¶
管理电子流。
EV2Gym: 一个用于电动汽车智能充电的现实 EV-V2G-Gym 模拟器
EV2Gym 是一个完全可定制且易于配置的环境,用于小规模和大规模的电动汽车 (EV) 智能充电模拟。此外,还包括非 RL 基线实现,如数学编程、模型预测控制和启发式方法。
游戏环境¶
棋盘游戏、视频游戏和所有其他互动娱乐媒体。
-
这是一个自定义的扫雷 Gymnasium 环境,允许可选的自定义蒙版以增加复杂性。可通过棋盘大小、地雷密度和自定义蒙版完全定制。
-
Craftium 将 Minetest 游戏引擎封装到 Gymnasium API 中,提供了一个现代化且易于使用的平台,用于设计类似 Minecraft 的 RL 环境。
-
作为 Farama Gymnasium 环境的 Flappy Bird。
flappy-bird-gymnasium: 一个用于 Gymnasium 的 Flappy Bird 环境
一个简单的环境,用于在广受欢迎的街机风格手机游戏 Flappy Bird 的克隆版上进行单智能体强化学习算法。支持状态和像素观察环境。
Generals.io bots: 为 generals.io 开发您的智能体!
Generals.io 是一款快节奏的 2D 网格策略游戏。我们通过 Gymnasium/PettingZoo API 使机器人开发变得易于访问。
pystk2-gymnasium: SuperTuxKart 赛车 Gymnasium 包装器
使用围绕 SuperTuxKart 的 Python 包装器,允许访问世界状态并控制比赛。
QWOP: Bennet Foddy 游戏 QWOP 的环境
QWOP 是一款关于在 100 米赛道上跑得极快的游戏。通过这个 Gymnasium 环境,您可以训练自己的智能体并尝试打破当前的世界纪录(人类为 5.0 游戏秒,AI 为 4.7 游戏秒)。
Tetris Gymnasium: 一个完全可配置的 Gymnasium 兼容俄罗斯方块环境
Tetris Gymnasium 是俄罗斯方块作为 Gymnasium 环境的简洁实现。它可以广泛定制(例如,棋盘尺寸、重力等),文档齐全,并包含许多如何使用它的示例,例如提供训练脚本。
tmrl: 通过 RL 进行 TrackMania 2020
tmrl 是一个分布式框架,用于在实时应用中训练深度强化学习 AI。它在 TrackMania 2020 视频游戏中进行了演示。
数学 / 计算¶
减少计算量,证明数学定理等等。
spark-sched-sim: Apache Spark 中调度 DAG 任务的环境
spark-sched-sim 模拟 Spark 集群,用于基于 RL 的作业调度算法。Spark 作业被编码为有向无环图 (DAG),为在 RL 上下文中使用图神经网络 (GNN) 提供了机会。
-
一个用于指导基于饱和算法(例如 Vampire)的自动化定理证明器的环境。
机器人环境¶
自主机器人。
-
BSK-RL 是一个 Python 包,用于构建航天器任务问题的 Gymnasium 环境。它建立在 Basilisk 之上,Basilisk 是一个模块化且快速的航天器模拟框架,使模拟环境具有高保真度和计算效率。BSK-RL 还包括一个用于处理这些环境的实用程序和示例集合。
-
Connect-4-Gym 是一个环境,旨在创建通过自我对弈学习并分配 Elo 等级的 AI。该环境可用于在经典棋盘游戏四子棋上训练和评估强化学习智能体。
-
FlyCraft 是一个用于固定翼无人机任务的 Gymnasium 环境。默认情况下,FlyCraft 提供两个任务:姿态控制和速度矢量控制。这些任务的特点是多目标和长时程,对 RL 探索构成了重大挑战。此外,奖励可以配置为马尔可夫或非马尔可夫,使得 FlyCraft 适用于非马尔可夫问题的研究。
-
JAX 中的 RL 环境,支持高度向量化的环境,并支持 Gym、MinAtari、bsuite 等多种环境。
-
gym-jiminy 提供了 Gym 的初始扩展,用于机器人技术,使用 Jiminy,一个极快且轻量级的多关节系统模拟器,使用 Pinocchio 进行物理评估,Meshcat 进行基于网络的 3D 渲染。
gym-pybullet-drones: 四旋翼飞行器控制环境
一个使用 PyBullet 模拟 Bitcraze Crazyflie 2.x 纳米四旋翼飞行器动力学的简单环境。
-
Itomori 是一个用于风险感知无人机飞行的环境,它提供了解决机会约束马尔可夫决策过程 (CCMDP) 的工具。该环境允许模拟、可视化和评估无人机在复杂和高风险环境中的导航,结合了 GPS 不确定性、碰撞风险和自适应飞行规划等变量。Itomori 旨在通过提供可调整参数、详细可视化和对不确定环境中智能体行为的洞察来支持无人机路径规划研究。
OmniIsaacGymEnvs: NVIDIA Omniverse Isaac 的 Gym 环境
Omniverse Isaac 模拟器的强化学习环境。
panda-gym: 使用 PyBullet 物理引擎的机器人环境
基于 PyBullet 模拟机器人手臂移动物体。
-
一个用于在各种无人机上测试强化学习算法的库。它建立在 Bullet 物理引擎上,提供灵活的渲染选项、时间离散的可步进物理、Python 绑定,并支持任何配置的自定义无人机,无论是双翼飞机、四旋翼飞行器、火箭,以及您能想到的一切。
safe-control-gym: 评估 RL 算法的安全性
通过基于 PyBullet 的 CartPole 和 Quadrotor 环境评估安全性、鲁棒性和泛化能力——使用 CasADi(符号)*先验*动力学和约束。
Safety-Gymnasium: 确保真实世界 RL 场景中的安全性
高度可扩展和可定制的安全强化学习库。
-
一个使用 PyBullet 和 Mujoco 构建的用于学习抓取 3D 变形物体的 Gymnasium 环境集合。
电信系统环境¶
交互和/或管理无线和/或有线电信系统。
-
一个开放、极简的 Gymnasium 环境,用于无线移动网络中的自主协作。
其他¶
-
Buffalo-Gym 是一个多臂老虎机 (MAB) Gymnasium,主要用于协助调试 RL 实现。MAB 通常易于理解智能体正在学习什么以及是否正确。Buffalo-gym 包含 Bandits、Contextual bandits 和带有别名的 contextual bandits。
-
流行强化学习环境的上下文扩展,支持泛化训练和测试分布,例如具有可变杆长或具有不同地面摩擦的 Brax 机器人的 CartPole。
-
一个用于动态算法配置的基准库。其重点是不同 DAC 方法的可重现性和可比较性,以及优化过程的简易分析。
gym-cellular-automata: 细胞自动机环境
智能体通过改变其细胞状态与细胞自动机交互的环境。
-
默认类实现了“前往目标”,但可以轻松定制以适应不同任务,包括各种网格、奖励、动力学和任务。它支持不同的观察类型(离散、坐标、二进制、像素、部分)。适用于快速测试和原型化 RL 算法,包括表格型和函数逼近型。
-
Gym4ReaL 是一个综合性的现实环境套件,旨在支持开发和评估能够在真实世界场景中运行的 RL 算法。该套件包含一系列多样化的任务,使 RL 算法面临各种实际挑战,例如水资源管理、微电网能源管理、金融交易等。
-
一个用于轻松将离散 MDP 作为 Gym 环境实现的环境。将一组矩阵(
P_0(s)
、P(s'| s, a)
和R(s', s, a)
)转换为表示由这些动力学控制的离散 MDP 的 Gym 环境。 SimpleGrid: 一个用于 Gymnasium 的简单网格环境
SimpleGrid 是一个用于 Gymnasium 的超级简单且极简的网格环境。它易于使用和定制,旨在为快速测试和原型化不同的 RL 算法提供一个环境。
使用 Gym 的第三方环境¶
有大量第三方环境使用各种版本的 Gym。其中许多可以进行调整以与 Gymnasium 配合使用(参见与 Gym 的兼容性),但不能保证完全正常运行。
视频游戏环境¶
-
一个 3v3 MOBA 环境,您可以在其中训练生物互相战斗。
-
一个简单的环境,用于基准测试粘液排球游戏克隆版上的单智能体和多智能体强化学习算法。
Unity ML Agents: Unity 游戏引擎的环境
Unity 游戏引擎中任意和预制环境的 Gym(和 PettingZoo)包装器。
-
使用 Open 3D Engine 进行 AI 模拟,并可与 Gym 互操作。使用 PyBullet 物理引擎。
机器人环境¶
-
Mars Explorer 是一个兼容 Gym 的环境,设计和开发旨在初步弥合强大的深度强化学习方法与未知地形探索/覆盖问题之间的差距。
-
Robo-gym 提供了一个机器人任务的强化学习环境集合,适用于模拟和真实世界的机器人技术。
-
Gym 环境,让您可以通过互联网在实验室中控制真实机器人。
-
一个用于共同优化软机器人设计和控制的大规模基准。
-
一个具有高质量真实场景的模拟环境,使用 PyBullet 进行交互式物理模拟。
-
这是一个通过 Isaac Gym 提供双灵巧手操作任务的库。
自动驾驶环境¶
-
一个为 Duckietown 项目(小型自动驾驶汽车课程)构建的车道保持模拟器。
-
一个用于解决各种交通场景运动规划问题的 Gym,兼容 CommonRoad 基准,提供可配置的奖励、动作空间和观察空间。
-
在模拟中训练基于模型的 RL 智能体,无需微调即可将其转移到小型赛车上。
-
一个用于自动赛车的开源强化学习环境。
其他环境¶
-
用于编译器优化任务的强化学习环境,例如 LLVM 阶段排序、GCC 标志调优和 CUDA 循环嵌套代码生成。
-
该环境包含搬运谜题,玩家的目标是将所有箱子推到仓库的存储位置。
NLPGym: 开发用于解决 NLP 任务的 RL 智能体的工具包
NLPGym 为标准 NLP 任务(如序列标注、问答和序列分类)提供交互式环境。
-
ShinRL: 一个从理论和实践角度评估 RL 算法的库 (Deep RL Workshop 2021)
openmodelica-microgrid-gym: 微电网中控制电力电子转换器的环境
OpenModelica Microgrid Gym (OMG) 包是一个软件工具箱,用于基于电力电子转换器进行能量转换的微电网的模拟和控制优化。
-
GymFC 是一个模块化框架,用于合成神经飞行控制器。已用于为世界上第一个开源神经网络飞行控制固件 Neuroflight 生成策略。