内容纲要

欢迎转载,作者:Ling,注明出处:强化学习教程: 05-Model-Free Control, Sarsa, Sarsa(λ)和Q-learning

 

本章主要介绍

  • MC control
  • Sarsa
  • Sarsa(λ)
  • Q-learning

策略迭代

1)策略评估:根据策略和模型,更新V

2)策略提升:贪心法选择策略,更新策略

RL_05_001

对上图进行改进

1)策略评估:没有模型,根据MC策略评估,更新V

2)策略提升:贪心法选择策略,更新策略

RL_05_002

存在的问题

1)虽然策略评估部分没有用到模型的信息,P和R,但是策略提升的时候需要用到:

RL_05_003

解决方案: 用q替代v

RL_05_004

2)贪婪策略问题,由于模型不可知,我们通过抽样得到的结论不能保证策略优劣,所以需要加入探索,也就是一定概率不采用最优策略,这样可以保证万一抽样不全面导致估算错误,我们还有机会尝试别的策略

解决方案:epsilon-greedy

epsilon-greedy 算法很简单,epsilon是0-1之间的数,有epsilon的概率我们选择随机探索,1-epsilon的概率我们采取贪婪策略。

改进后

蒙特卡洛策略迭代

RL_05_005

存在问题

q值太多,我们一般不需要每次评估所有q

改进后

RL_05_006

GLIE 蒙特卡洛策略迭代

当蒙特卡洛策略迭代满足GLIE性质的时候,我们称它是GLIE 蒙特卡洛策略迭代。

  • GLIE 蒙特卡洛策略迭代可以收敛到最优的Q和π

GLIE性质

  • 每个状态被访问无数次
  • 策略向贪婪收敛,也就是最后变成一个固定的策略

改进:ε改成和经验片段k,负相关,这样随着时间的进行,epsilon趋向于0, epsilon-greedy也就趋向于greedy

GLIE 蒙特卡洛策略迭代

RL_05_007

对比之前第四章,只是v换成了q,n是基于s和a,同时因为不仅要评估,还要control,所以对策略也需要更新

Sarsa:

定义:

MC策略评估换成TD评估,这样的策略迭代就是Sarsa,其他和MC策略迭代一样

RL_05_008

名称由来:看图

RL_05_009

算法:

RL_05_010

因为是TD,所以是每步更新

Sarsa的收敛性:

Sarsa收敛到最优Q是有两个条件的,但是实际中,我们并不考虑,他总能收敛到接近最优

Sarsa(λ):

定义:

将策略评估换成TD(λ)即可,请对比第四章

n-step

RL_05_011

RL_05_012

Forward view:

RL_05_013

RL_05_014

Eligibility traces:

RL_05_015

Backward view:

RL_05_016

算法:

RL_05_017

Q-learning

和Sarsa比,就是将策略迭代换成了Value迭代

q更新方式为:所以也叫SarsaMAX

RL_05_018

图示:

RL_05_019

注意:

Qlearning是可以收敛到最优Q的,不像Sarsa需要一定条件

算法:

RL_05_020

总结:

1)

RL_05_021

2)

RL_05_022