Python Retro Gym 库环境创建函数详解 - make_env 函数
这段代码定义了一个名为 'make_env' 的函数,该函数接受三个参数:游戏名称 (game)、状态名称 (state) 和随机种子 (seed),并返回一个新的环境对象。
函数内部定义了一个名为 '_init' 的内部函数,该函数返回一个经过特定处理的环境对象。具体来说,该环境对象使用了 Retro Gym 库中的 'retro.make' 方法来创建。其中,game 参数指定了游戏名称,state 参数指定了状态名称,'use_restricted_actions' 参数指定了动作类型 ('FILTERED' 表示只允许使用合法的游戏动作),'obs_type' 参数指定了观察类型 ('IMAGE' 表示使用图像作为观察)。
接着,该环境对象被传递给 StreetFighterCustomWrapper 类,该类为 Street Fighter 游戏提供了自定义的环境包装器。其中,'rendering' 参数指定是否渲染图像。
最后,该环境对象被传递给 Monitor 类,该类用于记录环境的状态,并在必要时输出日志信息。最后,设置了随机种子,以确保每次运行时都使用相同的随机序列。
最终,'make_env' 函数返回了内部函数 '_init' 的引用,而不是直接返回环境对象。这样做的好处是,可以在需要时再次调用 '_init' 函数,从而创建新的环境对象。
原文地址: https://www.cveoy.top/t/topic/nMaE 著作权归作者所有。请勿转载和采集!