强化学习基础知识梳理(2)

顺序以周博磊老师强化学习纲要课程为主,增加王树森老师强化学习基础的知识补充,和蘑菇书的知识补充,作为学习记录

第②章:马尔科夫决策过程

主要内容:

  1. 马尔可夫决策过程
  2. MDP中的策略评估
  3. MDP中的控制:策略迭代和价值迭代
  4. 下图为内容链梳理

一、马尔可夫决策过程

  1. 马尔可夫性质:指一个随机过程在给定现在状态以及所有过去状态情况下,其未来状态的条件概率仅依赖于当前状态
  2. 马尔可夫过程(MP)/马尔可夫链
    1. 马尔可夫过程是指一组具有马尔可夫性质的随机变量序列,其中下一时刻状态仅取决于当前状态
    2. 马尔可夫链是指离散时间的马尔可夫过程
    3. 此时状态转移中还没有引入动作a,只是表示从当前状态转移到下一状态的概率
    4. 状态转移函数:
  3. 马尔可夫奖励过程(MRP)
    1. 马尔可夫链增加了奖励函数R
    2. 奖励函数R是一个期望,表示当我们到达一个状态时可以获得多大的奖励(此时只考虑状态s不考虑动作a)
    3. 奖励函数出现后引出回报(return)的概念,指奖励进行折扣后获得的奖励,是奖励的逐步叠加
    4. 使用折扣因子:
      1. 避免带环的马尔可夫过程产生无穷奖励
      2. 表现出模型评估的不确定性
      3. 更希望得到即时奖励而不是延迟奖励
      4. 是个超参数,需要进行调整(1/0)
  4. 状态价值函数V(s)
    1. 得到回报的概念后可以定义状态的价值
    2. 对于MRP来说,状态价值函数是折扣回报的期望,用期望来表示从当前这个状态开始可能获得多大价值。
    3. 然后是关于价值函数的计算:
      1. 少量状态:蒙特卡洛采样(MC)  贝尔曼方程(Bellman)
      2. 大量状态:动态规划   蒙特卡洛采样    时序差分学习(TD)
  5. 蒙特卡洛(MC)
    1. 少量:生成多轨迹,计算轨迹回报,取平均值作为价值
    2. 大量:抽一个或多个随机样本,并利用随机样本近似期望,属于随机算法,多用于近似期望。蒙特卡洛的结果通常是错的,但是离真实结果很接近
  6. 贝尔曼方程(动态规划方程)
    1. 贝尔曼方程定义了当前状态与未来状态之间的迭代关系,是即时奖励加上未来奖励的折扣总和。

    2. 对于少量状态,用向量形式直接推导可以直接得表达式

    3. 公式 推导
  7. 动态规划方法
    1. 动态规划:基于后续状态价值的估计更新现在状态价值的估计(自举迭代贝尔曼方程,直到价值函数收敛,得到某个状态价值)
    2. 贝尔曼方程变为贝尔曼更新
    3. 自举(bootstrapping):根据其他估算值更新估算值(高估)
    4. 收敛:最后更新的状态与上一个状态区别不大时
  8. 马尔可夫决策过程
    1. 相对于马尔可夫奖励过程增加了决策(动作)
    2. 状态转移函数改变:
    3. 奖励函数改变:
    4. 增加策略函数:
      1. 策略函数输出可以使各个动作的执行概率,也可以是确定的动作
      2. 已知马尔可夫决策过程和对应策略π,就可以把马尔可夫决策过程转换为马尔可夫奖励过程(消除动作a的影响)
  9. MDP与MRP区别
    1. 通过策略函数消除动作影响实现MDP转换为MRP,但是策略需已知,所以符号改变为:
      1. 状态转移函数:
      2. 奖励函数:
    2. 区别:在状态转移过程中增加了一层决策性(又增加一层概率)
  10. 贝尔曼期望方程
    1. 以期望的形式形成类似贝尔曼方程的期望方程
    2. 同样是将价值函数拆分为即时奖励和后续折扣价值
    3. 与之前的区别是由于策略的引入增加了策略的概念

二、策略评估

  1. MDP的策略评估
    1. 已知马尔可夫决策过程以及要采取的决策后,计算状态价值函数V_π的过程就是策略评估(也称价值预测
    2. 预测我们当前所采取的策略最终会产生多少价值。
  2. 关于MDP中的核心问题:预测与控制
    1. 预测:输入为MDP<S,A,P,R,γ>和策略π,输出价值函数V_π
    2. 控制:输入为MDP<S,A,P,R,γ>,输出最佳价值函数V^∗和最佳策略π^∗
    3. 也就是说,预测是给定一个策略,确定它的价值函数;控制则是在没有策略的前提下,确定最佳价值函数和最佳策略
    4. RL中,通过解决预测问题,进而解决控制问题
  3. 动态规划思想(DP)解决预测与控制
    1. DP适用于解决最优子结构问题和重叠子问题
    2. MDP符合动态规划要求,贝尔曼公式已经把MDP分解成了递归结构,价值函数可以存储并重用子问题的最佳解
    3. 动态规划应用MDP的规划问题而不是学习问题,环境必须完全已知,也就是说知道状态转移概率和对应的奖励(这里与Model-based RL有一定的相似性)
  4. 进行策略评估(预测)
    1. 将贝尔曼期望备份反复迭代,得到一个收敛的价值函数的值。(策略已经确定)(t表示迭代次数)

    2. 通过对上述公式进行迭代,最终得到每个状态的价值
    3. 这里是同步备份,每一次迭代都会完全更新所有的状态
  5. 备份(Backup):对于一个某一状态,当前价值与它的未来价值线性相关。

三、MDP的控制问题

  1. 关于控制:
    1. 只有MDP,如何寻找最佳策略,得到最佳价值函数
    2. 最佳价值函数:
      1. 搜索一种策略π让每个状态的价值最大
    3. 最佳策略:
    4. 当得到一个最佳价值函数,就认为该MDP环境可解
    5. 获得最佳动作:
    6. 所以关键是如何进行策略搜索:穷举、策略迭代、价值迭代
    7. 策略迭代和价值迭代是MDP控制的两种常见算法
  2. 策略迭代
    1. 包括两部分:策略评估和策略改进
      1. 保持当前策略不变,估算其状态价值函数
      2. 得到状态价值函数后,进一步推算其Q函数,对Q函数进行最大化(进行贪心操作argmax)步改进策略
    2. 存在初始策略π和初始状态价值函数V
    3. 策略更新公式:

  3. 贝尔曼最优方程
    1. 一直使用贪心操作,一定会得到更好或不变的策略,不会使价值函数变差。改进停止就会得到最佳策略,此时取让Q函数值最大化的动作,Q函数就会变成价值函数

    2. 意义:最佳策略下一个状态的价值,必须等于该状态下采取最好动作得到回报的期望(此时MDP达到最佳状态)
    3. 只有最优价值函数V^∗和最优动作价值函数Q^∗满足该方程
  4. 价值迭代
    1. 最优性原理:当策略π在状态s达到了最优价值,当且仅当任何能够从s到达的s^’都已经达到了最优价值。
    2. 动态规划方法进行优化:第一步执行最优动作,之后每一步都按照最优策略执行,则结果最优
    3. 价值迭代:将贝尔曼最优方程当做更新规则来进行,直接用该方程进行迭代,迭代多次直到价值函数收敛
    4. 关键问题是怎样求解最优价值函数(我们解决的是规划问题而非强化学习问题,因为知道环境如何变化)

     

     

  5. 策略迭代与价值迭代的区别
    1. 策略迭代先进行策略评估,在进行策略更新,反复迭代这两个步骤,每一次的策略都是有意义的
    2. 价值迭代直接通过贝尔曼最优方程进行迭代,寻找最佳价值函数,找到最佳价值函数后再提取最佳策略,类似价值的反向传播,中间的策略和价值无意义
    3. 策略迭代每次内部要计算出每次策略对应的精确值,价值函数则只是直接求最优价值函数,进而推出最优策略
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值