gym如何搭建自己的环境

如何使用gym库来搭建自己的环境

1.创建自己的环境文件夹

1.1找到gym库的位置

这里提供2种方法来寻找gym库:

①用anaconda或者miniconda安装:

这种方法可以直接在anaconda虚拟环境的Lib\site-packages\目录下找到名为gym的文件夹:

我的文件路径:Z:\Anaconda\envs\reinforcement\Lib\site-packages\gym\envs
②普通安装:

打开cmd命令提示符,使用 pip show gym指令来获得gym位置,如下图所示:

gym如何搭建自己的环境

这里的Location和上文的不同是因为我在python默认环境和Anaconda中都装有gym,因此在找位置时要注意你所使用的环境。

; 1.2创建你的gym环境文件夹

很多教程都是在已有的gym环境文件夹下,为了方便我选择新建一个文件夹来保存我搭建的gym环境。

gym如何搭建自己的环境
该文件目录下需要有两个文件:
gym如何搭建自己的环境
其中 __init__.py只需要一句: from gym.envs.my_env.GridMap import GridEnv
其中 GridMap是我环境的文件名, GridEnv如上文所述是我环境文件中构建的类名称(这个在下文详细叙述)。
GridMap.py是我用来测试环境的代码,可以直接从 \envs\toy_text\cliffwalking.py复制过来。

2.注册环境

gym目录下的 __init__.py文件中包含所有环境的注册信息

可以使用 print(envs.registry.all())来获取所有的gym环境:

from gym import envs
print(envs.registry.all())

首先需要打开 gym目录下的 __init__.py文件,向其中插入如下内容:

gym如何搭建自己的环境
注意:GridWorld-v0要加版本号-v0,而entry_point中不加
后续引用也是用GridWorld-v0来引用该环境

第3行 from gym.envs.my_env import GridMap中的 from gym.envs.my_env代表 envs目录下我的文件夹名称为 my_env
第11行 register需要包含以下信息:
id:以后使用该环境时引用的名称
entry_point:环境文件所在的位置
max_episode_steps:一个eposide最大进行多少步就必须停止
reward_threshold:一个没有调用过的参数

github这样描述 reward_threshold这个参数:

Is reward_threshold ever used?
Correct, there is no code in gym that relies on reward_threshold. It is essentially metadata that external users of the environment could use. To my understanding, in the past we used to filter the results for the env leaderboards; but those are not active anymore. Still, it can be useful for reward normalization across difference environments, or for computing aggregate statistics of sort “out of all the environments, how many did my new algorithm manage to solve”
翻译结果为:没错,gym里没有依赖reward_threshold的代码。它本质上是环境的外部用户可以使用的元数据。据我所知,过去我们习惯于过滤环境排行榜的结果;但这些不再活跃。尽管如此,它仍然可用于跨不同环境的奖励规范化,或者用于计算”在所有环境中,我的新算法设法解决了多少”的聚合统计信息。

其中的重点是第二个参数 entry_point:gym.envs.my_env:GridEnvGridEnv在我的gym环境代码中:

gym如何搭建自己的环境
至此,环境的注册就完成了,可以使用自定义的环境了。

3.测试

import gym
env = gym.make('GridWorld-v0')
env. reset ()
env. render ()

结果有输出不报错即为环境搭建成功。

Original: https://blog.csdn.net/weixin_50922203/article/details/126036308
Author: 海绵 摆摆
Title: gym如何搭建自己的环境

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/787275/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球