Actor crtic算法的思路,流程如下图所示

                                            策略梯度之---actor critic

 

 

actor critic算法伪代码如下图所示

其中,critic使用基于值函数近似的方法,近似函数为线性函数,参数为w  ,策略梯度之---actor critic为TD error

                                                              策略梯度之---actor critic

根据DQN中的参数更新公式策略梯度之---actor critic

所以有critic的参数更新公式如下图倒数第四行表示

actor使用策略网络,参数为策略梯度之---actor critic,根据策略梯度公式

                                                  策略梯度之---actor critic 

注意!!!!!!AC算法中,actor使用的策略网络 更新参数公式中的Q是critic中近似函数估计出来的Q值,即actor更新参数中的Q,并不是原始策略梯度公式中的Q(基于自己的策略网络的Q)

我想 这一步就是“actor以critic的打分作为自己的行为准则”的体现

还需要注意一点的是,AC算法的顺序很重要,因为更新actor的参数策略梯度之---actor critic时,需要用到critic值函数近似的参数w,所以先更新actor的参数,再更新w

                                            策略梯度之---actor critic

 

因为actor更新策略参数时,用的value function并不是真实的Q值,所以会有一定的bias,但如果用真实无BiasQ值,采用蒙特卡洛回合更新的思路,则又回到了REINFORCE算法。AC算法中虽然有可能存在bias的地方,但是可以单步更新策略网络的参数,而无需等到回合结束

 

相关文章:

  • 2021-07-16
  • 2022-01-02
  • 2021-12-01
  • 2022-12-23
  • 2021-10-28
  • 2021-08-15
  • 2021-10-08
  • 2021-05-23
猜你喜欢
  • 2021-05-22
  • 2021-11-29
  • 2021-12-19
  • 2021-05-05
  • 2021-05-31
  • 2021-06-06
相关资源
相似解决方案