RL学习、基于TD的方法求解最优策略,包括Sarsa与Q-learning
与MC相比,TD具有低方差、在线学习、利用不完整序列进行学习的优点,因此将TD应用于 Q ( S , A ) Q(S,A) Q(S,A)当中,使用 ? ? G r e e d y \epsilon-Greedy ??Greedy策略进行优化,针对每一时间步进行更新
名字由来:可以从图中的采样序列看到,S,A R S A组合起来就是sarsa,sarsa利用episode中每一步的采样结果进行更新Q,如下图所示
具体流程:
Sarsa收敛性说明:满足以下条件便可达到收敛
行为策略:需要优化的策略,根据经验来学习最优的策略
目标策略:探索环境的策略,与环境交互产生经验的策略,将经验喂给行为策略进行优化
Q-learning有两种策略:行为策略与目标策略。
目标策略采用贪心算法选择使Q值最大的动作,行为策略采用
?
?
G
r
e
e
d
y
\epsilon-Greedy
??Greedy探索环境产生经验。优化过程中,行为策略与目标策略都进行优化,共享Q。
Q-learning具体流程:
对Q-learning 进行逐步拆解,Q-learning与 Sarsa 唯一不一样的就是并不需要提前知道
A
2
A_2
A2? ,就能更新
Q
(
S
1
,
A
1
)
Q(S_1, A_1)
Q(S1?,A1?) 。在一个回合的训练当中,Q 学习在学习之前也不需要获取下一个动作
A
′
A'
A′,它只需要前面的
(
S
,
A
,
R
,
S
′
)
(S, A, R, S')
(S,A,R,S′) ,而Sarsa需要到达
S
′
S'
S′状态后采用策略选择动作
A
′
A'
A′后才能得到
Q
(
S
′
,
A
′
)
Q(S',A')
Q(S′,A′)进行更新。
Sarsa结果是Safe path,而Q-learning的结果是optimal path,原因是Sarsa采用的 ? ? G r e e d y \epsilon-Greedy ??Greedy策略,需要兼顾探索与利用,因此在训练时比较胆小,尽可能远离悬崖,而Q-learning将行为策略与目标策略进行分离,能够大胆探索环境,得到最最优解。
针对TD与DP进行比较,sarsa相当于采用贝尔曼期望方程进行迭代,而Q-learning采用贝尔曼最优方程进行迭代。