我对OpenAi健身房是全新的,我刚刚安装了健身房,然后尝试为它创造环境
env = gym.make('MsPacman-v0')
因此我得到以下错误:
---------------------------------------------------------------------------
Exception Traceback (most recent call last)
<ipython-input-21-e04adf623175> in <module>
----> 1 env = gym.make('MsPacman-v0')
~\Anaconda3\envs\env_project\lib\site-packages\gym\envs\registration.py in make(id, **kwargs)
~\Anaconda3\envs\env_project\lib\site-packages\gym\envs\registration.py in make(self, path, **kwargs)
~\Anaconda3\envs\env_project\lib\site-packages\gym\envs\registration.py in make(self, **kwargs)
~\Anaconda3\envs\env_project\lib\site-packages\gym\envs\atari\atari_env.py in __init__(self, game,
mode, difficulty, obs_type, frameskip, repeat_action_probability, full_action_space)
~\Anaconda3\envs\env_project\lib\site-packages\atari_py\games.py in get_game_path(game_name)
18 path = os.path.join(_games_dir, game_name) + ".bin"
19 if not os.path.exists(path):
---> 20 raise Exception('ROM is missing for %s, see https://github.com/openai/atari-py#roms
for instructions' % (game_name,))
21 return path
22
Exception: ROM is missing for ms_pacman, see https://github.com/openai/atari-py#roms for instructions
在此之后,我还试图在web上找到解决方案并下载ROMs,然后点击命令python -m atari_py.import_roms <path where ROMs downloaded>
,在运行此命令后,我还遇到以下错误
(env_project) C:\Users\ME>python -m atari_py.import_roms C:\Users\ME\Downloads\roms_folder\
copying adventure.bin from HC ROMS/BY ALPHABET (PAL)/A-G/Adventure (PAL).bin to
C:\Users\ME\Anaconda3\envs\env_project\lib\site-packages\atari_py\atari_roms\adventure.bin
Traceback (most recent call last):
File "C:\Users\ME\Anaconda3\envs\env_project\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\Users\ME\Anaconda3\envs\env_project\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\ME\Anaconda3\envs\env_project\lib\site-packages\atari_py\import_roms.py", line 93,
in <module>
main()
File "C:\Users\ME\Anaconda3\envs\env_project\lib\site-packages\atari_py\import_roms.py", line 89,
in main
import_roms(args.dirpath)
File "C:\Users\ME\Anaconda3\envs\env_project\lib\site-packages\atari_py\import_roms.py", line 78,
in import_roms
_check_zipfile(f, save_if_matches)
File "C:\Users\ME\Anaconda3\envs\env_project\lib\site-packages\atari_py\import_roms.py", line 23,
in _check_zipfile
process_f(innerf)
File "C:\Users\ME\Anaconda3\envs\env_project\lib\site-packages\atari_py\import_roms.py", line 67,
in save_if_matches
f.seek(0)
io.UnsupportedOperation: seek
我不知道我做错了什么。先谢谢你
这个脚本应该可以解决这个问题
这可能是由于Python 3.7.0中的
ZipFile.seek()
中有一个bug:Python issue #34035您需要升级到最新的Python 3.7.x版本
另外请注意,自gym 0.21以来,您可以通过运行以下命令安装gym并自动获取所有ROM:
详细信息:
accept-rom-license
选项将安装AutoROM
包,该包提供AutoROM
命令。它还将使用--accept-license
选项自动运行它。或者,您可以pip install autorom
并手动运行AutoROM
命令。如果您不给它任何选项,这就是它的输出,所以请注意。我的感觉是,将它们用于研究和教育目的是可以的,但我不是律师:运行
AutoROM --help
获取更多选项下载ROMs后,它将作为
Roms.rar
在下载文件夹中提供,它在HC ROMS.zip
内包含2个zip文件,并且ROMS.zip
我必须提取Roms.rar
再次提取ROMS.zip
。然后运行命令相关问题 更多 >
编程相关推荐