Background

本书前面的部分主要讲的都是学习价值函数的方法,这里提出一种直接学习策略的方法,这里把策略记作一个带有参数的,即

Advantage

优点之一是可以学习一个确定性的算法而不像 - greedy 的策略那样每次都有一个较小的概率选择非最优解。同时,基于价值函数学习的方法里面如何选择初始值和如何进行递降都是需要考虑的问题。

Policy Gradient

在直接学习策略的时候,正确地更新参数 是十分重要的,所以需要想办法求出评估量对于 的梯度,此处定义:

对于分幕式任务,在经过推导(RLBook2020 P325)后,得到:

这里虽然只找出了正比关系,但是在梯度下降的时候,只关注梯度的方向,并不关心梯度真正的值是多少

Monte Carlo Policy Gradient

根据上面的式子,写成期望的形式:

那么就可以得出梯度下降的公式:

其中 是对于真实动作价值函数的逼近。上面的公式成为 all-actions methods 因为它包含了该状态所有可能的动作 下面介绍另一种强化学习版本的。


这里的 是依据策略 时刻采样出一个动作,第一个等号相等的原因是因为,这里求的是期望,在采样出一个动作之后,应该是求期望的期望,就是期望。

所以这里的更新公式就变成了:

这里还有一个小 trick 因为我们知道对数函数的梯度是自己的倒数,即 所以上面的那个式子可以写成:

这样可以得到一个算法:

REINFORCE with Baseline

首先,和前面的 Tabular Solution Methods 里面使用的技巧是一样的,由于

所以可以改变式 为:

这样不会改变梯度的方向,这个时候,我们选择使用 来占掉 的位置,同时更新价值函数和策略,算法如图:

Actor–Critic Methods

这个方法和前面的方法非常类似,只是这个方法不需要等到整个Episode运行结束再进行更新,这两者之间的差别和TD和蒙特卡洛方法很类似,即: