《强化学习Sutton》读书笔记(五)——时序差分学习(Temporal-Difference Learning)

本文深入探讨了强化学习中的时序差分学习(Temporal-Difference Learning, TD),介绍了TD估计的优势,包括其结合MC和DP的特点,以及在On-Policy和Off-Policy决策中的应用,如Sarsa和Q-Learning。此外,文章讨论了最大化的误差问题和Double Learning解决策略,以及在特殊情况下如博弈中的应用。" 118657722,11169113,SARIMAX模型在二氧化碳排放量预测中的应用与检验,"['Python', '数据分析', '机器学习', '统计模型', '时间序列预测']
摘要由CSDN通过智能技术生成

此为《强化学习》第六章 Temporal-Difference Learning

时序差分学习 (Temporal-Difference Learning, TD) 是强化学习的核心。TD学习是蒙特卡洛MC法和动态规划DP法的综合,它可以像MC那样,不需要知道环境的全部信息,通过交互就能学习;同时,它也可以像DP那样,在(其他值函数)估计的基础上进行估计,从而不需要求解完整个事件(Episode)。

时序差分估计

在上一章的MC增量式实现一节,我们看到状态值函数的增量式更新表达式:

vn+1(s)=vn(s)+Wn+1Cn+1(Gn+1vn(s)) v n + 1 ( s ) = v n ( s ) + W n + 1 C n + 1 ( G n + 1 − v n ( s ) )

其中, Gn+1vns G n + 1 − v n s 的部分为预测值和实际交互得到真实值之间的误差,而 Wn+1/Cn+1 W n + 1 / C n + 1 则为误差的权重项。在Off-Policy的重要性采样中,权重项比较复杂;在On-Policy中,权重项只是 1/n 1 / n 。本节中做的一个改进是,把权重项替换为一个常数 α α 。从而状态值函数的更新式变成了:

v(St)v(St)+α(Gtv(St)) v ( S t ) ← v ( S t ) + α ( G t − v ( S t ) )

(注意这里下标的变化,其实就是一回事。前面强调当个状态的更新,这里强调所有状态的更新)。上式的更新方法被称为常数 α α 蒙特卡洛法 (Constant- α α MC) 。但是,这种方法仍然需要求解 Gt G t ,因此需要等整个episode完成后才能完成每个状态的更新。因此我们提出时序差分的方法,用 Rt+1+γGt+1Rt+1+γv(St+1) R t + 1 + γ G t + 1 ≈ R t + 1 + γ v ( S t + 1 ) 来替代 Gt G t ,即

v(St)v(St)+α[Rt+1+γv(St+1)v(St)] v ( S t ) ← v ( S t ) + α [ R t + 1 + γ v ( S t + 1 ) − v ( S t ) ]

由于这里仅用了下一个状态 St+1 S t + 1 的值函数来估计,因此也被称为TD(0)方法。在下一章,我们将看到用更多步后的状态来估计值函数,就有了TD(n)方法。TD(0)方法的伪代码如下(比MC要简单很多):

TD(0)伪代码

下图为TD(0)的回溯图模型。可以看到,它使用了下一个状态的值函数来更新当前状态值函数。

TD(0)回溯图

我们定义 Rt

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值