6214 字
31 分钟
Chapter 9 - Policy Gradient Methods

Chapter 9 - Policy Gradient Methods#

[!abstract] 本章导读 Chapter 8 用参数化函数表示价值,本章进一步用参数化函数直接表示策略(policy)。这使强化学习第一次从以价值为中心的方法转向以策略为中心的方法。主线非常清楚:先选择一个衡量策略优劣的标量指标 J(θ)J(\theta),再推导其关于策略参数 θ\theta 的梯度,最后用经验样本近似真实梯度,得到 Monte Carlo policy gradient,也就是 REINFORCE。真正困难之处在于,策略变化会同时改变动作概率、状态价值和长期状态分布,因此教材分别处理折扣与无折扣情形,并用 Policy Gradient Theorem 将它们统一起来。

0. 本章知识结构#

Figure 9.1:本章在全书中的位置

本章在全书中的逻辑位置是:

价值函数近似策略函数近似策略梯度REINFORCEActor-Critic.\text{价值函数近似} \longrightarrow \text{策略函数近似} \longrightarrow \text{策略梯度} \longrightarrow \text{REINFORCE} \longrightarrow \text{Actor-Critic}.

策略梯度方法围绕三个问题展开:

  1. 优化什么? 选择标量指标 J(θ)J(\theta)
  2. 梯度是什么? 推导 θJ(θ)\nabla_\theta J(\theta)
  3. 怎样用样本计算? 用随机梯度替代未知期望。

最基本的梯度上升骨架为:

θt+1=θt+αθJ(θt),α>0.\theta_{t+1} =\theta_t+\alpha\nabla_\theta J(\theta_t), \qquad \alpha>0.

[!important] 一句话总览 Policy Gradient Theorem 把一个看似需要对环境动力学和状态分布求导的问题,化成“得分函数 θlnπ(AS,θ)\nabla_\theta\ln\pi(A\mid S,\theta) 乘动作价值 qπ(S,A)q_\pi(S,A)”的期望,从而可以直接用轨迹样本优化策略。

1. 策略表示:从表格到函数#

1.1 表格型策略#

若有 9 个状态,每个状态有 5 个动作,Table 9.1 的策略表示可转换为:

状态a1a_1a2a_2a3a_3a4a_4a5a_5
s1s_1π(a1s1)\pi(a_1\mid s_1)π(a2s1)\pi(a_2\mid s_1)π(a3s1)\pi(a_3\mid s_1)π(a4s1)\pi(a_4\mid s_1)π(a5s1)\pi(a_5\mid s_1)
\vdots\vdots\vdots\vdots\vdots\vdots
s9s_9π(a1s9)\pi(a_1\mid s_9)π(a2s9)\pi(a_2\mid s_9)π(a3s9)\pi(a_3\mid s_9)π(a4s9)\pi(a_4\mid s_9)π(a5s9)\pi(a_5\mid s_9)

表格中的每一行是给定状态后的动作概率分布,每行概率之和为 11

1.2 参数化策略#

本章将策略写成:

π(as,θ),θRm.\pi(a\mid s,\theta), \qquad \theta\in\mathbb R^m.

教材也使用 πθ(as)\pi_\theta(a\mid s)πθ(a,s)\pi_\theta(a,s)π(a,s,θ)\pi(a,s,\theta) 等等价写法。

Figure 9.2:参数化策略的两种函数结构

图解:

  • 图 9.2(a):输入状态 ss 和动作 aa,输出一个动作概率 π(as,θ)\pi(a\mid s,\theta)
  • 图 9.2(b):只输入状态 ss,一次输出全部动作概率。
  • 两种结构表达同一策略,区别只是函数接口和网络输出方式。

1.3 从表格到函数后,三个问题发生变化#

问题表格表示函数表示
如何定义最优策略同时最大化每个状态价值最大化选定的标量指标
如何更新策略直接修改表项修改共享参数 θ\theta
如何读取动作概率查表执行函数前向计算

函数表示的优势是可应对更大的状态或动作空间,并利用共享参数进行泛化;相应代价是策略只能在参数化函数族内搜索,而且优化目标必须压缩为标量。

[!note] 补充理解 “最大化每个状态价值”给出了逐状态的偏序,而梯度法需要一个标量目标。引入 J(θ)J(\theta) 的实质,是先说明哪些状态更重要,再把整张价值图压缩为一个可优化的数。

2. 定义最优策略的标量指标#

2.1 Metric 1:平均状态价值#

给每个状态一个非负权重 d(s)d(s),且 sSd(s)=1\sum_{s\in\mathcal S}d(s)=1。平均状态价值(average state value)定义为:

vˉπ=sSd(s)vπ(s)=ESd[vπ(S)].\bar v_\pi =\sum_{s\in\mathcal S}d(s)v_\pi(s) =\mathbb E_{S\sim d}[v_\pi(S)].

状态分布有两种选择。

情形 A:dd 与策略无关#

此时记作 d0d_0,对应指标记作 vˉπ0\bar v_\pi^0。常见例子:

  • 所有状态等权:d0(s)=1/Sd_0(s)=1/\lvert\mathcal S\rvert
  • 只关心固定起点 s0s_0
d0(s0)=1,d0(s)=0(ss0).d_0(s_0)=1, \qquad d_0(s)=0\quad(s\ne s_0).

情形 B:dd 依赖策略#

常取策略 π\pi 诱导的稳态分布 dπd_\pi

dπTPπ=dπT.d_\pi^TP_\pi=d_\pi^T.

长期访问频繁的状态权重更高,罕见状态权重更低。此时 vˉπ=dπTvπ\bar v_\pi=d_\pi^Tv_\pi

2.2 平均状态价值的轨迹表达#

对折扣回报,教材给出常见指标:

J(θ)=limnE[t=0nγtRt+1]=E[t=0γtRt+1].(9.1)J(\theta) =\lim_{n\to\infty} \mathbb E\left[\sum_{t=0}^{n}\gamma^tR_{t+1}\right] =\mathbb E\left[\sum_{t=0}^{\infty}\gamma^tR_{t+1}\right]. \tag{9.1}

由全期望公式:

E[t=0γtRt+1]=sSd(s)E[t=0γtRt+1S0=s]=sSd(s)vπ(s)=vˉπ.\begin{aligned} \mathbb E\left[\sum_{t=0}^{\infty}\gamma^tR_{t+1}\right] &=\sum_{s\in\mathcal S}d(s) \mathbb E\left[\sum_{t=0}^{\infty}\gamma^tR_{t+1}\mid S_0=s\right]\\ &=\sum_{s\in\mathcal S}d(s)v_\pi(s) =\bar v_\pi. \end{aligned}

因此,“期望折扣累计奖励”就是按初始状态分布加权的平均状态价值。

2.3 Metric 2:平均奖励#

平均一步奖励(average one-step reward),简称平均奖励(average reward),定义为:

rˉπ:=sSdπ(s)rπ(s)=ESdπ[rπ(S)].(9.2)\bar r_\pi :=\sum_{s\in\mathcal S}d_\pi(s)r_\pi(s) =\mathbb E_{S\sim d_\pi}[r_\pi(S)]. \tag{9.2}

其中,给定状态后的期望即时奖励为:

rπ(s):=aAπ(as,θ)r(s,a)=EAπ(s,θ)[r(s,A)s].(9.3)r_\pi(s) :=\sum_{a\in\mathcal A}\pi(a\mid s,\theta)r(s,a) =\mathbb E_{A\sim\pi(s,\theta)}[r(s,A)\mid s]. \tag{9.3}

并且:

r(s,a):=E[Rs,a]=rrp(rs,a).r(s,a) :=\mathbb E[R\mid s,a] =\sum_r r\,p(r\mid s,a).

它的轨迹表达是长期时间平均:

J(θ)=limn1nE[t=0n1Rt+1].(9.4)J(\theta) =\lim_{n\to\infty}\frac{1}{n} \mathbb E\left[\sum_{t=0}^{n-1}R_{t+1}\right]. \tag{9.4}

在满足教材所用稳态条件时:

limn1nE[t=0n1Rt+1]=sSdπ(s)rπ(s)=rˉπ.(9.5)\lim_{n\to\infty}\frac{1}{n} \mathbb E\left[\sum_{t=0}^{n-1}R_{t+1}\right] =\sum_{s\in\mathcal S}d_\pi(s)r_\pi(s) =\bar r_\pi. \tag{9.5}

向量形式为:

vˉπ=dTvπ,rˉπ=dπTrπ.\bar v_\pi=d^Tv_\pi, \qquad \bar r_\pi=d_\pi^Tr_\pi.

2.4 Box 9.1:式 (9.5) 的证明#

证明分两步。

Step 1:任意固定起点都得到同一长期平均奖励#

对任意 s0Ss_0\in\mathcal S

rˉπ=limn1nE[t=0n1Rt+1S0=s0].(9.6)\bar r_\pi =\lim_{n\to\infty}\frac{1}{n} \mathbb E\left[\sum_{t=0}^{n-1}R_{t+1}\mid S_0=s_0\right]. \tag{9.6}

把期望移入有限和,并使用 Cesaro mean 的性质:若 ata_t 收敛,则其算术平均也收敛到同一极限,得到:

limn1nE[t=0n1Rt+1S0=s0]=limn1nt=0n1E[Rt+1S0=s0]=limtE[Rt+1S0=s0].(9.7)\begin{aligned} \lim_{n\to\infty}\frac{1}{n} \mathbb E\left[\sum_{t=0}^{n-1}R_{t+1}\mid S_0=s_0\right] &=\lim_{n\to\infty}\frac{1}{n} \sum_{t=0}^{n-1}\mathbb E[R_{t+1}\mid S_0=s_0]\\ &=\lim_{t\to\infty}\mathbb E[R_{t+1}\mid S_0=s_0]. \end{aligned} \tag{9.7}

再按时刻 tt 的状态分解:

E[Rt+1S0=s0]=sSE[Rt+1St=s,S0=s0]p(t)(ss0)=sSrπ(s)p(t)(ss0).\begin{aligned} \mathbb E[R_{t+1}\mid S_0=s_0] &=\sum_{s\in\mathcal S} \mathbb E[R_{t+1}\mid S_t=s,S_0=s_0]p^{(t)}(s\mid s_0)\\ &=\sum_{s\in\mathcal S}r_\pi(s)p^{(t)}(s\mid s_0). \end{aligned}

马尔可夫无记忆性使下一奖励只依赖当前状态;又因为 p(t)(ss0)dπ(s)p^{(t)}(s\mid s_0)\to d_\pi(s)

limtE[Rt+1S0=s0]=srπ(s)dπ(s)=rˉπ.\lim_{t\to\infty}\mathbb E[R_{t+1}\mid S_0=s_0] =\sum_s r_\pi(s)d_\pi(s) =\bar r_\pi.

这说明长期平均与起点无关。

Step 2:推广到任意初始分布#

对任意初始分布 dd 使用全期望:

limn1nE[t=0n1Rt+1]=sd(s)limn1nE[t=0n1Rt+1S0=s]=sd(s)rˉπ=rˉπ.\begin{aligned} \lim_{n\to\infty}\frac{1}{n} \mathbb E\left[\sum_{t=0}^{n-1}R_{t+1}\right] &=\sum_sd(s) \lim_{n\to\infty}\frac{1}{n} \mathbb E\left[\sum_{t=0}^{n-1}R_{t+1}\mid S_0=s\right]\\ &=\sum_sd(s)\bar r_\pi =\bar r_\pi. \end{aligned}

2.5 Table 9.2:指标的等价表达#

指标Expression 1Expression 2Expression 3
vˉπ\bar v_\pisd(s)vπ(s)\sum_s d(s)v_\pi(s)ESd[vπ(S)]\mathbb E_{S\sim d}[v_\pi(S)]limnE[t=0nγtRt+1]\lim_{n\to\infty}\mathbb E[\sum_{t=0}^{n}\gamma^tR_{t+1}]
rˉπ\bar r_\pisdπ(s)rπ(s)\sum_s d_\pi(s)r_\pi(s)ESdπ[rπ(S)]\mathbb E_{S\sim d_\pi}[r_\pi(S)]limn1nE[t=0n1Rt+1]\lim_{n\to\infty}\frac{1}{n}\mathbb E[\sum_{t=0}^{n-1}R_{t+1}]

三类标量指标是:

  • vˉπ0\bar v_\pi^0:用与策略无关的 d0d_0 加权;
  • vˉπ\bar v_\pi:用稳态分布 dπd_\pi 加权;
  • rˉπ\bar r_\pi:稳态下的平均一步奖励。

它们都是 π\pi 的函数,而 π\pi 又由 θ\theta 参数化,所以都可以作为 J(θ)J(\theta) 进行梯度优化。

3. Policy Gradient Theorem#

[!theorem] Theorem 9.1 - Policy Gradient Theorem 本章不同指标、不同折扣设定下的策略梯度都可以概括为相似形式。具体的 J(θ)J(\theta)、状态权重 η\eta 以及等号是严格成立还是近似成立,要分别查看 Theorem 9.2、9.3 和 9.5。

求和形式为:

θJ(θ)=sSη(s)aAθπ(as,θ)qπ(s,a).(9.8)\nabla_\theta J(\theta) =\sum_{s\in\mathcal S}\eta(s) \sum_{a\in\mathcal A} \nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a). \tag{9.8}

期望形式为:

θJ(θ)=ESη,Aπ(S,θ)[θlnπ(AS,θ)qπ(S,A)].(9.9)\nabla_\theta J(\theta) =\mathbb E_{S\sim\eta,\,A\sim\pi(S,\theta)} \left[ \nabla_\theta\ln\pi(A\mid S,\theta)q_\pi(S,A) \right]. \tag{9.9}

其中:

  • η\eta:由具体指标和折扣情形决定的状态权重;
  • Aπ(S,θ)A\sim\pi(S,\theta):动作必须按当前策略分布抽取;
  • θlnπ(AS,θ)\nabla_\theta\ln\pi(A\mid S,\theta):score function,指出怎样改变参数能提高所选动作概率;
  • qπ(S,A)q_\pi(S,A):为这个方向赋予正负和大小。

3.1 从求和式到期望式#

按期望定义,式 (9.8) 可写成:

θJ(θ)=ESη[aAθπ(aS,θ)qπ(S,a)].(9.10)\nabla_\theta J(\theta) =\mathbb E_{S\sim\eta} \left[ \sum_{a\in\mathcal A} \nabla_\theta\pi(a\mid S,\theta)q_\pi(S,a) \right]. \tag{9.10}

对数导数恒等式为:

θlnπ(as,θ)=θπ(as,θ)π(as,θ).\nabla_\theta\ln\pi(a\mid s,\theta) =\frac{\nabla_\theta\pi(a\mid s,\theta)} {\pi(a\mid s,\theta)}.

因而:

θπ(as,θ)=π(as,θ)θlnπ(as,θ).(9.11)\nabla_\theta\pi(a\mid s,\theta) =\pi(a\mid s,\theta) \nabla_\theta\ln\pi(a\mid s,\theta). \tag{9.11}

代入式 (9.10),内层求和正好成为对 Aπ(S,θ)A\sim\pi(S,\theta) 的期望,从而得到式 (9.9)。这一步把无法直接枚举的真实梯度转化为可采样形式。

3.2 Softmax 策略#

为了使 lnπ(as,θ)\ln\pi(a\mid s,\theta) 对所有状态-动作对都有效,需要 π(as,θ)>0\pi(a\mid s,\theta)>0。教材采用 softmax:

π(as,θ)=eh(s,a,θ)aAeh(s,a,θ),aA.(9.12)\pi(a\mid s,\theta) =\frac{e^{h(s,a,\theta)}} {\sum_{a'\in\mathcal A}e^{h(s,a',\theta)}}, \qquad a\in\mathcal A. \tag{9.12}

h(s,a,θ)h(s,a,\theta) 是在状态 ss 选择动作 aa 的偏好(preference)。Softmax 保证:

0<π(as,θ)<1,aπ(as,θ)=1.0<\pi(a\mid s,\theta)<1, \qquad \sum_a\pi(a\mid s,\theta)=1.

策略因此是随机且具有探索性的;它不直接返回唯一动作,而是返回采样动作所依据的概率分布。神经网络实现时,可输入 ss,用输出层 softmax 同时产生所有动作概率。

4. 折扣情形下的梯度推导#

本节设 γ(0,1)\gamma\in(0,1),价值定义为:

vπ(s)=E[Rt+1+γRt+2+γ2Rt+3+St=s],v_\pi(s) =\mathbb E[R_{t+1}+\gamma R_{t+2}+\gamma^2R_{t+3}+\cdots\mid S_t=s],qπ(s,a)=E[Rt+1+γRt+2+γ2Rt+3+St=s,At=a].q_\pi(s,a) =\mathbb E[R_{t+1}+\gamma R_{t+2}+\gamma^2R_{t+3}+\cdots \mid S_t=s,A_t=a].

并且 vπ(s)=aπ(as,θ)qπ(s,a)v_\pi(s)=\sum_a\pi(a\mid s,\theta)q_\pi(s,a)

4.1 Lemma 9.1:vˉπ\bar v_\pirˉπ\bar r_\pi 等价#

[!theorem] Lemma 9.1 - 折扣情形下两个指标的关系

rˉπ=(1γ)vˉπ.(9.13)\bar r_\pi=(1-\gamma)\bar v_\pi. \tag{9.13}

证明从 Bellman 方程开始:

vπ=rπ+γPπvπ.v_\pi=r_\pi+\gamma P_\pi v_\pi.

左乘 dπTd_\pi^T,利用 dπTPπ=dπTd_\pi^TP_\pi=d_\pi^T

vˉπ=rˉπ+γdπTPπvπ=rˉπ+γvˉπ,\bar v_\pi =\bar r_\pi+\gamma d_\pi^TP_\pi v_\pi =\bar r_\pi+\gamma\bar v_\pi,

移项即得式 (9.13)。因此在折扣情形下,最大化其中一个也会最大化另一个。

4.2 Lemma 9.2:单个状态价值的梯度#

[!theorem] Lemma 9.2 - θvπ(s)\nabla_\theta v_\pi(s)

θvπ(s)=sSPrπ(ss)aAθπ(as,θ)qπ(s,a).(9.14)\nabla_\theta v_\pi(s) =\sum_{s'\in\mathcal S}\Pr_\pi(s'\mid s) \sum_{a\in\mathcal A} \nabla_\theta\pi(a\mid s',\theta)q_\pi(s',a). \tag{9.14}

这里:

Prπ(ss):=k=0γk[Pπk]ss=[(InγPπ)1]ss\Pr_\pi(s'\mid s) :=\sum_{k=0}^{\infty}\gamma^k[P_\pi^k]_{ss'} =\left[(I_n-\gamma P_\pi)^{-1}\right]_{ss'}

是从 ss 出发、经过任意步数到达 ss' 的折扣总转移权重。

4.3 Box 9.2:Lemma 9.2 的证明#

vπ(s)=aπ(as,θ)qπ(s,a)v_\pi(s)=\sum_a\pi(a\mid s,\theta)q_\pi(s,a) 求导:

θvπ(s)=θ[aAπ(as,θ)qπ(s,a)]=aA[θπ(as,θ)qπ(s,a)+π(as,θ)θqπ(s,a)].(9.15)\begin{aligned} \nabla_\theta v_\pi(s) &=\nabla_\theta \left[\sum_{a\in\mathcal A}\pi(a\mid s,\theta)q_\pi(s,a)\right]\\ &=\sum_{a\in\mathcal A} \left[ \nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a) +\pi(a\mid s,\theta)\nabla_\theta q_\pi(s,a) \right]. \end{aligned} \tag{9.15}

动作价值满足:

qπ(s,a)=r(s,a)+γsp(ss,a)vπ(s).q_\pi(s,a) =r(s,a)+\gamma\sum_{s'}p(s'\mid s,a)v_\pi(s').

环境奖励和转移模型不依赖 θ\theta,所以:

θqπ(s,a)=γsp(ss,a)θvπ(s).\nabla_\theta q_\pi(s,a) =\gamma\sum_{s'}p(s'\mid s,a)\nabla_\theta v_\pi(s').

令:

u(s):=aθπ(as,θ)qπ(s,a),u(s):=\sum_a\nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a),

则:

θvπ(s)=u(s)+γsp(ss)θvπ(s).(9.16)\nabla_\theta v_\pi(s) =u(s)+\gamma\sum_{s'}p(s'\mid s)\nabla_\theta v_\pi(s'). \tag{9.16}

因为每个 θvπ(s)\nabla_\theta v_\pi(s)mm 维向量,堆叠后使用 Kronecker product:

θvπ=u+γ(PπIm)θvπ.\nabla_\theta v_\pi =u+\gamma(P_\pi\otimes I_m)\nabla_\theta v_\pi.

解该线性方程:

θvπ=(InmγPπIm)1u=[(InγPπ)1Im]u.(9.17)\begin{aligned} \nabla_\theta v_\pi &=(I_{nm}-\gamma P_\pi\otimes I_m)^{-1}u\\ &=\left[(I_n-\gamma P_\pi)^{-1}\otimes I_m\right]u. \end{aligned} \tag{9.17}

取对应状态 ss 的分块:

θvπ(s)=s[(InγPπ)1]ssu(s)=s[(InγPπ)1]ssaθπ(as,θ)qπ(s,a).(9.18)\begin{aligned} \nabla_\theta v_\pi(s) &=\sum_{s'} \left[(I_n-\gamma P_\pi)^{-1}\right]_{ss'}u(s')\\ &=\sum_{s'} \left[(I_n-\gamma P_\pi)^{-1}\right]_{ss'} \sum_a\nabla_\theta\pi(a\mid s',\theta)q_\pi(s',a). \end{aligned} \tag{9.18}

最后使用 Neumann series:

(InγPπ)1=In+γPπ+γ2Pπ2+,(I_n-\gamma P_\pi)^{-1} =I_n+\gamma P_\pi+\gamma^2P_\pi^2+\cdots,

便得到式 (9.14) 的概率解释。

[!tip] 推导的核心思想 对策略求导后,θvπ\nabla_\theta v_\pi 会再次出现在下一状态价值中。把递归关系写成线性方程,再用 (IγPπ)1(I-\gamma P_\pi)^{-1} 汇总所有未来传播路径,就能消除递归。

4.4 Theorem 9.2:vˉπ0\bar v_\pi^0 的严格梯度#

d0d_0 与策略无关时:

θvˉπ0=E[θlnπ(AS,θ)qπ(S,A)],\nabla_\theta\bar v_\pi^0 =\mathbb E \left[ \nabla_\theta\ln\pi(A\mid S,\theta)q_\pi(S,A) \right],

其中 SρπS\sim\rho_\piAπ(S,θ)A\sim\pi(S,\theta),且:

ρπ(s)=sSd0(s)Prπ(ss),sS.(9.19)\rho_\pi(s) =\sum_{s'\in\mathcal S}d_0(s')\Pr_\pi(s\mid s'), \qquad s\in\mathcal S. \tag{9.19}

4.5 Box 9.3:Theorem 9.2 的证明#

因为 d0d_0 不依赖 θ\theta

θvˉπ0=sd0(s)θvπ(s).\nabla_\theta\bar v_\pi^0 =\sum_sd_0(s)\nabla_\theta v_\pi(s).

代入 Lemma 9.2,交换 s,ss,s' 的求和次序:

θvˉπ0=s(sd0(s)Prπ(ss))aθπ(as,θ)qπ(s,a)=sρπ(s)aθπ(as,θ)qπ(s,a).\begin{aligned} \nabla_\theta\bar v_\pi^0 &=\sum_{s'} \left(\sum_sd_0(s)\Pr_\pi(s'\mid s)\right) \sum_a\nabla_\theta\pi(a\mid s',\theta)q_\pi(s',a)\\ &=\sum_{s'}\rho_\pi(s') \sum_a\nabla_\theta\pi(a\mid s',\theta)q_\pi(s',a). \end{aligned}

再用式 (9.11) 和期望定义得到定理结论。

[!info] 推论:ρπ\rho_\pi 更像折扣访问权重 按式 (9.19) 和教材对 Prπ\Pr_\pi 的定义可推出 sρπ(s)=1/(1γ)\sum_s\rho_\pi(s)=1/(1-\gamma)。因此它不是通常归一化为 1 的概率分布,而是未归一化的 discounted occupancy weights。教材仍使用 SρπS\sim\rho_\pi 和 expectation 的记号,未另行讨论归一化;本文保留原式,不擅自加入缺失的归一化因子。

4.6 Theorem 9.3:rˉπ\bar r_\pivˉπ\bar v_\pi 的近似梯度#

折扣情形下:

θrˉπ=(1γ)θvˉπsdπ(s)aθπ(as,θ)qπ(s,a)=E[θlnπ(AS,θ)qπ(S,A)],\begin{aligned} \nabla_\theta\bar r_\pi &=(1-\gamma)\nabla_\theta\bar v_\pi\\ &\approx\sum_sd_\pi(s) \sum_a\nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a)\\ &=\mathbb E \left[ \nabla_\theta\ln\pi(A\mid S,\theta)q_\pi(S,A) \right], \end{aligned}

其中 SdπS\sim d_\piAπ(S,θ)A\sim\pi(S,\theta)。该近似在 γ\gamma 更接近 11 时更准确。

4.7 Box 9.4:近似从哪里产生#

因为 dπd_\pi 也依赖策略:

θvˉπ=θsdπ(s)vπ(s)=sθdπ(s)vπ(s)+sdπ(s)θvπ(s).(9.20)\begin{aligned} \nabla_\theta\bar v_\pi &=\nabla_\theta\sum_sd_\pi(s)v_\pi(s)\\ &=\sum_s\nabla_\theta d_\pi(s)v_\pi(s) +\sum_sd_\pi(s)\nabla_\theta v_\pi(s). \end{aligned} \tag{9.20}

第二项代入式 (9.17):

sdπ(s)θvπ(s)=(dπTIm)θvπ=[dπT(InγPπ)1Im]u.(9.21)\begin{aligned} \sum_sd_\pi(s)\nabla_\theta v_\pi(s) &=(d_\pi^T\otimes I_m)\nabla_\theta v_\pi\\ &=\left[d_\pi^T(I_n-\gamma P_\pi)^{-1}\otimes I_m\right]u. \end{aligned} \tag{9.21}

由稳态关系可验证:

dπT(InγPπ)1=11γdπT.d_\pi^T(I_n-\gamma P_\pi)^{-1} =\frac{1}{1-\gamma}d_\pi^T.

所以第二项带有 1/(1γ)1/(1-\gamma)。教材在 γ1\gamma\to1 时把它视为主导项,并忽略式 (9.20) 中含 θdπ\nabla_\theta d_\pi 的第一项,从而得到 Theorem 9.3 的近似。教材明确指出,这要求被忽略的第一项在 γ1\gamma\to1 时不发散。

[!warning] 易错点 rˉπ=(1γ)vˉπ\bar r_\pi=(1-\gamma)\bar v_\pi 是严格关系,因此两边的梯度关系也是严格的;近似发生在用稳态分布加权的 score-function 表达去替代完整梯度时,而不是发生在 Lemma 9.1 本身。

5. 无折扣情形:差分价值与 Poisson 方程#

本节设 γ=1\gamma=1。直接累加 Rt+1+Rt+2+R_{t+1}+R_{t+2}+\cdots 可能发散,因此需要减去长期平均奖励。

5.1 重新定义状态价值和动作价值#

vπ(s):=E[k=1(Rt+krˉπ)St=s],v_\pi(s) :=\mathbb E\left[ \sum_{k=1}^{\infty}(R_{t+k}-\bar r_\pi) \mid S_t=s \right],qπ(s,a):=E[k=1(Rt+krˉπ)St=s,At=a].q_\pi(s,a) :=\mathbb E\left[ \sum_{k=1}^{\infty}(R_{t+k}-\bar r_\pi) \mid S_t=s,A_t=a \right].

教材指出,这种 vπv_\pi 在文献中也称 differential reward 或 bias。

它满足 Bellman-like equation:

vπ(s)=aπ(as,θ)[rp(rs,a)(rrˉπ)+sp(ss,a)vπ(s)].(9.22)v_\pi(s) =\sum_a\pi(a\mid s,\theta) \left[ \sum_rp(r\mid s,a)(r-\bar r_\pi) +\sum_{s'}p(s'\mid s,a)v_\pi(s') \right]. \tag{9.22}

矩阵形式称为 Poisson equation:

vπ=rπrˉπ1n+Pπvπ.(9.23)v_\pi =r_\pi-\bar r_\pi\mathbf 1_n+P_\pi v_\pi. \tag{9.23}

5.2 Theorem 9.4:Poisson 方程的解#

定义:

vπ=(InPπ+1ndπT)1rπ.(9.24)v_\pi^* =\left(I_n-P_\pi+\mathbf 1_nd_\pi^T\right)^{-1}r_\pi. \tag{9.24}

vπv_\pi^* 是 Poisson 方程的一个解,而且任意解都可写成:

vπ=vπ+c1n,cR.v_\pi=v_\pi^*+c\mathbf 1_n, \qquad c\in\mathbb R.

所以无折扣差分价值只确定到一个加性常数。

5.3 Box 9.5:Theorem 9.4 的证明结构#

Step 1:验证给出的向量确实是解#

令:

A:=InPπ+1ndπT.A:=I_n-P_\pi+\mathbf 1_nd_\pi^T.

vπ=A1rπv_\pi^*=A^{-1}r_\pi 代入式 (9.23),再使用 dπTrπ=rˉπd_\pi^Tr_\pi=\bar r_\pidπTPπ=dπTd_\pi^TP_\pi=d_\pi^TPπ1n=1nP_\pi\mathbf 1_n=\mathbf 1_n,可验证等式成立。

Step 2:说明解为什么不唯一#

代入 rˉπ=dπTrπ\bar r_\pi=d_\pi^Tr_\pi

vπ=rπ1ndπTrπ+Pπvπ.(9.25)v_\pi =r_\pi-\mathbf 1_nd_\pi^Tr_\pi+P_\pi v_\pi. \tag{9.25}

整理为:

(InPπ)vπ=(In1ndπT)rπ.(9.26)(I_n-P_\pi)v_\pi =(I_n-\mathbf 1_nd_\pi^T)r_\pi. \tag{9.26}

由于 (InPπ)1n=0(I_n-P_\pi)\mathbf 1_n=0,矩阵 InPπI_n-P_\pi 奇异。若 PπP_\pi 不可约,则:

Null(InPπ)=span{1n}.\operatorname{Null}(I_n-P_\pi) =\operatorname{span}\{\mathbf 1_n\}.

因此给任意一个解加上 c1nc\mathbf 1_n 仍是解。

Step 3:证明 AA 可逆#

这一步由 Lemma 9.3 完成。

5.4 Lemma 9.3:矩阵逆的级数表达#

矩阵 InPπ+1ndπTI_n-P_\pi+\mathbf 1_nd_\pi^T 可逆,且:

[In(Pπ1ndπT)]1=k=1(Pπk1ndπT)+In.\left[I_n-(P_\pi-\mathbf 1_nd_\pi^T)\right]^{-1} =\sum_{k=1}^{\infty}(P_\pi^k-\mathbf 1_nd_\pi^T)+I_n.

关键恒等式是:

(Pπ1ndπT)k=Pπk1ndπT,k1.(9.27)(P_\pi-\mathbf 1_nd_\pi^T)^k =P_\pi^k-\mathbf 1_nd_\pi^T, \qquad k\ge1. \tag{9.27}

它可由归纳法证明。又因为 Pπk1ndπTP_\pi^k\to\mathbf 1_nd_\pi^T

(Pπ1ndπT)k0.(P_\pi-\mathbf 1_nd_\pi^T)^k\to0.

故该矩阵谱半径小于 11,Neumann series 收敛,矩阵可逆。

[!warning] 教材对参考文献的更正 教材明确指出参考文献 [66] 中把逆矩阵写成 k=0(Pπk1ndπT)\sum_{k=0}^{\infty}(P_\pi^k-\mathbf 1_nd_\pi^T) 是不准确的,因为该和式乘 1n\mathbf 1_n 为零,因而奇异。Lemma 9.3 的正确表达额外保留了 InI_n,等价于从 k=1k=1 开始求和再加 InI_n

5.5 为什么平均奖励唯一而差分价值不唯一#

由 Poisson 方程:

rˉπ1n=rπ+(PπIn)vπ.\bar r_\pi\mathbf 1_n =r_\pi+(P_\pi-I_n)v_\pi.

vπ=vπ+c1nv_\pi=v_\pi^*+c\mathbf 1_n,则:

(PπIn)c1n=0.(P_\pi-I_n)c\mathbf 1_n=0.

未定常数被消掉,所以 rˉπ\bar r_\pi 唯一;但 vπv_\pivˉπ\bar v_\pi 在未增加归一化约束时不唯一。因此教材只研究无折扣情形下 rˉπ\bar r_\pi 的梯度。

5.6 Theorem 9.5:平均奖励的严格梯度#

无折扣情形下:

θrˉπ=sdπ(s)aθπ(as,θ)qπ(s,a)=E[θlnπ(AS,θ)qπ(S,A)],(9.28)\begin{aligned} \nabla_\theta\bar r_\pi &=\sum_sd_\pi(s) \sum_a\nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a)\\ &=\mathbb E \left[ \nabla_\theta\ln\pi(A\mid S,\theta)q_\pi(S,A) \right], \end{aligned} \tag{9.28}

其中 SdπS\sim d_\piAπ(S,θ)A\sim\pi(S,\theta)。与 Theorem 9.3 不同,这里是严格等式。

5.7 Box 9.6:Theorem 9.5 的证明#

再次从乘积求导开始:

θvπ(s)=θ[aπ(as,θ)qπ(s,a)]=a[θπ(as,θ)qπ(s,a)+π(as,θ)θqπ(s,a)].(9.29)\begin{aligned} \nabla_\theta v_\pi(s) &=\nabla_\theta \left[\sum_a\pi(a\mid s,\theta)q_\pi(s,a)\right]\\ &=\sum_a \left[ \nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a) +\pi(a\mid s,\theta)\nabla_\theta q_\pi(s,a) \right]. \end{aligned} \tag{9.29}

无折扣动作价值满足:

qπ(s,a)=r(s,a)rˉπ+sp(ss,a)vπ(s).q_\pi(s,a) =r(s,a)-\bar r_\pi +\sum_{s'}p(s'\mid s,a)v_\pi(s').

所以:

θqπ(s,a)=θrˉπ+sp(ss,a)θvπ(s).\nabla_\theta q_\pi(s,a) =-\nabla_\theta\bar r_\pi +\sum_{s'}p(s'\mid s,a)\nabla_\theta v_\pi(s').

代回式 (9.29),并使用 aπ(as,θ)=1\sum_a\pi(a\mid s,\theta)=1

θvπ(s)=aθπ(as,θ)qπ(s,a)θrˉπ+aπ(as,θ)sp(ss,a)θvπ(s).(9.30)\begin{aligned} \nabla_\theta v_\pi(s) &=\sum_a\nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a) -\nabla_\theta\bar r_\pi\\ &\quad+\sum_a\pi(a\mid s,\theta) \sum_{s'}p(s'\mid s,a)\nabla_\theta v_\pi(s'). \end{aligned} \tag{9.30}

u(s)=aθπ(as,θ)qπ(s,a)u(s)=\sum_a\nabla_\theta\pi(a\mid s,\theta)q_\pi(s,a),堆叠成向量后:

θvπ=u1nθrˉπ+(PπIm)θvπ.\nabla_\theta v_\pi =u-\mathbf 1_n\otimes\nabla_\theta\bar r_\pi +(P_\pi\otimes I_m)\nabla_\theta v_\pi.

整理并左乘 dπTImd_\pi^T\otimes I_m。因为:

dπT1n=1,dπTPπ=dπT,d_\pi^T\mathbf 1_n=1, \qquad d_\pi^TP_\pi=d_\pi^T,

θvπ\nabla_\theta v_\pi 的两项相互抵消,得到:

θrˉπ=sdπ(s)u(s),\nabla_\theta\bar r_\pi =\sum_sd_\pi(s)u(s),

也就是式 (9.28)。

6. 三种策略梯度情形的统一与区别#

情形指标 J(θ)J(\theta)状态权重结论性质
折扣,固定 d0d_0vˉπ0\bar v_\pi^0ρπ\rho_\piTheorem 9.2,严格形式
折扣,稳态 dπd_\pirˉπ\bar r_\pivˉπ\bar v_\pidπd_\piTheorem 9.3,score-function 形式为近似,γ1\gamma\to1 时更准
无折扣,平均奖励rˉπ\bar r_\pidπd_\piTheorem 9.5,严格形式

三者都能写成 Theorem 9.1 的外观,但不能忽略状态权重和严格性条件。

7. Monte Carlo Policy Gradient:REINFORCE#

7.1 从真实梯度到随机梯度#

真实梯度上升为:

θt+1=θt+αθJ(θt)=θt+αE[θlnπ(AS,θt)qπ(S,A)].(9.31)\begin{aligned} \theta_{t+1} &=\theta_t+\alpha\nabla_\theta J(\theta_t)\\ &=\theta_t+\alpha\mathbb E \left[ \nabla_\theta\ln\pi(A\mid S,\theta_t)q_\pi(S,A) \right]. \end{aligned} \tag{9.31}

期望未知时,用样本 (st,at)(s_t,a_t) 以及动作价值估计 qt(st,at)q_t(s_t,a_t) 替代:

θt+1=θt+αθlnπ(atst,θt)qt(st,at).(9.32)\theta_{t+1} =\theta_t+\alpha \nabla_\theta\ln\pi(a_t\mid s_t,\theta_t) q_t(s_t,a_t). \tag{9.32}

qtq_t 用完整回合的 Monte Carlo return 估计时,该算法称为 REINFORCE 或 Monte Carlo policy gradient。

7.2 更新的数学解释#

使用对数导数恒等式:

θt+1=θt+αqt(st,at)π(atst,θt)θπ(atst,θt).\theta_{t+1} =\theta_t+\alpha \frac{q_t(s_t,a_t)}{\pi(a_t\mid s_t,\theta_t)} \nabla_\theta\pi(a_t\mid s_t,\theta_t).

定义:

βt:=qt(st,at)π(atst,θt),\beta_t :=\frac{q_t(s_t,a_t)}{\pi(a_t\mid s_t,\theta_t)},

则:

θt+1=θt+αβtθπ(atst,θt).(9.33)\theta_{t+1} =\theta_t+\alpha\beta_t \nabla_\theta\pi(a_t\mid s_t,\theta_t). \tag{9.33}

当步长足够小时,对 π(atst,θt+1)\pi(a_t\mid s_t,\theta_{t+1}) 作一阶 Taylor 展开:

π(atst,θt+1)π(atst,θt)+(θπ(atst,θt))T(θt+1θt)=π(atst,θt)+αβtθπ(atst,θt)22.\begin{aligned} \pi(a_t\mid s_t,\theta_{t+1}) &\approx\pi(a_t\mid s_t,\theta_t) +\left(\nabla_\theta\pi(a_t\mid s_t,\theta_t)\right)^T (\theta_{t+1}-\theta_t)\\ &=\pi(a_t\mid s_t,\theta_t) +\alpha\beta_t \left\lVert\nabla_\theta\pi(a_t\mid s_t,\theta_t)\right\rVert_2^2. \end{aligned}

因此:

  • βt0\beta_t\ge0,所选动作概率增大;
  • βt<0\beta_t<0,所选动作概率减小;
  • βt\lvert\beta_t\rvert 越大,局部改变越强。

教材还从 βt=qt/π\beta_t=q_t/\pi 解释探索与利用:

  • qtq_t 较大时,提高高价值动作概率,体现 exploitation;
  • qt>0q_t>0 时,原概率较小会使 βt\beta_t 较大,从而更强地提高低概率动作,体现一定程度的 exploration。

7.3 Algorithm 9.1:Policy Gradient by Monte Carlo#

目标#

学习最大化 J(θ)J(\theta) 的策略。

输入#

  • 初始参数 θ\theta
  • 折扣因子 γ(0,1)\gamma\in(0,1)
  • 学习率 α>0\alpha>0

核心步骤#

对每个回合:
按当前策略 π(θ) 生成完整回合
{s0, a0, r1, ..., sT-1, aT-1, rT}
对 t = 0, 1, ..., T-1:
q_t(st, at) <- Σ_{k=t+1}^{T} γ^(k-t-1) r_k
θ <- θ + α grad_θ ln π(at | st, θ) q_t(st, at)

完整 Monte Carlo 回报为:

qt(st,at)=k=t+1Tγkt1rk.q_t(s_t,a_t) =\sum_{k=t+1}^{T}\gamma^{k-t-1}r_k.

输出#

优化后的随机策略 π(as,θ)\pi(a\mid s,\theta)

停止条件#

教材按回合重复,没有指定唯一停止规则;实现中可使用固定回合数、指标稳定或参数变化足够小等外部条件。

7.4 怎样采样 SSAA#

理论期望要求:

  • SS 服从 η\eta,即 dπd_\pi 或式 (9.19) 的 ρπ\rho_\pi
  • AA 服从当前策略 π(AS,θ)\pi(A\mid S,\theta)

因此基本策略梯度是 on-policy。实践中的 Algorithm 9.1 先按当前策略生成整条回合,再复用回合中的每个样本多次更新参数。教材指出,这提高了样本利用率,但并不严格遵循每一步都从理想长期分布重新独立采样的方式。

[!note] 补充理解 REINFORCE 的价值估计来自完整回报,因此无需价值网络,但必须等回合结束,而且 Monte Carlo 回报通常方差较大。下一章 Actor-Critic 将引入 critic,用学习到的价值估计替代完整回报。这一联系由教材在总结中指出;有关方差降低的具体技术不在本章展开。

8. 本章 Q&A#

Q1:策略梯度方法的基本思想是什么?#

定义合适的标量指标,推导其梯度,再用梯度上升优化策略参数。最关键的理论结果是 Theorem 9.1。

Q2:最复杂的部分是什么?#

不是梯度上升本身,而是对不同指标以及折扣、无折扣情形分别推导梯度。Theorem 9.1 统一了这些结果的外观。

Q3:可以使用哪些指标?#

教材介绍 vˉπ\bar v_\pivˉπ0\bar v_\pi^0rˉπ\bar r_\pi。它们都能导出相似的策略梯度。文献中尤其常见式 (9.1) 的期望折扣回报和式 (9.4) 的长期平均奖励。

Q4:策略梯度中为什么有自然对数?#

因为:

θπ=πθlnπ.\nabla_\theta\pi =\pi\nabla_\theta\ln\pi.

它把对概率的梯度改写成策略分布下的期望,使真实梯度可以用随机样本近似。

Q5:为什么还要研究无折扣情形?#

平均奖励 rˉπ\bar r_\pi 对折扣和无折扣情形都有效。折扣情形的稳态 score-function 表达在教材中是近似,而无折扣平均奖励梯度的 Theorem 9.5 是严格等式。

Q6:式 (9.32) 在数学上做了什么?#

它沿 θπ(atst,θt)\nabla_\theta\pi(a_t\mid s_t,\theta_t) 的方向调整参数。系数 βt\beta_t 为正时提高所选动作概率,为负时降低概率,绝对值决定局部更新强度。

9. 本章总结#

本章从表格型策略在大空间中难以存储和泛化的问题出发,把策略参数化为 π(as,θ)\pi(a\mid s,\theta)。参数化之后,“最优”必须由一个标量指标定义,于是引入平均状态价值和平均奖励。策略变化会改变动作概率、价值以及状态访问分布,导致梯度推导复杂;Policy Gradient Theorem 最终把这些依赖压缩成 score function 与动作价值的乘积期望。折扣情形下,教材分别给出固定初始分布的严格梯度和稳态分布下的近似梯度;无折扣情形通过差分价值和 Poisson 方程得到平均奖励的严格梯度。最后,用轨迹回报近似 qπq_\pi,便得到 REINFORCE。

整章的因果链是:

参数化策略标量指标Policy Gradient Theorem样本化梯度REINFORCE.\text{参数化策略} \to \text{标量指标} \to \text{Policy Gradient Theorem} \to \text{样本化梯度} \to \text{REINFORCE}.

10. 一页式复习#

  1. 策略函数:π(as,θ)\pi(a\mid s,\theta),参数为 θ\theta
  2. 策略梯度三步:选指标、求梯度、用样本近似。
  3. 平均状态价值:vˉπ=sd(s)vπ(s)\bar v_\pi=\sum_sd(s)v_\pi(s)
  4. 平均奖励:rˉπ=sdπ(s)rπ(s)\bar r_\pi=\sum_sd_\pi(s)r_\pi(s)
  5. 折扣情形:rˉπ=(1γ)vˉπ\bar r_\pi=(1-\gamma)\bar v_\pi
  6. 核心定理:J=E[lnπqπ]\nabla J=\mathbb E[\nabla\ln\pi\,q_\pi]
  7. Softmax 保证所有动作概率为正且和为 1。
  8. Theorem 9.2:固定 d0d_0vˉπ0\bar v_\pi^0 梯度为严格形式,状态权重是 ρπ\rho_\pi
  9. Theorem 9.3:稳态折扣梯度的 score-function 表达是近似,γ\gamma 接近 1 时更准确。
  10. 无折扣价值要减去 rˉπ\bar r_\pi,并满足 Poisson 方程。
  11. 差分价值只确定到常数 c1nc\mathbf 1_n,平均奖励仍唯一。
  12. Theorem 9.5:无折扣平均奖励梯度是严格等式。
  13. REINFORCE:θθ+αlnπGt\theta\leftarrow\theta+\alpha\nabla\ln\pi\,G_t
  14. 基本 REINFORCE 是 on-policy,并使用完整回报。

11. 公式清单#

公式名称作用
vˉπ=sd(s)vπ(s)\bar v_\pi=\sum_sd(s)v_\pi(s)平均状态价值把逐状态价值压缩成标量
rˉπ=sdπ(s)rπ(s)\bar r_\pi=\sum_sd_\pi(s)r_\pi(s)平均奖励衡量稳态长期一步奖励
rˉπ=(1γ)vˉπ\bar r_\pi=(1-\gamma)\bar v_\pi指标等价关系连接折扣平均价值与平均奖励
θπ=πθlnπ\nabla_\theta\pi=\pi\nabla_\theta\ln\piLog-derivative trick把求和式化为可采样期望
J=E[lnπqπ]\nabla J=\mathbb E[\nabla\ln\pi\,q_\pi]Policy Gradient Theorem给出策略参数的上升方向
vπ=rπrˉπ1n+Pπvπv_\pi=r_\pi-\bar r_\pi\mathbf1_n+P_\pi v_\piPoisson equation描述无折扣差分价值
θt+1=θt+αlnπ(atst,θt)qt\theta_{t+1}=\theta_t+\alpha\nabla\ln\pi(a_t\mid s_t,\theta_t)q_tREINFORCE update用单个样本近似真实梯度

12. 符号表#

符号含义
θRm\theta\in\mathbb R^m策略函数的参数向量
π(as,θ)\pi(a\mid s,\theta)参数化随机策略
h(s,a,θ)h(s,a,\theta)Softmax 中的动作偏好
J(θ)J(\theta)要最大化的标量策略指标
d0d_0与策略无关的状态分布
dπd_\pi策略诱导的稳态分布
ρπ\rho_\pid0d_0 与折扣总转移权重得到的状态权重
η\etaTheorem 9.1 中概括性的状态权重
vˉπ0\bar v_\pi^0d0d_0 加权的平均状态价值
vˉπ\bar v_\pidπd_\pi 加权的平均状态价值
rˉπ\bar r_\pi稳态平均一步奖励
qπ(s,a)q_\pi(s,a)策略 π\pi 下的动作价值
Prπ(ss)\Pr_\pi(s'\mid s)ssss' 的折扣总转移权重
\otimesKronecker product
1n\mathbf 1_nnn 维全 1 向量
βt\beta_tqt(st,at)/π(atst,θt)q_t(s_t,a_t)/\pi(a_t\mid s_t,\theta_t)

13. 术语表#

English中文简要解释
policy-based method基于策略的方法直接表示和优化策略
policy gradient策略梯度指标对策略参数的梯度
average state value平均状态价值按状态分布加权的价值均值
average reward平均奖励稳态下每一步奖励的长期平均
score function得分函数θlnπ(as,θ)\nabla_\theta\ln\pi(a\mid s,\theta)
softmax policySoftmax 策略将偏好归一化为正概率
discounted total probability折扣总转移权重对各步转移概率按 γk\gamma^k 加权求和
differential reward差分奖励价值RrˉπR-\bar r_\pi 为增量定义的价值
bias偏差函数无折扣差分状态价值的另一名称
Poisson equationPoisson 方程无折扣差分价值的 Bellman-like 方程
REINFORCEREINFORCE用 Monte Carlo 回报更新策略的算法
on-policy同策略生成样本的策略就是被优化的策略

14. 常见误区#

[!warning] 易错点 1:策略梯度不是对动作求梯度 梯度变量是策略参数 θ\theta,不是离散动作 aa。动作由策略概率分布采样。

[!warning] 易错点 2:Theorem 9.1 的所有实例并非都严格相等 Theorem 9.2 和无折扣 Theorem 9.5 给出严格结果;Theorem 9.3 的稳态 score-function 表达在教材中是 γ1\gamma\to1 时的近似。

[!warning] 易错点 3:vˉπ0\bar v_\pi^0vˉπ\bar v_\pi 的权重不同 前者使用与策略无关的 d0d_0,后者使用会随参数变化的 dπd_\pi。对后者求导必须注意 θdπ\nabla_\theta d_\pi

[!warning] 易错点 4:对数不是改变了优化目标 lnπ\ln\pi 来自恒等式 π=πlnπ\nabla\pi=\pi\nabla\ln\pi,用于把梯度写成策略分布下的期望。

[!warning] 易错点 5:无折扣价值不能直接定义为无限奖励和 该和可能发散,必须使用中心化奖励 RrˉπR-\bar r_\pi

[!warning] 易错点 6:Poisson 方程的价值解不唯一 vπv_\pi 可以整体平移 c1nc\mathbf 1_n,但这不影响唯一的平均奖励。

[!warning] 易错点 7:REINFORCE 不是 value-based 方法 虽然更新中使用 qπq_\pi 的估计,真正被直接参数化和优化的是策略;Chapter 10 才把 policy-based actor 与 value-based critic 结合起来。

15. 自测题#

15.1 概念题#

  1. 为什么把策略从表格换成函数后,需要标量指标定义“最优”?
  2. d0d_0dπd_\pi 的区别是什么?
  3. 为什么 log-derivative trick 能让策略梯度可采样?
  4. Softmax 策略为什么天然是随机策略?
  5. Theorem 9.3 的近似来自哪一项被忽略?
  6. 为什么无折扣差分价值不唯一,而平均奖励唯一?

[!success]- 点击查看答案

  1. 梯度法一次只能优化标量,函数参数又被多个状态共享,因此必须先用状态分布把各状态表现汇总为 J(θ)J(\theta)
  2. d0d_0 不随策略参数变化,dπd_\pi 是策略诱导的稳态分布,会随 θ\theta 改变。
  3. π=πlnπ\nabla\pi=\pi\nabla\ln\pi 把动作求和写成 AπA\sim\pi 的期望,进而能用动作样本估计。
  4. 有限偏好经过 softmax 后每个动作概率都严格为正,且所有概率之和为 1。
  5. 式 (9.20) 中的 sθdπ(s)vπ(s)\sum_s\nabla_\theta d_\pi(s)v_\pi(s) 被忽略,另一项在 γ1\gamma\to1 时含主导因子 1/(1γ)1/(1-\gamma)
  6. IPπI-P_\pi 的零空间包含 1n\mathbf1_n,所以价值可整体平移;在平均奖励公式中 (PπI)c1n=0(P_\pi-I)c\mathbf1_n=0,常数被消掉。

15.2 判断题#

  1. 只要使用函数表示策略,Policy Gradient Theorem 的期望式在所有情形都严格成立。
  2. 在基本 REINFORCE 中,动作应由当前策略采样。
  3. βt<0\beta_t<0,式 (9.33) 的局部效果是降低所选动作概率。
  4. 无折扣 Poisson 方程总能唯一确定 vπv_\pi

[!success]- 点击查看答案

  1. 错。Theorem 9.3 中教材给出的稳态 score-function 形式是近似。
  2. 对,因此基本算法是 on-policy。
  3. 对,在一阶 Taylor 近似和足够小步长下成立。
  4. 错。任意解加 c1nc\mathbf1_n 仍是解。

15.3 推导题#

  1. 从 Bellman 方程推导 rˉπ=(1γ)vˉπ\bar r_\pi=(1-\gamma)\bar v_\pi
  2. θπ=πθlnπ\nabla_\theta\pi=\pi\nabla_\theta\ln\pi 推导式 (9.9)。
  3. 从式 (9.16) 写出矩阵方程并推导式 (9.17)。
  4. 证明 (Pπ1ndπT)2=Pπ21ndπT(P_\pi-\mathbf1_nd_\pi^T)^2=P_\pi^2-\mathbf1_nd_\pi^T
  5. 从式 (9.30) 左乘 dπTImd_\pi^T\otimes I_m,说明为什么价值梯度项抵消。

[!success]- 点击查看答案

  1. 左乘 dπTd_\pi^T 并使用 dπTPπ=dπTd_\pi^TP_\pi=d_\pi^T
  2. 在式 (9.8) 中乘入 π(as,θ)\pi(a\mid s,\theta),再把动作求和识别为条件期望。
  3. 堆叠各状态的 mm 维梯度,得到 v=u+γ(PπIm)v\nabla v=u+\gamma(P_\pi\otimes I_m)\nabla v
  4. 展开平方,并使用 Pπ1n=1nP_\pi\mathbf1_n=\mathbf1_ndπTPπ=dπTd_\pi^TP_\pi=d_\pi^TdπT1n=1d_\pi^T\mathbf1_n=1
  5. 同样使用稳态关系,(dπTPπ)Im(d_\pi^TP_\pi)\otimes I_mdπTImd_\pi^T\otimes I_m 产生相同项。

15.4 算法题#

给定长度为 TT 的回合,写出 REINFORCE 在时刻 tt 的回报和参数更新,并说明为什么必须等回合结束后才能得到该教材版本的 qtq_t

[!success]- 点击查看答案

qt(st,at)=k=t+1Tγkt1rk,q_t(s_t,a_t)=\sum_{k=t+1}^{T}\gamma^{k-t-1}r_k, θθ+αθlnπ(atst,θ)qt(st,at).\theta\leftarrow\theta +\alpha\nabla_\theta\ln\pi(a_t\mid s_t,\theta)q_t(s_t,a_t).

qtq_t 包含从 t+1t+1 到终点 TT 的全部未来奖励,因此在完整回合结束前无法精确计算。