强化学习导论 第六章 瞬时时间差分法

强化学习:瞬时时间差分法详解
本文介绍了强化学习中的Temporal-Difference (TD) 方法,它综合了蒙特卡洛算法和动态规划(DP)的特点。TD方法在不需环境模型的情况下,通过即时奖励信息和先前估计值进行更新,实现预测(prediction)和控制(control)过程。相较于DP,TD不需要环境模型,比蒙特卡洛更高效,因为它不需要等待episode结束即可更新。文章通过TD(0)算法的伪代码和比较分析,阐述了TD方法的优势和在不同更新规则下的表现,并探讨了适用于不同任务类型的TD控制算法,如Sarsa和Q-learning。

这一次开第六章,Temporal-Difference 方法,简称TD,可以翻译为瞬时差分法。

TD方法在强化学习算法中有很重要的地位,因为它是一个集大成的算法。TD综合了第五章所说的蒙特卡洛算法和第四章所说的DP算法的特点,既可以从真实经验序列学习,无需环境模型,又可以根据已得到的估计值来更新新的估计值(bootstrap)。这是目前我们需要在脑海中构建的关于TD的一个基本特征。

但是虽然TD综合了蒙特卡洛和DP的特点,终归也有区别。区别在哪?区别在于policy evaluation(也叫做prediction)的过程,也就是根据某一个policy \pi不断更新其对应的value function v_\pi的过程。熟悉前面内容的读者们肯定知道,policy evaluation之后还有一个policy improvement(也叫做control)过程,在这个过程中,TD、monte carlo、DP则没有太大的区别,都是采取基于generalized policy iteration (GPI) 的一些变体。因此,我们接下来重点关注它们在policy evaluation过程的区别。

6.1 TD Prediction

我们先来比较一下TD prediction过程和蒙特卡洛 prediction过程的区别:

首先上一个公式:V(S_t)\leftarrow V(S_t) + \alpha [G_t-V(S_t)]

上式体现了蒙特卡洛算法的value更新规则,我们叫做constant-\alpha 蒙特卡洛算法。这里我们暂且不考虑多个episode之后的平均化操作,仅就一个episode来说,里面出现的每一个S_t对应的value,需要根据这个episode彻底结束之后得到的G_t来更新,注意这里的重点是“等待episode结束”。

再来看TD的更新规则公式(具体应该是TD(0)算法,TD类算法中的其中一种:

V(S_t)\leftarrow V(S_t)+\alpha [R_{t+1}+\gamma V(S_{t+1})-V(S_t)]

找不同,发现前面的G_t被换成了R_{t+1}+\gamma V(S_{t+1}),这就是区别所在。也就是说,TD算法“不等到episode结束”,而是在下一个时间点,就拿刚刚得到的reward信息和之前V(S_{t+1})的estimate来更新V(S_t)了。敏感的读者在这里好像还会嗅到一丝DP的含义:拿之前的估计值作为基准,估计新的值,是不是bootstrap!也是DP最大的一个特点。这就是为什么说TD综合了蒙特卡洛和DP的特点。

为了更好地说明,再来一个公式:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值