A Python toolkit for developing and comparing reinforcement learning algorithms through a standard API and environment set.
Gym is a Python library for developing and comparing reinforcement learning algorithms. It provides a standard API for communication between learning algorithms and environments, along with a comprehensive set of benchmark environments. The library has become the field standard for reinforcement learning research and experimentation.
Reinforcement learning researchers, AI practitioners, and developers who need to implement, test, and compare RL algorithms in standardized environments.
Gym offers a standardized, reproducible framework that accelerates RL research by providing consistent environments and APIs, enabling fair algorithm comparisons and reducing implementation overhead.
A toolkit for developing and comparing reinforcement learning algorithms.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The API has become the field standard, enabling reproducible comparisons and faster experimentation, as highlighted in the GitHub description and README.
Offers a diverse set of pre-built environments, including classic control tasks, Atari games, and robotics simulations, essential for testing algorithms, as noted in the key features.
Environment versions are carefully managed with suffixes like '_v0' to prevent confusion and ensure research results can be replicated, as explained in the README section on versioning.
Allows creation of custom environments compliant with the Gym API and serves as a foundation for numerous RL libraries like CleanRL and Tianshou, listed in the notable related libraries.
As per the important notice, development has moved to Gymnasium, and Gym will not receive any future updates, making it unsuitable for new projects.
Installing dependencies for all environments can be problematic, with some families requiring specific pip installs like gym[all] or gym[mujoco], and issues on certain systems, as mentioned in the installation section.
The library does not officially support Windows, only accepting PRs for it, which can hinder developers on that platform, as stated in the installation notes.
Old MuJoCo environments depend on unmaintained mujoco-py, while new versions require mujoco, leading to potential compatibility and maintenance headaches, as noted in the MuJoCo environments section.