前言
这篇文章介绍了Q(lambda)算法。资格迹这类算法网上有很多资料,但大都是sutton书里的,看完往往不知道怎么结合到深度里,特别是TD(lambda)。这篇文章里有一些化简得到的公式,借助它们可以方便地在深度里实现TD(lambda)和Q(lambda)。此博客也相当于在介绍资格迹。
此文章作者2014年在researchgate上传了一个,相比1996年的内容略有出入,本文结合了两篇并对部分证明进行了补充
T D ( λ ) TD(\lambda) TD(λ)
T D ( λ ) TD(\lambda) TD(λ) return估计过程被广泛用于actor-critic。参数 λ \lambda λ被用于在动作序列上分配信度,加快学习,也有助于减轻粗糙的状态空间量化的非马尔可夫效应。
基于直接动态规划的强化学习算法基于根据经历的状态转移的状态值或状态动作值的更新。每个此类更新又基于对要更新值的估计器特定选择的使用,这也阐明了各种学习方法之间的差异。
这里使用 x t x_t xt表示时间步 t t t的状态, r t r_t rt是执行动作 a t a_t at的到的奖赏,带折扣的return为:
r t = r t + γ r t + 1 + ⋯ + γ n r t + n + ⋯ \bm{r}_t=r_t+\gamma r_{t+1}+\cdots+\gamma^n r_{t+n}+\cdots rt=rt+γrt+1+⋯+γnrt+n+⋯
状态值 V π ( x ) V^{\pi}(x) Vπ(x)就是从状态 x x x开始根据策略 π \pi π执行动作的期望return。策略最优时,使用 V ∗ V^* V∗标记。
T D ( λ ) TD(\lambda) TD(λ)估计器就是一种给定策略估计V值的方法。 r t ( n ) \bm{r}_t^{(n)} rt(n)表示修正的n-step截断的return:
r t ( n ) = r t + γ r t + 1 + ⋯ + γ n − 1 r t + n − 1 + γ n V ^ t + n π ( x t + n ) \bm{r}_t^{(n)}=r_t+\gamma r_{t+1}+\cdots+\gamma^{n-1}r_{t+n-1}+\gamma^n\hat{V}^{\pi}_{t+n}(x_{t+n}) rt(n)=rt+γrt+1+⋯+γn−1rt+n−1+γnV^t+nπ(xt+n)
其中 V ^ t π \hat{V}^{\pi}_{t}