EnvConfig

class srl.base.env.config.EnvConfig(name: str, kwargs: ~typing.Dict = <factory>, max_episode_steps: int = -1, episode_timeout: float = -1, frameskip: int = 0, random_noop_max: int = 0, gym_make_func: ~typing.Callable[[...], gym.Env | gymnasium.Env] | None = None, gym_wrapper: GymUserWrapper | None = None, use_gym: bool = False, render_interval: float = -1, render_scale: float = 1.0, font_name: str = '', font_size: int = 18, processors: ~typing.List[~srl.base.env.processor.EnvProcessor] = <factory>, enable_sanitize: bool = True, enable_assertion: bool = False)

ベースクラス: object

EnvConfig は環境を定義します。

環境は、基本は名前だけで呼び出せます。

>>> env = srl.make_env("Grid")

しかし、ユーザが環境のパラメータを変えたい場合、このクラスでパラメータを変更します。

>>> env_config = srl.EnvConfig("Grid")
>>> env = env_config.make()
name: str

Specifies the environment name

kwargs: Dict

環境生成時に渡す引数を指定します。 これは登録されているパラメータより優先されます。

max_episode_steps: int = -1

1エピソードの最大ステップ数(0以下で無効)

episode_timeout: float = -1

1エピソードの最大実行時間(秒)(0以下で無効)

frameskip: int = 0

1stepあたり、環境内で余分に進めるstep数 例えばframeskip=3の場合、ユーザが1step実行すると、環境内では4frame進みます。

random_noop_max: int = 0

1以上を指定するとそのstep数以内で、エピソード開始からランダムstep進めてからエピソード開始します。

gym_make_func: Callable[[...], gym.Env | gymnasium.Env] | None = None

gym/gymnasiumの環境を生成する場合、この関数を使って生成します。

gym_wrapper: GymUserWrapper | None = None

gym/gymnasiumの環境に割り込むためのクラス、フレームワークの代わりに変換する (pickle化できる必要があります)

use_gym: bool = False

gymとgymnasium両方ある場合にgymを使います。(デフォルトはgymnasium)

render_interval: float = -1

renderの間隔(ms) - -1 の場合、Envで定義されている値が使われます。

render_scale: float = 1.0

renderのscale

font_name: str = ''

render時のフォント名 ""の場合は、srl.font.PlemolJPConsoleHS-Regular.ttf が使われます。

font_size: int = 18

render時のフォントサイズ

processors: List[EnvProcessor]

Processorを使う場合、定義したProcessorのリスト

enable_sanitize: bool = True

action/observationの値をエラーが出ないように可能な限り変換します。 ※エラー終了の可能性は減りますが、値の変換等による予期しない動作を引き起こす可能性が高くなります

enable_assertion: bool = False

action/observationの値を厳密にチェックし、おかしい場合は例外を出力します。 enable_assertionが有効な場合は、enable_sanitizeは無効です。

make() EnvRun

環境を生成します。 make_env(env_config) と同じ動作です。

to_dict() dict
copy() EnvConfig