Model Free Control
Target: 将一个Agent放入完全未知的环境中,如何将奖励最大化。
image.png image.png简单回顾
image.png- on-policy 学习从该策略下采样产生的样本,同时更新策略。
-
off-policy 学习其他策略写(经验)产生的样本,用于更细策略。
image.png -
类似于 GPI,向上评估policy,向下生成新的policy,其中评估算法和更新算法都可以替代后用于model-free.
image.png -
例如将评估过程换成MC方法,及计算想要评估轨迹的均值取代期望价值,并应贪婪算法更新Policy。
image.png - 然而在使用贪婪策略更新policy时,需要知道MDP模型,所以用于model-free模型时,使用实际行为函数值Q进行替代,从而可以使用贪婪策略,Q告诉我们在一个状态下,采取各个行为有多好,所以我们需要做的只是选择一个action,然后将其函数值最大化。
image.png - 使用MC方法,。但是贪婪算法不能保证我们看到全部状态,无法进行准确的估计,我们必须保证看到了环境的全局。
image.png -
使用MC方法和贪婪方法进行GPI,就会永远只开右边的门,获得+2的奖励,因为你不知道模型,所以就会陷入你认为正确的局部最优。
image.png - 为了看到全部可能状态,所以用策略。
image.png - 那么我们采取这个,是否能够得到更好的策略。
- 第二行前面是非贪婪选择的值(均值),后面是的结果。
-
最后得到Q值,虽然贪婪算法简单,但是的确可以得到更好的结果。
image.png
image.png -
实际上不必每次都探索完全部环境再更新,这样可以提高效率。
image.png
GLIE
-
如何确保或者最好的value function 和 policy。
image.png
image.png
image.png
image.png
Sarsa
- 使用TD方法每一步估计,用于评估policy,再使用进行更新policy,这种方法就叫Sarsa。
image.png
image.png
image.png
image.png
image.png
image.png
image.png image.png
image.png
image.png
Let we take about off-policy learning
-
off-policy 的用处
1.1 用off-policy探索已经探索过得庞大数据库(已经提供最优policy),从而也学习最优策略。
1.2 获得多重策略,通过学习单一策略。
image.png -
importantce sampling
image.png - 使用蒙特卡洛方法进行importantce sampling按照完整回合进行更新,每一步都使用了Importance sampling,所以会得到一个无限小的,所以蒙特卡洛方法真的不适合off-policy。
image.png -
所以你真的需要使用差分时序的方法。利用TD-target改变分配,分配系数是现有策略和环境差异。
image.png -
是实际世界会采取的活动,是遵循目标策略采取的活动。
image.png - 这就是大名鼎鼎的Q-learning。
-
特殊之处就是target policy 和 behaviour policy u 都可以被更新,目标就是一点点的想着Q值最大的方向进行更新。
image.png
image.png
image.png
image.png
image.png
image.png
网友评论