首页 > 解决方案 > 如何修复 open-ai 健身房中的环境错误?

问题描述

代码:

import gym
env = gym.make('Breakout-v0')

我收到一个错误:

Traceback (most recent call last):
File "C:/Users/danie/Downloads/Programming/Python/Programming/Pycharm/app.py", line 40, in 
gym.make("Breakout-v0")
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\gym\envs\registration.py", line 156, in make
return registry.make(id, **kwargs)
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\gym\envs\registration.py", line 101, in make
env = spec.make(**kwargs)
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\gym\envs\registration.py", line 72, in make
cls = load(self.entry_point)
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\gym\envs\registration.py", line 17, in load
mod = importlib.import_module(mod_name)
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\importlib_init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1006, in _gcd_import
File "", line 983, in _find_and_load
File "", line 967, in find_and_load_unlocked
File "", line 677, in load_unlocked
File "", line 728, in exec_module
File "", line 219, in call_with_frames_removed
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\gym\envs\atari_init.py", line 1, in 
from gym.envs.atari.atari_env import AtariEnv
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\gym\envs\atari\atari_env.py", line 9, in 
import atari_py
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\atari_py_init.py", line 1, in 
from .ale_python_interface import *
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\site-packages\atari_py\ale_python_interface.py", line 18, in 
'ale_interface/build/ale_c.dll'))
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\ctypes_init.py", line 434, in LoadLibrary
return self.dlltype(name)
File "C:\Users\danie\AppData\Local\Programs\Python\Python37\lib\ctypes_init.py", line 356, in init
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found

标签: pythonopenai-gym

解决方案


我试图让它在 Windows 10 上与 python 3.8 和 3.9 一起工作。安装 Python 3.7 并将其用作 PyCharm 上的 Python 解释器解决了这个问题。我在拥有 3.8 + 版本的 Python 时搜索了丢失的文件,但它根本不存在。仅 Python 3.7 ( https://github.com/openai/atari-py ) 支持 Atari-py,因此使用更高版本将无法正常工作。从未经许可的地方下载文件是个坏主意,因此我建议您安装受支持的 Python 版本(3.5、3.6 和 3.7)。即使gym可以在3.9上运行,但atari版本却不行。我不需要安装任何其他东西(虽然我可能有Microsoft Visual C++ Build Tools,但我deff不需要Xming),只需导入gym 0.18.0,pyglet 1.5.0,atari -py 0.2.6


推荐阅读