OpenAI gym Atari游戏的环境设置
Breakout-v0, Breakout-v4, BreakoutNoFrameskip-v4和BreakoutDeterministic-v4的区别
v0
和v4
是环境执行输入action
的区别(即env.step(action)
):- 带有
v0
的环境会有25%
的概率执行上一个action
,75%
的概率执行输入的action
。 v4
表示100%
执行输入的action
,不会重复上一个action
。
- 带有
注意:以上解释仅适用于
atari
环境。在普通的cart-pole
等环境中,v0
与v1
等后缀的含义是根据环境而变化的。
NoFrameskip
和Deterministic
是环境输出下一帧画面时的区别(即obs, reward, done, info = env.step(action)
):- 带有
NoFrameskip
的env
表示没有跳帧,环境会顺序地输出游戏中的每一帧游戏画面。 - 带有
Deterministic
的env
表示每4
帧才输出一张游戏中的画面(即跳过3帧)。 - 游戏名后面什么都不带的(如
Breakout-v0
),会随机从(2, 5)
中采样一个跳帧数量。
- 带有
在训练
agent
时,如果想让环境跳帧,建议直接使用make_atari()
函数对环境进行包装 make_atari() 源代码。env = gym.make(env_id) assert 'NoFrameskip' in env.spec.id env = NoopResetEnv(env, noop_max=30) env = MaxAndSkipEnv(env, skip=4)
从源码中我们可以看出,该函数是先定义原始
atari
环境中带有NoFrameskip
的环境,然后使用atari_wrappers
中的MaxAndSkipEnv()
进行包装 (MaxAndSkipEnv() 源代码),包装后的env
便会执行跳帧操作。
此时,使用MaxAndSkipEnv()
包装后的环境在跳帧时,一个action
会被执行多帧(取决于跳帧数量),并且每帧获取的reward
也会被累加至下一次画面输出。
此外,跳帧时,输出画面是从每n帧
中的最后2帧
的像素值中的最大值
来组成一张图片(即比较最后2帧的每一个对应位置的像素值,然后取较大的那个像素)。因为在Atari游戏中,有些画面是仅在奇数帧出现的,因此要对最后两帧取最大值。
个人总结:不要轻易使用带有跳帧操作的原始环境,尽量使用NoFrameskip
的环境,然后使用make_atari()
进行包装,实现跳帧操作。此外,尽量使用v4
环境,减少执行action
的随机性。
参考链接
Atari游戏的图片预处理
Downsampling, FrameStack等技巧。
FrameStack 源代码 以及 英文原理讲解 , 中文原理解释
OpenAI gym Atari游戏的环境设置相关推荐
- OpenAI Gym 经典控制环境介绍——CartPole(倒立摆)
摘要:OpenAI Gym是一款用于研发和比较强化学习算法的工具包,本文主要介绍Gym仿真环境的功能和工具包的使用方法,并详细介绍其中的经典控制问题中的倒立摆(CartPole-v0/1)问题.最后针 ...
- 独家 | 使用Python的OpenAI Gym对Deep Q-Learning的实操介绍(附学习资源)
作者:ANKIT CHOUDHARY 翻译:张睿毅 校对:吴金笛 本文4300字,建议阅读10+分钟. 本文作者通过实战介绍了Deep Q-Learning的概念. 导言 我一直对游戏着迷.在紧凑的时 ...
- 强化学习快餐教程(2) - atari游戏
强化学习快餐教程(2) - atari游戏 不知道看了上节的内容,大家有没有找到让杆不倒的好算法. 现在我们晋阶一下,向世界上第一种大规模的游戏机atari前进. 太空入侵者 可以通过 pip ins ...
- Gym导入Atari游戏环境报错
由于Gym近期版本的更新,导致程序中 import Atari的游戏环境报错.Gym最新版本 0.21.0 虽然修复了一系列更新后的Bug,但是貌似只支持 Python 3.7及以上版本.于是为了能够 ...
- 第22天:如何使用OpenAI Gym和Universe构建AI游戏机器人
by Harini Janakiraman 通过哈里尼·贾纳基拉曼 第22天:如何使用OpenAI Gym和Universe构建AI游戏机器人 (Day 22: How to build an AI ...
- 强化学习Openai Gym基础环境搭建
Gym提供了一些基础的强化学习环境,并且集成了许多有意思的环境,下面我们来一起看下如何在你的电脑上搭建Gym的开发环境吧. Gym的Github地址. 1. ReadMe解读 Gym 是一 ...
- Ubuntu下常用强化学习实验环境搭建(MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)
原文地址:http://blog.csdn.net/jinzhuojun/article/details/77144590 和其它的机器学习方向一样,强化学习(Reinforcement Learni ...
- 强化学习——环境库OpenAI Gym
前言 前段时间各大新闻媒体都在报道SpaceX的马斯克,因为其公司成功发射"猎鹰9号"火箭.马斯克是一个极具传奇色彩的人物,其成就也足以让他名垂青史.但今天我们要讨论的不是马斯克这 ...
- 常用增强学习实验环境 I (MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)
常用增强学习实验环境 I (MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2) 标签: 强化学习OpenAI GymMuJoCoStarCra ...
- [环境] OpenAI gym经典控制环境CartPole-v0 介绍
[环境]CartPole-v0 聊一聊我对强化学习的理解 对应的代码请访问我的GitHub:fxyang-bupt(可能你进去之后发现什么都没有,那是因为我注册了新的账号还在整理,这并不影响你先fol ...
最新文章
- struct2(四)编写Struct2 的Action
- 面试---如何在List<Integer>中如何存放String类型的数据?
- mysql with as_mysql数据库学习(第十六篇)- 视图
- tip use view.isineditmode() in your custom views to skip code when shown in eclipse
- QT-qevent 事件的accept()和ignore()
- 牛客15666 又见斐波那契(矩阵快速幂)
- 带有审计表的实体框架核心(EF Core)
- 贴片晶振脚位_贴片晶振的焊接方法和注意事项
- 1.2 Enterprise Library 应用程序块
- 动态规划-----(思路详解)
- Android 高效开发调试神器 JRebel
- java转换投影坐标_GeoTools坐标转换(投影转换和仿射变换)
- 电脑风扇转一下停一下开不了机解决方案
- FL Studio混合器之效果器插槽部分讲解
- jzy3D从入门到弃坑_3使用jzy3D0.9画2D散点图--多条线条
- 开机找不到硬盘的原因
- JavaWeb-简析MVC三层架构
- Java基础 快速学习(一)
- 修改android预览分辨率,wm命令使用方法(修改android 分辨率)修改
- 怎么在阿里妈妈投放广告?--人人有责-- .
热门文章
- 固定资产管理系统 概要说明书说明书
- Android实时日志查看工具Logcat
- 天勤系列的考研复习资料
- After Effects 自动导入素材和分类的脚本
- 亚太融媒+ | APEC数据+:“鲸确数集”环保熊猫“小保保”2022拜年 | APEC产业+
- NVMe 2.0 Telemetry
- 海洋cms模板免费下载
- 自己的微信小程序学习笔记【1】——小程序开发工具的使用及项目文件说明
- 笔试面试常见逻辑题及答案
- 杨百翰大学 排名Brigham Young University,入学要求,申请条件,简介_施强留学网...