我正在研究programming assignment from David Silver's RL course(在看完他所有的10篇讲座之后),现在正试图实现Sarsa(λ)。
虽然Sarsa的常规版本和前视图版本对我来说似乎很清楚,但我很难在后视图Sarsa中的更新机制背后获得一些直觉。根据这张幻灯片(摘自David Silver的演讲),我们使用最近的状态和动作来计算误差项(),然后我们更新此情节中所有过去的状态-动作对的所有Q值:
Backward-view Sarsa(λ) pseudocode
朝最新的TD错误的方向更新所有过去的状态/动作对(在给定情节中)的背后的逻辑是什么?如果他们错了,但方向相反,该怎么办?例如,如果我们正在玩游戏,并且在某个时间点我们应该上升然后下降以越过障碍物,那么算法在某个时间点是否不会尝试朝该方向更新“向上”动作行动“?