没有合适的资源?快使用搜索试试~ 我知道了~
介绍,这样对于这一章节问题的解决会有很多帮助。免模型的强化学习问题定义在动态规划法中,强化学习的两个问题是这样定义的:预测问题,即给定强化学习的6个要素:状态集
资源推荐
资源详情
资源评论
强化学习—免模型预测
作者:YJLAugus 博客: https://www.cnblogs.com/yjlaugus 项目地址: https://github.com/YJLAug
us/Reinforcement-Learning-Notes ,如果感觉对您有所帮助,烦请点个⭐Star。
前言
在第二章 强化学习-动态规划-DP 中,我们讨论了用动态规划来求解强化学习预测问题和控制问题的方
法。但是由于动态规划法需要在每一次回溯更新某一个状态的价值时,回溯到该状态的所有可能的后续
状态。导致对于复杂问题计算量很大。同时很多时候,我们连环境的动态特性 都无法知道,这时动态
规划法根本没法使用。这时候我们如何求解强化学习问题呢?
从本章开始将花连续两讲的时间讨论解决一个可以被认为是MDP、但却不掌握MDP具体细节的问题,也
就是讲述如何直接从Agent与环境的交互来得得到一个估计的最优价值函数和最优策略。这部分内容同
样分为两部分,第一部分也就是本章的内容,聚焦于策略评估,也就是预测,直白的说就是在给定的策
略同时不清楚MDP细节的情况下,估计Agent会得到怎样的最终奖励。下一讲将利用本章的主要观念来进
行控制进而找出最优策略,最大化Agent的奖励。
本章内容分为三个小部分,分别是蒙特卡洛强化学习、时序差分强化学习和介于两者之间的λ时序差分
强化学习。相信读者在阅读本讲内容后会对这三类学习算法有一定的理解。
其中在第三章 蒙特卡洛(Markov Chain & Monte Carlo, MCMC)方法 对蒙特卡洛方法进行了一个简单的
介绍,这样对于这一章节问题的解决会有很多帮助。
免模型的强化学习问题定义
在动态规划法中,强化学习的两个问题是这样定义的:
预测问题,即给定强化学习的6个要素:状态集 , 动作集 , 模型状态转化概率矩阵 , 即时奖励
,衰减因子 , 给定策略 ,求解该策略的状态价值函数 。
控制问题,也就是求解最优的价值函数和策略。给定强化学习的5个要素:状态集 , 动作集 , 模型
状态转化概率矩阵 , 即时奖励 ,衰减因子 , 给定策略 , 求解最优的状态价值函数 和最优策略
可见,模型状态转化概率矩阵 始终是已知的,即MDP已知,对于这样的强化学习问题,我们一般称为
基于模型的强化学习问题。
不过有很多强化学习问题,我们没有办法事先得到模型状态转化概率矩阵 ,这时如果仍然需要我们求
解强化学习问题,那么这就是不基于模型的强化学习问题了——免模型的强化学习。它的两个问题一般
的定义是:
预测问题,即给定强化学习的5个要素:状态集 , 动作集 即时奖励 ,衰减因子 ,给定策略 ,
求解该策略的状态价值函数
控制问题,也就是求解最优价值函数和策略。给定强化学习的5个要素:状态集 , 动作集 , 即时奖
励 ,衰减因子 , 探索率 , 求解最优的动作价值函数 和最优策略
本章节要讨论的蒙特卡洛方法就是上述免模型的强化学习问题。
蒙特卡洛强化学习 (Monte-Carlo Reinforcement Learning)
蒙特卡洛强化学习概念
蒙特卡洛强化学习:是在不清楚MDP状态转移及即时奖励的情况下,直接从经历完整的 Episode 来学习
状态价值,通常情况下某状态的价值等于在多个Episode中以该状态算得到的所有收获的平均。
Episode :agent根据某个策略执行一系列action到结束就是一个episode。
注:收获不是针对Episode的,它存在于Episode内,针对于Episode中某一个状态。从这个状态开始经历
完Episode时得到的有衰减的即时奖励的总和。从一个Episode中,我们可以得到该Episode内所有状态的
收获。当一个状态在Episode内出现多次,该状态的收获有不同的计算方法,下文会讲到。
完整的Episode 指必须从某一个状态开始,Agent与Environment交互直到终止状态,环境给出终止状态
的即时收获为止。
蒙特卡洛强化学习特点
蒙特卡洛强化学习有如下特点:不基于模型本身,直接从经历过的Episode中学习,必须是完整的
Episode,使用的思想就是用平均收获值代替价值。理论上Episode越多,结果越准确。
蒙特卡罗法通过采样若干经历完整的
状
态
序
列
(episode) 来估计状态的真实价值。所谓的经历完整,就
是这个序列必须是达到终点的。比如下棋问题分出输赢,驾车问题成功到达终点或者失败。有了很多组
这样经历完整的状态序列,我们就可以来近似的估计状态价值,进而求解预测和控制问题了。
蒙特卡洛策略评估 (Monte-Carlo Policy Evaluation)
目标:在给定策略下,从一系列的完整Episode经历中学习,最后求得到该策略下的状态价值函数。
在解决问题过程中主要使用的信息是一系列完整Episode。其包含的信息有:状态的转移、使用的行为序
列、中间状态获得的即时奖励以及到达终止状态时获得的即时奖励。其特点是使用有限的、完整Episode
产生的这些经验性信息经验性地推导出每个状态的平均收获,以此来替代收获的期望,而后者就是状态
价值。通常需要掌握完整的MDP信息才能准确计算得到。
数学描述如下:
基于特定策略 的一个Episode信息可以表示为如下的一个序列:
时刻, 的收获:
其中, 为终止时刻。
该策略下某一状态 的价值:
注: 表示的是 时刻agent在状态 获得的即时奖励,下文都使用这种下标来表示即时奖
励。更准确的表述为:个体在状态 执行一个行为 后离开该状态获得的即时奖励。
很多时候,即时奖励只出现在Episode结束状态时,但不能否认在中间状态也可能有即时奖励。公式里的
指的是任何状态得到的即时奖励,这一点尤其要注意。
在状态转移过程中,可能发生一个状态经过一定的转移后又一次或多次返回该状态,此时在一个Episode
里如何计算这个状态发生的次数和计算该Episode的收获呢?可以有如下两种方法:
首次访问蒙特卡洛策略评估
在给定一个策略,使用一系列完整Episode评估某一个状态s时,对于每一个Episode,仅当该状态第一次
出现在一个 episode中时:
状态出现的次数加1 :
总的收获更新:
状态 s 的价值:
当 时,
每次访问蒙特卡洛策略评估
在给定一个策略,使用一系列完整Episode评估某一个状态s时,对于每一个Episode,状态 s 每次出现在
一个epospde中时:
状态出现的次数加1 :
总的收获更新:
状态 s 的价值:
当 时, 。计算的公式与 首次访问蒙特卡洛策略评估 的公式相同,但是具体的
意义却不同,下一以一个简单的例子进行说明。
二十一点 二十一点又名黑杰克(Blackjack),是一种流行于赌场的游戏,其目标是使得你的扑克牌点数
之和不超过21的情况下越大越好。K、Q、J和10牌都算作10点(一般记作T,即ten之意);A 牌(ace)
既可算作1点也可算作11点,由玩家自己决定(当玩家停牌时,点数一律视为最大而尽量不爆,如A+9为
20,A+4+8为13,A+3+A视为15)。游戏开始时,会给玩家和庄家各发两张牌。庄家的牌一张正面朝上,
一张背面朝上,玩家两张都是明牌(都正面朝上)如果玩家的两张牌分别是一张A,一张10点(可能是
10,J, Q,K),这种情况称为天和,玩家直接获胜。除非庄家也是天和,那就是平局。如果玩家不是
天和,那么他可以一张一张地继续要牌,直到他主动停止(停牌)或者牌的点数和超过21点(爆牌)。
如果玩家选择停牌,就轮到庄家行动。庄家根据一个固定的策略进行游戏:他一直要牌,直到点数等于
或超过17时停牌。如果庄家爆牌,那么玩家获胜,否则根据谁的点数更靠近21决定胜负或者平局。
根据以上游戏规则,我们得到如下信息:
状态空间: (多达200种,根据对状态的定义可以有不同的状态空间,这里采用的定义是牌的分数,不
包括牌型)
当前牌的分数(12 - 21),低于12时,你可以安全的再叫牌,所以没意义。
庄家出示的牌(A - 10),庄家会显示一张牌面给玩家,另一张为暗牌。
我有“useable” ace吗?(是或否)A既可以当1点也可以当11点。
行为空间:
停止要牌 stick
继续要牌 twist
奖励(停止要牌):
+1:如果你的牌分数大于庄家分数
0: 如果两者分数相同
-1:如果你的牌分数小于庄家分数
奖励(继续要牌):
-1:如果牌的分数>21,并且进入终止状态
0:其它情况
状态转换(Transitions):如果牌分小于12时,自动要牌
当前策略:牌分只要小于20就继续要牌。
求解问题:评估该策略的好坏。
求解过程:使用庄家显示的牌面值、玩家当前牌面总分值来确定一个二维状态空间,区分手中有无A分
别处理。统计每一牌局下决定状态的庄家和玩家牌面的状态数据,同时计算其最终收获。通过模拟多次
牌局,计算每一个状态下的平均值,得到如下图示。
最终结果:无论玩家手中是否有A牌,该策略在绝大多数情况下各状态价值都较低,只有在玩家拿到21
分时状态价值有一个明显的提升。
这个例子只是使读者对蒙特卡洛策略评估方法有一个直观的认识。
剩余21页未读,继续阅读
资源评论
陈后主
- 粉丝: 32
- 资源: 340
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- leetcode png export
- Java项目-基于Springboot+Vue的超市进销存系统的设计与实现(源码+数据库脚本+部署视频+代码讲解视频+全套软件
- 大数据可视化大屏页面-移动能耗管理平台+源代码+演示地址
- 燕山大学操作系统课设项目源码
- jsp超市管理系统源码+lw+ppt.rar
- student-system.zip
- Laravel框架高清壁纸图库图片分享上传下载网站源码.zip
- 大数据可视化大屏页面-南方软件视频平台大屏中心+源代码+演示地址
- Java项目-基于Springboot+Vue的广场舞团的设计与实现(源码+数据库脚本+部署视频+代码讲解视频+全套软件
- jsp智能仓储系统源码+lw+ppt.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功