接下来我们回顾一下动态规划算法(DP)和蒙特卡罗方法(MC)的特点,对于动态规划算法有如下特性:
- 需要环境模型,即状态转移概率
- 状态值函数的估计是自举的(bootstrapping),即当前状态值函数的更新依赖于已知的其他状态值函数。
相对的,蒙特卡罗方法的特点则有:
- 可以从经验中学习不需要环境模型
- 状态值函数的估计是相互独立的
- 只能用于episode tasks
而我们希望的算法是这样的:
- 不需要环境模型
- 它不局限于episode task,可以用于连续的任务
本文介绍的时间差分学习(Temporal-Difference learning, TD learning)正是具备了上述特性的算法,它结合了DP和MC,并兼具两种算法的优点。
TD Learing思想
在介绍TD learning之前,我们先引入如下简单的蒙特卡罗算法,我们称为constant- MC,它的状态值函数更新公式如下:


























其中
























现在我们将公式修改如下,把换成
,就得到了TD(0)的状态值函数更新公式:












