RL-03-09-算法-Actor-Critic

← 上级:RL-03.算法分类与选型 · 前置:RL-03-08-算法-Policy-Gradient · 后续:RL-03-10-算法-TRPO

Actor-Critic 结合策略梯度(Actor)与价值估计(Critic):Actor 选动作,Critic 评估好坏,用优势 $A(s,a)$ 替代原始回报 $G_t$,降方差、支持每步更新

段末注释:Actor-Critic 指策略网络(Actor)与价值网络(Critic)联合训练的 RL 架构;后文沿用该名称。


一、架构

组件 参数 作用
Actor $\theta$ $\pi_\theta(a
Critic $\phi$ $V_\phi(s)$ 或 $Q_\phi(s,a)$,评估状态/动作价值

更新方向:

$$
\theta \leftarrow \theta + \alpha_\theta \nabla_\theta \log \pi_\theta(a|s) \cdot \hat{A}(s,a)
$$

$$
\phi \leftarrow \phi - \alpha_\phi \nabla_\phi \mathcal{L}^{VF}
$$


二、优势函数

$$
A^\pi(s,a) = Q^\pi(s,a) - V^\pi(s)
$$

含义:在 $s$ 选 $a$ 比「按 $\pi$ 平均」好多少。

估计方式:

方法 公式
TD 残差 $\hat{A}_t = r + \gamma V(s’) - V(s)$
GAE PPO 篇
$Q-V$ $\hat{A} = Q(s,a) - V(s)$(SAC 等)

三、A2C 与 A3C

A2C(Advantage Actor-Critic)

  • 同步:多个环境并行采样,汇总梯度一次更新
  • 实现简单,现代 GPU 上常优于 A3C

A3C(Asynchronous Advantage Actor-Critic)

  • 多线程各自交互,异步更新全局网络
  • 历史意义:无 GPU 大规模并行时的样本多样性

二者核心 loss 与 PPO 类似(无 clip),常作理解 PPO 的阶梯。


四、Critic 类型

Critic Actor 梯度 代表
$V(s)$ TD 优势 A2C、PPO
$Q(s,a)$ $\nabla_a Q$ 链式法则 DDPG
双 $Q$ 减过估计 TD3、SAC

五、与 DQN、PPO 关系

1
2
3
4
5
6
7
8
9
Policy Gradient (REINFORCE)
↓ + Baseline
Actor-Critic (A2C)
↓ + KL 信任域
TRPO
↓ + Clip + GAE
PPO
↓ + 确定性 Actor + Q Critic
DDPG → TD3 / SAC
算法 Actor Critic On/Off
A2C 随机 $V$ On
TRPO 随机 $V$ On
PPO 随机 $V$ On
DDPG 确定性 $Q$ Off
SAC 随机 双 $Q$ Off

六、训练要点

  1. Actor 与 Critic 学习率:Critic 常略高或同阶
  2. 优势标准化:$(\hat{A} - \mu) / \sigma$ 稳定 PPO/A2C
  3. 共享 backbone:Atari 常 CNN 共享特征,分头输出 policy / value

七、小结

  • Actor-Critic = 策略梯度 + 价值 Bootstrap,降低方差。
  • A2C/PPO 用 $V$ Critic;DDPG/SAC 用 $Q$ Critic。
  • 下一篇:TRPOPPO;连续控制 Off-Policy 见 DDPG / TD3 / SAC
-------------本文结束感谢您的阅读-------------