How to create new environments¶
There are two workflows:
You have a standard gym environment, which you want to convert into a multitask environment. For example,
BanditEnvwhich is a standard multi-arm bandit, without an explicit notion of task. The user has the following options:
Write a new subclass, say
MTEnv) as shown in
EnvToMTEnvwrapper and wrap the existing single task environment. In some cases, the wrapper may have to be extended, as is done in
If you do not have a single-task gym environment to start with, it is recommended that you directly extend the
MTEnvclass. Implementations in
mtenv/envscan be seen as a reference.
If you want to contribute an environment to the repo, checkout the Contribution Guide.