本文是博主对《Reinforcement Learning- An introduction》的阅读笔记,不涉及内容的翻译,主要为个人的理解和思考。
TD学习是现代强化学习方法的核心,其是蒙特卡罗法和动态规划法的结合,一方面,其同蒙特卡罗法一样,不需要对于环境完全了解,而是通过从环境交互中学习,另一方面,其类似于动态规划法,根据前一轮的估计中去更新新一轮的估计,而不需要像蒙特卡罗法通过最终的reward来估计更新。可以看出TD学习仍然是类似于generalized policy iteration (GPI) 过程,相比于蒙特卡罗法和动态规划法,其核心不同点在于价值函数的估计。
1. TD学习的预估
首先我们考虑上一节所讨论的蒙特卡罗法的价值估计函数,将其改下为如下迭代更新过程,即新一轮的估计通过前一轮的估计去更新。此时如果更新因子设置为固定时,称为固定步长的MC方法。
此时再考虑动态规划中求解累积收益G的公式,此时表示下一状态和动作,表示reward
此时迭代更新的公式可以改写为
其中表示最优决策下,这个是不可知的,因此我们只能用当前已知的来求解。因此这个之间会存在一定偏差。但是我们可以推出当时,这个偏差是可以收敛的。假设,此时偏差可以写为:
特别是当更新因子设置为较少的值时,这个偏差是近似的,理论证明可以收敛到最优的决策函数。
TD学习其结合了动态规划和蒙特卡罗的优点,一方面其不需要对环境建模,另一方面其不需要像蒙特卡罗法一样,需要等待完整采样一轮样本,因此对于一些一轮时间太长或者成本太高的情况下,采用TD学习能加快学习。
我们完整描述上述的TD学习方法的初始版本,也称之为Sarsa (on-policy TD control)
2. Off-policy
在上一节我们对于累积收益G的估计是真实下一轮状态和动作确定的,这种方式称为on-policy策略,实际上我们可以参考上一章中off-policy策略,不采用下一轮真实状态,而根据现有价值函数预估一个状态和动作,一种直观的方式是,这种方式也被称为Q-learning。
但是取max会带来所谓的Maximization Bias,其是因为取argmax的值往往会大于其实际期望值,即:
因此一方式是不取最大值,而是取期望,即所谓的Expected Sarsa方法,其相较于前者,可以更好地消除随机选择动作所带来的方差,因此会有更为稳定的效果,但同时求期望也增加了计算成本
还有一种方式称为Double Q-learning,其认为Maximization Bias主要是由于分布所带来(有大于期望概率,必然会有小于期望的概率),因为其通过两个独立的Q分布来扭正这个偏差。