【/强化学习7日打卡营-世界冠军带你从零实践/课程摘要和调参心得-No.2】基于表格型方法求解RL
一、课程内容
2.基于表格型方法求解RL
2.1 MDP、Q表格
强化学习的基本思路来源于马尔科夫决策过程Markov Decision Process(MDP):
在设计强化学习方法中,model-free和model-based的区别主要在于是否对policy和reward有预先建模:
根据不同场景,reward函数可能会有所不同:
比如救护车场景,是有尽头的,每闯一个红灯,时间上收益差不多,那么reward可以加起来:
比如股票场景,是没有尽头的,越远的收益越没有价值,那么就可以给未来的reward加一个折算因子gamma:
下面以gym中的悬崖环境Cliff为例(走一步-1,掉到悬崖-1000,S起点,G终点),
一次行走,不同gamma值对reward的影响:
这样每个坐标都可以建一个Q值的表格:
基于这个表格,就可以设计SARSA、Q-learning、DQN等常见的value-based的RL方法。
2.2强化概念、TD更新等
先举个例子,人的推理,其实是一层一层的,熟悉了一个概念后,很可能很快推导到下一个结论,这个就和Q表格非常相似。
斯坦福有个入门的gridworld的强化学习demo,做的非常好,用的就是Q表格,大家可以试一下:
下面讲讲时间差分Temporal Difference(TD)的概念:
MDP问题的求解,可以等所有动作结束后,用动态规划来求解。但是如果State,action,reward等都没有尽头,需要一直持续,该怎么办呢?这时候可以用TD算法,好处是每一步都可以更新:
百度paddlepaddle强化学习团队的PARL框架把这个agent的方法抽象为了sample,predict、learn3个环节,还是非常好的,可以适用于几乎所有强化学习算法。
2.3SARSA算法介绍
SARSA是一种on-policy的算法,即采样预测和学习的时候都用了e-greedy:
展开来看则更方便理解:
e-greedy就是解决RL中exploration和exploitation平衡的问题的一种方法:
整体SARSA的算法流程图如下:
在Cliff环境中,SARSA学到的最终结果,小乌龟会学到远离悬崖的一条路线,这主要是因为e-greedy有一定几率会让小乌龟掉进悬崖,带来很大的-reward。因此远离悬崖更为保险。
2.4Q-learning算法
Q-learning算法和SARSA算法非常相似,只不过是off-policy的,即采样预测和学习的策略不一样,只在采样预测过程中有e-greedy,学习过程中的target则没有,是直接选择maxQ值的。
展开来更方便理解:
整体的流程图如下:
Q-learning应用于Cliff环境中,则会学到一个靠近悬崖的最短路线:
On-policy和Off-policy的区别、优劣:
最后总结一下第2课的内容: