《强化学习的数学原理》赵世钰 著 · 第 9 章
前面的方法都是先估计值函数,再从值函数导出策略。本章换一条路:直接参数化策略,用梯度上升优化。这就是策略梯度方法,它是 Actor-Critic 和现代深度 RL 的基础。
一、为什么要直接优化策略?
值函数方法(DQN 等)有几个局限:
- 离散动作:Q-learning 需要 maxa,连续动作空间无法穷举
- 策略不可微:argmaxaq(s,a) 不可导,无法端到端优化
- 随机策略:有些任务需要随机策略(如博弈、部分可观测环境)
策略梯度方法直接参数化策略 π(a∣s,θ),绕过这些问题。
二、策略的参数化
离散动作:Softmax 策略
π(a∣s,θ)=∑a′exp(h(s,a′,θ))exp(h(s,a,θ))
其中 h(s,a,θ) 是偏好函数(如神经网络的输出)。
连续动作:高斯策略
π(a∣s,θ)=N(a;μ(s,θ),σ2)
动作从高斯分布中采样,均值 μ(s,θ) 由参数化函数给出。
关键:策略必须对 θ 可微,否则无法求梯度。这就是为什么策略梯度方法需要随机策略——确定性策略的梯度无法直接计算(第 10 章的 DPG 是例外)。
三、目标函数
平均回报(无折扣)
J(θ)=s∑dπθ(s)a∑π(a∣s,θ)r(s,a)
其中 dπθ(s) 是策略 πθ 下的平稳状态分布。
折扣回报
J(θ)=Eπθ[t=0∑∞γtRt+1]=s∑dγ,πθ(s)vπθ(s)
其中 dγ,πθ(s)=(1−γ)∑t=0∞γtPr(St=s∣πθ) 是折扣加权状态访问频率。
两种设定的区别:折扣回报更常用(有限时间视野),但策略梯度定理在两种设定下形式略有不同。书中分别推导了两种情况。
四、策略梯度定理
这是本章的核心定理,也是整个策略梯度方法的理论基石。
定理(折扣情况)
∇θJ(θ)=Eπθ[t=0∑∞γtqπθ(St,At)∇θlnπ(At∣St,θ)]
推导思路
- 先对 vπθ(s) 求梯度,利用贝尔曼方程展开
- 关键技巧:∇π=π⋅∇lnπ(log-技巧),把梯度从转移概率转移到策略上
- 交换求和和梯度,整理得到最终形式
log-技巧 ∇π=π∇lnπ 的意义:它把 ∇θπ(a∣s,θ) 转化为 π(a∣s,θ)∇θlnπ(a∣s,θ),使得梯度可以写成期望的形式,从而可以用采样来估计。
无折扣情况
∇θJ(θ)∝s∑dπθ(s)a∑∇θπ(a∣s,θ)qπθ(s,a)
形式类似,但状态分布是平稳分布而非折扣分布。
五、REINFORCE:蒙特卡罗策略梯度
用采样代替期望
策略梯度定理给出了梯度的期望形式,实践中用采样估计:
∇θJ(θ)≈t=0∑TγtGt∇θlnπ(At∣St,θ)
其中 Gt 是蒙特卡罗回报(用来近似 qπθ(St,At))。
REINFORCE 算法
初始化: 策略参数 θ
重复:
# 生成一个回合
从 π(·|·, θ) 采样轨迹: S₀, A₀, R₁, ..., S_T
对每个 t = 0, 1, ..., T:
G_t = Σᵢ₌ₜᵀ γⁱ⁻ᵗ Rᵢ₊₁
θ ← θ + α γᵗ G_t ∇_θ ln π(A_t|S_t, θ)
理解更新规则
θ←θ+α⋅γt⋅Gt⋅∇θlnπ(At∣St,θ)
- Gt>0(好回报):增大 π(At∣St) 的概率(梯度上升方向)
- Gt<0(坏回报):减小 π(At∣St) 的概率
- ∇θlnπ 告诉参数往哪个方向调才能增大/减小该动作的概率
直觉:做得好就多做,做得差就少做。策略梯度就是"根据回报调整动作概率"的数学化。
六、REINFORCE 的问题与改进方向
问题 1:方差大
Gt 是整条轨迹的累加回报,方差可能极大。梯度估计噪声大,训练不稳定。
改进:引入基准(baseline),减去一个与动作无关的量 b(s):
∇θJ≈t∑γt(Gt−b(St))∇θlnπ(At∣St,θ)
基准不改变梯度的期望(因为 b 与 At 无关),但可以大幅降低方差。最优基准是 vπ(s)——这就是第 10 章 Actor-Critic 的由来。
问题 2:必须等回合结束
REINFORCE 用蒙特卡罗回报,必须跑完整个回合。
改进:用 TD 估计代替 Gt → Actor-Critic 方法(第 10 章)。
问题 3:样本效率低
每条轨迹只用一次,没有经验回放(策略梯度是 on-policy)。
改进:重要性采样 → Off-policy 策略梯度(第 10 章)。
七、总结
策略梯度方法的核心链条
策略参数化 π(a|s,θ)
↓
目标函数 J(θ) = E[回报]
↓
策略梯度定理: ∇J = E[q·∇ln π]
↓
采样估计: REINFORCE
↓
问题: 方差大、必须等回合
↓
改进: Actor-Critic(第 10 章)
| 概念 |
公式 |
作用 |
| 策略参数化 |
π(a∣s,θ) |
可微的策略表示 |
| 目标函数 |
J(θ)=Eπθ[∑γtR] |
优化目标 |
| 策略梯度定理 |
∇J=E[q∇lnπ] |
梯度的期望形式 |
| REINFORCE |
θ←θ+αGt∇lnπ |
蒙特卡罗策略梯度 |
评论(0)