如何创建gym环境 您所在的位置:网站首页 gymnasium和gymnastics 如何创建gym环境

如何创建gym环境

#如何创建gym环境| 来源: 网络整理| 查看: 265

OpenAI gymnasium是强化学习训练环境事实上的标准,使用强化学习解决问题,首先应该用gymnasium的接口封装需要解决的问题,如果能将要解决的问题封装为gym接口,则可以调用现有的强化学习算法进行问题的初步分析。

具体的实现步骤,参见网站:Make your own custom environment - Gymnasium Documentation

总结一下步骤:

1. 使用gym接口封装需要解决的问题的环境,如下图所示,继承gym.Env类,并在代码中实现:reset,step, render等函数接口;

图1 使用gymnasium函数封装自己需要解决的问题接口

2. 将自己的模块注册到gymnasium,主要在__init__.py文件下,调用gymnasium的注册函数register进行注册,如图2所示,具体为何要注册,注册的原理,注册后发生什么事等,未进行研究

 图2 将自己的模块注册到gymnasium下

3. 使用pip将自己的环境注册到系统,调用Python的setuptools完成注册,具体第,在setup.py中加入对应的代码,如图3所示。然后,执行,pip install -e gym-examples, 如图3所示。

图3 将模块注册到系统或者虚拟环境

4.  编写代码,测试新建环境是否可用

图4 测试新建环境

5. 踩的坑~~~,核心重点

包的下载是按照链接中的命令行下载的,如图 5所示,主要使用Git的命令行。

图5 gym-example的下载过程

但是,这个链接是老的地址,使用的gym(老版本),而非gymnasium(新版本)来编写的,导致了Namespace无法找到的错误,如图6所示。

图6  gymnasium.error.NamespaceNotFound: Namespace gym_examples not found. Have you installed the proper package for gym_examples? 的错误

因此,应该根据网页中的文件,需要:1. 对__init.py__中的引入register库的地方进行修改,注意是from gymnasium.envs.registration import register;2. 对grid_world.py文件进行修改,直接拷贝网页中的文件,然后替换原来的文件

 

 

图7 Namespace错误的修改方法,需要修改register和action space为gymnasium库,而非gym库

以上



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有