蒙特卡洛方法_强化学习基础笔记-4.蒙特卡洛方法

b29f079941a72fc98648ffb47db94d09.png

蒙特卡洛方法

MC方法是一类通过与环境(真实环境或模拟仿真)交互得到采样序列来估计值函数的方法。依据大数定律,在样本数量足够大时可以通过计算平均回报来解决强化学习问题,对于分幕式任务则可以在每一幕结束后进行价值估计和策略改进,也就是蒙特卡洛控制的价值迭代。。

1.蒙特卡洛预测 -给定策略下

估计

1.首次访问型MC算法

问题背景:在给定策略
下,考虑一个分幕式任务,Agent有多次达到了状态
,在某一幕中,每次状态
出现就称为对
的一次
访问,在整个任务甚至在同一幕中,状态
有可能被多次访问到

首次访问:第一次访问状态

被称为对状态s的首次访问

首次访问的回报平均值估计
就是
首次访问型MC,用每次访问到状态
的所有回报平均值就是
每次访问型MC。不论是每次访问型和首次访问型,当对
的访问次数趋于无穷时,只要策略保持不变,对于状态在策略
下的估计值都会收敛到
2.首次访问型MC预测算法伪代码
## 首次访问型MC预测算法 ##

输入:待评估策略
初始化 v(s)
初始化列表 L

循环N次{
    
  依据输入策略生成一幕序列:S0,A0,R1,S1,A1,R2,...S_{T-1},A_{T-1},R_{T}
  G=0
  for t in {
    T-1,T-2,...0}
    计算序列中每个节点的回报 G = gamma * G+ R_{
    t+1}
    G加入列表L #列表是每个状态的回报的表格,推到最后就是第一个状态S0的
    if St 在序列{
    S0,S1,...S_{T-1}}中出现过
      把列表中该状态的回报换成时间靠前的回报  #因为是从后往前考察
      continue
    end if
  end for
  }
  对于表格L中每种状态的回报,统计其平均值,就是各状态的价值函数估计

在策略

下从
待考察状态
开始,以分幕的方式生成多条轨迹,对这些轨迹从最后一个状态开始通过
计算对应状态的平均回报,作为策略
下的
状态
的价值函数估计。在首次访问型算法中,这条轨迹若经过了多次状态
状态的价值只
按最先出现的那个状态的回报来估算。 3.MC方法与DP的比较
与DP不同的是,MC方法对于每个状态的值函数估计是独立的,每个状态价值函数之间没有明显关系(尊重试验事实),这不像DP是基于自举的推断方法。
MC方法的回溯树就是一条确定的采样轨迹,而不是DP的树状形式。
MC需要依赖一条完整的采样轨迹数据计算值函数,而DP依据上个状态值函数计算下一状态值函数。 这是也是MC方法的特色- 从实际环境采样和仿真模拟中学习

3a2ca84aab43c33502ff2c63570e3291.png

2.动作价值的MC估计法- 给定策略下

估计

动作价值函数的策略评估:在DP问题中,由于模型完备,所以依靠状态的价值函数$v(s)$就可以用贝尔曼方程得到最优策略。而在一些无模型问题中,由于动力学方程或状态转移概率未知,所以需要依据状态-动作二元组的价值函数

来实现表格型问题的策略生成。
MC估计法:与上一小节中 状态价值函数的估计方法类似,我们将 访问考察对象改为 状态-动作二元组,用同样的方法计算所有碰到的(或是第一次碰到的)状态-动作二元组价值函数的平均值作为其估计值。 MC方法对于确定性策略的困境:对于概率型策略,次数足够大都能保证一些状态被访问到并更新,但对于确定性策略,一旦策略固定后只会转移到 特定的状态-动作二元组上,也就是 某些状态-动作二元组在该策略下永远无法被访问到,而策略提升需要收集尽可能多的值函数,而不是局限于某些值函数。因此,需要Agent 保持探索能力MC的试探性改进
有两种方法:试探性出发( Exploring Start)、随机策略(比如后面我们会用软贪婪策略)
试探性出发就是随机将状态-动作空间中二元组作为起点,这样只要幕数足够,确定性策略中难涉及到的二元组就可能被全部访问到;随机策略就是将确定性策略变为“任何动作都有非零概率被选中”。

3.基于蒙特卡洛的控制方法-MC GPI

表格型强化学习的控制问题:通过交互产生经验估计Qtable,用固定的动作选取策略依据Qtable去产生动作输出

基于理想条件的MC的广义策略迭代GPI: 策略评估(E)后进行策略提升(I),策略评估使值函数接近真实值,策略提升选取最优动作,最终趋近于最优值函数和最优动作,这里借用原书中图片和知乎张文大佬专栏上图片。

39a29b173a60109fff645ef7c200eae3.png

9f43329c4884005817211110e862c861.png


MC的GPI很容易实现,考虑下面的GPI序列,以

为初始序列,假设E代表
执行无数幕(理想条件1), 假设满足试探性出发(理想条件2),通过MC就可以遍历估计求得所有二元组值函数
,通过贪婪方法将值函数映射到策略中:

策略改进(I)依据DP中的策略改进定理:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值