强化学习笔记(西湖大学课程)第六节

第五课 蒙特卡洛方法(第一次出现无模型方法)

1、通过例子介绍蒙特卡洛方法

提示:model在这里指的究竟是什么东西

从直观角度来解释,model就是之前的P,也就是状态转移矩阵,亦即此前每一步所给出来的概率,但在这一章节之中,这一矩阵将是完全未知的,也是无模型的实际意义所在

蒙特卡洛方法来进行估计

即类似于几何概型的计算方式

采样之后求平均数,即采用统计量来进行估计

即数理统计中的大数定律 (弱大数定律)

2、MC BASIC介绍(底层逻辑但是在实际应用层面的效率远低于其他算法)

核心:用原始的定义式,qπk即是采取动作后return的平均值

没有模型的时候要有数据(采样)

第一步求qπk的方法,从每一个SA出发得到大量的episode,对每一个episode的return求平均值,就是在定义层面去求解qπk

基于策略迭代的变形,直接通过数据求AV而不是用SV到AV,相对而言会有一定的优势,但是在实际应用层面并不具有很好的实用性,需要结合后面两个算法来增强其实用性

3、MC BASIC的例子

取样长度比较短的时候,只有离目标较近的状态可以慢慢达到目标取得最优策略,随着取样长度的增加,离目标较远的状态也可以逐渐增加到最优策略,足够长让所有状态都可以达到目标即可

4、MC EXPLORING STARTS

对MCB在效率上进行改进

visit:state-action pair

运用方法:初值访问,只使用一个SApair(在之前9格5方向的例子中,SApair有45个),用后面的return来估计qπK

分firtst和every

every:对于一条链上所有的SApair都进行一次访问(因为在一条链上可能会出现重复的SApair,因此这种方法会出现重复计算,好处是重复出现的pair可以通过求平均的方式来提高AV的精确度,但是坏消息是采样次数会变多,效率会有明显下降

first:对一条链上第一次出现的SApair进行访问,如果出现重复的就跳过,好处是可以有效提高访问效率

(相当于在每一步当中都有不同层度的偷懒)

GPI:在PE和PI之中不断切换,不需要求得最精确的AV和SV,在满足数据要求的情况下减少计算步骤

一个前向求和的思想,用倒推大大提高了计算效率

相当于从单独的SA开始,而不是像之前纯粹的m*n这样强行计算,类似于一个等差数列求和的关系,有效减少了计算量,但是没有解决visit的问题,要求在每一个SA都开始一个EPISODE

往前倒腾的算法很有效的避免了重复计算,用短线的return不断向前推进,不断得到长线的return,相比于前往后的算法而言,每一次的变化都只增加了一个数,只做一次加法,在计算速率上有明显提升,之前的算法相当于没有办法充分利用已有的计算结果,计算量会有很大的提升

  • 第一个点:从每个SA出发都要有一条EPISODE,即轨迹要能够遍历每一个SApair

  • 第二个点:visit是无法保证说从别的SA开始一定能够遍历所有的SA,因此visit在这里的理论层面是不好实现的

但是在MCEG中,我通过epsilon可以使之具有一定的探索性,也就是说通过赋予最优策略外的策略一定的概率,来在一个足够长的轨迹之中保证所有的SA都能被遍历,这个epsilon也可以调节探索性和充分利用性之间的关系来决定是偏向于激进探索还是偏向于保守

5、MC epsilon -greedy

  1. soft-policy:不绝对策略,在足够长的路径之下确保能覆盖到所有的SA

  2. epsilon-greedy 策略

  • 保证了一个最大概率(贪婪概率)的存在,改变参数可以调节这个概率的大小,但是能保障他一定比其他的action的概率要大

  • 目标:平衡充分利用现有信息探索未知信息两种策略类型

  • 即最大概率对应的是充分利用,这一概率越接近1,则充分利用性越强(对已知的利用越好),但是对未知的探索性(分给其他action的概率)会越弱,反之则是探索性越强,充分利用性越弱(可以保证覆盖到所有的SA)

  1. 如何结合

  • 将之前的策略(0-1)策略(确定性策略)改换为EG概率,得到的就是MCEG算法

  • 用every visit避免过多的浪费情况出现(解释就是在这种情况之下的链会非常非常的长,因此有很多的SA都是被访问了很多次的,如果用first visit的话资源浪费会非常非常严重)

6、例子

用超级长链避免出现频繁的SA触发

但是最优性会被牺牲掉

一般设置一个比较小的E,或者让E逐渐递减

OEG与OG的策略要能保持一致性,因此要合理设置一个epsilon的大小,最佳方案是让其递减

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值