强化学习10-Deep Q Learning-fix target
摘要:针对 Deep Q Learning 可能无法收敛的问题,这里提出了一种 fix target 的方法,就是冻结现实神经网络,延时更新参数。 这个方法的初衷是这样的: 1. 之前我们每个(批)记忆都会更新参数,这是一种实时更新神经网络参数的方法,这个方法有个问题,就是每次都更新,由于样本都是随机的,
阅读全文
强化学习9-Deep Q Learning
摘要:之前讲到Sarsa和Q Learning都不太适合解决大规模问题,为什么呢? 因为传统的强化学习都有一张Q表,这张Q表记录了每个状态下,每个动作的q值,但是现实问题往往极其复杂,其状态非常多,甚至是连续的, 比如足球场上足球的位置,此时,内存将无力承受这张Q表。 价值函数近似 既然Q表太大,那么怎么
阅读全文
强化学习8-时序差分控制离线算法Q-Learning
摘要:Q-Learning和Sarsa一样是基于时序差分的控制算法,那两者有什么区别呢? 这里已经必须引入新的概念 时序差分控制算法的分类:在线和离线 在线控制算法:一直使用一个策略选择动作和更新价值函数,如Sarsa 离线控制算法:两个策略,一个选择新的动作,一个更新价值函数,如Q-Learning Q
阅读全文
强化学习7-Sarsa
摘要:之前讲到时序差分是目前主流强化学习的基本思路,这节就学习一下主流算法之一 Sarsa模型。 Sarsa 是免模型的控制算法,是通过更新状态动作价值函数来得到最优策略的方法。 更新方法 Q(S,A)=Q(S,A)+α(R+γQ(S′,A′)−Q(S,A)) // 回顾一下蒙特卡罗的更新方式 Q(S,A
阅读全文
强化学习6-MC与TD的比较-实战
摘要:可以看到 随着学习率的增大,效果越来越好,当学习率为0.5时,已经明显过拟合了 这个是单步的,书上是单回合的,所以不同,后续有空会更新代码 随机行走有个特殊性:两个终点,有一个终点奖励为0,也就是说在前几个回合中,单步更新的TD如果一开始向左走,需要好多步才能到达右边终点,而MC由于是整个回合,要么
阅读全文
强化学习4-时序差分TD
摘要:之前讲到强化学习在不基于模型时可以用蒙特卡罗方法求解,但是蒙特卡罗方法需要在每次采样时生产完整序列,而在现实中,我们很可能无法生成完整序列,那么又该如何解决这类强化学习问题呢? 由贝尔曼方程 vπ(s)=Eπ(Rt+1+γRt+2+γ2Rt+3+...|St=s) 推导可得 vπ(s)=Eπ(Rt+
阅读全文
强化学习3-蒙特卡罗MC
摘要:之前讲到强化学习可以用马尔科夫决策过程来描述,通常情况下,马尔科夫需要知道 {S A P R γ},γ是衰减因子,那为什么还需要蒙特卡罗呢? 首先什么是蒙特卡罗? 蒙特卡罗实际上是一座赌城的名字,蒙特卡罗方法是冯 诺依曼 用这座赌城的名字起的。 蒙特卡罗方法的主要思想是:当求解的问题是某随机事件出现
阅读全文