2017-12-03 191 views
4

私は以下のコードを動作させようとしています。OpenAIのenv.render()に続くエラー

import gym 

env = gym.make("CartPole-v0") 

env.reset() 

env.render() 

私は最初の3行を実行している問題はないが、私は第四を実行すると、私はエラーを取得:

Traceback (most recent call last): 

    File "<ipython-input-3-a692a1a1ffe7>", line 1, in <module> 
    env.render() 

    File "/home/mikedoho/gym/gym/core.py", line 150, in render 
    return self._render(mode=mode, close=close) 

    File "/home/mikedoho/gym/gym/core.py", line 286, in _render 
    return self.env.render(mode, close) 

    File "/home/mikedoho/gym/gym/core.py", line 150, in render 
    return self._render(mode=mode, close=close) 

    File "/home/mikedoho/gym/gym/envs/classic_control/cartpole.py", line 116, in _render 
    self.viewer = rendering.Viewer(screen_width, screen_height) 

    File "/home/mikedoho/gym/gym/envs/classic_control/rendering.py", line 51, in __init__ 
    self.window = pyglet.window.Window(width=width, height=height, display=display) 

    File "/home/mikedoho/anaconda3/lib/python3.6/site-packages/pyglet/window/__init__.py", line 504, in __init__ 
    screen = display.get_default_screen() 

    File "/home/mikedoho/anaconda3/lib/python3.6/site-packages/pyglet/canvas/base.py", line 73, in get_default_screen 
    return self.get_screens()[0] 

    File "/home/mikedoho/anaconda3/lib/python3.6/site-packages/pyglet/canvas/base.py", line 65, in get_screens 
    raise NotImplementedError('abstract') 

NotImplementedError: abstract 

私は新しいウィンドウで表示するには、ポールのカートを取得するために期待していました。

このエラーはSpyderのコードからのものです。私はubuntu 16.04を使用しています。 Python 3.6.3; IPython 6.1.0。私はジュピターノートを使用して運がない。

もう一度お詫び申し上げます。私は今日、ちょうどダウンロードされたこのubuntuで非常に新しいです。

答えて

4

私はちょうど10分前のように、この(バグ?)解決:D

あなたはpyglet 1.2.4にpyglet 3をダウングレードする必要があります。 「pip install pyglet == 1.2.4」をアナコンダプロンプトに入力してください。その後、あなたはスパイダーIDEを再起動する必要があります。

"env.render(close = True)"をコードに追加します。そうしないと、ウィンドウを閉じる際に問題が発生します。

もしあなたがpython/ML/DLを初めて使っているのなら、youtubeの "sentdex"を見てください。非常に良いコンテンツから始まる。 (彼は彼のジムチュートリアルでTFlearnを使用しています)しかし、テンソル1.4にはKerasが含まれているので、あなたの神経ネットワークにkeras high lvl APIを使用することをお勧めします。

幸運と誰かが良いジムのマニュアルを持っている場合は、それを共有すること自由に感じ、深い

をご利用いただけます。

+0

ありがとうございました!私はすぐにこれを試すのを待つことはできません。また、お勧めしていただきありがとうございます。私はそれらのYouTubeのビデオを見て確認します。また、私の反応を更新するかどうかは、この作品がうまくいくかどうかは確かですが、私はうまくいきます。再度、感謝します! – MikeDoho

+0

それは働いた!再度、感謝します!実行後もエラーは発生しません。私はちょうど画面がポップアップすると思われる場所を見つける必要があります。私は自分のコードを追加しますが、フォーマットはうまくできませんが、元のコードと同じコードを実行しました(変更を加えた後)[2017-12-03 14:34:17,063]新しいenv:CartPole- v0を間違いなく使用します。 – MikeDoho

+0

env.render(close = True)は、ウィンドウを閉じます。ほとんどの場合、ポップアップして(コード内で)もう一度閉じます。コメントアウトするだけで、ウィンドウが表示されます。 – mGwork

関連する問題