\(TD(\lambda)\)是统一蒙特卡洛算法(MC)和时序差分算法(TD)的第二种形式。第一种形式也就是 \(TD(n)\) 算法。具体来说, \(TD(n)\) 的公式可以写为:
\[\begin{equation} \begin{aligned} G_{t:t+1} &= R_{t+1} + \gamma V(S_{t+1})\\ G_{t:t+n} &= R_{t+1} + \gamma G_{t+1:t+n} \\&=\sum_{i=1}^{n} \gamma^{i-1}R_{t+i} + \gamma^n V(S_{t+n}) \\ &=R_{t+1} + \gamma R_{t+2} + \gamma^2R_{t+3} + ... + \gamma^{n-2}R_{t + n - 1} + \gamma^{n-1} R_{t+n} + \gamma^{n}V(S_{t+n}) \end{aligned} \end{equation} \]在 \(TD(n)\) 中,有 \(n \in [1, +\infty)\) 当 \(n = 1\) 时, \(TD(n)\) 算法退化为 TD算法。当 \(n \to +\infty\) 时, \(TD(n)\) 退化为 MC算法。
一、\(\lambda-return\) 算法
在 \(TD(n)\) 算法中,我们把 t 时刻的回报看作是 t 时刻对应状态走n步之后的回报值,也就是
\[G_t = G_{t:t+n} \]但是在 \(TD(\lambda)\) 中,我们把最终回报看作是每一步回报的加权值,每一步的加权值为 \(\lambda^{n-1}\) 其中 \(\lambda \in [0, 1]\) 。但是为了保证最终的加权和为1,我们会再乘上 \(1 -\lambda\) 写成公式就是:
\[\begin{equation} G_t^{\lambda} = (1-\lambda)\sum_{n=1}^{\infty} \lambda^{n-1}G_{t:t+n}\end{equation} \]在公式(2)中,我们假设走了无限多步,也就是 \(n \to \infty\)。,但是这是不可能的。实际上,如果智能体走了 T 步之后结束回合,公式(2)可以被重写为:
\[\begin{equation} G_t^{\lambda} = (1-\lambda)\sum_{n=1}^{T-t-1} \lambda^{n-1}G_{t:t+n} + \lambda ^ {T-t-1}G_t \end{equation} \]在公式(3)中,当 \(\lambda = 1\) 时, \(G_t^{\lambda} = G_t\), \(\lambda-return\) 算法退化为 蒙特卡洛算法。当 \(\lambda = 0\) 时, \(G_t^{\lambda} = G_{t:t+1}\),此时, \(\lambda-return\) 算法退化为 \(TD\) 算法
二、\(TD(\lambda)\) 算法
\(\lambda-return\) 算法和 \(TD(n)\) 算法在计算某个状态的回报的时候,都需要先知道未来状态的回报,才可以知道当前状态的回报。这也被看作是一种前向视图。
但是实际上,我们没有利用到达当前状态的历史状态的相关信息。这些历史状态信息也被称为后向视图
\(TD(\lambda)\) 就是第一种同时利用了前向视图和后向视图的强化学习算法。
在 \(TD(\lambda)\) 种利用后向视图的方法叫做资格迹。在 \(TD(\lambda)\) 中,资格迹一开始被初始化为0。智能体每走一步,资格迹会累加价值函数的梯度并以 \(\gamma \lambda\) 的大小衰减。写成公式就是:
\[\begin{equation} \begin{aligned} z_{-1} &= 0 \\ z_t &=\gamma\lambda z_{t-1} + \nabla V(S_t, \theta_t) \end{aligned} \end{equation} \]公式(4)中的 \(\theta_{t}\) 是价值网络的参数。
在更新价值网络时,假设时序差分误差 \(\delta_t = R_{t+1} + \gamma V(S_(t+1),\theta_t) - V(S_t,\theta_t)\),则更新价值网络公式为:
\[\theta_{t+1} = \theta_t + \alpha z_t \delta_t \]可以看到,资格迹衡量了历史信息的价值大小。当遇到一个重要事件的时候, \(\nabla V(S_t,\theta_t)\) 的值变大,使得 \(z_t\) 的值变大,就增加了当前状态在历史状态中的权重并影响了更新参数 \(\theta_t\) 的大小。
标签:equation,算法,theta,TD,gamma,lambda From: https://www.cnblogs.com/usersname/p/18663967