Package Versions
As part of ML-Agents Release 3, we will be versioning the different packages that make up the release.
NOTE: It is strongly recommended that you use packages from the same release together for the best experience.
Package | Version |
---|---|
com.unity.ml-agents (C#) | v1.1.0 |
ml-agents (Python) | v0.17.0 |
ml-agents-envs (Python) | v0.17.0 |
gym-unity (Python) | v0.17.0 |
Communicator (C#/Python) | v1.0.0 |
Major Features and Improvements
com.unity.ml-agents (C#)
ObservableAttribute
was added. Adding the attribute to fields or properties on an Agent will allow it to generate observations via reflection. (#3925, #4006)
ml-agents-envs (Python)
- First version of the Unity Environment Registry (Experimental) has been released. The Environment Registry allows running pre-built Unity environments from Python without installing the Unity editor. More information here (#3967)
gym-unity (Python)
use_visual
andallow_multiple_visual_obs
in the UnityToGymWrapper constructor were replaced byallow_multiple_obs
which allows one or more visual observations and vector observations to be used simultaneously. (#3981) Thank you @shakenes !
ml-agents (Python)
- When using a Curriculum, the current lesson will resume if training is quit and resumed. As such, the
--lesson
CLI option has been removed. (#4025) - In PPO training,
beta
andepsilon
now follow the same decay schedule aslearning_rate
. Previously they were always decayed. (#3940)
Example Environments
- Added new Walker environments. Improved ragdoll stability/performance. (#4037)
Breaking Changes
ml-agents
- Format for trainer configuration has changed, and the "default" behavior has been deprecated. See the Migration Guide for more details. (#3936)
- Curriculum and Parameter Randomization configurations have been merged into the main training configuration file. Note that this means training configuration files are now environment-specific. (#3791)
- Training artifacts (trained models, summaries) are now found in the
results/
directory. (#3829)
--save-freq
CLI option has been removed, and replaced by acheckpoint_interval
option in the trainer configuration YAML. (#4034)
ml-agents-envs
get_behavior_names()
andget_behavior_spec()
on UnityEnvironment were replaced by thebehavior_specs
property. (#3946)- In the Python API, max_step in the
TerminalStep
andTerminalSteps
objects was renamedinterrupted
. (#3908)
Bug Fixes and Minor Changes
ml-agents
- Unity Player logs are now written out to the results directory. (#3877)
- Run configuration YAML files are written out to the results directory at the end of the run. (#3815)
- When trying to load/resume from a checkpoint created with an earlier version of ML-Agents, a warning will be thrown. (#4035)
- Fixed an issue where SAC would perform too many model updates when resuming from a checkpoint, and too few when using
buffer_init_steps
. (#4038)
Acknowledgements
Thank you @shakenes, @TPihko, and everyone at Unity for their contributions to this release.