笔记关键词检索?

在所有笔记中搜索你感兴趣的关键词!

《强化学习:原理与Python实现》 ──   强化学习一线研发人员撰写,涵盖主流、实用强化学习算法与基于TensorFlow2.0的Python实现

作者:肖智清 著


算法分类

1. 理解
不理解环境(Model-Free RL)
1.机器人不懂得环境是什么样子,它会通过自己在环境中不断试错,以获得行为上的改变。

算法:Q Learning、Sarsa、Policy Gradients
理解环境(Model-Based RL)
1.机器人会通过先验的只是来先理解这个真实世界是怎么样子的,然后用一个模型来模拟现实世界的反馈,这样它就可以在它自己虚拟的世界中玩耍了。

2.与modle-free中的玩耍方式一样,但model-base有两个世界,不仅能在现实世界中玩耍,也能在自己虚拟的世界中玩耍。

算法:Q Learning、Sarsa、Policy Gradients
 
2. 基于
基于概率(Policy-Based RL)
基于价值的决策部分为铁定,毫不留情, 就选价值最高的。

算法:Policy Gradients、Actor-Critice
基于价值(Value-Based RL)
基于概率的,即使某个动作的概率最高,但是还是不一定会选到他。

算法:Q Learning、Sarsa、Actor-Critice
 
3. 更新
回合更新(Monte-Carlo update)
每个回合结束后更新

算法:基础版Policy Gradients、Monte-Carlo Learning
单步更新(Temporal-Difference update)
每步进行更新

算法:Q Learning、Sarsa、升级版Policy Gradients
 
4. 在线
在线学习
指我必须本人在场, 并且一定是本人边玩边学习。

算法:Sarsa、Sarsa lambda
离线学习
是你可以选择自己玩,也可以选择看着别人玩,通过看别人玩来学习别人的行为准则。

算法:Q learning、Deep Q Network

............

时间差分法(TD)

这个能做到每一步都更新一次,同时可以异步跟新(不用每次都要求所有状态更新一次来轮转,选到谁就更新谁,所以也要求每个状态都能够选到)。一般说的TD都指的是TD(0) (ps:为啥不叫TD(1)啊),即每次只往后看一步,这是什么意思呢,看了接下来的流程估计就懂了。(使用的都是(s,a)值)

1:随机选取一个状态S开始游戏
2:此s状态下选取a(根据贪婪 或者 ε-贪婪),并在动作a的状态下获得s‘,即下一状态。
3:使用s状态下的反馈奖励以及s’的未来奖励更新s的未来奖励。(一般这两者与目前s状态的未来奖励加权求和)(ps: 这里就是sarsar与Qlearning的区别,s'是指s中通过策略抵达的下一状态,但此状态下也有许多的(s,a)值,该以哪个来更新呢?Qlearning中,选取最大的(s,a)为更新值。sarsar中,对所有(s,a)值求平均,作为更新值。这也是所谓的Qlearning高风险高收益,sarsar比较保守的原因。)
4:重复1步骤,(但要求每个状态s都能够被选到。)





作者:无业大学生

链接:https://www.jianshu.com/p/142072151161

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

............

蒙特卡洛(MC)

............