文章目录
1 Actor-Critic
Advantage Actor-Critic:A2C
Asynchronous Advantage Actor-Critic:A3C
1.1 前言
由于Actor与Env互动本身就具有随机性,因此 G t n G_t^n Gtn是非常不稳定的,即为一个随机数。
每次采样得到的G可能都有差异,训练不稳定:
那么,为了让训练变得稳定,可以直接估测G的期望值代替采样的得到的G。
这就需要用到value-base的方法(如Q-learning):
1.2 Actor-Critic
Q π θ ( s t n , a t n ) Q^{\pi_{\theta}}(s^n_t,a^n_t) Qπθ(stn,atn):在某一state s t n s_t^n stn采取某一acton a t n a_t^n atn,在pilicy π θ \pi_{\theta} πθ下,得到的累计奖励Reward期望值。
V π θ ( s t n ) V^{\pi_{\theta}}(s_t^n) Vπθ(stn)为 Q π θ ( s t n , a t n ) Q^{\pi_{\theta}}(s^n_t,a^n_t) Qπθ(stn,atn)的期望值,所得两者相减就是有正有负的。
1.3 Advantage Actor-Critic
如何只用一个network:
Q用V表示
由于 r t n r_t^n rtn和 V π ( s t + 1 n ) V^{\pi}(s_{t+1}^n) Vπ(st+1n)是随机的,所以要取期望。而在这里,把期望值去掉。
这样就只需要estimate state value V V V了,但因为去掉期望,所以会引入随机数 r t n r_t^n rtn:
但是 r r r方差相对于原来 G G G更小。因为 r r r是某一个state得到的reward,而 G G G则是累加的reward,故这样也是合理的。(原论文是使用这个结果最好)
上式子就称为Advantage function
工作流程
Tip1 actor和critic共享网络层
1.4 Asynchronous Advantage Actor-Critic(A3C)
增加训练速度
鸣人使用多个影分身搓丸子修行。
![]() |
![]() |
worker相当于鸣人的影分身
1.5 Pathwise Derivative Policy Gradient(PDPG)
Q-learning解continuous动作的方法,一种特别的actor-critic方法
一般的actor-critic,critic只会告诉actor好与不好
而Pathwise Derivative Policy Gradient还会告诉actor采取什么样的动作才是好的
训练一个actor来为Q-learning生成acton,来解决argmax不好解出的连续性动作这一问题。
类比生成对抗网络GAN:Q就是判别器;Actor就是生成器。Q是先经过预训练再fix的。
Q-learning | PDPG |
---|---|
![]() |
![]() |
李宏毅的强化学习课程