Monte-Carlo Sampling

基本概念

  • 蒙特卡洛采样是无模型方法
  • 行为策略是智能体与环境交互的策略
  • 目标策略是我们要学习的策略
  • 在策略(on-policy)学习

    • 行为策略和目标策略是同一个策略
    • 直接使用样本统计属性去估计总体
    • 更简单,且收敛性更好
    • 数据利用性更差(只有智能体当前交互的样本能够被利用)
    • 限定了学习过程中的策略是随机性策略
  • 离策略(off-policy)学习

    • 行为策略和目标策略不是同一个策略
    • 一般行为策略选用随机性策略,目标策略选用确定性策略
    • 需要结合重要性采样才能使用样本估计总体
    • 方差更大,收敛性更差
    • 数据利用性更好 (可以使用其他智能体交互的样本)
    • 行为策略需要比目标策略更具备探索性
  • 重要性采样

    • 是一种估计概率分布期望值的技术,它使用了来自其他概率分布的样本
    • 主要用于无法直接采样原分布的情况
    • 估计期望值时,需要加权概率分布的比值

算法特性

  • MC方法可以被用于任意涉及随机变量的估计
  • 这里MC方法特指利用统计平均估计期望值的方法
  • MC方法从完整的片段中学习
  • MC方法仅仅用于片段性任务(必须有终止条件)

算法核心

通过不断的采样,然后统计平均回报值来估计值函数,方差较大

  • 从某个状态S开始,通过某种策略P进行探索,一直到终止状态,得到反馈Fk
  • 重复以上步骤n次,V(s)=(F1+F2+…+Fn)/n

蒙特卡洛评价

  • 首次拜访(First-visit)MC策略评价
  • 每次拜访(Every-visit)MC策略评价
    s1,s2,s3,s1,s4,s2,s5 +1
    s1,s2,s1,s5 +1
    对于上面的两种采样轨迹,评价s1时,首次拜访只在s1在一条轨迹中第一次出现时N=N+1;每次拜访则是出现一次s1就N=N+1
    首次拜访:(1+1)/2 = 1
    每次拜访:(1+1)/4 = 0.25
    

Q函数的MC方法

  • 每次是针对一个s和一个a进行评价
  • 为了充分探索所有的s,a组合,随机选择初始状态和初始动作

离策略的MC策略评价

  • 核心是利用重要性采样去加权回报值
  • 使用重要性采样会显著增加方差, 可能到无限大

MC小结

  • 偏差为 0,是无偏估计
  • 方差较大,需要大量数据去消除
  • 收敛性较好
  • 没有利用马尔可夫性,有时可以用在非马尔可夫环境

增量式MC

之前的蒙特卡洛算法需要采样大量轨迹之后再统一计算平均数,能不能在每一条轨迹之后都得到值函数的估计值呢?

  • 这里的可以认为是更新的步长
  • 很多时候,我们会把替换为一个常数,好处如下:
    • 会逐渐遗忘过去的轨迹
    • 对初始值敏感度更小
    • 适用于不稳定环境

MC策略提升

  • 不能使用贪婪策略提升,会导致部分状态永远不会遍历到
  • 每次探索,有一定的几率随机选择动作,其他情况下都采取贪婪策略

无限探索下的极限贪婪(GLIE)

  • 无限探索:所有的状态动作对能够被探索无穷次
  • 极限贪婪:在极限的情况下,策略会收敛到一个贪婪的策略

    GLIE 蒙特卡洛优化能收敛到最优的 Q 函数

增量式离策略每次拜访蒙特卡洛评价

  • 1: repeat
  • 2: 使用策略采样第条轨迹,
  • 3:
  • 4: for do
  • 5:
  • 6:
  • 7:
  • 8:
  • 9: if W=0, break
  • 10: end for
  • 11: until 收敛

增量式离策略每次拜访蒙特卡洛优化

  • 1: repeat
  • 2: 使用策略采样第条轨迹,
  • 3:
  • 4: for do
  • 5:
  • 6:
  • 7:
  • 8:
  • 9: if ,则退出for循环
  • 10:
  • 11: end for
  • 12: until 收敛

Search

    欢迎添加我的微信

    闷骚的程序员

    Table of Contents