如何在Sutton& Barto的RL书中理解Watkins的Q(λ)学习算法?

时间:2016-11-29 09:47:40

标签: reinforcement-learning q-learning

在Sutton& Barto的RL书(link)中,Watkins的Q(λ)学习算法如图7.14所示: enter image description here 第10行“对于所有s,a:”,这里的“s,a”适用于所有(s,a),而第8行和第9行中的(s,a)用于当前(s,a)这是对的吗?

在第12行和第13行中,当'!= a *,执行第13行时,所有e(s,a)都将设置为0,那么当设置所有资格跟踪时,资格跟踪的重点是什么到0,因为情况'!= a *会经常发生。即使情况'!= a *不经常发生,但一旦发生,资格跟踪的含义将完全失败,那么Q将不会再次更新,因为所有的e(s,a)= 0,然后在每次更新时,如果使用替换迹线,e(s,a)仍将为0。

那么,这是一个错误吗?

2 个答案:

答案 0 :(得分:6)

资格痕迹的想法是仅对符合条件的州 - 行动对给予信任或指责。 Sutton& Sons的这本书。巴托有一个很好的例子: Backward view of eligibility traces

在Watkin的Q(λ)算法中,如果您以确定的方式遵循策略Q(总是选择最佳动作),您希望对实际访问过的状态 - 动作对给予信任/责备。< / p>

所以问题的答案在第5行:

Choose a' from s' using policy derived from Q (e.g. epsilon-greedy)

因为'选择epsilon贪婪,有一点机会(概率为epsilon)你采取探索性随机步骤而不是贪婪步骤。在这种情况下,整个资格跟踪被设置为零,因为将信用/责任归咎于之前访问过的状态 - 动作对是没有意义的。您在随机探索步骤之前访问过的州 - 行动对不值得信任/责备未来的奖励,因此您删除了整个资格跟踪。在之后的时间步骤中,您开始建立新的资格跟踪......

希望有所帮助。

答案 1 :(得分:0)

在我逐步编写此流程后,我现在可以理解了。在&#39;!= a *之后,所有e(s,a)的轨迹都设置为0,但是e(s&#39;,a&#39;)在下一步中再次设置为1(第9行)。看到我在这里的理解细节

step by step