open ai gym Nameerror

2019-03-19 06:21发布

I am trying to use the famous 'Gym' module from OpenAI on WSL and executing code on python 3.5.2. When I try to run an environment as explained here, using the code:

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

this happens :

Traceback (most recent call last):
  File "<stdin>", line 4, in <module>
  File "/home/DrHofstadter/gym/gym/core.py", line 153, in render
    return self._render(mode=mode, close=close)
  File "/home/DrHofstadter/gym/gym/core.py", line 285, in _render
    return self.env.render(mode, close)
  File "/home/DrHofstadter/gym/gym/core.py", line 153, in render
    return self._render(mode=mode, close=close)
  File "/home/DrHofstadter/gym/gym/envs/classic_control/cartpole.py", line 114, in _render
    from gym.envs.classic_control import rendering
  File "/home/DrHofstadter/gym/gym/envs/classic_control/rendering.py", line 23, in <module>
    from pyglet.gl import *
  File "/home/DrHofstadter/.local/lib/python3.5/site-packages/pyglet/gl/__init__.py", line 224, in <module>
    del base
NameError: name 'base' is not defined

The problem is similar to this question nothing is being rendered. (The gitterforum link given in question doesn't work anymore.)

1条回答
Ridiculous、
2楼-- · 2019-03-19 07:13

I was using an Ubuntu 16.04 VM with python 3.5.2. Here's how I installed and ran OpenAI gym on it. (Reference: https://github.com/openai/gym#installing-everything)

sudo apt-get install cmake zlib1g-dev libjpeg-dev xvfb libav-tools xorg-dev libboost-all-dev libsdl2-dev swig
sudo apt-get install python3-dev python3-future
sudo pip3 install numpy
sudo pip3 install PyOpenGL
sudo pip3 install piglet
sudo pip3 install pyglet
mkdir -p ~/src
cd ~/src
git clone https://github.com/openai/gym
cd gym
python3 ./setup.py clean
sudo pip3 install -e '.[all]'

I'd then verify the installation by import gym in python3.

Here's what I got when I ran the CartPole-v0 demo.

CartPole-v0

查看更多
登录 后发表回答