有效跟踪(Eligibility traces)是强化学习的基本机制之一。例如,TD(λ)算法,λ引用了有效跟踪。

        几乎任何的时间差分(TD)方法,如Q-learning或Sarsa,都可以与有效跟踪相结合,以获得更通用的方法,从而提高学习效率。

        有效跟踪与TD和MC方法进行统一和概括。有效跟踪提供了一种在线实现蒙特卡罗方法的方法,以及在没有episodes的情况下实现连续问题的方法。还提供了一种简练的算法机制,具有显著的计算优势。该机制是一个短期记忆向量,有效跟踪 etRne _t \in \R^n,与长期的权向量 θtRn\theta _t \in \R^n 并存。

 


1、The λ-return

        第7章中,定义了 n-step 版本的回报,即前n个奖励的总和加上n步中达到的状态的估计值,每一步都进行了适当的折现:
12、Eligibility Traces
        TD(λ)算法可以被理解为平均n-step备份的方式。这种平均包含所有n-step备份,每个权重成正比λn1\lambda^{n-1},其中λ∈[0,1],和归一化因子为1−λ,确保权重之和为1(见下图)。

12、Eligibility Traces

由此产生的备份形成回报,称为λ-return,定义为:
12、Eligibility Traces
下图进一步说明了在 λ-return 中 n-step 回报序列下的权重。

12、Eligibility Traces

到达一个终止状态后,所有 n-step 回报的都等于 GtG_t,我们可以把终止后的那项从总和里分离:
12、Eligibility Traces


off-line λ-return algorithm:

        作为一种离线算法,它在整个过程中不改变权向量。然后,在episode的最后,根据我们通常使用的半梯度规则,使用λ-return作为目标,进行了一系列离线更新:
12、Eligibility Traces
这是一种前向学习算法:通过展望未来的奖励和状态来决定如何更新每个状态。

12、Eligibility Traces

 


2、TD(λ)

TD(λ)是第一个使用eligibility traces的算法,有三方面的优势:

  1. 它会在每一集的每一步更新权重向量,而不仅仅是在最后,因此它的估计可能会更好。
  2. 它的计算在时间上是均匀分布的,而不是在这一集的结尾。
  3. 它可以应用于 continuing 问题,而不仅仅是 episodic 问题。

在TD(λ)中,eligibility trace 向量开始时初始化为零,在每个时间步通过梯度值进行增加,然后通过γλ\gamma\lambda逐渐消退:
12、Eligibility Traces
状态值预测的 TD error:
12、Eligibility Traces
权重向量的更新:
12、Eligibility Traces
12、Eligibility Traces

 
向后图:每个更新都依赖于当前 TD error 和过去的 eligibility traces。
 

12、Eligibility Traces
 


3、An On-line Forward View

        off-line λ-return algorithm 的主要缺点是 off-line:在这一集结束之前,它什么也学不到。这是由于它的前视图,它只在事件完成时定义一个目标。为了在整个过程中改变权重,只能使用当时的信息。

        如何实现 online forward view algorithm?

        答案是,使用 h-truncated λ-return。
12、Eligibility Traces
θth\theta^h_t 表示在范围 h 的序列中用于在时间 t 处生成值函数的权重。每个序列的第一个权重向量继承自上一个episode的权重。

前3次序列的更新:
12、Eligibility Traces
一般形式(online λ-return algorithm):
12、Eligibility Traces
12、Eligibility Traces
online λ-return algorithm 在每个episode期间每个时间步 t 上完全在线、确定一个新的权向量 θt ,并且仅使用在时间 t 的信息。主要缺点是计算复杂

 


4、True Online TD(λ)

线性函数近似中使用online λ-return 算法 —— True Online TD(λ)

通过 on-line λ-return 算法产生的权重向量的序列可以排成一个三角形:
12、Eligibility Traces
只有对角线上的权重向量 θtt\theta^t_t 需要由算法生成。第一个 θ00\theta^0_0 是输入,最后一个 θTT\theta^T_T 是输出,中间的每个权重向量 θtt\theta^t_t 在 n-step 回报的更新中起引导性作用。算法最后把对角线上的权重向量重命名为 θtθtt\theta_t \doteq \theta^t_t 。然后,策略是找到一种紧凑、高效的方法计算每个 θtt\theta^t_t

对于线性情况:
12、Eligibility Traces
the true online TD(λ) algorithm:
12、Eligibility Traces
其中,
12、Eligibility Traces
12、Eligibility Traces

12、Eligibility Traces

相关文章: