Wie kann ich mich registrieren einer benutzerdefinierten Umgebung in OpenAI Fitness-Studio?
Habe ich eine benutzerdefinierte Umgebung, wie pro die OpenAI Fitness-Studio-Rahmen; mit step
, reset
, action
, und reward
Funktionen. Mein Ziel ist es zu laufen OpenAI baselines auf diese benutzerdefinierten Umgebung. Aber vor dieser, der Umwelt registriert werden, die auf OpenAI Fitness-Studio. Ich würde gerne wissen, wie Sie die benutzerdefinierte Umgebung eingetragen werden konnte, auf OpenAI Fitness-Studio? Auch, Sollte ich ändern die OpenAI baseline-codes zu übernehmen?
Brauchen Sie nicht zu ändern Grundlinien repo.
Ist hier ein minimal-Beispiel. Sagen Sie
myenv.py
mit allen benötigten Funktionen (step
,reset
, …). Der name der Klasse, die Umgebung istMyEnv
wird, und Sie möchten fügen Sie es an dieclassic_control
Ordner. Sie müssenmyenv.py
Datei ingym/gym/envs/classic_control
Hinzufügen
__init__.py
(befindet sich im selben Ordner)from gym.envs.classic_control.myenv import MyEnv
Registrieren der Umwelt in
gym/gym/envs/__init__.py
durch hinzufügenBei der Registrierung, Sie können auch hinzufügen
reward_threshold
undkwargs
(wenn Ihre Klasse nimmt einige Argumente).Sie können auch direkt registrieren der Umwelt in der das Skript ausgeführt werden soll (TRPO, PPO, oder was auch immer) zu tun, anstatt es in
gym/gym/envs/__init__.py
.BEARBEITEN
Dies ist ein minimal-Beispiel erstellen, die LQR Umgebung.
Speichern Sie den folgenden code in
lqr_env.py
und legen Sie es in die classic_control Ordner der Turnhalle.Hinzufügen
from gym.envs.classic_control.lqr_env import LqrEnv
zu__init__.py
(auch in classic_control).In Ihrem script, wenn Sie schaffen eine Umgebung, tun
gym.error.Error: Attempted to look up malformed environment ID: b'hvac_Env'. (Currently all IDs must be of the form ^(?:[\w:-]+\/)?([\w:.-]+)-v(\d+)$.)
Umgebung Registrierung finden hier.
Bitte gehen Sie durch diese Beispiel für eine benutzerdefinierte Umgebung, wenn Sie weitere Fragen habe.
Finden diese stackoverflow-Frage für weitere Informationen.