最新版gym-0.26.2中Atari环境下各游戏在不同模式和困难度下的遍历
相关内容参看前文:
最新版gym-0.26.2下Atari环境的安装以及环境版本v0,v4,v5的说明
===========================================
gym中Atari游戏共收录62个游戏,具体见:
https://www.gymlibrary.dev/environments/atari/complete_list/

以SpaceInvaders游戏为例,我们可以通过该游戏在gym上的主页说明获得该游戏的具体设置:
https://www.gymlibrary.dev/environments/atari/space_invaders/

=====================================================
关于游戏mode的设置,见官网文档:
https://www.gymlibrary.dev/environments/atari/#flavors

关于游戏在不同mode下的difficulties见官方文档:
https://github.com/mgbellemare/Arcade-Learning-Environment/blob/master/docs/games.md

=====================================================
根据gym中Atari游戏的官方文档,给出各游戏在不同模式和困难度下的遍历的代码:
flavors={
"ALE/Adventure-v5":{"modes":[0, 1, 2], "difficulties":list(range(4)), "default_mode":0},
"ALE/AirRaid-v5":{"modes":[1,2,3,4,5,6,7,8], "difficulties":[0], "default_mode":1},
"ALE/Alien-v5":{"modes":[0,1,2,3], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Amidar-v5":{"modes":[0], "difficulties":[0,3], "default_mode":0},
"ALE/Assault-v5":{"modes":[0], "difficulties":[0], "default_mode":0},
"ALE/Asterix-v5":{"modes":[0], "difficulties":[0], "default_mode":0},
"ALE/Asteroids-v5":{"modes":list(range(32))+[128,], "difficulties":[0,3], "default_mode":0},
"ALE/Atlantis-v5":{"modes":[0,1,2,3], "difficulties":[0], "default_mode":0},
"ALE/BankHeist-v5":{"modes":[0, 4, 8, 12, 16, 20, 24, 28], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/BattleZone-v5":{"modes":[1,2,3], "difficulties":[0], "default_mode":1},
"ALE/BeamRider-v5":{"modes":[0,], "difficulties":[0,1], "default_mode":0},
"ALE/Berzerk-v5":{"modes":[1, 2, 3, 4, 5, 6, 7, 8, 9, 16, 17, 18], "difficulties":[0], "default_mode":1},
"ALE/Bowling-v5":{"modes":[0, 2, 4], "difficulties":[0,1], "default_mode":0},
"ALE/Boxing-v5":{"modes":[0,], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Breakout-v5":{"modes":[0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44], "difficulties":[0,1], "default_mode":0},
"ALE/Carnival-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/Centipede-v5":{"modes":[22,86], "difficulties":[0,], "default_mode":22},
"ALE/ChopperCommand-v5":{"modes":[0,2], "difficulties":[0,1], "default_mode":0},
"ALE/CrazyClimber-v5":{"modes":[0,1,2,3], "difficulties":[0,1], "default_mode":0},
"ALE/Defender-v5":{"modes":list(range(1,10))+[16,], "difficulties":[0,1], "default_mode":1},
"ALE/DemonAttack-v5":{"modes":[1, 3, 5, 7], "difficulties":[0,1], "default_mode":1},
"ALE/DoubleDunk-v5":{"modes":list(range(16)), "difficulties":[0], "default_mode":0},
"ALE/ElevatorAction-v5":{"modes":[0], "difficulties":[0,], "default_mode":0},
"ALE/Enduro-v5":{"modes":[0], "difficulties":[0,], "default_mode":0},
"ALE/FishingDerby-v5":{"modes":[0], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Freeway-v5":{"modes":list(range(8)), "difficulties":[0,1], "default_mode":0},
"ALE/Frostbite-v5":{"modes":[0, 2], "difficulties":[0,], "default_mode":0},
"ALE/Gopher-v5":{"modes":[0, 2], "difficulties":[0,1], "default_mode":0},
"ALE/Gravitar-v5":{"modes":[0,1,2,3,4], "difficulties":[0,], "default_mode":0},
"ALE/Hero-v5":{"modes":[0,1,2,3,4], "difficulties":[0,], "default_mode":0},
"ALE/IceHockey-v5":{"modes":[0,2], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Jamesbond-v5":{"modes":[0,1], "difficulties":[0,], "default_mode":0},
"ALE/JourneyEscape-v5":{"modes":[0,], "difficulties":[0,1], "default_mode":0},
"ALE/Kangaroo-v5":{"modes":[0,1], "difficulties":[0,], "default_mode":0},
"ALE/Krull-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/KungFuMaster-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/MontezumaRevenge-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/MsPacman-v5":{"modes":[0,1,2,3], "difficulties":[0,], "default_mode":0},
"ALE/NameThisGame-v5":{"modes":[8,24,40], "difficulties":[0,1], "default_mode":8},
"ALE/Phoenix-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/Pitfall-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/Pong-v5":{"modes":[0,1], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Pooyan-v5":{"modes":[10, 30, 50, 70], "difficulties":[0,], "default_mode":10},
"ALE/PrivateEye-v5":{"modes":[0,1,2,3,4], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Qbert-v5":{"modes":[0,], "difficulties":[0,1], "default_mode":0},
"ALE/Riverraid-v5":{"modes":[0,], "difficulties":[0,1], "default_mode":0},
"ALE/RoadRunner-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/Robotank-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/Seaquest-v5":{"modes":[0,], "difficulties":[0,1], "default_mode":0},
"ALE/Skiing-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/Solaris-v5":{"modes":[0,], "difficulties":[0,], "default_mode":0},
"ALE/SpaceInvaders-v5":{"modes":list(range(16)), "difficulties":[0,1], "default_mode":0},
"ALE/StarGunner-v5":{"modes":[0,1,2,3], "difficulties":[0,], "default_mode":0},
"ALE/Tennis-v5":{"modes":[0,2], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/TimePilot-v5":{"modes":[0,], "difficulties":[0,1,2], "default_mode":0},
"ALE/Tutankham-v5":{"modes":[0, 4, 8, 12], "difficulties":[0,], "default_mode":0},
"ALE/UpNDown-v5":{"modes":[0,], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/Venture-v5":{"modes":[0,], "difficulties":[0,1,2,3], "default_mode":0},
"ALE/VideoPinball-v5":{"modes":[0,2], "difficulties":[0,1], "default_mode":0},
"ALE/WizardOfWor-v5":{"modes":[0,], "difficulties":[0,1], "default_mode":0},
"ALE/YarsRevenge-v5":{"modes":[0, 32, 64, 96], "difficulties":[0,1], "default_mode":0},
"ALE/Zaxxon-v5":{"modes":[0,8,16,24], "difficulties":[0,], "default_mode":0},
}
import gym
num = 0
for game_name, game_profile in flavors.items():
for mode in game_profile['modes']:
for difficulty in game_profile['difficulties']:
try:
env = gym.make(game_name, mode=mode, difficulty=difficulty)
obs = env.reset()
for i in range(10):
action = env.action_space.sample()
obs, reward, done, _, _ = env.step(action)
env.close()
except Exception as e:
num += 1
print(e, game_name, mode, difficulty)
# print(env)
print("error game number: ", num)
运行结果:

================================================
最新版gym-0.26.2中Atari环境下各游戏在不同模式和困难度下的遍历的更多相关文章
- Mockito 中文文档 ( 2.0.26 beta )
Mockito 中文文档 ( 2.0.26 beta ) 由于缺乏校对,难免有谬误之处,如果发现任何语句不通顺.翻译错误,都可以在github中的项目提出issue.谢谢~ Mockito框架官方地址 ...
- 2021MySQL 8.0.26安装教程,目前最新版(详细全面)
MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能!所以为什么不用MySQL8呢!下面是MySQL 8.0.26的安装教程. 安装网址: https://dev.my ...
- linux驱动程序之电源管理之新版linux系统设备架构中关于电源管理方式的变更
新版linux系统设备架构中关于电源管理方式的变更 based on linux-2.6.32 一.设备模型各数据结构中电源管理的部分 linux的设备模型通过诸多结构体来联合描述,如struct d ...
- iKcamp出品|微信小程序|工具安装+目录说明|基于最新版1.0开发者工具初中级教程分享
iKcamp官网:http://www.ikcamp.com 访问官网更快阅读全部免费分享课程:<iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教程分享>. ...
- 微信小程序教学第二章:小程序中级实战教程之预备篇 - 项目结构设计 |基于最新版1.0开发者工具
iKcamp官网:http://www.ikcamp.com 访问官网更快阅读全部免费分享课程:<iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教程分享>. ...
- 【译】.NET Core 3.0 Preview 3中关于ASP.NET Core的更新内容
.NET Core 3.0 Preview 3已经推出,它包含了一系列关于ASP.NET Core的新的更新. 下面是该预览版的更新列表: Razor组件改进: 单项目模板 新的Razer扩展 E ...
- linux-2.6.26内核中ARM中断实现详解(转)
转载:http://www.cnblogs.com/leaven/archive/2010/08/06/1794293.html 更多文档参见:http://pan.baidu.com/s/1dDvJ ...
- eclipse 编译tomcat8.0.26的源码
第一次写东西, 如果有不对的地方,请大神指正,我会尽快修正…… 参考:http://www.cnblogs.com/lanxuezaipiao/p/3640923.html 1.从tomcat官网(h ...
- Linux 安装 MySQL 8.0.26 超详细图文步骤
1.MySQL 8.0.26 下载 官方网站下载 MySQL 8.0.26 安装包,下载地址: https://downloads.mysql.com/archives/community/ 需要注意 ...
- 技术分享 | 简单测试MySQL 8.0.26 vs GreatSQL 8.0.25的MGR稳定性表现
欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. M ...
随机推荐
- element table根据条件隐藏复选框
在<el-table>标签加 :cell-class-name="cellClass" 在 <el-table-column type="selecti ...
- OAuth + Security - 4 - 客户端信息存储数据库
PS:此文章为系列文章,建议从第一篇开始阅读. 在之前的所有配置中,我们的客户端信息和授权码模式下的授权码任然还是存储在数据库中的,这样就不利于我们后期的扩展,所以在正式的生成环境中,我们一般将其存储 ...
- github fork后对上游仓库的做rebase
想对上游仓库做更新同步 先添加上游仓库 git remote add upstream https://github.com/原始作者/原始仓库.git 其中这里的upstream 是一个命名,和 o ...
- Do not access Object.prototype method 'hasOwnProperty' from target object
hasOwnProperty 判断对象是否为空 在使用 hasOwnProperty 判断对象是否为空时遇到了一下问题,总结一下 // Do not access Object.prototype m ...
- 解决NodeJS Downloading node-sass 卡死慢安装失败的问题
之前写过一篇从0开始的NodeJS安装配置教程,在那篇文章结尾提到使用过程中还有一个坑,只是没有遇到就没写,时隔多日在我使用某开源项目的时候又遇到了这个问题 下载依赖时一直卡在 Downloading ...
- CSV文件存储
CSV 文件存储 CSV,全称为 Comma-Separated Values,中文可以叫作逗号分隔值或字符分隔值,其文件以纯文本形式存储表格数据.该文件是一个字符序列,可以由任意数目的记录组成,记录 ...
- Golang基于Mysql分布式锁实现集群主备
背景 集群中如果需要主备,可以基于Redis.zk的分布式锁等实现,本文将介绍如何利用Mysql分布式锁进行实现. 原理 数据库中包含数据字段(此处为Master的主机名).版本号和上一次更新时间. ...
- 案例分享!RK3568 + FPGA多通道AD采集处理与显示
案例展示 测试数据汇总 表 1 本文带来的是基于瑞芯微RK3568J + 紫光同创Logos-2的ARM + FPGA多通道AD采集处理与显示案例. 本次案例演示的开发环境如下: Wind ...
- 【资料分享】全志科技T507-H工业核心板规格书
1 核心板简介 创龙科技SOM-TLT507是一款基于全志科技T507-H处理器设计的4核ARM Cortex-A53全国产工业核心板,主频高达1.416GHz.核心板CPU.ROM.RAM.电源.晶 ...
- mysql求同比环比
-- 参考:SQL计算月环比.月同比_路易吃泡面的博客-CSDN博客 -- mysql同比环比 drop table if EXISTS ordertable; create table ordert ...