Download Latest Version v1.2.0 source code.tar.gz (119.0 MB)
Email in envelope

Get an email when there's a new version of Gymnasium

Home / v1.0.0a2
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2024-05-21 6.5 kB
v1.0.0 alpha 2 source code.tar.gz 2024-05-21 119.0 MB
v1.0.0 alpha 2 source code.zip 2024-05-21 119.6 MB
Totals: 3 Items   238.6 MB 0

This is our second alpha version which we hope to be the last before the full Gymnasium v1.0.0 release. We summarise the key changes, bug fixes and new features added in this alpha version.

Key Changes

Atari environments

ale-py that provides the Atari environments has been updated in v0.9.0 to use Gymnasium as the API backend. Furthermore, the pip install contains the ROMs so all that should be necessary for installing Atari will be pip install “gymnasium[atari]” (as a result, gymnasium[accept-rom-license] has been removed). A reminder that for Gymnasium v1.0 to register the external environments (e.g., ale-py), you will be required to import ale_py before creating any of the Atari environments.

Collecting seeding values

It was possible to seed with both environments and spaces with None to use a random initial seed value however it wouldn’t be possible to know what these initial seed values were. We have addressed for this Space.seed and reset.seed in https://github.com/Farama-Foundation/Gymnasium/pull/1033 and https://github.com/Farama-Foundation/Gymnasium/pull/889. For Space.seed, we have changed the return type to be specialised for each space such that the following code will work for all spaces.

:::python
seeded_values = space.seed(None)
initial_samples = [space.sample() for _ in range(10)]

reseed_values = space.seed(seeded_values)
reseed_samples = [space.sample() for _ in range(10)]

assert seeded_values == reseed_values
assert initial_samples == reseed_samples

Additionally, for environments, we have added a new np_random_seed attribute that will store the most recent np_random seed value from reset(seed=seed).

Environment Version changes

  • It was discovered recently that the mujoco-based pusher was not compatible with MuJoCo >= 3 due to bug fixes that found the model density for a block that the agent had to push was the density of air. This obviously began to cause issues for users with MuJoCo v3+ and Pusher. Therefore, we are disabled the v4 environment with MuJoCo >= 3 and updated to the model in MuJoCo v5 that produces more expected behaviour like v4 and MuJoCo < 3 (https://github.com/Farama-Foundation/Gymnasium/pull/1019).
  • Alpha 2 includes new v5 MuJoCo environments as a follow-up to v4 environments added two years ago, fixing consistencies, adding new features and updating the documentation. We have decided to mark the MuJoCo-py (v2 and v3) environments as deprecated and plan to remove them from Gymnasium in future (https://github.com/Farama-Foundation/Gymnasium/pull/926).
  • Lunar Lander version increased from v2 to v3 due to two bug fixes. The first fixes the determinism of the environment such that the world object was not completely destroyed on reset causing non-determinism in particular cases (https://github.com/Farama-Foundation/Gymnasium/pull/979). Second, the wind generation (by default turned off) was not randomly generated by each reset, therefore, we have updated this to gain statistical independence between episodes (https://github.com/Farama-Foundation/Gymnasium/pull/959).

Box Samples

It was discovered that the spaces.Box would allow low and high values outside the dtype’s range (https://github.com/Farama-Foundation/Gymnasium/pull/774) which could result in some very strange edge cases that were very difficult to detect. We hope that these changes improve debugging and detecting invalid inputs to the space, however, let us know if your environment raises issues related to this.

Bug Fixes

New Features

Full Changelog: https://github.com/Farama-Foundation/Gymnasium/compare/v1.0.0a1...v1.0.0a2 https://github.com/Farama-Foundation/Gymnasium/compare/v0.29.1...v1.0.0a2

Source: README.md, updated 2024-05-21