Como posso executar corretamente o ginásio OpenAI com nvidia-docker e ver os ambientes

5

Então, estou tentando definir o ginásio OpenAI em um contêiner docker, mas é assim:

Observe que a janela pong tem um estranho problema de renderização no qual está repetindo as coisas e as cores estão desativadas. (na verdade, se você olhar para o array retornado por env.reset () você pode ver os valores de pixel, então o problema está na renderização, não no x-forwarding. Aqui estão invasores de espaço:

Minha configuração é muito simples.  - Eu estou em um local do Ubuntu 16.04 instalar com uma Nvidia gtx1060 e corei7  - Eu instalei o driver nvida runfile com arquivos --no-opengl (conforme instruções da Nvidia e muitos lugares).  - Especificamente, estou executando a imagem do docker do floydhub / pytorch.

Alguém reconhece a falha específica do render e o que isso significa? Quase parece um StackOverflow de um buffer de quadros! O que posso fazer para rastrear o bug?

Você pode facilmente reproduzir isso da seguinte maneira:

docker run -it --user=$(id -u) --env="DISPLAY" --workdir="/home/$USER" --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" floydhub/pytorch:0.1.11-gpu-py3.6 bash

Agora, na imagem, digite python e, em seguida, o seguinte:

import gym
gym.make('Pong-v0').render()

Isso deve abrir uma janela encaminhada x em sua máquina, mas a exibição está corrompida (pelo menos para mim)

Acima eu realmente usei SpaceInvaders-v0

    
por AwokeKnowing 03.08.2017 / 21:40

1 resposta

2

Eu tive este problema sendo executado em uma versão antiga da academia e uma versão mais recente da academia [atari]. Isto é o que meu pong render () parecia

Consegui corrigi-lo certificando-me de que instalei a versão mais recente de ambos executando

pip install gym --upgrade
pip install gym[atari] --upgrade

Em seguida, é exibido corretamente

    
por alexbhandari 10.12.2017 / 08:52