如何在Windows上安装和渲染OpenAI-Gym

简介: 如何在Windows上安装和渲染OpenAI-Gym

OpenAI Gym是学习和开发强化学习算法的好地方。它提供了许多有趣的游戏(所谓的“环境”),你可以将自己的策略用于测试。例如,它有一些简单的游戏,例如在小推车上平衡垂直杆(“ CartPole-v1”),将钟摆摆到直立位置(“ Pendulum-v0”),以及一些经典的电子游戏,例如Space Invader 和Pin Ball。

640.png

然而,gym是设计在Linux上运行的。尽管它可以使用Conda或PIP安装在Windows上,但它不能在Windows上显示,因为它的呈现是在基于Linux的包PyVirtualDisplay上响应的。因此,在Windows上玩OpenAI Gym很不方便。

那么Windows用户是如何可视化gym呢?

一个简单的解决方案是使用谷歌Colab。它可以通过web浏览器访问,而且大多数包都已经正确设置好了。但是Colab也有缺点:

  1. 频繁的会话超时和断开连接。您的会话可能在餐后超时,您的所有数据将丢失。
  2. 机器配置不高。就连我的戴尔XPS笔记本电脑在许多神经网络模型上的运行速度也比免费的Colab电脑快两倍。如果你已经有一台不错的机器,为什么不使用它呢?
  3. 安装本地驱动器不方便。每次你开始一个会话的时候都需要这样做。

安装Linux / Windows双启动是最干净的解决方案。但是,如果您只是想不时进行一些编码,那么设置一个完整的操作系统似乎是一个过大的选择。安装Linux VM所需的精力要少于双重引导,但仍然需要大量的精力来设置整个虚拟系统,以及解决潜在的兼容性问题,解决库和程序包依赖性等。使用docker映像应该很容易,但是通过docker hub上快速搜索生成的映像无法在我的计算机上运行。另一个github上的代码仅具有“实验性” Windows支持,并且需要从源代码构建看似复杂的Docker映像。众所周知,在另一个操作系统上从源代码构建远非直截了当。

Genevieve Hayes[3]在这篇文章中详细描述了一个纯Windows解决方案。它结合使用Visual Studio、Conda、Pip和Xming。这不是一个简短的步骤列表。我一步一步地遵循这些步骤,但仍然无法构建atari-py和box2d。此外,我有点担心Windows原生解决方案将来可能需要一些源代码修改。

在评估了许多选项之后,我最终自己构建了一个极简的docker映像。这远没有听起来那么难。但如果你想跳过设置环境的工作,你可以通过以下三个简单的步骤直接享受Gym:

下载并安装Docker

从Dock拉出我的docker映像:

dockerpulljxu305/openai_gym_docker:v1.0

从命令行运行docker映像(如果您愿意,可以挂载您喜欢的文件)

dockerrun-p<localport>:8888-it-v<localdirectorytomount>:<targetdirectory>jxu305/openai_gym_docker:v1.0

或者只是从Docker桌面GUI启动

640.png

为了测试方便,我在图片中添加了一个小notebook 来测试渲染示例环境:Cart Pole v1、Mountain Car v0、Pendulum v0、Lunar Lander v2、Space Invaders v0和Car Racing v0。

640.png

如果你对如何制作这个docker感兴趣,请继续阅读。这其实很简单,你所需要的是一个少于30行的Dockerfile。在这里,我将逐步介绍Dockerfile。

首先,为了避免从头开始建造,我从jupyter notebook环境开始建造。由于Geron的机器学习书籍使用tensorflow,我决定在jupyter/tensorflow-notebook图像的基础上进行构建。

FROMjupyter/tensorflow-notebook

接下来,安装呈现环境所需的一些库。

USERrootRUNapt-getupdate-y&&\apt-getinstall-yxvfb&&\apt-getinstall-ypython-opengl

然后安装OpenAI-gym,以及PyVirtualDisplay。

USER${NB_USER}
RUNpipinstallgympyvirtualdisplay

仅此而已。有了这几行代码,你就可以运行和渲染

我在Dockerfile中添加了几行代码,以支持一些需要Box2D, Toy Text,和雅达利的环境。例如,经典的月球着陆器和太空入侵者环境。

RUNapt-getinstall-ycmake&&\apt-getinstall-yzlib1gzlib1g-devRUNcondainstallswigRUNpipinstallbox2d-pyatari_pypystan

最后两行只是为了测试方便,将一些文件复制到图像中。

COPY ./example/env_render.ipynb/home/${NB_USER}/env_render.ipynbCOPY ./example/18_reinforcement_learning.ipynb/home/${NB_USER}/18_reinforcement_learning.ipynb

这就是Dockerfile的全部内容。构建这个简单的docker也很容易,只需在命令行中运行以下命令:

$dockerbuild-t<yourtag>:<version> .

恭喜你!你只要建立你自己的OpenAI-gym docker!现在你可以用Docker桌面启动它并开始你的代码。

最后dockerfile代码在这里:https://github.com/jianxu305/openai-gym-docker

目录
相关文章
|
2月前
|
人工智能 JavaScript 开发工具
极速上手!Claude Code 原生支持 Windows 免WSL安装教程
Claude Code 现已支持 Windows 原生运行,无需 WSL 配置。本文提供详细安装教程,涵盖 Node.js 环境验证、Git 安装及 Claude Code 配置步骤,助你快速上手这一强大 AI 编程工具。
1423 5
|
2月前
|
存储 虚拟化 Windows
VMware安装Windows10
本案例介绍了在Windows系统上使用VMware Workstation 17.5 Pro安装配置Windows 10虚拟机的详细步骤,包括所需设备、软件下载链接、虚拟机设置及系统安装全过程。
350 133
VMware安装Windows10
|
3月前
|
Ubuntu Unix Linux
在Windows上轻松安装和使用Ubuntu的方法详解
继续点击“Continue”按钮以继续安装流程,随后选择清理磁盘并安装操作系统的选项。 接下来,在安装过程中,你需要选择时区。为了与你的地理位置相匹配,请选择中国上海作为你的时区设置。 在安装过程中,你还需要设置计算机的名称以及账号密码。请务必牢记这些信息,因为它们将作为你登录系统的凭证。
|
1月前
|
安全 Ubuntu iOS开发
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
137 3
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
|
2月前
|
安全 数据安全/隐私保护 Windows
ZyperWin++使用教程!让Windows更丝滑!c盘飘红一键搞定!ZyperWin++解决系统优化、Office安装和系统激活
ZyperWin++是一款仅5MB的开源免费Windows优化工具,支持快速优化、自定义设置与垃圾清理,兼具系统加速、隐私保护、Office安装等功能,轻便无广告,小白也能轻松上手,是提升电脑性能的全能管家。
972 0
|
4月前
|
Linux API iOS开发
Blender 4.5 (Linux, macOS, Windows) - 开源 3D 创意软件 (渲染 建模 雕刻)
Blender 4.5 (Linux, macOS, Windows) - 开源 3D 创意软件 (渲染 建模 雕刻)
234 1
Blender 4.5 (Linux, macOS, Windows) - 开源 3D 创意软件 (渲染 建模 雕刻)
|
4月前
|
C语言 图形学 Windows
Windows下安装和配置GTK4(基于CLion)
本文介绍了作者选择GTK作为C语言图形库的原因,包括代码简洁、控件丰富和界面美观,并分享了在Windows环境下通过MSYS2安装GTK4及在CLion中配置开发环境的详细步骤。
557 0