问题描述
我刚刚在Google Colab上安装了openAI Gym,但是当我尝试以在这里解释.
I've just installed openAI gym on Google Colab, but when I try to run 'CartPole-v0' environment as explained here.
代码:
import gym
env = gym.make('CartPole-v0')
for i_episode in range(20):
observation = env.reset()
for t in range(100):
env.render()
print(observation)
action = env.action_space.sample()
observation, reward, done, info = env.step(action)
if done:
print("Episode finished after {} timesteps".format(t+1))
break
我明白了:
WARN: gym.spaces.Box autodetected dtype as <class 'numpy.float32'>. Please provide explicit dtype.
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-19-a81cbed23ce4> in <module>()
4 observation = env.reset()
5 for t in range(100):
----> 6 env.render()
7 print(observation)
8 action = env.action_space.sample()
/content/gym/gym/core.py in render(self, mode)
282
283 def render(self, mode='human'):
--> 284 return self.env.render(mode)
285
286 def close(self):
/content/gym/gym/envs/classic_control/cartpole.py in render(self, mode)
104
105 if self.viewer is None:
--> 106 from gym.envs.classic_control import rendering
107 self.viewer = rendering.Viewer(screen_width, screen_height)
108 l,r,t,b = -cartwidth/2, cartwidth/2, cartheight/2, -cartheight/2
/content/gym/gym/envs/classic_control/rendering.py in <module>()
21
22 try:
---> 23 from pyglet.gl import *
24 except ImportError as e:
25 reraise(prefix="Error occured while running `from pyglet.gl import *`",suffix="HINT: make sure you have OpenGL install. On Ubuntu, you can run 'apt-get install python-opengl'. If you're running on a server, you may need a virtual frame buffer; something like this should work: 'xvfb-run -s \"-screen 0 1400x900x24\" python <your_script.py>'")
/usr/local/lib/python3.6/dist-packages/pyglet/gl/__init__.py in <module>()
225 else:
226 from .carbon import CarbonConfig as Config
--> 227 del base
228
229 # XXX remove
NameError: name 'base' is not defined
什么都没有呈现.我不知道如何在Google colab中使用它:'xvfb-run -s \"-screen 0 1400x900x24\" python <your_script.py>'"
Nothing is being rendered. I don't know how I could use this in google colab: 'xvfb-run -s \"-screen 0 1400x900x24\" python <your_script.py>'"
推荐答案
健身房通常会在屏幕上使用GL渲染显示.
The Gym will normally render the display using GL, on your screen.
但是Colab作为笔记本电脑在网络上运行,无法直接显示在屏幕上.它只能通过HTML显示结果.
But Colab is run on the web as a notebook, it can’t display directly to your screen. It can only show the result through HTML.
如果有人修改Gym来操纵WebGL,也许有一天.但不是现在.
If someone modifies the Gym to maniplulate WebGL, maybe someday. But not now.
这篇关于Google合作实验室中的openAI Gym NameError的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!