​ Gym提供了一些基础的强化学习环境,并且集成了许多有意思的环境,下面我们来一起看下如何在你的电脑上搭建Gym的开发环境吧。

​ Gym的Github地址。

1. ReadMe解读

​ Gym 是一个开源 Python 库,通过提供标准 API 在强化学习算法和环境之间进行通信,以及符合该 API 的标准环境集,用于开发和比较强化学习算法。自发布以来,Gym 的 API 已成为强化学习领域的标准。

​ Gym的官方文档地址:https://www.gymlibrary.ml/

​ 起初,一直没找到这个文档,看到的是Gym官网上提供的简单的[一页文档](Gym (openai.com))。一直觉得Gym的文档给的太过简单,内容也很少,想开发自己的环境让人无从下手,后面才发现了上面的文档,和自己这段时间的学习基本吻合,也算是两相印证。

​ Gym更多的是提供的一个强化学习环境的一个标准,你只要实现Gym的几个关键接口,其余内容都是可以自由发挥的,你可以使用Pygame、pyglet等开发一个游戏用做环境,也可以简单的使用matplotlib来做环境图像的渲染。后面我会有文章单独介绍Gym的API。

​ Gym现在支持3.7,3.8,3.9,3.10版本的python,支持在Linux和Mac上安装;也支持Windows上安装Gym,但是并没有官方支持,Gym中的一些环境,如Mujoco,对于Windows的支持不如Linux和Mac,但是对于初学者,是足够使用了。并且在不同的系统上,安装步骤基本类似。

2. 环境搭建

​ python环境的管理,个人建议大家使用conda。conda不仅仅是用来安装python包的工具,其更重要的功能是环境管理的工具,我们可以通过conda创建python环境,每个环境之间是相互独立的,各个环境里可以使用不同版本的python,不同版本的开发包。conda的环境类似docker,而且有了conda后,你再也不用在一个电脑因为代码的原因来回切换python的版本,或者为某个项目升降某个包而影响了其他项目。

​ conda的安装本位不在多讲,大家可以参考这篇文章(Windows,linux可自行百度)。conda安装好后,一定记得配置国内的源,不然下载速度会受限。

​ python 安装好后,执行如下命令,创建一个python虚拟环境(名字大家可以自起),我使用的是3.7版本的Python,大家可自行选择自己需要的版本:

conda create --name Gym python=3.7

​ 稍等片刻,conda就帮我们创建好了名字为Gym、python版本3.7的环境了,

conda info --envs
conda activate Gym

​ 这两条命令是查看本机已经安装的python环境,另一个是当前终端激活虚拟环境Gym,也就是将当前终端使用的python切换到Gym,可以看大,最前面的符号,变为了(Gym)。

pip install gym
pip install pygame
pip install numpy

​ 这样,Gym的基础环境就安装完成了,我们打开Pycharm(python的开发环境,建议使用Pycharm,页面简单,功能强大,如果有校园邮箱,可以通过教育优惠使用专业版,也可以使用社区办,也足够使用了),新建一个项目,创建一个python文件,将如下代码复制到文件中:

import gym
import time
env = gym.make("CartPole-v1")
observation, info = env.reset(seed=42, return_info=True)for _ in range(1000):# 显示图像env.render()action = env.action_space.sample()observation, reward, done, info = env.step(action)time.sleep(0.01)if done:observation, info = env.reset(return_info=True)
env.close()

​ 想要执行上面代码,还需要在pycharm中将python环境设置为刚才我们创建的Gym,点击右下角,Add Interpreter,

​ 然后选择Existing environment,记得勾选Make available to all project,这样以后其他项目就可以直接使用添加的interpreter了,

​ 点击右方的三个点图标,到我们conda的安装目录下–>envs–>Gym目录下的python.exe(这个是windows下的目录,如果是linux,还需到进入bin目录,找到python可执行文件,带小问号图标)

​ 点击ok,在点击ok即可,等pycharm切换好环境后,我们就可以执行上面的测试代码了,执行结果如下:

3. 总结

​ 本文的内容到这里就结束了,Gym的基础环境搭建还是比较简单的。Gym把不同的模块进行了抽离,我们上面安装的知识Gym的基础环境,其他的如Atari、mojoco等环境,还需要用户单独安装。后面会有文章将如何安装Atari环境,并使用键盘玩Atari游戏。

​ 如果本文能对你有所帮助,还请给点赞、收藏、关注博主,如果有什么错误,还请批评指正。

强化学习Openai Gym基础环境搭建相关推荐

  1. ODB学习笔记之基础环境搭建

    一,简介 ODB是应用于C++的一个开源.跨平台.跨数据库的对象关系映射(ORM)系统. 它可以让你持久化C++对象到关系数据库,而不必处理表.列或者SQL,无需手动编写任何映射代码. ODB支持My ...

  2. 【AI实战】深度学习基础环境搭建(Ubuntu + anaconda + tensorflow + GPU + PyCharm)

    为方便日常的深度学习模型开发与测试,本人在自己笔记本上搭建一个深度学习的基础环境,便于学习AI使用.本人使用的笔记本配置是CPU为8代i5,显卡为GTX1060,内存为8G,基本上可满足日常的AI研究 ...

  3. OpenStack(M)+ ubuntu 搭建学习二:基础环境配置

    目录 一.配置网络接口 二.配置域名解析 三 .配置国内的软件源 四. 启用OpenStack库 五.安装OpenStack客户端 六.同步系统时钟与时钟服务器(NTP) 具体步骤可参考官方文档:Op ...

  4. pybullet机器人仿真环境搭建 1.安装pybullet,测试官方示例,基础环境搭建

    pybullet机器人仿真环境搭建 1.安装pybullet 前言 安装 测试官方示例 基础环境搭建 导入pybullet 创建服务端 (可选)配置图形GUI 添加资源路径 设置重力 加载模型 迭代运 ...

  5. 强化学习之gym初战实战案例:悬崖案例CliffWalking-v0。

    文章目录 强化学习简介 gym简介 CliffWalking-v0 强化学习简介 我们知道,强化学习广泛应用于玩一些较为简单的游戏,其思想就是:过一段时间(例如0.1秒)拍一张(游戏)图片,然后机器看 ...

  6. (一)Hyperledger Fabric 1.1安装部署-基础环境搭建

    在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助. 本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LT ...

  7. Ionic 学习笔记之-痛彻心扉的环境搭建

    Ionic 学习笔记之-痛彻心扉的环境搭建 最近在学习Ionic 做多平台的应用.跨平台应用.就是用html写的界面.js实现逻辑. 在学ionic之前选了各种跨平台APP开发框架.最后选择了ioni ...

  8. 基础环境搭建——基于Spark平台的协同过滤实时电影推荐系统项目系列博客(五)

    系列文章目录 初识推荐系统--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(一) 利用用户行为数据--基于Spark平台的协同过滤实时电影推荐系统项目系列博客(二) 项目主要效果展示--基 ...

  9. Hadoop基础环境搭建完整版

    Hadoop基础环境搭建(转载尚硅谷) 说明 个人学习记录 基于虚拟机搭建,需要提前准备虚拟机环境 搭建版本:hadoop-3.1.3 搭建HDFS和yarn 提前准备Hadoop安装包:hadoop ...

最新文章

  1. 为什么说红外热成像测温设备是2020年最火的弱电设备?
  2. Docker-数据管理
  3. selenium基础框架的封装(Python版)这篇帖子在百度关键词搜索的第一位了,有图为证,开心!...
  4. 霍金一生重要时刻照片合集,3次来中国,年轻时也是帅哥一枚
  5. lombok 生成代码_使用Project Lombok减少Java应用程序中的样板代码
  6. 字体大小 js 控制
  7. Spring——IOC(控制反转)
  8. 树上启发式合并算法概述及习题
  9. 网络服务器充斥大量信息,使网络服务器中充斥着大量要求回复的信息,消耗带宽,导致网络或系统停止正常服务,这属于什么攻 - 普法考试题库问答...
  10. ubuntu桌面美化
  11. mysql+tinyint+符号_mysql中TINYINT的取值范围
  12. 利用网络编程实现TFTP协议
  13. Linux时钟管理clk
  14. 极线约束(epipolar constraint)
  15. HEVC区域划分Slice Tile CTU CU PU TU
  16. 微信小程序 - 屏幕适配
  17. PyGmae:有限状态机实践(十一)
  18. “笨办法”学Python3,Zed A. Shaw,习题33
  19. 手机APP游戏/软件/资源下载站源码/软件盒子整站源码
  20. 不朽凡人 正文 第四百五十七章 冲击天仙

热门文章

  1. 风险管理系列课程二:利用图技术优化反洗钱解决方案
  2. Ubuntu16.04下 OMNET++ IDE注释快捷键
  3. Pytorch搭建LeNet5
  4. 老化的骨骼干细胞产生炎性退行性微环境
  5. 每天一个小实例——使用pdfplumber提取pdf表格及文本,并保存到excel
  6. 十种距离计算公式及Python简单实践(余弦距离、欧式距离、jaccard距离等)
  7. IRF 与 H3CS10508
  8. 50套html网站模板,涵盖很多行业,各种类型html网站,各种行业html网站模板下载
  9. 张朝阳的心境,搜狐的武器
  10. 绝好用的迈科威(主控芯片)量产工具