Farama-Foundation / Minigrid

Simple and easily configurable grid world environments for reinforcement learning
https://minigrid.farama.org/
Other
2.13k stars 610 forks source link

[Proposal] Add support for multi-agent environments #235

Open pseudo-rnd-thoughts opened 2 years ago

pseudo-rnd-thoughts commented 2 years ago

It would be nice to add gridworld based multi-agent environments. These are could be used for reserach into RL safety, explainability, emergent communication, etc

If there is anyone who has already create MA environments or is interested in working on this problem then please respond

ygrayson commented 1 year ago

Check out this: #37

pseudo-rnd-thoughts commented 1 year ago

Wow, thanks for pointing that out. As the project is Apache 2.0, we should be able to move the code to Minigrid to allow more users to use it. I haven't looked at the code but we might want to shift the project to use PettingZoo rather than Gym/Gymnasium as it is multi-agent rather than single agent.

ini commented 1 year ago

Here's a fork with multi-agent support: https://github.com/ini/multigrid

It follows the RLlib MultiAgent / PettingZoo ParallelEnv API.

pseudo-rnd-thoughts commented 1 year ago

Amazing, thanks for doing that. Could you be interested in merging this into minigrid itself?

ini commented 1 year ago

I'm not sure how simple that would be. While the external interface is supposed to be the same as minigrid, there are some significant changes under the hood for speed optimizations (i.e WorldObj and Grid are represented with numpy arrays, and the partial observation logic uses numba.)

Also, it only supports Python 3.9+.