← 上级:RL-03.算法分类与选型 · 前置:RL-03-07-算法-DQN变体 · 后续:RL-03-09-算法-Actor-Critic
基于价值的方法需对连续动作做 $\max_a Q(s,a)$,困难。策略梯度(Policy Gradient,PG)直接参数化 $\pi_\theta(a|s)$,用梯度上升最大化期望回报 $J(\theta)$,天然支持连续动作与随机策略。
段末注释:策略梯度(Policy Gradient,PG)指直接对策略参数 $\theta$ 求期望回报梯度的方法族;后文沿用 PG。
一、策略梯度定理
目标:
$$
J(\theta) = \mathbb{E}{\tau \sim \pi\theta}[G_0]
$$
策略梯度定理(Sutton et al.):
$$
\nabla_\theta J(\theta) = \mathbb{E}{\tau \sim \pi\theta} \left[ \sum_{t=0}^{T} \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot G_t \right]
$$
直觉:提高带来高回报 $G_t$ 的动作的对数概率。
二、REINFORCE(Monte Carlo Policy Gradient)
- 用当前 $\pi_\theta$ 采样完整 episode $\tau$
- 算各步回报 $G_t$(或从 $t$ 到结束的折扣和)
- 更新:
$$
\theta \leftarrow \theta + \alpha \sum_t \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot G_t
$$
On-Policy:数据必须来自 $\pi_\theta$。
离散动作
$\pi_\theta(a|s) = \text{softmax}(f_\theta(s))_a$,用交叉熵形式实现 log_prob * G_t。
连续动作
$\pi_\theta(a|s) = \mathcal{N}(\mu_\theta(s), \sigma_\theta(s))$,对高斯 log_prob 求导。
三、方差问题与 Baseline
$G_t$ 方差大 → 训练不稳定。减去与动作无关的基线 $b(s_t)$:
$$
\nabla_\theta J \approx \mathbb{E}\left[ \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot (G_t - b(s_t)) \right]
$$
常用 $b(s_t) = V_\phi(s_t)$,得 Actor-Critic;$(G_t - V(s_t))$ 近似优势 $A_t$。
四、因果性与分步回报
将 $G_t$ 换为从 $t$ 起的回报(而非整局 $G_0$),减少无关未来噪声——仍无偏。
五、与 Q-Learning / DQN 对比
| Value-Based | Policy Gradient | |
|---|---|---|
| 输出 | $Q(s,a)$ | $\pi_\theta(a |
| 动作 | 离散为主 | 离散/连续 |
| 策略 | 隐式($\arg\max Q$) | 显式随机 |
| 收敛 | 非凸逼近问题 | 局部最优、高方差 |
| 样本效率 | Off-Policy 可更好 | 通常 On-Policy |
六、伪代码(REINFORCE + 基线)
1 | for episode in range(N): |
七、局限与演进
| 局限 | 演进 |
|---|---|
| 高方差 | Baseline → Actor-Critic → GAE |
| 步长敏感 | TRPO / PPO(信任域) |
| 样本效率 | 仍偏 On-Policy;Off-Policy PG 见 IMPALA 等 |
下一篇:Actor-Critic → TRPO → PPO。
八、小结
- 策略梯度定理:$\nabla J \propto \mathbb{E}[\nabla \log \pi \cdot G]$。
- REINFORCE = MC 采样 + 对数策略梯度。
- Baseline 引到 Actor-Critic 与 PPO。