资格跟踪算法,更新顺序
Eligibility trace algorithm, the update order
我正在阅读 Silver et al (2012) "Temporal-Difference Search in Computer Go",并试图了解资格跟踪算法的更新顺序。
在论文的算法 1 和算法 2 中,权重在更新资格轨迹之前被更新。我想知道这个顺序是否正确(算法 1 中的第 11 和 12 行,以及算法 2 中的第 12 和 13 行)。
考虑 lambda=0
的极端情况,参数不会用初始状态-动作对更新(因为 e
仍然是 0)。所以我怀疑顺序可能应该是相反的。
有人能澄清一下吗?
我觉得这篇论文对学习强化学习领域很有指导意义,所以想详细了解这篇论文。
如果有更合适的平台问这个问题,也请告诉我。
在我看来你是对的,e
应该在 theta
之前更新。根据论文中的数学计算,这也是应该发生的情况。例如,参见等式 (7) 和 (8),其中 e_t
首先使用 phi(s_t)
计算,然后 theta
使用 delta V_t
更新(这将是delta Q
在控制案例中)。
请注意,您使用 lambda=0
写的关于极端情况的内容并不完全正确。初始状态-动作对仍将参与更新(不是在第一次迭代中,但它们将在第二次迭代期间合并到 e
中)。然而,在我看来,第一个奖励 r
永远不会在任何更新中使用(因为它只出现在第一个迭代中,其中 e
仍然是 0
)。由于这篇论文是关于 Go 的,所以我想这无关紧要;除非他们在做一些非常规的事情,否则他们可能只对终端游戏状态使用非零奖励。
我正在阅读 Silver et al (2012) "Temporal-Difference Search in Computer Go",并试图了解资格跟踪算法的更新顺序。
在论文的算法 1 和算法 2 中,权重在更新资格轨迹之前被更新。我想知道这个顺序是否正确(算法 1 中的第 11 和 12 行,以及算法 2 中的第 12 和 13 行)。
考虑 lambda=0
的极端情况,参数不会用初始状态-动作对更新(因为 e
仍然是 0)。所以我怀疑顺序可能应该是相反的。
有人能澄清一下吗?
我觉得这篇论文对学习强化学习领域很有指导意义,所以想详细了解这篇论文。
如果有更合适的平台问这个问题,也请告诉我。
在我看来你是对的,e
应该在 theta
之前更新。根据论文中的数学计算,这也是应该发生的情况。例如,参见等式 (7) 和 (8),其中 e_t
首先使用 phi(s_t)
计算,然后 theta
使用 delta V_t
更新(这将是delta Q
在控制案例中)。
请注意,您使用 lambda=0
写的关于极端情况的内容并不完全正确。初始状态-动作对仍将参与更新(不是在第一次迭代中,但它们将在第二次迭代期间合并到 e
中)。然而,在我看来,第一个奖励 r
永远不会在任何更新中使用(因为它只出现在第一个迭代中,其中 e
仍然是 0
)。由于这篇论文是关于 Go 的,所以我想这无关紧要;除非他们在做一些非常规的事情,否则他们可能只对终端游戏状态使用非零奖励。