Reinforcement Learning - Chapter 6


强烈推荐结合《Reinforcement Learning:An Introduction》Second edition阅读!!!


Temporal-Difference Learning

6.5 Q-learning: off-policy TD Control

Q-learning是一种异策略(off-policy)的强化学习算法。选取大的q(s, a)对应的action即可实现决策,那么通过样本估计得到q(s, a)就成了关键,迭代公式如下:


式6_8.png

该公式的推导与证明这里就不说了,书上写的很明白,这里主要讲理解。

Q-learning是沿着时间线从状态St到状态St+1的迭代。有的博客上说Q现实、Q估计,个人没有太理解。可以这么看最初Q(St,At)就是错误的,而Rt+1+r*maxQ(St+1,a)则是一个相对正确的值,通过一个相对正确的值对这个错误的Q(St,At)进行修正,最终得到一个正确的值。
Q-learning算法实现中需要建立一个Q表,如下图所示:

fig6_1.png

(注:图片引用于此博客

将state看做一整个变量,那么Q表是二维的,纵坐标是state,横坐标是action。但这只是广义上讲,注意前面说是看做。实际编程中例如CartPole例子中,state有分作四个指标a、b、c、d,那么Q表具有4(state)+1(action)=5个维度!!!

Q表元素通常初始化都为零,因为零不会估计产生误差。我们假想Q表初始化后,我们采取第一步action后更新了Q(s, a),且Q(s, a)不为零。那么如果我们采取贪心算法来做决策,也就是公式中的maxQ(s,a),那我们肯定选Q(s, a)对应的action。因为其他值都是零,这样就会产生一个恶性循环,就是在状态s时一直选这个action。因此我们引入epsilon-greedy作为启发式的跳出困境。常看到的python代码模板如下


fig6_2.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一. 增强学习简介 1.1 什么是增强学习? 机器学习的算法可以分为三类:监督学习,非监督学习和增强学习。 增强学...
    阿阿阿阿毛阅读 31,362评论 0 25
  • 序:处在浅薄荷和黑橡木里的年代第一章:过去是用来喜欢的第二章:很好,我记住你了。第三章:说一句幸会第四章:“我一直...
    格子年代阅读 265评论 2 1
  • 一个人能否成才,不决定于名校和名师,也不决定于学历和学位的高低,而决定于你自己。具体来说,就决定于你自己的理想和执...
    只是想写一写阅读 146评论 0 0
  • =s
    将心_fd60阅读 192评论 0 0
  • A nice film reflects British history. It mainly revealed ...
    Milly116阅读 178评论 0 0