在Windows上使用OpenAI Gym Atari

44

我在Windows 10上安装OpenAI Gym Atari环境时遇到了问题。在同一系统上,我已经成功地安装并使用了OpenAI Gym。

当我尝试运行makefile时,它会出现错误。

我正在运行命令pip install gym[atari]

下面是错误信息:

enter image description here

这是我当前系统上的内容...cmakemake都已明确安装。

enter image description here

5个回答

156

不久之前,我创建了一个支持Windows的分支(原始存储库的开发人员不会合并或甚至评论PR和问题)。它既不需要MSYS / Cygwin也不需要CMake或Zlib。

要简单安装atari-py轮(二进制文件),请使用以下命令:

pip install -f https://github.com/Kojoley/atari-py/releases atari_py

如果你有任何distutils支持的编译器,你可以从源代码安装:

pip install git+https://github.com/Kojoley/atari-py.git

使用简单的示例测试您的安装:

import gym
env = gym.make('SpaceInvaders-v0')
env.reset()
for _ in range(1000):
    env.step(env.action_space.sample())
    env.render('human')
env.close()  # https://github.com/openai/gym/issues/893

如果您的输出结果看起来混乱,那很可能是因为您的gym版本过旧。


12
这份精美的作品值得获得更多投票。在Win7_64系统上快速、无问题地运行Gym[Atari]的方法。 - Niall Cosgrove
这很好,对我有用。然而,我在可视化模拟器方面遇到了问题,因为这个安装似乎没有启用SDL(我猜是这样的?)。你有关于这个的任何建议吗? - Daniel Crane
@DanielCrane 我认为你做错了什么。Gym不使用SDL,对我来说可视化工作正常。我会在答案中添加一个简单的用法。 - Nikita Kniazev
同意@NiallCosgrove的看法,这是一份很好的工作。在图像渲染方面遇到了问题,但在升级到最新的gym版本后得到了解决,具体解决方法请参考https://stackoverflow.com/a/45150861/2491589。 - Marky0
1
非常感谢!一个简单的一行复制/粘贴节省了几个小时的虚拟环境、依赖等尝试,而这个方法却成功了! - user4779
即使在2020年,这仍然有效。你是真正的MVP! - Harpal

7

我最终在Windows上安装了Bash,并使用它来运行OpenAI Gym / Atari环境。目前,OpenAI Gym对于Windows的支持非常有限。


啊,是的,有一些杂散的依赖需要你去获取,但是由于sudo apt-get install的简单性,它们都不应该难倒你 :) - dant
你已经在显示器上运行它了吗?你是如何处理的?使用Xming吗? - AwokeKnowing
@AwokeKnowing,我的代码没有涉及生成图形,所以很遗憾我没有答案。 - dant
@AwokeKnowing,太好了!如果您想包含您所做的内容,请随意编辑答案!关于GPU / cuda,这只是第一个版本,所以还有希望 :) - dant
@dant 我另外添加了一个答案。 - AwokeKnowing
显示剩余2条评论

7
这并没有完全测试,因为我不记得我当时做了什么,但目前我已经在使用Windows上的ubuntu(WSL)运行openAI gym,并且设置和显示了所有的atari游戏,还有matplotlib绘图,实际上我也让sublimetext3和spider工作了。
所以把这些当作指南,但我没有“干净”的环境来测试它们。
首先,在Windows中,搜索“xming”(x11服务器),从sourceforge下载/安装/运行。这就是使一切成为可能的原因。
现在在WSL bash中安装显示器件以与xming配合使用。
sudo apt-get install x11-apps
export DISPLAY=localhost:0.0 
nano ~/.bashrc  #(add  export DISPLAY=localhost:0.0   at the end. Ctrl+X to exit/save)
sudo apt-get install gnome-calculator #will get you GTK

现在在WSL bash中安装Anaconda。这将涉及下载.sh文件(例如使用curl -O“[最新anaconda的http链接]”),并以运行。安装Anaconda时不要使用sudo。
安装了Anaconda后,关闭WSL,然后重新启动它。现在创建一个环境并激活它。
conda create -n gym python=3.5 anaconda
source activate gym

现在获取健身房存储库。
git clone https://github.com/openai/gym.git
cd gym

现在安装OpenAI Gym存储库中提到的这些Gym依赖项。

apt-get install -y python-numpy python-dev cmake zlib1g-dev libjpeg-dev xvfb libav-tools xorg-dev python-opengl libboost-all-dev libsdl2-dev swig

现在使用conda安装libgcc。
conda install libgcc

现在建立健身房。
pip install -e '.[all]'

这就是全部内容了。确保在Windows上运行Xming,在WSL中键入gnome-calculator,它应该会带出计算器。如果没有,请继续处理显示方面的问题。如果有,请尝试在gym示例文件夹中运行一些代理程序。
我可能错过了一些额外的依赖项,但这些都是我根据错误消息得出的结论。
这是一个图片,以激励您: enter image description here 编辑:今天我运行了以下命令,安装了Qt5作为后端,使用Qt5Agg作为后端(而不是TkAgg),matplotlib可以正常工作。如果您在WSL上运行其他需要Qt5的东西,这可能有所帮助。
此外,要找到您的matplotlibrc和命令提示符,请输入: python import matplotlib print(matplotlib.matplotlib_fname()) quit()
请注意,在Windows的Ubuntu上没有GPU支持。这是uservoice上最受欢迎的功能,但微软将其放在“待办事项”中。如果您感兴趣,请在此处投票。

2
所有的脚本似乎都比例如OpenAI视频演示中的同样的Atari游戏运行速度加快。这是由于在Windows上使用Ubuntu引起的吗?有什么想法可以解决这个问题吗? - Kagaratsch
一个依赖库 pyglet 的 1.3.0 版本存在问题,导致在 WSL 中渲染 Gym 应用程序时出现“NotImplemented: abstract”错误。卸载 pyglet 并重新安装版本 1.2.4 可以解决此问题。 pip install 'pyglet==1.2.4' - DrMcCleod
@Kagaratsch 只需使用 time.sleep(0.1) 或其他类似的函数即可。对于机器学习来说,这样超级快速的速度非常有用! - Dibran
1
我写了一篇完整的文章来让它运行起来!https://dibranmulder.github.io/2019/09/06/Running-an-OpenAI-Gym-on-Windows-with-WSL/ - Dibran
@Dibran非常有帮助! - AwokeKnowing

5
我遇到了一个问题,gym现在需要比其他克隆的版本更高的v0.1.4版本的atari-py。感谢Nikita Kniazev的帮助,我将他的Windows编辑应用到了openai/atari-py的最新代码中,并让gym正常工作。
使用方法: pip install git+https://github.com/Kojoley/atari-py.git

1

我在使用atari-py环境时遇到了同样的问题。然后我按照Openai GitHub中的步骤操作,然后它就可以工作了。


从那个链接中提取相关信息的简化版本可能会很有用/改善答案 - 以防链接失效或过期。 - Gavin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接