跳转到主要内容

MORL的标准API和一系列参考环境。

项目描述

tests pre-commit Code style: black

MO-Gymnasium 是一个开源的 Python 库,用于开发和比较多目标强化学习算法,它提供了一个标准 API 以在学习和环境之间进行通信,以及符合该 API 的标准环境集合。本质上,这些环境遵循标准 Gymnasium API,但以 numpy 数组的形式返回向量化的奖励。

文档网站位于 mo-gymnasium.farama.org,我们有一个公开的 Discord 服务器(我们还在那里协调开发工作),您可以通过以下链接加入: https://discord.gg/bnJ6kubTg6

环境

MO-Gymnasium 包括来自 MORL 文献的环境,以及 MuJoco 等经典环境的多种目标版本。所有环境的完整列表可以在 这里 获取。

安装

要安装 MO-Gymnasium,使用

pip install mo-gymnasium

这不包括所有环境系列的依赖项(有些可能在某些系统上难以安装)。您可以安装某个系列,例如使用 pip install "mo-gymnasium[mujoco]" 或使用 pip install "mo-gymnasium[all]" 来安装所有依赖项。

API

与 Gymnasium 类似,MO-Gymnasium API 将环境建模为简单的 Python env 类。创建环境实例和与之交互非常简单 - 这里是一个使用 "minecart-v0" 环境的示例

import gymnasium as gym
import mo_gymnasium as mo_gym
import numpy as np

# It follows the original Gymnasium API ...
env = mo_gym.make('minecart-v0')

obs, info = env.reset()
# but vector_reward is a numpy array!
next_obs, vector_reward, terminated, truncated, info = env.step(your_agent.act(obs))

# Optionally, you can scalarize the reward function with the LinearReward wrapper
env = mo_gym.LinearReward(env, weight=np.array([0.8, 0.2, 0.2]))

有关多目标 MDP(MOMDP)和其他 MORL 定义的具体信息,请参阅 多目标强化学习和规划实用指南

您还可以在这个 colab 笔记本中查看更多示例! MO-Gym Demo in Colab

值得注意的相关库

MORL-Baselines 是一个存储库,其中包含与 MO-Gymnasium 相同作者的各种 MORL 算法的实现。它依赖于 MO-Gymnasium API,并展示了各种封装和环境使用的示例。

环境版本化

MO-Gymnasium 为了可重复性原因保持严格的版本控制。所有环境都以类似 "-v0" 的后缀结尾。当对可能影响学习结果的环境进行更改时,数字会增加以防止潜在的混淆。

开发路线图

我们在这里提供了未来发展的路线图: https://github.com/Farama-Foundation/MO-Gymnasium/issues/66

项目负责人

项目经理: Lucas AlegreFlorian Felten

该项目的维护也由更广泛的 Farama 团队贡献: farama.org/team

引用

如果您在研究中使用了此存储库,请引用

@inproceedings{felten_toolkit_2023,
	author = {Felten, Florian and Alegre, Lucas N. and Now{\'e}, Ann and Bazzan, Ana L. C. and Talbi, El Ghazali and Danoy, Gr{\'e}goire and Silva, Bruno C. {\relax da}},
	title = {A Toolkit for Reliable Benchmarking and Research in Multi-Objective Reinforcement Learning},
	booktitle = {Proceedings of the 37th Conference on Neural Information Processing Systems ({NeurIPS} 2023)},
	year = {2023}
}

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

mo-gymnasium-1.1.0.tar.gz (462.8 kB 查看哈希)

上传于 来源

构建分发

mo_gymnasium-1.1.0-py3-none-any.whl (469.4 kB 查看哈希值)

上传于 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面