这里策略梯度算法特指蒙特卡洛策略梯度算法,即?REINFORCE?算法。 相比于?DQN?之类的基于价值的算法,策略梯度算法有以下优点。
?但同样的,策略梯度算法也有其缺点。
结合了策略梯度和值函数的?Actor-Critic?算法则能同时兼顾两者的优点,并且甚至能缓解两种方法都很难解决的高方差问题。
Q:为什么各自都有高方差的问题,结合了之后反而缓解了这个问题呢?
A:策略梯度算法是因为直接对策略参数化,相当于既要利用策略去与环境交互采样,又要利用采样去估计策略梯度,而基于价值的算法也是需要与环境交互采样来估计值函数的,因此也会有高方差的问题。
?而结合之后呢,Actor?部分还是负责估计策略梯度和采样,但?Critic?即原来的值函数部分就不需要采样而只负责估计值函数了,并且由于它估计的值函数指的是策略函数的值,相当于带来了一个更稳定的估计,来指导?Actor?的更新,反而能够缓解策略梯度估计带来的方差。
如图?10.1?所示,我们通常将?Actor?和?Critic?分别用两个模块来表示,即图中的策略函数(?Policy?)和价值函数(?Value Function?)。Actor与环境交互采样,然后将采样的轨迹输入?Critic?网络,Critic?网络估计出当前状态-动作对的价值,然后再将这个价值作为?Actor?网络的梯度更新的依据,这也是所有?Actor-Critic?算法的基本通用架构
未完待续