You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OpenAI Gym 0.10.3版本添加超级马里奥环境的替代方案求助

解决OpenAI Gym 0.10.3添加超级马里奥环境的替代方案

Great question! You don't need to downgrade Gym 0.10.3 to get Super Mario Bros up and running—here are a few solid alternatives that work around the missing scoreboard folder and broken gym_pull:

1. 使用独立的gym-super-mario-bros包

这个是社区维护的专门针对马里奥的Gym环境包,完全脱离了旧的gym_pull依赖,适配较新的Gym版本(包括0.10.3)。

  • 首先安装包:
    pip install gym-super-mario-bros
    
  • 然后直接在代码中使用:
    import gym
    import gym_super_mario_bros
    from nes_py.wrappers import JoypadSpace
    from gym_super_mario_bros.actions import SIMPLE_MOVEMENT
    
    # 创建环境并包装动作空间
    env = gym.make('SuperMarioBros-v0')
    env = JoypadSpace(env, SIMPLE_MOVEMENT)
    
    # 运行环境示例
    done = True
    for step in range(5000):
        if done:
            state = env.reset()
        state, reward, done, info = env.step(env.action_space.sample())
        env.render()
    env.close()
    

这个包自带NES模拟器的封装,不需要额外配置,是最省心的方案。

2. 手动移植马里奥环境文件到本地Gym目录

如果你偏好手动配置,可以找到旧版马里奥环境的源码,直接放到Gym的本地目录中:

  • 首先获取super_mario_bros环境的代码,将其文件夹放到你的Gym安装路径下的gym/envs/目录中(比如lib/pythonX.X/site-packages/gym/envs/super_mario_bros)。
  • 打开gym/envs/__init__.py,添加环境的导入语句:
    from gym.envs.super_mario_bros.super_mario_bros_env import SuperMarioBrosEnv
    
  • 打开gym/envs/registration.py,注册环境:
    register(
        id='SuperMarioBros-v0',
        entry_point='gym.envs.super_mario_bros:SuperMarioBrosEnv',
    )
    
  • 完成后就可以像普通Gym环境一样用gym.make('SuperMarioBros-v0')调用了。

3. 使用Gym的自定义环境注册机制(无需修改Gym源码)

如果不想改动Gym的安装文件,可以手动注册自定义环境:

  • 先获取马里奥环境的Python类文件(比如super_mario_bros_env.py),确保它在你的Python项目路径中。
  • 在代码中手动注册环境:
    import gym
    from gym.envs.registration import register
    
    # 注册自定义马里奥环境
    register(
        id='SuperMarioBros-v0',
        entry_point='super_mario_bros_env:SuperMarioBrosEnv',  # 替换为你的类路径
        max_episode_steps=9999999,
        reward_threshold=32000,
    )
    
    # 创建环境
    env = gym.make('SuperMarioBros-v0')
    

这种方式更灵活,不会影响全局的Gym安装,适合项目级别的配置。


内容的提问来源于stack exchange,提问作者Raja

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:14:31