【问题标题】:Eligibility trace algorithm, the update order资格跟踪算法,更新顺序
【发布时间】:2019-03-19 09:01:15
【问题描述】:

我正在阅读Silver et al (2012) "Temporal-Difference Search in Computer Go",并试图了解资格跟踪算法的更新顺序。 在论文的算法 1 和 2 中,在更新资格跟踪之前更新了权重。我想知道这个顺序是否正确(算法 1 的第 11 和 12 行,以及算法 2 的第 12 和 13 行)。 考虑lambda=0 的极端情况,参数不会使用初始状态-动作对更新(因为e 仍然为0)。所以我怀疑这个顺序可能应该是相反的。

有人可以澄清一下吗?

我觉得这篇论文对学习强化学习领域很有指导意义,所以想详细了解一下这篇论文。

如果有更合适的平台问这个问题,也请告诉我。

【问题讨论】:

  • 供以后参考;像这样的问题可能更适合 ai.stackexchange.com 而不是 StackOverflow。我们还支持那里的问题/答案中的正确数学!

标签: algorithm machine-learning reinforcement-learning sarsa monte-carlo-tree-search


【解决方案1】:

在我看来你是对的,e 应该更新之前 theta。根据论文中的数学计算,这也是应该发生的。例如,请参见等式 (7) 和 (8),其中首先使用 phi(s_t) 计算 e_t,然后仅使用 delta V_t 更新 theta(在控制情况下为 delta Q) .

请注意,您所写的关于lambda=0 的极端情况并不完全正确。初始状态-动作对仍将参与更新(不是在第一次迭代中,但它们将在第二次迭代中合并到 e 中)。然而,在我看来,第一个奖励r 永远不会在任何更新中使用(因为它只出现在第一次迭代中,其中e 仍然是0)。由于这篇论文是关于 Go 的,我怀疑这无关紧要。除非他们在做一些非常规的事情,否则他们可能只对终端游戏状态使用非零奖励。

【讨论】:

  • 感谢您的回答,以及ai.stackexchange.com的建议。你关于我的案子的观点也有道理。
猜你喜欢
  • 2019-07-26
  • 2020-08-23
  • 1970-01-01
  • 1970-01-01
  • 2012-09-02
  • 2012-10-09
  • 1970-01-01
  • 2015-08-07
  • 1970-01-01
相关资源
最近更新 更多