昔作ったOpenAI Gymの環境を新しい形式に変更する

以前こちらの記事で作成した環境が古くなっていたのと、そもそも環境自体をアップデートしてみたかったので、
まずは新しい形式に変換してみました。

新しい環境はDTOを絡めていきたいのでgym-fx-dtoというリポジトリを作成します。

構成の変更

OpenAI Gymのサンプルを参考に下記のような構成で作り直します。

gym-fx-dto/
  README.md
  setup.py
  gym_fx_dto/
    __init__.py
    envs/
      __init__.py
      fx_dto_env.py

setup.py

from setuptools import setup
 
setup(name='gym_fx_dto',
      version='0.0.1',
      install_requires=['gym', 'numpy', 'pandas', 'python-dateutil']
      )

gym_fx_dto/init.py

from gym.envs.registration import register
 
register(
    id='FxDtoEnv-v0',
    entry_point='gym_fx_dto.envs:FxDtoEnv',
)

gym_fx_dto/envs/init.py

from gym_fx_dto.envs.fx_dto_env import FxDtoEnv

インストール方法

READMEに書いていますがpip形式になっているので下記のようなコマンドでインストールします。

cd gym-fx-dto
pip install -e .

メソッドの変更

そのまま実行すると下記のようなワーニングメッセージが表示されます。

WARN: gym.spaces.Box autodetected dtype as <class 'numpy.float32'>. Please provide explicit dtype.
WARN: Environment '<class 'gym_fx_dto.envs.fx_dto_env.FxDtoEnv'>' has deprecated methods '_step' and '_reset' rather than 'step' and 'reset'. Compatibility code invoked. Set _gym_disable_underscore_compat = True to disable this behavior.

_reset, _stepというメソッドが非推奨になり、
アンダーバーがとれたreset, stepという名前が推奨になっているので、変更します。

なぜかメッセージにはありませんが_renderrenderにしなければならないので一緒に変えておきましょう。


投稿日

カテゴリー:

,

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください