《强化学习》中的时序差分控制:Sarsa、Q-learning、期望Sarsa、双Q学习 etc.

本文介绍了强化学习中的时序差分控制方法,包括Sarsa、Q-learning、期望Sarsa和双Q学习。Sarsa基于同轨策略,Q-learning采用离轨策略。期望Sarsa通过减少方差,解决了Sarsa的随机性问题。双Q学习则通过两个Q函数消除最大化偏差,提供无偏估计。文中还讨论了最大化偏差和后位状态的概念,并给出了实际案例分析。
摘要由CSDN通过智能技术生成

前言: 学习了 Sutton 的《强化学习(第二版)》第6章时序差分学习的控制部分,将笔记提炼如下。

笔者阅读的是中文书籍,所提到的公式,笔者将给出其在英文书籍上的页码。英文书籍见 Sutton 个人主页:
http://incompleteideas.net/book/the-book.html

本次笔记内容:

  • 6.4 Sarsa:同轨策略下的时序差分控制
  • 6.5 Q 学习:离轨策略下的时序差分控制
  • 6.6 期望 Sarsa
  • 6.7 最大化偏差与双学习
  • 6.8 游戏、后位状态和其他特殊例子
  • 6.9 本章小结

在上一次笔记中,我们讨论了 动态规划( Dynamic Programming, DP )、蒙特卡洛方法( Monte Carlo Method, MC )与时序差分学习( Temporal Difference Learning, TD )的异同,以及时序差分学习中的预测算法。本次笔记中我们讨论其控制部分算法,其概述如下。

  • Sarsa 是同轨策略下的时序差分控制,;
  • Q-learning 是离轨策略下的时序差分控制;
  • 期望 Sarsa 的表现比上述二者表现都更好( van Hasselt, 2011),并且被称为“广义 Q 学习”;
  • 然而,单纯的最大化操作带来了“最大化偏差”,因此我们提出“双学习”来消除“最大化偏差”;
  • 此外,我们还引出了如“后位状态”的概念,没有具体讨论。

书中展示了4段实例, Zhang 都有相应代码进行实现,分别介绍如下知识点:

  • 有风的网格世界(Example 6.5: Windy Gridworld)介绍 Sarsa 的性能;
  • 在悬崖边行走(Example 6.6: Cliff Walking)对比了基于 ϵ \epsilon ϵ-贪心方法的 Sarsa 与 Q-learning 的控制效果;
  • 接着,在介绍 期望 Sarsa 时也使用了 Cliff Walking 实例对其效果进行展示;
  • 最大化偏差实例(Example 6.7: Maximization Bias Example)用于表达:双 Q 学习优于 Q 学习。

我对其代码进行了标注,请见https://github.com/PiperLiu/Reinforcement-Learning-practice-zh/blob/master/practice/05-02-Temporal-Difference-Control.ipynb并且,我还由代码及实验结果,复述了我对于书上提出的算法对比特性的理解。

Sarsa

基于同轨策略,其更新公式为:

Q ( S t , A t ) ← Q ( S t , A t ) + α [ R t + 1 + γ Q ( S t + 1 , A t + 1 ) − Q ( S t , A t ) ] Q(S_t,A_t) \leftarrow Q(S_t,A_t) + \alpha [ R_{t+1} + \gamma Q( S_{t+1}, A_{t+1} ) - Q_(S_t , A_t ) ] Q(St,At)Q(St,At)+α[Rt+1+γQ(St+1,At+1)Q(St,At)]

可以看出与之前“时序差分预测”中的价值预测公式很像。

如果 S t + 1 S_{t+1} St+1 是终止状态,那么 Q ( S t + 1 , A t + 1 Q( S_{t+1}, A_{t+1} Q(St+1,At+1则定义为0。这个公式用到了元组 ( S t , A t , R t + 1 , S t + 1 , A t + 1 ) (S_t,A_t,R_{t+1},S_{t+1},A_{t+1}) (St,At,Rt+1,St+1,At+1),因此该算法命名为 Sarsa 。

Sarsa 想要以1的概率收敛到最优的策略和动作价值函数,需要满足2个条件:

  1. 所有的“状态-动作”二元组都被无限多次访问到;
  2. 贪心策略在极限情况下能够收敛(收敛过程可以通过令 ϵ = 1 / t \epsilon = 1/t
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值