导入环境OpenAI Gym时出错

2024-04-30 03:45:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试运行OpenAI Gym环境,但出现以下错误:

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

错误

/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/ale_py/gym/environment.py:11: DeprecationWarning: Importing atari-py roms won't be supported in future releases of ale-py.
  import ale_py.roms as roms
A.L.E: Arcade Learning Environment (version +a54a328)
[Powered by Stella]
Traceback (most recent call last):
  File "/Users/username/Desktop/OpenAI Gym Stuff/OpenAI_Exp.py", line 2, in <module>
    env = gym.make('Breakout-v0')
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/gym/envs/registration.py", line 200, in make
    return registry.make(id, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/gym/envs/registration.py", line 105, in make
    env = spec.make(**kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/gym/envs/registration.py", line 75, in make
    env = cls(**_kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/ale_py/gym/environment.py", line 123, in __init__
    self.seed()
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/ale_py/gym/environment.py", line 171, in seed
    raise error.Error(
gym.error.Error: Unable to find game "Breakout", did you import Breakout with ale-import-roms?

Tags: inpyimportmakelibpackageslinelibrary
1条回答
网友
1楼 · 发布于 2024-04-30 03:45:24

代码对我来说适用于gym{}和0.19.0,但不适用于0.20.0

您可以使用

pip install  upgrade gym==0.19.0

顺便说一句:它可能还需要安装gym[atari]gym[all]才能让所有元素正常工作


根据Release Note for 0.21.0中的信息(在pip上还没有准备好,但您可以从GitHub安装),在ALEArcade Learning Environment)中有一些更改,它造成了所有问题,但在0.21.0中得到了修复

-The old Atari entry point that was broken with the last release and the upgrade to ALE-Py is fixed

但是新的gym[atari]没有安装ROM,您需要使用模块AutoROM

-pip install gym[atari] no longer distributes Atari ROMs that the ALE (the Atari emulator used) needs to run the various games. The easiest way to install ROMs into the ALE has been to use AutoROM.


编辑:

GitHub的版本0.21.0在安装后对我有效

(它可能需要程序git

pip install  upgrade git+https://github.com/openai/gym
pip install autorom

AutoRom    

pip install  upgrade gym[atari]

AutoRom运行一个程序,询问您是否有ROM的许可证,并在AutoROM/roms中安装ROM,但我不必将ROM移动到其他地方

AutoROM will download the Atari 2600 ROMs.
They will be installed to:
    /usr/local/lib/python3.8/dist-packages/AutoROM/roms

Existing ROMs will be overwritten.

I own a license to these Atari 2600 ROMs.
I agree to not distribute these ROMs and wish to proceed: [Y/n]:

Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/adventure.bin                                                                                                                           
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/air_raid.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/alien.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/amidar.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/assault.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/asterix.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/asteroids.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/atlantis.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/atlantis2.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/backgammon.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/bank_heist.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/basic_math.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/battle_zone.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/beam_rider.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/berzerk.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/blackjack.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/bowling.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/boxing.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/breakout.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/carnival.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/casino.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/centipede.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/chopper_command.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/combat.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/crazy_climber.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/crossbow.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/darkchambers.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/defender.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/demon_attack.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/donkey_kong.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/double_dunk.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/earthworld.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/elevator_action.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/enduro.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/entombed.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/et.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/fishing_derby.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/flag_capture.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/freeway.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/frogger.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/frostbite.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/galaxian.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/gopher.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/gravitar.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/hangman.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/haunted_house.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/hero.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/human_cannonball.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/ice_hockey.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/jamesbond.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/journey_escape.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/joust.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/kaboom.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/kangaroo.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/keystone_kapers.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/king_kong.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/klax.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/koolaid.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/krull.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/kung_fu_master.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/laser_gates.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/lost_luggage.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/mario_bros.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/maze_craze.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/miniature_golf.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/montezuma_revenge.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/mr_do.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/ms_pacman.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/name_this_game.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/othello.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/pacman.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/phoenix.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/pitfall.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/pitfall2.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/pong.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/pooyan.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/private_eye.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/qbert.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/riverraid.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/road_runner.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/robotank.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/seaquest.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/sir_lancelot.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/skiing.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/solaris.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/space_invaders.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/space_war.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/star_gunner.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/superman.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/surround.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/tennis.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/tetris.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/tic_tac_toe_3d.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/time_pilot.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/trondead.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/turmoil.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/tutankham.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/up_n_down.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/venture.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/video_checkers.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/video_chess.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/video_cube.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/video_pinball.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/warlords.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/wizard_of_wor.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/word_zapper.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/yars_revenge.bin
Installed /usr/local/lib/python3.8/dist-packages/AutoROM/roms/zaxxon.bin
Done!

安装后,这段代码对我有效,没有错误,也没有DeprecationWarning

import gym
import ale_py

print('gym:', gym.__version__)
print('ale_py:', ale_py.__version__)

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

它给

gym: 0.21.0
ale_py: 0.7.1

A.L.E: Arcade Learning Environment (version +b7b0c1a)
[Powered by Stella]

相关问题 更多 >