llSourcell / OpenAI_Game_Bot_Live_stream

This is the code for the "How to Install OpenAI's Universe and Make a Game Bot" live session by Siraj Raval on Youtube
39 stars 36 forks source link

AttributeError: 'VNCEnv'... error, solved by adding env.configure(remotes=1) #2

Closed arsenious closed 7 years ago

arsenious commented 7 years ago

Hi Siraj

Thanks for you amazing channels and videos! I'm relatively new to Tensorflow/Gym/Universe(and linux too ) and your videos have really helped me.

I'm running universe inside a Conda Py 3.5 env. I was getting the following error when running your code:

(universe) USERNAME (master) universe $ python ~/Downloads/universe_demo_sr.py [2017-01-08 17:08:34,370] Making new env: flashgames.CoasterRacer-v0 Traceback (most recent call last): File "/home/USERNAME/Downloads/universe_demo_sr.py", line 94, in main()
File "/home/USERNAME/Downloads/universe_demo_sr.py", line 40, in main observation_n = env.reset() File "/home/USERNAME/gym/gym/core.py", line 123, in reset observation = self._reset() File "/home/USERNAME/universe/universe/wrappers/timer.py", line 15, in _reset return self.env.reset() File "/home/USERNAME/gym/gym/core.py", line 123, in reset observation = self._reset() File "/home/USERNAME/universe/universe/wrappers/render.py", line 25, in _reset observation_n = self.env.reset() File "/home/USERNAME/gym/gym/core.py", line 123, in reset observation = self._reset() File "/home/USERNAME/universe/universe/wrappers/throttle.py", line 42, in _reset observation = self.env.reset() File "/home/USERNAME/gym/gym/core.py", line 123, in reset observation = self._reset() File "/home/USERNAME/universe/universe/envs/vnc_env.py", line 328, in _reset self._handle_connect() File "/home/USERNAME/universe/universe/envs/vnc_env.py", line 495, in _handle_connect for remote in self.remote_manager.pop(n=n): AttributeError: 'VNCEnv' object has no attribute 'remote_manager'


So I checked the Universe demo and found this extra line env.configure(remotes=1) # automatically creates a local docker container

in

#init environment
env = gym.make('flashgames.CoasterRacer-v0')
#env.configure(remotes=1)  # automatically creates a local docker container
observation_n = env.reset()

After adding this, it worked!

image

I'm not sure how/why it is working though.

Thanks

arsenious commented 7 years ago

Just saw that someone else has reported it as well. Closing the issue.