官网:http://gym.openai.com/envs/#classic_control

经典应用1:CartPole-v1

CartPole在OpenAI的gym模拟器里面。游戏里面有一个小车,车上有一根杆子。小车需要左右移动来保持杆子竖直。如果杆子的倾斜的角度大于15度,游戏结束。小车也不能移出一个范围(中间到两边各2.4个单位长度),如下图所示:

物理图解:

在gym的Cart Pole环境(env)里面,左移或右移小车的action之后,env都会返回一个+1的reward。到达200个reward之后,游戏也会结束。

环境状态:

初始状态:

四个环境观测值,从U(-0.05,0.05)中随机抽取

动作:

奖励:

每一步的奖励都是1,包括最后一步

终止条件:

杆子的倾斜角度大于15度

小车的位移大于+(-)2.4

奖励达到200

经典应用2:Pendulumn-v0

倒立摆是强化学习的一个经典问题。在这个问题中,钟摆开始在一个随机位置,我们的目的是左右摆动它,让他保持直立。

状态:

Pendulum 的角度(sin和cos)和角速度,记为th和thdot

动作空间:

对于Pendulum问题来说,action space只有一个维度,就是电机的控制力矩,且有最大值和最小值的限制

奖励:

reward = -costs

costs包含三项:

1)angle_normalize(th)**2 对于当前倒立摆与目标位置的角度差的惩罚

2)  .1*thdot**2  对角速度的惩罚,如果我们在到达目标之后,如果还有较大的速度,就会过去,不会保持竖直

3) .001*(u**2)    对输入力矩的惩罚,所使用的力矩越大,惩罚越大

经典应用3:MountainCarContinuous环境

一辆汽车位于两个山脉之间的轨道上。目标是在右侧上山,但是这个?的发动机动能不够,不能一次成功爬山。所以,要想爬山的途径就是来回驱动,来建立动力,如下图所示:

连接:https://gym.openai.com/envs/MountainCar-v0/

Step函数

状态

从上图中可以看出,小车的状态包括位置(position)和速度(velocity)

observation space与state space一致,包括位置和速度,二者都有上下限,如下图所示:

而action space是一维的,前进或倒车。要让小车到右手边的山峰,所以goal_position为0.5,这是相对初始位置(最低点)而言的,最低点position为0,向左为负,向右为正。

每执行一个step,就会检查看自己是否越过右边的山峰,据此来给done赋值,如果没有越过山峰,则在这一个step,reward将会记为-1

其它经典应用

Gym Box2D

LunarLander

CarRacing

Atari 2600

Pong :http://www.ponggame.org/

参考连接:https://blog.csdn.net/cuiwader/article/details/77483363

实现demo如下所示:

有需要demo的可自行下载哈,github地址:https://github.com/wangtao666666/Reinforcement-Learning

重温强化学习之OpenAI经典场景相关推荐

  1. 《强化学习导论》经典课程10讲,DeepMind大神David Silver主讲

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要5分钟 Follow小博主,每天更新前沿干货 这个经典的10部分课程,由强化学习(RL)的驱David Silver教授,虽然录制于2015年 ...

  2. Compute Goes Brrr:重温强化学习之父Sutton关于AI的70年惨痛教训

    导语:所以,"惨痛教训"是对是错?可能既不是这边,也不是那边. 译者:AI研习社(Key) 双语原文链接:Compute Goes Brrr: Revisiting Sutton' ...

  3. 10没有基于策略的qos_基于强化学习的用户移动场景下空中基站3D位置高效部署...

    Efficient 3D Aerial Base Station Placement Considering Users Mobility by Reinforcement Learning 摘要: ...

  4. 强化学习为 OpenAI 和 Microsoft 创建了有效的防御策略,拓宽了 ChatGPT 的护城河

    在这篇博客中,我将回顾使用强化学习 (RL) 创建和改进大型语言模型(例如 ChatGPT)的过程.然后,我将展示 OpenAI 和 Microsoft 如何使用 RL 来防止竞争对手在生成 AI 市 ...

  5. 重温强化学习之深度强化学习

    1.简介                输入特征和真实特征相距比较远,加一个深度学习提取源的特征 2.基于值函数的深度强化学习 意义:不用函数近似无法解决大规模的问题,用函数近似训练不稳定,首次证明了 ...

  6. 重温强化学习之策略梯度算法

    1.介绍 这里仍考虑无模型的方法:策略是从值函数中导出的,使用贪婪的方法导出最优策略,使用e贪婪策略导出行为策略,直接参数化策略                            考虑之前强化学习 ...

  7. 重温强化学习之函数近似

    1.简介     之前提到的方法目的是求值函数,通过值函数找打策略     基于表格的方法: 基于表格方法精确的描述每一个动作和状态的大小,表格大小会随着状态数量和动作数量快速膨胀,对于表格中某一项的 ...

  8. 重温强化学习之无模型学习方法:时间差分方法

    1.时间差分方法简介 强化学习中最核心也是最新奇的想法 混合DP和MC思想:        与MC类似,TD也从历史经验中学习:与DP类似使用后继状态的值函数更新当前状态的值函数 蒙特卡洛只是适用于片 ...

  9. 重温强化学习之基于模型方法:动态规划

    基于模型的强化学习,可以用动态规划求解 动态规划要求知道马尔科夫五元组:状态集.动作集.状态转移矩阵.奖励.折扣因子    ---使用贝尔曼方程 1.前言 什么是动态规划? 2.策略评价 3.策略提升 ...

最新文章

  1. Install pysnmp for django
  2. 《精通ArcGIS Server 应用与开发》——第 1 章 ArcGIS 10简介1.1 ArcGIS 10体系结构1...
  3. 云供应商安全评估:小心落入陷阱
  4. ***常用vbs脚本
  5. linux使用freetds 连接连远程服务器sqlservser2012
  6. Quartz简单实例
  7. LeetCode MySQL 612. 平面上的最近距离
  8. 资料下载:敏捷个人的成长思考.pptx(第1次线下活动2011.04)
  9. CMSIS-SVD Schema File Ver. 1.0
  10. 【论文写作】毕业论文该如何选择自己的导师?
  11. 实践教程 | 万字长文,值得收藏/参考的OpenCV C++基础代码
  12. 开启“无线网络”,提示:请启动windows零配置wzc服务
  13. Python常用的19个工具包汇总
  14. html 倒计时 插件,jQuery倒计时插件leftTime.js
  15. 2017年工作回顾及2018年新展望
  16. 学习Java第一天笔记
  17. Unity SpriteAtlas实战使用
  18. Masking Layer的作用
  19. 整体费率三连降,海尔追“格”超“美”的下一步在哪?
  20. DataGridview单击某个单元格选中一行

热门文章

  1. 软件测试 -- 元素定位
  2. Linux free -m 详细说明
  3. 如何快速打造企业ISO体系文件管理
  4. 自己喜欢的shell终端配置
  5. 讲解Linux服务器被黑解决方法
  6. 一种加速WiFi模块一键配网速度的实现
  7. 算法提高课-图论-单源最短路的建图方式-AcWing 1129. 热浪:dijkstra裸题
  8. 像证券交易员一样思考_2.理解绝招
  9. HP计算机管理软件,惠普电脑硬件诊断工具
  10. conda create出现连接问题_在dockerfile中运行conda更新时出现问题