答案 0 :(得分:1)
就像你已经说过的那样,zeta代表了资格痕迹。这可以直观地理解为包含“在所有先前时间步骤中遇到的所有状态 - 动作特征向量的衰减混合”。这是我们之前看到的一些事情,因此我们现在应该给予奖励以获得奖励。
更正式地说,如果你想在RL算法中编写增量实现(计算时间均匀分布在所有时间步长上),那么这只是需要的东西,当以更简单/明显/天真的方式编写时,只能以非增量方式实现,因为它们具有需要来自您的剧集中所有时间步的信息的更新规则(例如,lambda-returns / Monte Carlo返回)。这可能听起来相当复杂,但最好坚持直观的解释。
至于它在C ++中的外观,是的,几乎是双打的载体。图像中第一行代码之前的“z \in R^d
”就意味着它,它是实数的d
- 维向量(C ++中的双精度或浮点数),其中d
是状态 - 动作特征向量的维度(phi
)。
您还可以通过将其添加到其他d
维向量(d
和{{1在伪代码中的其他几个地方。如果zeta本身也是phi
维向量,那么只能在数学上正确地解决这个问题。