minigrid
Simple and easily configurable grid world environments for reinforcement learning
Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
4 of 93 committers (4.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.5%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Simple and easily configurable grid world environments for reinforcement learning
Basic Info
- Host: GitHub
- Owner: Farama-Foundation
- License: other
- Language: Python
- Default Branch: master
- Homepage: https://minigrid.farama.org/
- Size: 16.5 MB
Statistics
- Stars: 2,311
- Watchers: 38
- Forks: 632
- Open Issues: 36
- Releases: 13
Topics
Metadata Files
README.md
The Minigrid library contains a collection of discrete grid-world environments to conduct research on Reinforcement Learning. The environments follow the Gymnasium standard API and they are designed to be lightweight, fast, and easily customizable.
The documentation website is at minigrid.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/bnJ6kubTg6
Note that the library was previously known as gym-minigrid and it has been referenced in several publications. If your publication uses the Minigrid library and you wish for it to be included in the list of publications, please create an issue in the GitHub repository.
See the Project Roadmap for details regarding the long-term plans.
Installation
To install the Minigrid library use pip install minigrid.
We support Python 3.7, 3.8, 3.9, 3.10 and 3.11 on Linux and macOS. We will accept PRs related to Windows, but do not officially support it.
Environments
The included environments can be divided in two groups. The original Minigrid environments and the BabyAI environments.
Minigrid
The list of the environments that were included in the original Minigrid library can be found in the documentation. These environments have in common a triangle-like agent with a discrete action space that has to navigate a 2D map with different obstacles (Walls, Lava, Dynamic obstacles) depending on the environment. The task to be accomplished is described by a mission string returned by the observation of the agent. These mission tasks include different goal-oriented and hierarchical missions such as picking up boxes, opening doors with keys or navigating a maze to reach a goal location. Each environment provides one or more configurations registered with Gymansium. Each environment is also programmatically tunable in terms of size/complexity, which is useful for curriculum learning or to fine-tune difficulty.
BabyAI
These environments have been imported from the BabyAI project library and the list of environments can also be found in the documentation. The purpose of this collection of environments is to perform research on grounded language learning. The environments are derived from the Minigrid grid-world environments and include an additional functionality that generates synthetic
natural-looking instructions (e.g. “put the red ball next to the box on your left”) that command the the agent to navigate the world (including unlocking doors) and move objects to specified locations in order to accomplish the task.
Training an Agent
The rl-starter-files is a repository with examples on how to train Minigrid environments with RL algorithms. This code has been tested and is known to work with this environment. The default hyper-parameters are also known to converge.
Citation
The original gym-minigrid environments were created as part of work done at Mila. The Dynamic obstacles environment were added as part of work done at IAS in TU Darmstadt and the University of Genoa for mobile robot navigation with dynamic obstacles.
To cite this project please use:
bibtex
@inproceedings{MinigridMiniworld23,
author = {Maxime Chevalier{-}Boisvert and Bolun Dai and Mark Towers and Rodrigo Perez{-}Vicente and Lucas Willems and Salem Lahlou and Suman Pal and Pablo Samuel Castro and Jordan Terry},
title = {Minigrid {\&} Miniworld: Modular {\&} Customizable Reinforcement Learning Environments for Goal-Oriented Tasks},
booktitle = {Advances in Neural Information Processing Systems 36, New Orleans, LA, USA},
month = {December},
year = {2023},
}
If using the BabyAI environments please also cite the following:
bibtex
@article{chevalier2018babyai,
title={Babyai: A platform to study the sample efficiency of grounded language learning},
author={Chevalier-Boisvert, Maxime and Bahdanau, Dzmitry and Lahlou, Salem and Willems, Lucas and Saharia, Chitwan and Nguyen, Thien Huu and Bengio, Yoshua},
journal={arXiv preprint arXiv:1810.08272},
year={2018}
}
Owner
- Name: Farama Foundation
- Login: Farama-Foundation
- Kind: organization
- Email: contact@farama.org
- Website: farama.org
- Twitter: FaramaFound
- Repositories: 49
- Profile: https://github.com/Farama-Foundation
The Farama foundation is a nonprofit organization working to develop and maintain open source reinforcement learning tools.
Citation (CITATION.cff)
cff-version: 1.2.0
title: Minigrid
message: >-
If you use this software, please cite it using the
metadata from this file.
authors:
- family-names: Chevalier-Boisvert
given-names: Maxime
- family-names: Dai
given-names: Bolun
- family-names: Towers
given-names: Mark
- family-names: de Lazcano
given-names: Rodrigo
- family-names: Willems
given-names: Lucas
- family-names: Lahlou
given-names: Salem
- family-names: Pal
given-names: Suman
- family-names: Castro
given-names: Pablo Samuel
- family-names: Terry
given-names: Jordan
url: "https://github.com/Farama-Foundation/Minigrid"
preferred-citation:
type: article
authors:
- family-names: Chevalier-Boisvert
given-names: Maxime
- family-names: Dai
given-names: Bolun
- family-names: Towers
given-names: Mark
- family-names: de Lazcano
given-names: Rodrigo
- family-names: Willems
given-names: Lucas
- family-names: Lahlou
given-names: Salem
- family-names: Pal
given-names: Suman
- family-names: Castro
given-names: Pablo Samuel
- family-names: Terry
given-names: Jordan
title: "Minigrid & Miniworld: Modular & Customizable Reinforcement Learning Environments for Goal-Oriented Tasks"
type: inproceedings
year: 2023
conference:
name: "Neural Information Processing Systems (NeurIPS)"
publisher:
name: "Proceedings of the Conference on Neural Information Processing Systems (NeurIPS)"
GitHub Events
Total
- Create event: 5
- Commit comment event: 1
- Release event: 3
- Issues event: 14
- Watch event: 189
- Delete event: 4
- Issue comment event: 31
- Push event: 18
- Pull request event: 23
- Pull request review event: 7
- Fork event: 34
Last Year
- Create event: 5
- Commit comment event: 1
- Release event: 3
- Issues event: 14
- Watch event: 189
- Delete event: 4
- Issue comment event: 31
- Push event: 18
- Pull request event: 23
- Pull request review event: 7
- Fork event: 34
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Maxime Chevalier-Boisvert | m****b@g****m | 271 |
| saleml | s****9@g****m | 62 |
| Rodrigo Perez-Vicente | r****6@g****m | 60 |
| Mark Towers | m****s@g****m | 25 |
| Bolun | 3****6 | 21 |
| Manuel Goulão | m****o@g****m | 17 |
| Lucas Willems | l****s | 13 |
| Feng | 5****u | 7 |
| Jordan Terry | j****0@g****m | 7 |
| Joseph Bloom | 6****s | 6 |
| Jet | 3****s | 5 |
| A. Baisero | a****o@g****m | 4 |
| Jupy | j****s@g****m | 3 |
| dependabot[bot] | 4****] | 2 |
| zeio | z****a@g****m | 2 |
| Alain | a****5@g****m | 2 |
| Dzmitry Bahdanau | d****v@g****m | 2 |
| Florin Gogianu | f****u@g****m | 2 |
| d3sm0 | d****0 | 2 |
| andreicnica | a****a@g****m | 2 |
| Zach Dwiel | z****l@i****m | 2 |
| Tim Rocktäschel | r****t | 2 |
| Abdelrahman Ahmed | 1****l | 2 |
| Elliot Tower | 3****r | 2 |
| Giulio Starace | g****e@g****m | 2 |
| Harry Zhao | m****y@o****m | 2 |
| James Doran | j****n@g****m | 2 |
| Mathïs Fédérico | 6****o | 2 |
| Simone Parisi | s****i | 2 |
| konichuvak | a****d@g****m | 2 |
| and 63 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 93
- Total pull requests: 141
- Average time to close issues: about 1 month
- Average time to close pull requests: 15 days
- Total issue authors: 73
- Total pull request authors: 58
- Average comments per issue: 2.54
- Average comments per pull request: 0.77
- Merged pull requests: 114
- Bot issues: 0
- Bot pull requests: 7
Past Year
- Issues: 10
- Pull requests: 25
- Average time to close issues: 10 days
- Average time to close pull requests: 22 days
- Issue authors: 9
- Pull request authors: 11
- Average comments per issue: 1.3
- Average comments per pull request: 0.2
- Merged pull requests: 15
- Bot issues: 0
- Bot pull requests: 7
Top Authors
Issue Authors
- kbkartik (5)
- sparisi (4)
- 1176358062 (4)
- DarthMalloc (3)
- Chainesh (3)
- mikeg-123 (2)
- pengzhenghao (2)
- Martin36 (2)
- NishanthVAnand (2)
- pseudo-rnd-thoughts (2)
- riiswa (1)
- MFaisalZaki (1)
- jbloomAus (1)
- bmitc (1)
- carlosgmartin (1)
Pull Request Authors
- BolunDai0216 (23)
- mgoulao (15)
- pseudo-rnd-thoughts (12)
- dependabot[bot] (7)
- jbloomAus (6)
- rodrigodelazcano (6)
- SiddarGu (5)
- jjshoots (5)
- AdrianOrenstein (4)
- JupiLogy (4)
- BartekCupial (4)
- aklein1995 (3)
- jysdoran (3)
- Martin36 (2)
- MathisFederico (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 4
-
Total downloads:
- pypi 37,294 last-month
- Total docker downloads: 24,426,742
-
Total dependent packages: 11
(may contain duplicates) -
Total dependent repositories: 24
(may contain duplicates) - Total versions: 46
- Total maintainers: 4
pypi.org: minigrid
Minimalistic gridworld reinforcement learning environments.
- Homepage: https://farama.org
- Documentation: https://minigrid.farama.org/
- License: MIT License
-
Latest release: 3.0.0
published over 1 year ago
Rankings
Maintainers (4)
proxy.golang.org: github.com/Farama-Foundation/MiniGrid
- Documentation: https://pkg.go.dev/github.com/Farama-Foundation/MiniGrid#section-documentation
- License: other
-
Latest release: v2.5.0+incompatible
published over 1 year ago
Rankings
proxy.golang.org: github.com/farama-foundation/minigrid
- Documentation: https://pkg.go.dev/github.com/farama-foundation/minigrid#section-documentation
- License: other
-
Latest release: v2.5.0+incompatible
published over 1 year ago
Rankings
proxy.golang.org: github.com/Farama-Foundation/Minigrid
- Documentation: https://pkg.go.dev/github.com/Farama-Foundation/Minigrid#section-documentation
- License: other
-
Latest release: v2.5.0+incompatible
published over 1 year ago
Rankings
Dependencies
- gym >=0.24.0
- numpy >=1.18.0
- JamesIves/github-pages-deploy-action v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- JamesIves/github-pages-deploy-action v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- dawidd6/action-get-tag v1 composite
- JamesIves/github-pages-deploy-action v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- furo *
- moviepy *
- myst-parser *
- pygame *
- sphinx *
- sphinx-notfound-page *
- sphinx_github_changelog *
- gymnasium >=0.28.1
- numpy >=1.18.0
- pygame >=2.4.0
- actions/checkout v4 composite
- actions/download-artifact v4 composite
- actions/setup-python v5 composite
- actions/upload-artifact v4 composite
- pypa/gh-action-pypi-publish release/v1 composite
- actions/checkout v4 composite