Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
A standard API for multi-agent reinforcement learning environments, with popular reference environments and related utilities
| Date | Stars |
|---|---|
| 2026-07-24 | 3477 |
| 2026-07-25 | 3477 |
| 2026-07-28 | 3477 |
| 2026-07-30 | 3477 |
| 2026-07-31 | 3484 |
| 2026-08-01 | 3486 |
| 2026-08-02 | 3487 |
| 2026-08-03 | 3487 |
| 2026-08-04 | 3487 |
| 2026-08-05 | 3488 |
| 2026-08-06 | 3488 |
Today
— stars today
This week
+11 stars this week
This month
— stars this month
Momentum
16.0
growth rate 0.32%/day
[](https://badge.fury.io/py/pettingzoo) [](https://pre-commit.com/) [](https://github.com/psf/black)
<p align="center">
<a href = "https://pettingzoo.farama.org/" target = "_blank"><img src="https://raw.githubusercontent.com/Farama-Foundation/PettingZoo/master/pettingzoo-text.png" width="500px"/> </a>
</p>
PettingZoo is a Python library for conducting research in multi-agent reinforcement learning, akin to a multi-agent version of [Gymnasium](https://github.com/Farama-Foundation/Gymnasium).
The documentation website is at [pettingzoo.farama.org](https://pettingzoo.farama.org) and we have a public discord server (which we also use to coordinate development work) that you can join here: https://discord.gg/nhvKkYa6qX
## Environments
PettingZoo includes the following families of environments:
* [Atari](https://pettingzoo.farama.org/environments/atari/): Multi-player Atari 2600 games (cooperative, competitive and mixed sum)
* [Butterfly](https://pettingzoo.farama.org/environments/butterfly): Cooperative graphical games developed by us, requiring a high degree of coordination
* [Classic](https://pettingzoo.farama.org/environments/classic): Classical games including card games, board games, etc.
* [SISL](https://pettingzoo.farama.org/environments/sisl): 2 cooperative environments, originally from https://github.com/sisl/MADRL
## Installation
To install the base PettingZoo library: `pip install pettingzoo`.
This does not include dependencies for all families of environments (some environments can be problematic to install on certain systems).
To install the dependencies for one family, use `pip install 'pettingzoo[atari]'`, or use `pip install 'pettingzoo[all]'` to install all dependencies.
We support and maintain PettingZoo for Linux and macOS. We will accept PRs related to Windows, but do not officially support it.
## Getting started
For an introduction to PettingZoo, see [Basic Usage](https://pettingzoo.farama.org/content/basic_usage/). To create a new environment, see our [Environment Creation Tutorial](https://pettingzoo.farama.org/tutorials/custom_environment/1-project-structure/) and [Custom Environment Examples](https://pettingzoo.farama.org/content/environment_creation/).
For examples of training RL models using PettingZoo see our tutorials:
* [CleanRL: Implementing PPO](https://pettingzoo.farama.org/tutorials/cleanrl/implementing_PPO/): train multiple PPO agents in the [Pistonball](https://pettingzoo.farama.org/environments/butterfly/pistonball/) environment.
* [Tianshou: Training Agents](https://pettingzoo.farama.org/tutorials/tianshou/intermediate/): train DQN agents in the [Tic-Tac-Toe](https://pettingzoo.farama.org/environments/classic/tictactoe/) environment.
* [AgileRL: Training, Curriculums and Self-play](https://pettingzoo.farama.org/main/tutorials/agilerl/DQN/): train agents with curriculum learning and self-play in the [Connect Four](https://pettingzoo.farama.org/environments/classic/connect_four/) environment.
## API
PettingZoo model environments as [*Agent Environment Cycle* (AEC) games](https://arxiv.org/pdf/2009.14471.pdf), in order to be able to cleanly support all types of multi-agent RL environments under one API and to minimize the potential for certain classes of common bugs.
Using environments in PettingZoo is very similar to Gymnasium, i.e. you initialize an environment via:
```python
from pettingzoo import make
env = make("aec", "butterfly/pistonball-v6") # need to specify aec or parallel API
```
Environments can be interacted with in a manner very similar to Gymnasium:
```python
env.reset()
for agent in env.agent_iter():
observation, reward, termination, truncation, info = env.last()
action = None if termination or truncatioExcerpt of 5,763 characters
Read on GitHubJordan Terry
1.5k
Benjamin Black
1.1k
Jet · @eluve-inc
336
Mario Jayakumar · Morgan Stanley · United States
273
181
178
Elliot Tower · Morocco
128
90
Rodrigo de Lazcano
83
53
52
Will Dudley · United Kingdom
50
Niall L. Williams
47
Bolun Dai · New York University · United States
37
Andrea Pierré
36
30
22
20
Ariel Kwiatkowski · Apple · Switzerland
19
Manuel Goulão · NeuralShift · Portugal
18
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:7d01079185b0f75e, topic:reinforcement-learning, topic:gymnasium, topic:multi-agent-reinforcement-learning