发布说明¶

PettingZoo 1.25.0¶

发布于 2025-04-22 - GitHub - PyPI

PettingZoo 1.25.0 发布说明

在此 PettingZoo 版本中,我们引入了对 python 3.12gymnasium>=1.0.0agilerl>=2.0.0 的支持。我们已弃用 python 3.8,并添加了警告,为将来在后续版本中将 MPE 环境转移到 MPE2 包做准备。

自 2024 年 1 月发布上一版本以来,我们一直致力于实现错误修复。

PettingZoo 1.25.0 与 Supersuit 的新版本同时发布。

重大变更

  • agent_selector 已重命名为 AgentSelector (#1194)。
  • 不再支持 Python 3.8 (#1246)。
  • 将 gymnasium 更新至 >=1.0.0 (#1272)。
  • AgileRL 教程更新至版本 2.0.0 (#1258)。

新特性和改进

  • 从 tictactoe 中移除了未使用的 ansi 渲染代码 (#1171)。
  • 添加了与 pytest 版本 8 的兼容性 (#1177)。
  • 移除了 Maze Craze 中不必要的警告 (#1164)。
  • 在 README 中添加了关于必要 Linux 包的注释 (#1191)。
  • 更新了 third_party_envs.md (#1201)。
  • 更新了 TicTacToe 环境 (#1192)。
  • 在 MPE simple 环境中添加了半径重缩放 (#1213)。
  • third_party_envs 中添加了易于安装的 gfootball 环境,以及带有 pettingzoo api 的 SMAC 和 SMACv2 (#1217)。
  • 将 Box Jump 添加到第三方环境 (#1276)。
  • 已启用对 python 3.12 的支持 (#1226)。
  • 移除了 RLCard 环境中的重复代码 (#1282)。
  • 在 MPE 导入中添加了弃用警告 (#1280)。

错误修复

  • 修复了来自 pytest 的约 30,000 个警告 (#1157)。
  • 修复了 Pyright 升级问题 (#1166)。
  • 修复了 custom_environment.index.md 中 parallel API 链接的拼写错误 (#1183)。
  • 修复了 MacOS pygame no hardware accelerated device 错误 (#1190)。
  • 修复了用于处理嵌套观测字典的测试 (#1172)。
  • 修复了与 inline LaTeX 一起渲染不正确的图像 (#1198)。
  • 修复了 SB3 教程 ActionMask 中的错误 (#1203)。
  • 修复了 TerminateIllegalWrapper 错误 (#1206)。
  • 修复了 Order enforcing wrapper 错误 (#1205)。
  • 修复了 CustomActionMaskedEnvironment 类的渲染函数中的错误 (#1239)。
  • 修复了 connect_four 的损坏测试 (#1243)。
  • 修复了用于构建文档的 Github Workflow (#1268)。
  • 修复了 Pyright 类型错误 (#1270)。
  • 修复了 AgileRL 教程 CI/CD workflow (#1275)。
  • 通过修复 RNG 种子设置,使 AECEnv/ParallelEnv rps 示例变为确定性 (#1277)。
  • 库中使用的项目之前没有明确导出,现在已导出 (#1283)。
  • 修复了 build-publish workflow (#1293)。

文档更新

  • 更正了 parallel_rps 文档示例中的观测类型 (#1170)。
  • 更正了 simple_adversary.py 中的观测空间文档 (#1189)。
  • 更新了 Simple World Comm 中观测格式的文档 (#1212)。
  • 修复了 Tianshou 教程中的失效链接 (#1214)。
  • 修复了 waterworld 描述中交换的颜色 (#1210)。
  • 移除了“关于 AEC”中一个错误的段落 (#1247)。
  • 更新了 PistonBall 文档 (#1245)。
  • 修复文档以正确匹配/显示 Pong 的正确环境 (#1257)。
  • AgileRL 教程文档更新至版本 2.0.0 (#1258)。
  • 在 MPE 文档中添加了弃用警告 (#1280)。

新贡献者

完整更新日志: 1.24.3...1.25.0

PettingZoo 1.24.3¶

发布于 2024-01-18 - GitHub - PyPI

PettingZoo 1.24.3 发布说明

这是一个次要版本,包含一些小的错误修复、改进和文档更新。最值得注意的是,我们在 multiwalker 环境中添加了一个 state 函数,并修复了一个导致包装器清除底层环境自定义属性的错误,详情请参见 #1140

我们还添加了一个字典,用于映射每个环境类型下的环境名称到环境模块,可以通过以下方式访问:from pettingzoo.mpe import mpe_environments。这些映射组合起来生成所有环境的列表:from pettingzoo.utils.all_modules import all_environments,两个映射都包含例如 mpe/simple_adversary_v3 这样的键。更多信息请参见 #1155

新特性和改进

  • feature/提供对 wrapped 属性的访问 (#1140)
  • 向 multiwalker 添加 state 函数 (#1149)
  • 除了 all_environments 之外,添加了从环境名称到环境模块的映射(例如,mpe_environments)(#1155)

错误修复

  • 修复教程中的 ray 要求 (#1139)
  • 修复 MPE SimpleEnv 连续动作,使其与离散情况方向相同 (#1144)

文档更新

  • 将 MATS Gym 添加到第三方环境列表 (#1152)
  • 修复 check_for_winner 的注释 (#1148)
  • 在 README.md 的教程列表中包含 AgileRL 教程 (#1137)
  • 在带有方括号的 pip install 参数周围添加了单引号 (#1153)
  • 在所有 pip install extras 周围添加单引号 (#1154)

贡献者

此版本包含以下贡献者的贡献:@elliottower, @ffelten, @axelbr, @shahofblah, @helpingstar@nicku-a

非常感谢我们的贡献者以及许多过去的贡献者,他们使这一切成为可能。我们还要感谢所有帮助提供错误报告或功能建议的人,这对我们的开发至关重要。我们始终欢迎新的贡献者,如果您有兴趣,请加入我们的 Discord 服务器:https://discord.gg/nhvKkYa6qX

完整更新日志: 1.24.2...1.24.3

PettingZoo 1.24.2¶

发布于 2023-11-16 - GitHub - PyPI

PettingZoo 1.24.2 发布说明

此版本包含来自 AgileRL 的三个新教程,以及许多错误修复、测试改进和文档更新。

新特性和改进

  • AgileRL 教程:MATD3MADDPGDQN 自博弈/课程学习 (#1086, #1124, #1128)
    • 这些现在是我们性能最高且积极维护的教程,如有疑问/故障排除,请访问 AgileRL discord
  • 为 AEC 和 parallel 环境添加多回合包装器 (#1105)
    • 例如,这可用于评估多轮德州扑克的比赛结果,而非单手牌局的结果

错误修复

  • 检查所有环境的 parallel_seed_test,修复 seed_test 以实际使用 num_cycles 参数 (#1088)
  • 修复 hanabi 在 env.step() 时不渲染的问题,清理代码 (#1087)
  • 清理 parallel_api_test (#1095)
  • 更新 CONTRIBUTING.md 以包含测试要求 (#1097)
  • 更新 parallel_test.py 以支持 Ray RLLib MultiAgentEnv (#1096)
  • 修复 RLCard 环境的错误:渲染帧率,黑屏闪烁 (#1103)
  • 允许 parallel 环境在 info/obs 字典中包含其他可选键(例如,“common”)(#1110)
  • 移除了无用变量 + macOS pygame 修复 (#1107)
  • 将 Ray 教程更新至 RLlib 2.7.0 (#1112)
  • 更改 AEC last() 断言 agent is not None,以考虑非字符串 AgentID (#1120)
  • 修复 simple_reference docstring 拼写错误,修复 workflow 默认使用 python 3.11 (#1128)
  • 修复 TerminateIllegal wrapper 索引空 info 字典的 minor bug (#1129)
  • 修复了 MPE 环境的渲染错误 (#1130)
  • 修复 SB3 教程中的智能体索引错误 (#1133)
  • 修复 seed test 使其适用于 info 中的 action_mask,添加测试以确保 info action masking 工作正常 (#1134)
  • 修复 generated_agents 自定义 AgentID 测试中的错误 (#1135)

文档更新

  • 更新文档测试 (#1089, #1090)
  • 修复损坏的文档链接 (#1092)
  • 修复环境创建文档中的拼写错误 (#1116)

贡献者

此版本包含以下贡献者的贡献:@elliottower, @nicku-a, @mikepratt1, @xixinzhang, @umutucak, @jjshoots, @chrisyeh96, @Fernadoo, 和 @Kchour

非常感谢我们的贡献者以及许多过去的贡献者,他们使这一切成为可能。我们还要感谢所有帮助提供错误报告或功能建议的人,这对我们的开发至关重要。我们始终欢迎新的贡献者,如果您有兴趣,请加入我们的 Discord 服务器:https://discord.gg/nhvKkYa6qX

完整更新日志: 1.24.1...1.24.2

PettingZoo 1.24.1¶

发布于 2023-09-04 - GitHub - PyPI

PettingZoo 1.24.1 发布说明

这是一个热修复版本,旨在修复由于无意的 typevar 删除导致的与 Shimmy 的兼容性问题。

其他更改包括:对 knights_archers_zombies 环境进行了小的修复,改进了 CI 测试(包括使用 pytest-xdist 利用并行化),以及使用 pytest-markdown-docs 进行了新的文档测试,确保我们文档中的每个代码块都能成功运行——包括环境使用脚本。

环境创建文档也得到了改进,变得更加对初学者友好。为了避免与“入门”部分的“环境创建”页面混淆,“环境创建教程”也已重命名为“自定义环境教程”。

错误修复

  • 将 ObsDict 和 ActionDict 添加回 env.py (#1077)
    • 这些定义在上一个版本中被错误地移除了,对此造成的不便表示歉意
  • 修复 knights_archers_zombies 的渲染帧率和手动控制脚本 (#1080)
  • 清理重复的 python 测试,添加额外的参数组合测试 (#1074)

文档更新

  • 为文档中的所有代码块添加 doctesting,包括使用脚本 (#1083)
  • 更新环境创建教程 (#1082, #1084)

完整更新日志: 1.24.0...1.24.1

PettingZoo 1.24.0¶

发布于 2023-08-22 - GitHub - PyPI

PettingZoo 1.24.0 发布说明

此版本包括对 Python 3.11 的支持,对 Classic 环境的许多更新(包括更新的 Chess 和 Hanabi 环境版本,以及所有 RLCard 环境的渲染),以及许多错误修复、测试扩展和文档更新。

我们还很高兴地宣布了 Stable-Baselines3 的 3 个教程,更新了 #1051 RLlib 教程,以及一个更新的 CleanRL 多智能体 Atari 教程,其中包括 WandBTensorBoard 集成。

为了使此版本成为可能,我们同时发布了 SuperSuit 3.9.0Shimmy 1.2.0,分别修复了 Stable-Baselines3OpenSpiel 的兼容性问题。

重大变更

  • 不再支持 Python 3.7,因其已达到生命周期终点(链接
  • 我们已弃用 chess_v5,转而支持更新的 chess_v6
  • 我们已弃用 hanabi_v4,转而支持 hanabi_v5

新特性和改进

  • 支持 Python 3.11 (#1029)
  • 允许使用非 str 类型的 AgentID (#1071)
    • 现在可以使用整数等其他类型作为 AgentID
  • 添加 Stable-Baselines3 教程 (#1015, #1017),包含以下示例:
  • 添加更新的 CleanRL 多智能体 Atari 示例 (#1033)
    • 已适配与 Gymnasium 和当前的 PettingZoo/SuperSuit 一起使用
    • 带有 CLI/日志记录以及与 WandBTensorBoard 集成的完整训练脚本
  • Chess 更新至 v6
    • 添加对兵力不足、50步规则和三次重复的检查 (#997)
    • 修复白方视角,修复观测错误,添加文档 (#1004)
    • 吃过路兵的表示方式(详见docstring)已与 Leela Chess Zero 保持一致 (#1004)
    • 将 python-chess 版本从 1.7.0 更新至 1.9.4 (#1026)
  • Hanabi 更新至 v5
    • 现在依赖于 ShimmyOpenSpielCompatibility 包装器 (#948)
    • OpenSpiel 经过了更好的测试,由于 C++ 实现而具有卓越的性能,并移除了对未维护的 Hanabi Learning Environment 的依赖
    • 两年多来的首次更新,修复了大量问题并提升至当前的编码标准
  • 添加 Gin RummyLeduc HoldemTic-Tac-Toe 的渲染功能 (#1054)
  • 调整 AssertOutOfBounds 包装器,使其适用于所有环境,而非仅离散环境 (#1046)
  • 添加额外的 pre-commit 钩子,doctests 以匹配 Gymnasium (#1012)

错误修复

  • 修复 Pistonball 仅在 render_mode 非 None 时进行渲染 (#1014)
  • 修复 Connect Four 终止后不切换到下一个智能体的问题 (#1020)
  • 修复 classic 环境屏幕尺寸,添加类型提示,修复 pre-commit (#998)
  • 修复所有环境以正确帧率渲染,清理 pygame 代码 (#999)
  • 修复 SB3 教程的 SuperSuit 集成 (#1031)
  • CleanRL 教程的要求更新至最新的 SuperSuit/PettingZoo 版本 (#1019)
  • RLlib 教程的要求更新至最新的 SuperSuit/PettingZoo 版本 (#1018)
  • 修复 Waterworld 文档中的拼写错误 (#1058)

文档更新

贡献者

此版本包含以下贡献者的贡献:@elliottower, @DmytroIvasiuk, @jacob975, @dylwil3, @Jammf, @Bamboofungus, @BertrandDecoster, @murtazarang@pimpale

非常感谢我们的贡献者以及许多过去的贡献者,他们使这一切成为可能。我们还要感谢所有帮助提供错误报告或功能建议的人,这对我们的开发至关重要。我们始终欢迎新的贡献者,如果您有兴趣,请加入我们的 Discord 服务器:https://discord.gg/nhvKkYa6qX

完整更新日志: 1.23.1...1.24.0

PettingZoo 1.23.1¶

发布于 2023-05-24 - GitHub - PyPI

PettingZoo 1.23.1 发布说明

这是一个小的热修复版本,旨在修复与 Shimmy 的兼容性问题以及其他一些小错误。

错误修复

  • 修复 API 测试 test_action_flexibility() 中的错误 (#986)
    • 修复 Shimmy OpenSpiel 包装器的测试
  • 移除 ParrellEnv.seed() (#987)
  • 更新 RLlib 依赖项 (#992)

文档更新

  • 在主页上添加有关 aec 和 parallel API 的信息 (#985)
  • 创建 CITATION.cff (#990)
  • 在 third_party_envs.md 中添加了 Carla gym (#991)

完整变更日志: 1.23.0...1.23.1

PettingZoo 1.23.0

发布于 2023-05-15 - GitHub - PyPI

PettingZoo 1.23.0 发布说明

此版本完成了将 PettingZoo API 标准化以完全匹配 Gymnasium 的过程。已弃用的 env.seed() 方法已被移除,取而代之的是 env.reset(seed=seed),并且 reset() 中的 return_info 参数已被移除——现在 info 总是会在重置时返回。

新功能包括使用 Pickle 进行序列化的全面支持,以及更新的测试:pickle testsimproved API testre-written seed test(与 Gymnasium 匹配)。库也已更新为使用 pyproject.toml,以使安装更一致可靠,并符合 PEP 621 标准。

此版本包含重要的文档更新:每种环境类型的完整安装和使用示例(AtariButterflyClassicMPESISL),9 个以上新增的第三方环境,新的动作掩码文档,新的LangChain 教程,更新了CleanRLTianshouRLlib 教程,以及更多内容。

重大变更

为了确保 PettingZoo 和 Gymnasium API 之间的完全一致性,进行了以下更改

已弃用的环境 seed() 方法已被完全移除。

  • 要设置环境种子,请调用 env.reset(seed=0)

return_info 参数已从 reset() 函数中移除。

  • 调用reset() 现在将始终返回 observationinfo

新特性和改进

  • 现在可以使用 observation[action_mask]info[action_mask] 支持动作掩码,并提供文档和示例 (#953)
  • 用 pyproject.toml 替换 setup.py (#875)
  • reset() 中移除 return_info 参数 (#890)
  • 为 utils 和 base 环境添加类型提示 (#964)
  • 添加 aec_wrapper_fn 以匹配 parallel_wrapper_fn (#879)
  • 更新 SISL Waterworld 环境以增加最大加速度,实现更平滑的行为 (#882)
  • 更新 MPE simple_spread 智能体奖励 (#894),更新所有 MPE 环境以在速度更新之前更新位置,与原始论文一致 (#970)

错误修复

  • 重命名 BaseParallelWraperBaseParallelWrapper (修正拼写错误) (#876, #908)
  • 移除了 parallel_to_aec 转换中将动作转换为 int 的操作 (#975)
  • 修复损坏的 Tianshou 教程并更新依赖项 (#980)
  • 修复 MPE 环境在使用 rgb_array 模式时渲染黑屏的问题 (#874)
  • 修复 GitHub 工作流程中失败的 CI 测试 (#886)
  • 使用 pre-commit 钩子修复轻微的 linting 问题 (#835)
  • 解决了大量的 pytest 警告 (#897)
  • 删除 MPE 代码中不必要的行 (#891)
  • 更新 Tianshou 和 CleanRL 教程以配合新的 API 更改 (#984)

文档更新

  • 添加每种环境类型的完整安装和使用示例 (#906)
  • 更新第三方环境,新增两个自定义棋盘游戏环境 (gobblet-rlcathedral-rl) (#907)
  • 添加包装器的完整文档(包括 Shimmy 兼容性包装器) (#904, #942)
  • 添加 LangChain 教程 (#979)
  • 更新了 EnvironmentCreation 教程 (#903, #972)
  • 更新了 Tianshou 教程 (#980)
  • 更新 README,包含入门信息 (#950)
  • 在入门文档页面添加安装说明 (#968)
  • 更新 docs contributing README (#883)
  • 更新主页以包含演示环境的视频,清理主页文本,添加标志 (#954, #960)

完整变更日志: 1.22.3...1.23.0

1.22.4

发布于 2023-03-20 - GitHub - PyPI

此版本因 API 更改而被撤回。我们正在努力在下个版本中解决此问题。

更改内容

错误修复

文档更新

完整变更日志: 1.22.3...1.22.4

1.22.3

发布于 2022-12-28 - GitHub - PyPI

更改内容

新贡献者

完整变更日志: 1.22.2...1.22.3

1.22.2

发布于 2022-11-11 - GitHub - PyPI

更改内容

新贡献者

完整变更日志: 1.22.1...1.22.2

1.22.1

发布于 2022-10-25 - GitHub - PyPI

更改内容

完整变更日志: 1.22.0...1.22.1

1.22.0

发布于 2022-10-07 - GitHub - PyPI

主要的 API 更改:done -> terminationtruncation,与 Gymnasium 的新 API 匹配。
依赖项 gym 已切换为正在维护的 gymnasium

更改内容

  • 将 'done' 替换为 'termination, truncation' 新逻辑,通过 @5cat,参见 #802
  • 更新新的 Render API,通过 @younik,参见 #800
  • 修复 wrapper unwrapped 问题,通过 @jjshoots,参见 #808
  • 更新 Sphinx 主题,通过 @mgoulao,参见 #804
  • 更新 GitHub 工作流程的安全权限,通过 @andrewtanJS,参见 #809
  • 更新 Waterworld,通过 @BolunDai0216,参见 #807
  • Docs API 更新,通过 @WillDudley,参见 #810
  • Gymnasium 依赖,通过 @WillDudley,参见 #814

新贡献者

完整变更日志: 1.21.0...1.22.0

1.21.0

发布于 2022-09-24 - GitHub - PyPI

更改内容

  1. 作为 Gym 更新到 0.26 的一部分,进行了以下更改
    • done -> terminationtruncation: 单一的 done 信号已更改为 terminationtruncation 信号,其中 termination 表示环境由于满足特定条件而结束,而 truncation 表示环境由于超出时间/帧限制而结束。
  2. Butterfly/Prospector, Classic/Mahjong, Classic/Doudizhu, Classic/Backgammon, Classic/Checkers 已移除。
  3. 开发方面的一些易用性改进,例如将 pyright 移至 pre-commit 并强制执行 pydocstyle。
  4. 网站进行了重大升级。

变更列表

新贡献者

完整变更日志: 1.20.1...1.21.0

1.20.1

发布于 2022-08-07 - GitHub - PyPI

变更列表请参考上一版本 (1.20.0),此版本仅因发布到 PyPI 出现技术问题而存在。

1.20.0

发布于 2022-08-07 - GitHub - PyPI

更改内容

  • 通过 @jjshoots 使 Black 通过主 CI,参见 #734
  • 重构 Pytest 多次调用为单次调用,通过 @kir0ul,参见 #731
  • 更改 MPE 渲染方式,使用 Pygame 而非 pyglet #732,通过 @WillDudley,参见 #738
  • 移除 Multiwalker 中的 pyglet 和有问题的依赖项,通过 @jjshoots,参见 #739
  • 为 MPE 添加 EzPickle,通过 @jjshoots,参见 #741
  • 修复文档中不正确的观察字典键,通过 @bkrl,参见 #743
  • 暂时从测试中移除 waterworld 并禁用环境。通过 @jjshoots,参见 #749
  • 修复损坏的 atari 环境路径,通过 @manu-hoffmann,参见 #747
  • 完成 Atari Envs 路径修复,通过 @jjshoots,参见 #750
  • 修正 MPE 依赖项以反映 PR #738,通过 @WillDudley,参见 #748

新贡献者

完整变更日志: 1.19.1...1.20.0

1.19.1

发布于 2022-06-21 - GitHub - PyPI

  • 更新 Gym 依赖版本

1.19.0

发布于 2022-06-21 - GitHub - PyPI

  • 精简所有环境,使其具有一致的文件夹结构
  • 添加 info 作为 reset 的输出,以与新的 Gym API 一致

0.18.1: 1.18.1

发布于 2022-04-29 - GitHub - PyPI

  • 对 Knight Archers Zombies 进行了重大修改,版本升级
  • 更改 Atari 游戏默认使用最小观察空间,所有版本升级
  • 修复所有 MAgent 环境的大量 bug,版本升级
  • MAgent 环境现在有 Windows 二进制文件
  • 移除 Prison 环境
  • Multiwalker bug 修复,版本升级
  • 修复了大量测试
  • 使用新的 manual_policy 方法移除 manual_control
  • 将 seed 方法转换为 reset 的参数,以匹配新的 Gym API

(PettingZoo 1.18.0 版本由于技术问题从未发布)

1.17.0

发布于 2022-03-15 - GitHub - PyPI

  • 更改 metadata 命名方案以匹配 gym。特别是 render.modes -> render_modesvideo.frames_per_second -> render_fps
  • 修复由自动弃用逻辑引起的 pettingzoo 导入错误消息

1.16.0

发布于 2022-03-05 - GitHub - PyPI

  • KAZ:代码重写和多项修复,添加了手动控制功能
  • 支持 gym 0.22.0 中的种子设定更改
  • 修复 prison 状态空间,版本升级
  • 修复 battlefield 状态空间
  • 增加了 api 测试中的默认周期数(使其能捕获更多错误)
  • 向 parallel 包装器添加 turn-based 功能
  • 将 magent 渲染逻辑移至 Magent 仓库

1.15.0

发布于 2022-01-28 - GitHub - PyPI

  • 修复 KAZ, pistonball, multiwalker, cooperative pong 的 bug。版本升级。
  • 移除 gather 的标志,版本升级。
  • 向所有环境添加 FPS 属性,使渲染更容易。
  • Multiwalker 现在使用 pygame 而非 pyglet 进行渲染
  • 将 to_parallel 和 from_parallel 重命名为 aec_to_parallel 和 parallel_to_aec
  • 添加 is_parallelizable 元数据,以确保 aec_to_parallel 包装器不被误用
  • 修复 API 测试以更好地支持智能体生成

1.14.0

发布于 2021-12-05 - GitHub - PyPI

-修复 pursuit 环境逻辑和渲染的 bug 并进行部分重新设计。环境现在可学习,版本升级。
-修复 cooperative pong 环境的 bug 并重新设计奖励函数,版本升级。
-pistonball 中由于物理引擎精度不足导致球移入左侧列不再获得额外奖励,版本升级。
-PyGame 版本升级,环境版本无需升级。
-支持 Python 3.10
-修复 parallel API 测试以允许没有 possible_agents 的环境

1.13.1

发布于 2021-10-19 - GitHub - PyPI

  • 修复关于观察和动作空间的不必要警告
  • 向上游推送了新的 rlcard 版本,其中包含新的 texas holdem no limit 实现,版本升级到 v6
  • 更新了 python chess 依赖项,版本升级到 v5
  • 放弃了对 python 3.6 的支持,添加了对 3.9 的官方支持
  • 各种文档修复

1.12.0

发布于 2021-10-08 - GitHub - PyPI

  • API 更改
    • 新的 observation_space(agent), action_space(agent) 方法,用于检索智能体的静态空间
    • possible_agents, observation_spaces, action_spaces 属性变为可选。如果这些属性存在,包装器会传递它们。
    • parallel 环境的 agents 列表包含将执行下一步的智能体,而不是执行上一步的智能体。
    • 现在允许生成智能体,可以在回合期间随时创建智能体。注意:智能体不能复活,一旦结束,就不能重新添加到环境中。
  • 修复 pursuit 环境中 close 方法的意外行为
  • 移除 pygame 加载消息
  • 修复 pillow 依赖问题
  • 移除 pistonball 环境中的 local ratio 参数
  • 支持 Gym 0.21.0
  • 更好的代码格式化 (isort 等)

1.11.1

发布于 2021-08-19 - GitHub - PyPI

  • 修复 sisl 环境的 scipy 和 pyglet 依赖问题
  • 修复 pistonball 渲染问题(无需版本升级)
  • 更新 rlcard 到 v1.0.4,修复了 texas hold'em no limit 的问题;版本升级

1.11.0

发布于 2021-08-02 - GitHub - PyPI

-升级到 RLCard 1.0.3,所有版本升级。还为基于 RLcard 的环境添加了对 num_players 的支持,这些环境可以具有可变数量的玩家。
-修复围棋和国际象棋的观察空间,版本升级
-围棋渲染的细微修复
-修复 classic 中的 PyGame 依赖问题(用于渲染)
-修复图像加载到慢速 PyGame 数据结构的问题,从而显着提高了某些 Butterfly 游戏的性能(无需版本升级)
-修复 cooperative pong 中使用 RGB 渲染时出现的奇怪缓存问题
-杂项测试和警告消息修复

1.10.0

发布于 2021-07-17 - GitHub - PyPI

  • 为 MPE 环境添加连续动作支持作为参数
  • 为 Texas Hold'em No Limit, Rock Paper Scissors 和 Go 添加像素艺术渲染
  • 修复 Connect Four 中的像素艺术渲染
  • 修复围棋观察空间中黑白棋子顺序的 bug,版本升级
  • 更改 cooperative pong 中的观察以包含整个屏幕,版本升级

1.9.0

发布于 2021-06-12 - GitHub - PyPI

  • 为 pong 创建无动作计时器,以鼓励玩家发球(之前没有惩罚无限期拖延比赛)。所有 pong 环境(pong, basketball_pong, volleyball_pong, foozpong, quadrapong)版本升级。
  • 修复 Multiwalker 碰撞 bug,版本升级
  • 向 Magent 和 MPE 添加 state 方法
  • 将 rock paper scissors 和 rock paper scissors lizard spock 合并为一个环境,该环境将动作数量作为参数,并添加 n_cycles 参数以允许单个游戏按顺序进行。版本升级。
  • 移除已弃用的 env_done 方法
  • 修复 combined_arms 观察中通道的顺序
  • 向 connect four 添加基于像素艺术的 RGB 渲染。这将在后续版本中添加到 rock paper scissors, Go 和 Texas Holdem 中
  • 将 pettingzoo CI 测试文件移到仓库外部
  • 更改 max cycles 测试以在智能体死亡下更健壮

1.8.2

发布于 2021-05-14 - GitHub - PyPI

  • 修复 multiwalker bug,环境版本升级。
  • 向 render_test 添加自定义渲染模式支持

1.8.1

发布于 2021-04-16 - GitHub - PyPI

  • 向 seed test 添加参数以禁用 seed()-reset() 测试。文档已更新。
  • MAgent 渲染的细微更改

1.8.0

发布于 2021-04-04 - GitHub - PyPI

  • 修复 classic 游戏中任意调用 observe() 的问题(特别是 tictactoe 和 connect 4)
  • 修复 tictactoe 和 pistonball 的文档

1.7.0

发布于 2021-03-27 - GitHub - PyPI

  • 修复 MAgent bug 并将默认更改为非 minimap 模式,版本升级。
  • 修复瞬态安装错误。

1.6.1

发布于 2021-03-08 - GitHub - PyPI

杂项小修复和小型功能添加

  • 添加了 .unwrapped
  • 对 from_parallel 进行了小修复
  • 移除了 close() 中的警告
  • 修复了随机演示
  • 修复了 prison 手动控制

1.6.0

发布于 2021-02-21 - GitHub - PyPI

  • 更改了 pistonball, prison, prospector 中 max_cycles 的默认值
  • 将 pistonball 默认模式更改为 continuous,并更改了 local_ratio 的默认值
  • 重构了面向外部的测试和工具类
  • 将 pymunk 版本升级到 6.0.0,并升级了所有依赖 pymunk 的环境版本
  • 在 API 中添加了 state() 和 state_space,并在 butterfly 环境中实现了这些方法
  • 修复了 butterfly 环境中的各种小错误。
  • 文档更新。

1.5.2

发布于 2021-01-29 - GitHub - PyPI

修复了 butterfly 环境中杂项烦人的加载信息。改进了 save_obs 及相关功能。修复了 KAZ 的问题。

1.5.1

发布于 2021-01-13 - GitHub - PyPI

修复了 MPE 渲染依赖,修复了对 six 的少量剩余依赖,修复了 pickling Pistonball 时的问题。没有升级版本。

1.5.0

发布于 2021-01-05 - GitHub - PyPI

重构了测试,使其通常可供第三方环境使用。添加了平均奖励计算工具,并对 random_demo 和 save_obs 工具进行了少量改进。从 KAZ 中移除了 black death 参数(现在是 supersuit 中的一个包装器)。重做了 classic 中非法动作的处理方式,将观察结果变为字典,其中一个元素是观察结果,另一个是正确的非法动作掩码。对 Pistonball 进行了重构以提高可读性、运行速度,并允许通过参数改变活塞数量。Waterworld 经过完全重构,修复了各种主要问题。RLCard 版本已升级(并包含影响环境的错误修复)。MAgent 渲染效果现在好很多(版本未升级)。修复了 pursuit 观察空间中的一个主要错误。添加了 Python 3.9 支持。更新了 Gym 版本。修复了 multiwalker 观察空间,这次是彻底修复,并对代码质量进行了大幅改进。移除了 NaN 包装器。

1.4.2

发布于 2020-11-26 - GitHub - PyPI

修复了 Pistonball 奖励和杂项问题。修复了 KAZ 观察和渲染问题。修复了 Cooperative Pong 的渲染问题。修复了 Hanabi 中的默认参数。修复了 multiwalker 奖励,添加了参数。更改了 combined_arms 的观察和奖励,tiger_deer 的奖励。为所有 MAgent 环境添加了更多参数。

1.4.0

发布于 2020-11-07 - GitHub - PyPI

通用:API 大幅升级(见 https://www.pettingzoo.ml/api),彻底改进了智能体死亡的处理方式。特别是,agents 列表现在仅包含存活的智能体(尚未完成的智能体)。将大量逻辑从包装器移动到原始环境。将 max_frames 重命名为 max_cycles,并使该参数的含义在所有环境中保持一致。

Atari:修复了 entombed_cooperative 奖励,添加了自定义 ROM 目录规范支持

Butterfly:修复了所有环境中的错误,升级了 PyGame 和 PyMunk 版本

Classic:升级了 RLCard 版本,修复了许多依赖 RLCard 的环境的默认观察空间

SISL:修复了所有环境中的错误

MAgent:修复了所有环境的观察空间问题

升级了所有环境的版本。希望在此之后不再有重大的 API 更改。