【问题标题】:How to understand Watkins's Q(λ) learning algorithm in Sutton&Barto's RL book?如何理解 Sutton&Barto 的 RL 书中 Watkins 的 Q(λ) 学习算法?
【发布时间】:2016-12-01 06:53:26
【问题描述】:

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

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

那么,这里有错误吗?

【问题讨论】:

    标签: reinforcement-learning q-learning


    【解决方案1】:

    资格跟踪的想法是仅将功劳或归咎于合格的状态-动作对。 Sutton & Barto 的书很好地说明了这个想法: Backward view of eligibility traces

    在 Watkin 的 Q(λ) 算法中,如果您以确定性的方式遵循您的策略 Q(始终选择最佳操作),您希望将功劳归于您实际访问过的状态-操作对。

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

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

    因为 a' 被选为 epsilon 贪心,所以您有一点机会(以概率 epsilon)采取探索性随机步骤而不是贪心步骤。在这种情况下,整个资格跟踪设置为零,因为将功劳归咎于之前访问过的状态-动作对是没有意义的。您在随机探索步骤之前访问的状态-动作对不应该为未来的奖励提供任何功劳/责备,因此您删除了整个资格跟踪。在之后的时间步骤中,您开始构建新的资格跟踪...

    希望有所帮助。

    【讨论】:

    • 我认为值得解释一下这里与例如SARSA(不重置资格跟踪)是 Q(λ) 是一种离策略算法。所以 Q 表是 $q_*$ 的估计值,而不是 $q_{\pi}$。
    【解决方案2】:

    在我一步步写完这个过程后,我现在可以理解了。在 a'!=a* 之后,所有 e(s,a) 的迹线都设置为 0,但在下一步中 e(s',a') 已再次设置为 1(此处为第 9 行)。在这里查看我的理解细节

    【讨论】:

      猜你喜欢
      • 2017-03-01
      • 1970-01-01
      • 2021-01-08
      • 1970-01-01
      • 1970-01-01
      • 2015-03-17
      • 1970-01-01
      • 2017-02-12
      • 2018-03-07
      相关资源
      最近更新 更多