Closed AdamStelmaszczyk closed 6 years ago
After hours of debugging, I found it...
The culprit is pip install universe
.
It installs a bit old universe 0.21.3 as this is the latest on pypi.
If you install the HEAD version from the universe git repo (pip install git+https://github.com/openai/universe
) the visualizations look good.
It works with Python 2.7, it hangs with Python 3.5, 3.6.
I bisected top commits there to see which one was fixing the problem for Python 2.7, this one: https://github.com/openai/universe/commit/a4f78eb928ef2dc26247b16a75a4e862c2552f00
It bumps the version to 0.21.5, however this version is not on pypi. Both universe-starter-agent
and universe
repos look unmaintained, sad.
I'm not closing the issue as in my eyes issues should be only closed when the problem/source was fixed, here it's not the case, it won't work for newcomers executing installation instructions from README. Hopefully they will see this issue page. Feel free to close when fixed.
I followed install instructions from the README.
After running
python train.py --num-workers 2 --env-id PongDeterministic-v3 --log-dir /tmp/pong --visualise --mode child
andtail -f /tmp/pong/*.out
I got:conda list
shows 2 versions ofnumpy
installed. First,numpy==1.13.3
is installed as a dependency forpip install "gym[atari]"
. But thennumpy==1.11.3
is installed because ofconda install -y -c https://conda.binstar.org/menpo opencv3
.I removed the
numpy==1.13.3
installed by pip. But the errorImportError: numpy.core.multiarray failed to import
stays.So, I installed
numpy==1.13.3
with pip again, but removednumpy==1.11.3
coming from conda:It also removes opencv3 and scipy. However, I installed again the same versions:
Then after running
train.py
I got:Tensorflow version installed with
pip install tensorflow
was 1.4.1. I noticed that in Dependencies you point to 0.12. I removed 1.4.1 and didpip install tensorflow==0.12
.I ran
train.py
again.This time the console logs seems ok, but the visualization looks wrong:
I tried other games from Atari and the visualization looks wrong in the same way. I don't know if this is only visualization or visualization + network input (so the whole training may be wrong).
How to make it work?