之前看了 2 次视频,公式有点多, 还是没整理出来。
这个版本是以下步骤后的版本
函数近似: 状态/动作 价值、策略
参数化的策略: π ( a ∣ s , θ ) \pi(a|s,\theta) π(a∣s,θ),其中 θ ∈ R m \theta\in{\mathbb R}^m θ∈Rm 是一个参数向量
其它形式: π θ ( s , a ) \pi_\theta(s,a) πθ(s,a), π ( a , s , θ ) \pi(a,s,\theta) π(a,s,θ)
策略梯度法的优点:它在处理大的状态/动作空间时更有效。它具有更强的泛化能力,因此在样本使用方面更有效。
9.1 策略表示: 表格 ——> 函数
表示形式 | 表格 | 函数 |
---|---|---|
如何定义最优策略? | 如果策略可以最大化每个状态的价值,则将其定义为最优策略。 | 如果策略可以最大化某些标量指标,则将其定义为最优策略。 |
如何更新策略? | 直接更改表中的条目 | 改变参数 θ θ θ |
如何检索一个动作的概率? | 查找表中的相应条目 | 在函数中输入
(
s
,
a
)
(s, a)
(s,a) 来计算其概率(见图 9.2(a))。 根据函数的结构,我们还可以输入一个状态,然后输出所有动作的概率(见图 9.2(b))。[见 下图] |
假设 J ( θ ) J(\theta) J(θ) 是一个标量度量
θ t + 1 = θ t + α ∇ θ J ( θ t ) \theta_{t+1}=\theta_t+\alpha\nabla_\theta J(\theta_t) θt+1=θt+α∇θJ(θt)
∇
θ
J
\nabla_\theta J
∇θJ:
J
J
J 关于
θ
\theta
θ 的梯度
t
t
t: 时间步
α
\alpha
α: 优化学习率
接下来回答 3 个问题:
- 应该使用什么指标? (9.2 节)
- 如何计算指标的梯度? (9.3 节)
- 如何使用经验样本计算梯度? (9.4 节)
9.2 定义最优策略 的指标
基于状态价值
基于即时奖励
指标 1: 状态价值 的加权平均
v ˉ π = ∑ s ∈ S d ( s ) v π ( s ) \bar v_\pi=\sum\limits_{s\in{\cal S}}d(s)v_\pi(s) vˉπ=s∈S∑d(s)vπ(s)
其中 d ( s ) d(s) d(s) 为状态 s s s 的权值。
- 满足 对任意 s ∈ S s\in {\cal S} s∈S, 均有 d ( s ) ≥ 0 d(s)\geq 0 d(s)≥0,且 ∑ s ∈ S d ( s ) = 1 \sum_{s\in{\cal S}}d(s)=1 ∑s∈Sd(s)=1
- d ( s ) d(s) d(s): s s s 的概率分布, 状态 s s s 被选中的概率。
v ˉ π = E S ∈ d [ v π ( S ) ] \bar v_\pi={\mathbb E}_{S\in d}[v_\pi(S)] vˉπ=ES∈d[vπ(S)]
如何选择 d ( s ) d(s) d(s) ?
情形 1: d d d 与 策略 π \pi π 无关。
- 认为所有状态同等重要: d 0 ( s ) = 1 ∣ S ∣ d_0(s)=\frac{1}{|\cal S|} d0(s)=∣S∣1
- 只对特定的某个状态
s
0
s_0
s0 感兴趣。 (极端情况: 代理总是 从 状态
s
0
s_0
s0 开始)。
d
0
(
s
0
)
=
1
,
d
0
(
s
≠
s
0
)
=
0
d_0(s_0)=1,~~~~~~d_0(s\neq s_0)=0
d0(s0)=1, d0(s=s0)=0
〔 v ˉ π = v π ( s 0 ) \bar v_\pi=v_\pi(s_0) vˉπ=vπ(s0) 〕
情形 2:
d
d
d 依赖于 策略
π
\pi
π
d
π
d_\pi
dπ: 策略
π
\pi
π 下的平稳分布
d π T P π = d π T d_\pi^TP_\pi=d_\pi^T dπTPπ=dπT
其中 P π P_\pi Pπ 是状态转移概率矩阵
〔 主要是计算关于 θ \theta θ 的梯度时有区别。〕
Box 8.1: 关于 平稳分布
平稳分布 反映了马尔可夫过程在给定策略下的长期行为。
- 如果一个状态长期被频繁访问,那么它就更重要,应该得到更高的权重;
- 如果一个状态很少被访问,那么它的重要性很低,应该得到较低的权重。
v ˉ π \bar v_\pi vˉπ: 状态价值的权重平均
v ˉ π \bar v_\pi vˉπ 在文献中的另两种形式
————————
形式一: J ( θ ) = E [ ∑ t = 0 ∞ γ t R t + 1 ] J(\theta)={\mathbb E}\bigg[\sum\limits_{t=0}^\infty\gamma^tR_{t+1}\bigg] J(θ)=E[t=0∑∞γtRt+1]
~
E [ ∑ t = 0 ∞ γ t R t + 1 ] = ∑ s ∈ S d ( s ) E [ ∑ t = 0 ∞ γ t R t + 1 ∣ S 0 = s ] = ∑ s ∈ S d ( s ) v π ( s ) = v ˉ π \begin{aligned}{\mathbb E}\bigg[\sum\limits_{t=0}^\infty\gamma^tR_{t+1} \bigg]&=\textcolor{blue}{\sum\limits_{s\in{\cal S}}d(s)}{\mathbb E}\bigg[\sum\limits_{t=0}^\infty\gamma^tR_{t+1}\bigg|\textcolor{blue}{S_0=s} \bigg]\\ &=\sum\limits_{s\in{\cal S}}d(s)\textcolor{blue}{v_\pi(s)}\\ &=\bar v_\pi\end{aligned} E[t=0∑∞γtRt+1]=s∈S∑d(s)E[t=0∑∞γtRt+1 S0=s]=s∈S∑d(s)vπ(s)=vˉπ
~
————————
形式二:两个向量的内积
v π = [ ⋯ , v π ( s ) , ⋯ ] T ∈ R ∣ S ∣ v_\pi=[\cdots,v_\pi(s),\cdots]^T~~\in {\mathbb R}^{|\cal S|} vπ=[⋯,vπ(s),⋯]T ∈R∣S∣
d = [ ⋯ , d ( s ) , ⋯ ] T ∈ R ∣ S ∣ d=[\cdots,d(s),\cdots]^T~~\in {\mathbb R}^{|\cal S|} d=[⋯,d(s),⋯]T ∈R∣S∣
~
v ˉ π = d T v π \bar v_\pi=d^Tv_\pi vˉπ=dTvπ
指标 2: 平均一步奖励
平均 one-step 奖励
r ˉ π ≐ ∑ s ∈ S d π ( s ) r π ( s ) = E S ∼ d π [ r π ( S ) ] \begin{aligned}\bar r_\pi&\doteq \sum\limits_{s\in {\cal S}}d_\pi(s)r_\pi(s)\\ &={\mathbb E}_{S\sim d_\pi}[r_\pi(S)]\end{aligned} rˉπ≐s∈S∑dπ(s)rπ(s)=ES∼dπ[rπ(S)]
- 其中 d π d_\pi dπ 为平稳分布
r π ( s ) ≐ ∑ a ∈ A π ( a ∣ s , θ ) r ( s , a ) = E A ∼ π ( s , θ ) [ r ( s , A ) ∣ s ] r_\pi(s)\doteq\sum\limits_{a\in{\cal A}}\pi(a|s,\theta)r(s,a)={\mathbb E}_{A\sim\pi(s,\theta)}[r(s,A)|s]~~~~~ rπ(s)≐a∈A∑π(a∣s,θ)r(s,a)=EA∼π(s,θ)[r(s,A)∣s] 即时奖励的期望
后面的
A
A
A 和 前面的
a
a
a 的区别是? ——>
a
a
a 来自状态
s
s
s 的可选动作集合
A
\cal A
A,
A
A
A 抽样自
π
(
s
,
θ
)
\pi(s,\theta)
π(s,θ)
——> 这样转换的目的是? ——> 计算
r ( s , a ) ≐ E [ R ∣ s , a ] = ∑ r r p ( r ∣ s , a ) r(s,a)\doteq {\mathbb E}[R|s,a]=\sum_rrp(r|s,a) r(s,a)≐E[R∣s,a]=∑rrp(r∣s,a)
r ˉ π \bar r_\pi rˉπ 在文献中的另两种形式
————————
形式一: J ( θ ) = lim n → ∞ 1 n E [ ∑ t = 0 n − 1 R t + 1 ] J(\theta)=\lim\limits_{n\to\infty}\frac{1}{n}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}\bigg]~~~~~~~ J(θ)=n→∞limn1E[t=0∑n−1Rt+1] 平均奖励
~
lim n → ∞ 1 n E [ ∑ t = 0 n − 1 R t + 1 ] = ∑ s ∈ S d π ( s ) r π ( s ) = r ˉ π \begin{aligned}\lim\limits_{n\to\infty}\frac{1}{n}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}\bigg]&=\sum\limits_{s\in{\cal S}}d_\pi(s)r_\pi(s)\\ &=\bar r_\pi\end{aligned}~~~~~~ n→∞limn1E[t=0∑n−1Rt+1]=s∈S∑dπ(s)rπ(s)=rˉπ Box 9.1:证明
————————
形式二:两个向量的内积
r π = [ ⋯ , r π ( s ) , ⋯ ] T ∈ R ∣ S ∣ r_\pi=[\cdots,r_\pi(s),\cdots]^T~~\in {\mathbb R}^{|\cal S|} rπ=[⋯,rπ(s),⋯]T ∈R∣S∣
d π = [ ⋯ , d π ( s ) , ⋯ ] T ∈ R ∣ S ∣ d_\pi=[\cdots,d_\pi(s),\cdots]^T~~\in {\mathbb R}^{|\cal S|} dπ=[⋯,dπ(s),⋯]T ∈R∣S∣
~
r ˉ π = ∑ s ∈ S d π ( s ) r π ( s ) = d π T r π \bar r_\pi=\sum\limits_{s\in{\cal S}}d_\pi(s)r_\pi(s)=d_\pi^Tr_\pi rˉπ=s∈S∑dπ(s)rπ(s)=dπTrπ
↓ 跑了无穷多步后,从哪里开始变得无关紧要。
〔
r
ˉ
π
\bar r_\pi
rˉπ: 是对 即时奖励求平均,不求 return,因而也无需考虑 折扣因子
γ
\gamma
γ。
则 不管是折扣情形还是无折扣情形,式子均保持一致。〕
Box 9.1:证明 式 (9.5)
证明:
对任意状态分布 d d d
lim n → ∞ 1 n E [ ∑ t = 0 n − 1 R t + 1 ] = lim n → ∞ 1 n ∑ s ∈ S d ( s ) E [ ∑ t = 0 n − 1 R t + 1 ∣ S 0 = s ] = ∑ s ∈ S d ( s ) lim n → ∞ 1 n E [ ∑ t = 0 n − 1 R t + 1 ∣ S 0 = s ] ⏟ 观察发现若是能证明该式 = r ˉ π ,则证毕 = ∑ s ∈ S d ( s ) r ˉ π = r ˉ π \begin{aligned}\lim\limits_{n\to \infty}\frac{1}{n}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}\bigg]&=\lim\limits_{n\to \infty}\frac{1}{n}\textcolor{blue}{\sum\limits_{s\in {\cal S}}d(s)}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}|\textcolor{blue}{S_0=s}\bigg]\\ &=\sum\limits_{s\in {\cal S}}d(s)\underbrace{\lim\limits_{n\to \infty}\frac{1}{n}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}|S_0=s\bigg]}_{观察发现若是能证明该式~=~\bar r_\pi,则证毕}\\ &=\sum\limits_{s\in {\cal S}}d(s)\bar r_\pi\\ &=\bar r_\pi\end{aligned} n→∞limn1E[t=0∑n−1Rt+1]=n→∞limn1s∈S∑d(s)E[t=0∑n−1Rt+1∣S0=s]=s∈S∑d(s)观察发现若是能证明该式 = rˉπ,则证毕 n→∞limn1E[t=0∑n−1Rt+1∣S0=s]=s∈S∑d(s)rˉπ=rˉπ
接下来,只需证明 下式 对任意起始状态 s 0 ∈ S s_0\in{\cal S} s0∈S 成立。
lim n → ∞ 1 n E [ ∑ t = 0 n − 1 R t + 1 ∣ S 0 = s 0 ] = r ˉ π ( 9.6 ) \lim\limits_{n\to \infty}\frac{1}{n}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}|S_0=s_0\bigg]=\bar r_\pi~~~~~~~~~~(9.6) n→∞limn1E[t=0∑n−1Rt+1∣S0=s0]=rˉπ (9.6)
lim n → ∞ 1 n E [ ∑ t = 0 n − 1 R t + 1 ∣ S 0 = s 0 ] = lim n → ∞ 1 n ∑ t = 0 n − 1 E [ R t + 1 ∣ S 0 = s 0 ] = lim t → ∞ E [ R t + 1 ∣ S 0 = s 0 ] \begin{aligned}\lim\limits_{n\to \infty}\frac{1}{n}{\mathbb E}\bigg[\sum\limits_{t=0}^{n-1}R_{t+1}|S_0=s_0\bigg]&=\lim\limits_{n\to \infty}\frac{1}{n}\sum\limits_{t=0}^{n-1}\textcolor{blue}{{\mathbb E}}\big[R_{t+1}|S_0=s_0\big]\\ &=\lim\limits_{t\to\infty}{\mathbb E}[R_{t+1}|S_0=s_0]\end{aligned} n→∞limn1E[t=0∑n−1Rt+1∣S0=s0]=n→∞limn1t=0∑n−1E[Rt+1∣S0=s0]=t→∞limE[Rt+1∣S0=s0]
Cesaro 均值 〔Cesaro mean / Cesaro summation〕
- 如果 { a k } k = 1 ∞ \{a_k\}_{k=1}^\infty {ak}k=1∞ 是一个收敛序列,则 lim k → ∞ a k \lim\limits_{k\to\infty}a_k k→∞limak 存在;
- { 1 n ∑ k = 1 n a k } n = 1 ∞ \bigg\{\frac{1}{n}\sum\limits_{k=1}^n a_k\bigg\}_{n=1}^\infty {n1k=1∑nak}n=1∞ 也是一个收敛数列,使得 lim n → ∞ 1 n ∑ k = 1 n a k = lim k → ∞ a k \lim\limits_{n\to\infty}\frac{1}{n}\sum\limits_{k=1}^n a_k=\lim\limits_{k\to\infty}a_k n→∞limn1k=1∑nak=k→∞limak
E [ R t + 1 ∣ S 0 = s 0 ] = ∑ s ∈ S E [ R t + 1 ∣ S t = s , S 0 = s 0 ] p ( t ) ( s ∣ s 0 ) = ∑ s ∈ S E [ R t + 1 ∣ S t = s ] p ( t ) ( s ∣ s 0 ) 马尔可夫无记忆性 = ∑ s ∈ S r π ( s ) p ( t ) ( s ∣ s 0 ) \begin{aligned}{\mathbb E}[R_{t+1}|S_0=s_0]&=\sum\limits_{s\in{\cal S}}{\mathbb E}[R_{t+1}|S_t=s, S_0=s_0]p^{(t)}(s|s_0)\\ &=\sum\limits_{s\in{\cal S}}{\mathbb E}[R_{t+1}|S_t=s]p^{(t)}(s|s_0)~~~~~\textcolor{blue}{马尔可夫无记忆性}\\ &=\sum\limits_{s\in{\cal S}}\textcolor{blue}{r_\pi(s)}p^{(t)}(s|s_0)\end{aligned} E[Rt+1∣S0=s0]=s∈S∑E[Rt+1∣St=s,S0=s0]p(t)(s∣s0)=s∈S∑E[Rt+1∣St=s]p(t)(s∣s0) 马尔可夫无记忆性=s∈S∑rπ(s)p(t)(s∣s0)
- 其中 p ( t ) ( s ∣ s 0 ) p^{(t)}(s|s_0) p(t)(s∣s0) 表示从 s 0 s_0 s0 转移到 s s s 恰好经过 t t t 个时间步的概率。
马尔可夫无记忆性:下一个时间步获得的奖励只取决于当前状态,而不取决于前一个状态。
根据平稳分布的定义, 有
lim
t
→
∞
p
(
t
)
(
s
∣
s
0
)
=
d
π
(
s
)
\lim\limits_{t\to \infty}p^{(t)}(s|s_0)=d_\pi(s)
t→∞limp(t)(s∣s0)=dπ(s)
因此, 起始状态
s
0
s_0
s0 无影响,则
lim t → ∞ E [ R t + 1 ∣ S 0 = s 0 ] = lim t → ∞ ∑ s ∈ S r π ( s ) p ( t ) ( s ∣ s 0 ) = ∑ s ∈ S r π ( s ) d π ( s ) = r ˉ π \lim\limits_{t\to\infty}{\mathbb E}[R_{t+1}|S_0=s_0]=\lim\limits_{t\to\infty}\sum\limits_{s\in{\cal S}}r_\pi(s)p^{(t)}(s|s_0)=\sum\limits_{s\in{\cal S}}r_\pi(s)d_\pi(s)=\bar r_\pi t→∞limE[Rt+1∣S0=s0]=t→∞lims∈S∑rπ(s)p(t)(s∣s0)=s∈S∑rπ(s)dπ(s)=rˉπ
得证。
Lemma 9.1:证明 r ˉ π = ( 1 − γ ) v ˉ π \bar r_\pi=(1-\gamma)\bar v_\pi rˉπ=(1−γ)vˉπ
引理 9.1 ( v ˉ π ( θ ) \bar v_\pi(\theta) vˉπ(θ) 和 r ˉ π ( θ ) \bar r_\pi(\theta) rˉπ(θ) 的等效性):
当折扣因子 γ ∈ ( 0 , 1 ) \gamma \in (0,1) γ∈(0,1) 时, 有 r ˉ π = ( 1 − γ ) v ˉ π \bar r_\pi=(1-\gamma)\bar v_\pi rˉπ=(1−γ)vˉπ
〔
r
ˉ
π
\bar r_\pi
rˉπ: 近视,仅考虑 即时奖励
v
ˉ
π
\bar v_\pi
vˉπ : 考虑全部时间步的总奖励 〕
证明:
注意到
v
ˉ
π
(
θ
)
=
d
π
T
v
π
\bar v_\pi(\theta)=d_\pi^Tv_\pi
vˉπ(θ)=dπTvπ,
r
ˉ
π
(
θ
)
=
d
π
T
r
π
\bar r_\pi(\theta)=d_\pi^Tr_\pi
rˉπ(θ)=dπTrπ
其中
v
π
v_\pi
vπ 和
r
π
r_\pi
rπ 满足 贝尔曼公式
v
π
=
r
π
+
γ
P
π
v
π
v_\pi=r_\pi+\gamma P_\pi v_\pi
vπ=rπ+γPπvπ,对该式两边同乘
d
π
T
d_\pi^T
dπT,得
~
d
π
T
v
π
=
d
π
T
r
π
+
γ
d
π
T
P
π
v
π
d_\pi^Tv_\pi=d_\pi^Tr_\pi+\gamma d_\pi^T P_\pi v_\pi
dπTvπ=dπTrπ+γdπTPπvπ
~
v
ˉ
π
=
r
ˉ
π
+
γ
d
π
T
P
π
⏟
式
(
8.10
)
,
=
d
π
T
v
π
=
r
ˉ
π
+
γ
d
π
T
v
π
=
r
ˉ
π
+
γ
v
ˉ
π
\bar v_\pi=\bar r_\pi+\gamma \underbrace{d_\pi^T P_\pi}_{式 ~(8.10), ~=d_\pi^T } v_\pi=\bar r_\pi+\gamma d_\pi^T v_\pi=\bar r_\pi+\gamma \bar v_\pi
vˉπ=rˉπ+γ式 (8.10), =dπT
dπTPπvπ=rˉπ+γdπTvπ=rˉπ+γvˉπ
整理即得 r ˉ π = ( 1 − γ ) v ˉ π \bar r_\pi=(1-\gamma)\bar v_\pi rˉπ=(1−γ)vˉπ。 证毕。
9.3 指标的梯度
定理 9.1 (策略梯度理论)
J ( θ ) J(\theta) J(θ) 的梯度为: ∇ θ J ( θ ) = ∑ s ∈ S η ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) ( 9.8 ) \nabla_\theta J(\theta)=\sum\limits_{s\in{\cal S}}\eta (s)\sum\limits_{a\in{\cal A}}\nabla_\theta\pi(a|s,\theta)q_\pi(s,a)~~~~~~~~~~(9.8) ∇θJ(θ)=s∈S∑η(s)a∈A∑∇θπ(a∣s,θ)qπ(s,a) (9.8)
- 其中 η \eta η 是状态分布
- ∇ θ π \nabla_\theta \pi ∇θπ 是 π \pi π 关于 θ \theta θ 的梯度
另一种形式: ∇ θ J ( θ ) = E S ∼ η , A ∼ π ( S , θ ) [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] ( 9.9 ) \nabla_\theta J(\theta)={\mathbb E}_{S\sim \eta, A\sim \pi(S,\theta)}\Big[\nabla_\theta\ln\pi(A|S,\theta)q_\pi(S,A)\Big]~~~~~~~~~~(9.9) ∇θJ(θ)=ES∼η,A∼π(S,θ)[∇θlnπ(A∣S,θ)qπ(S,A)] (9.9)
η \eta η 在不同的场景可能不同。
⭐⭐⭐ 式(9.8) 可用 式(9.9) 表示
~
∇ θ J ( θ ) = ∑ s ∈ S η ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) = E S ∼ η [ ∑ a ∈ A ∇ θ π ( a ∣ S ) q π ( S , a ) ] \begin{aligned}\nabla_\theta J(\theta)&=\sum\limits_{s\in{\cal S}}\eta (s)\sum\limits_{a\in{\cal A}}\nabla_\theta\pi(a|s,\theta)q_\pi(s,a)\\ &={\mathbb E}_{S\sim \eta}\bigg[\sum\limits_{a\in {\cal A}}\nabla _\theta \pi(a|S)q_\pi(S,a)\bigg]\end{aligned} ∇θJ(θ)=s∈S∑η(s)a∈A∑∇θπ(a∣s,θ)qπ(s,a)=ES∼η[a∈A∑∇θπ(a∣S)qπ(S,a)]
- 转成 期望,便于使用 梯度下降 之类的方法
此外 ∇ θ ln π ( a ∣ s , θ ) = ∇ θ π ( a ∣ s , θ ) π ( a ∣ s , θ ) \nabla_\theta \ln\pi(a|s,\theta)=\frac{\nabla_\theta \pi(a|s,\theta)}{\pi(a|s,\theta)} ∇θlnπ(a∣s,θ)=π(a∣s,θ)∇θπ(a∣s,θ)
即有 ∇ θ π ( a ∣ s , θ ) = π ( a ∣ s , θ ) ∇ θ ln π ( a ∣ s , θ ) \nabla_\theta \pi(a|s,\theta)=\pi(a|s,\theta)\nabla_\theta \ln\pi(a|s,\theta) ∇θπ(a∣s,θ)=π(a∣s,θ)∇θlnπ(a∣s,θ)
则原式
∇ θ J ( θ ) = E S ∼ η [ ∑ a ∈ A π ( a ∣ S , θ ) ∇ θ ln π ( a ∣ S , θ ) ⏟ ∇ θ π ( a ∣ S , θ ) q π ( S , a ) ] = E S ∼ η , A ∼ π ( S , θ ) [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned}\nabla_\theta J(\theta)&={\mathbb E}_{S\sim \eta}\bigg[\sum\limits_{a\in {\cal A}}\underbrace{\textcolor{blue}{\pi(a|S,\theta)\nabla_\theta \ln\pi(a|S,\theta)}}_{\nabla_\theta \pi(a|S,\theta)}q_\pi(S,a)\bigg]\\ &={\mathbb E}_{S\sim \eta,A\sim\pi(S,\theta)}\bigg[\nabla_\theta \ln\pi(A|S,\theta)q_\pi(S,A)\bigg]\end{aligned} ∇θJ(θ)=ES∼η[a∈A∑∇θπ(a∣S,θ) π(a∣S,θ)∇θlnπ(a∣S,θ)qπ(S,a)]=ES∼η,A∼π(S,θ)[∇θlnπ(A∣S,θ)qπ(S,A)]
- π ( a ∣ s , θ ) \pi(a|s,\theta) π(a∣s,θ) 必须为正,保证 ln π ( a ∣ s , θ ) \ln \pi(a|s,\theta) lnπ(a∣s,θ) 有效 ——> 使用
softmax
函数 〔 ( − ∞ , ∞ ) → ( 0 , 1 ) (-\infty, \infty) \to(0,1) (−∞,∞)→(0,1) 〕 π ( a ∣ s , θ ) = e h ( s , a , θ ) ∑ a ′ ∈ A e h ( s , a ′ , θ ) , a ∈ A ( 9.12 ) \pi(a|s,\theta)=\frac{e^{h(s,a,\theta)}}{\sum\limits_{a^\prime\in{\cal A}}e^{h(s,a^\prime,\theta)}},~~~a\in {\cal A}~~~~~~~~~~(9.12) π(a∣s,θ)=a′∈A∑eh(s,a′,θ)eh(s,a,θ), a∈A (9.12)- 式中 h ( s , a , θ ) h(s,a,θ) h(s,a,θ) 是表示 在状态 s s s 时选择 动作 a a a 的偏好的函数。〔 特征函数 〕
式 (9.12) 中的策略对于任意 s ∈ S s \in {\cal S} s∈S,满足 π ( a ∣ s , θ ) ∈ ( 0 , 1 ) π(a|s,θ) \in (0,1) π(a∣s,θ)∈(0,1) 和 Σ a ∈ A π ( a ∣ s , θ ) = 1 Σ_{a\in {\cal A}}\pi(a|s,θ) = 1 Σa∈Aπ(a∣s,θ)=1,该策略可以通过神经网络实现。网络的输入为 s s s,输出层为 softmax 层,因此网络对所有 a a a 输出 π ( a ∣ s , θ ) π(a|s,θ) π(a∣s,θ),输出之和等于 1。如图 9.2(b) 所示。
9.3.1 在折扣情形下的梯度推导
状态价值:
v
π
(
s
)
=
E
[
R
t
+
1
+
γ
R
t
+
2
+
γ
2
R
t
+
3
+
⋯
∣
S
t
=
s
]
v_\pi(s)={\mathbb E}[R_{t+1}+\gamma R_{t+2}+\gamma ^2R_{t+3}+\cdots|S_t=s]
vπ(s)=E[Rt+1+γRt+2+γ2Rt+3+⋯∣St=s]
动作价值:
q
π
(
s
,
a
)
=
E
[
R
t
+
1
+
γ
R
t
+
2
+
γ
2
R
t
+
3
+
⋯
∣
S
t
=
s
,
A
t
=
a
]
q_\pi(s,a)={\mathbb E}[R_{t+1}+\gamma R_{t+2}+\gamma ^2R_{t+3}+\cdots|S_t=s,A_t=a]
qπ(s,a)=E[Rt+1+γRt+2+γ2Rt+3+⋯∣St=s,At=a]
v
π
(
s
)
=
∑
a
∈
A
π
(
a
∣
s
,
θ
)
q
π
(
s
,
a
)
v_\pi(s)=\sum\limits_{a\in {\cal A}}\pi(a|s,\theta)q_\pi(s,a)
vπ(s)=a∈A∑π(a∣s,θ)qπ(s,a) 且 状态价值满足贝尔曼公式。
之前的 引理 9.1 已经证明 r ˉ π ( θ ) = ( 1 − γ ) v ˉ π ( θ ) \bar r_\pi(\theta)=(1-\gamma)\bar v_\pi(\theta) rˉπ(θ)=(1−γ)vˉπ(θ)
Lemma 9.2 (Gradient of v π ( s ) v_\pi(s) vπ(s)).
在折扣情形, 对于任意 s ∈ S s\in{\cal S} s∈S, 有
~
∇ θ v π ( s ) = ∑ s ′ ∈ S Pr π ( s ′ ∣ s ) ∑ a ∈ A ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) ( 9.14 ) \nabla _\theta v_\pi(s)=\sum\limits_{s^\prime\in{\cal S}}\text{Pr}_\pi(s^\prime|s)\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s^\prime,\theta)q_\pi(s^\prime,a)~~~~~~~~~~(9.14) ∇θvπ(s)=s′∈S∑Prπ(s′∣s)a∈A∑∇θπ(a∣s′,θ)qπ(s′,a) (9.14)
- 其中 Pr π ( s ′ ∣ s ) ≐ ∑ k = 0 ∞ γ k [ P π k ] s s ′ = [ ( I n − γ P π ) − 1 ] s s ′ \text{Pr}_\pi(s^\prime|s)\doteq\sum\limits_{k=0}^\infty\gamma^k[P_\pi^k]_{ss^\prime}=[(I_n-\gamma P_\pi)^{-1}]_{ss^\prime} Prπ(s′∣s)≐k=0∑∞γk[Pπk]ss′=[(In−γPπ)−1]ss′ 是策略 π \pi π 下从 s s s 过渡到 s ′ s^\prime s′ 的折扣总概率。
这里, [ ⋅ ] s s ′ [·]_{ss^\prime} [⋅]ss′ 表示第 s s s 行第 s ′ s^\prime s′ 列的条目, [ P π k ] s s ′ [P_\pi^k]_{ss^\prime} [Pπk]ss′ 是在 π π π 下恰好经过 k k k 个时间步从 s s s 过渡到 s ′ s' s′ 的概率。
Lemma 9.2: (Gradient of v π ( s ) v_\pi(s) vπ(s)) 的证明
Box 9.2: Proof of Lemma 9.2
对任意 s ∈ S s\in {\cal S} s∈S, 有
~
∇ θ v π ( s ) = ∇ θ [ ∑ a ∈ A π ( a ∣ s , θ ) q π ( s , a ) ] = ∑ a ∈ A [ ∇ θ π ( a ∣ s , θ ) ⋅ q π ( s , a ) + π ( a ∣ s , θ ) ∇ θ q π ( s , a ) ⏟ 接下来求解这一项 ] ( 9.15 ) 求导法则 \begin{aligned}\nabla_\theta v_\pi(s)&=\nabla_\theta \bigg[\sum\limits_{a\in {\cal A}}\pi(a|s,\theta)q_\pi(s,a)\bigg]\\ &=\sum\limits_{a\in {\cal A}}\bigg[\nabla_\theta \pi(a|s,\theta)·q_\pi(s,a)+\pi(a|s,\theta)\underbrace{\nabla_\theta q_\pi(s,a)}_{\textcolor{blue}{接下来求解这一项}}\bigg]~~~~~~~~~~(9.15)~~~\textcolor{blue}{求导法则}\end{aligned} ∇θvπ(s)=∇θ[a∈A∑π(a∣s,θ)qπ(s,a)]=a∈A∑[∇θπ(a∣s,θ)⋅qπ(s,a)+π(a∣s,θ)接下来求解这一项 ∇θqπ(s,a)] (9.15) 求导法则
~
其中动作价值 q π ( s , a ) = r ( s , a ) + γ ∑ s ′ ∈ S p ( s ′ ∣ s , a ) v π ( s ′ ) q_\pi(s,a)=r(s,a)+\gamma\sum\limits_{s^\prime\in{\cal S}}p(s^\prime|s,a)v_\pi(s^\prime) qπ(s,a)=r(s,a)+γs′∈S∑p(s′∣s,a)vπ(s′)
~
因为 r ( s , a ) = ∑ r r p ( r ∣ s , a ) r(s,a)=\sum\limits_r rp(r|s,a) r(s,a)=r∑rp(r∣s,a) 与 θ \theta θ 无关,则
~
∇ θ q π ( s , a ) = 0 + γ ∑ s ′ ∈ S p ( s ′ ∣ s , a ) ∇ θ v π ( s ′ ) \nabla_\theta q_\pi(s,a)=0 + \gamma \sum\limits_{s^\prime \in {\cal S}}p(s^\prime|s,a)\nabla_\theta v_\pi(s^\prime) ∇θqπ(s,a)=0+γs′∈S∑p(s′∣s,a)∇θvπ(s′)
~
原式
∇ θ v π ( s ) = ∑ a ∈ A [ ∇ θ π ( a ∣ s , θ ) ⋅ q π ( s , a ) + π ( a ∣ s , θ ) γ ∑ s ′ ∈ S p ( s ′ ∣ s , a ) ∇ θ v π ( s ′ ) ] = ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) ⋅ q π ( s , a ) + γ ∑ a ∈ A π ( a ∣ s , θ ) ∑ s ′ ∈ S p ( s ′ ∣ s , a ) ∇ θ v π ( s ′ ) ( 9.16 ) 对每项分别求和 \begin{aligned}\textcolor{blue}{\nabla_\theta v_\pi}(s)&=\sum\limits_{a\in {\cal A}}\bigg[\nabla_\theta \pi(a|s,\theta)·q_\pi(s,a)+\pi(a|s,\theta)\gamma \sum\limits_{s^\prime \in {\cal S}}p(s^\prime|s,a)\nabla_\theta v_\pi(s^\prime)\bigg]\\ &=\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s,\theta)·q_\pi(s,a)+\gamma\sum\limits_{a\in {\cal A}}\pi(a|s,\theta)\sum\limits_{s^\prime \in {\cal S}}p(s^\prime|s,a)\textcolor{blue}{\nabla_\theta v_\pi}(s^\prime)~~~~~~~~~~(9.16)~~~\textcolor{blue}{对每项分别求和}\end{aligned} ∇θvπ(s)=a∈A∑[∇θπ(a∣s,θ)⋅qπ(s,a)+π(a∣s,θ)γs′∈S∑p(s′∣s,a)∇θvπ(s′)]=a∈A∑∇θπ(a∣s,θ)⋅qπ(s,a)+γa∈A∑π(a∣s,θ)s′∈S∑p(s′∣s,a)∇θvπ(s′) (9.16) 对每项分别求和
~
令 u ( s ) ≐ ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) u(s)\doteq\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s,\theta)q_\pi(s,a) u(s)≐a∈A∑∇θπ(a∣s,θ)qπ(s,a)
~
因为 ∑ a ∈ A π ( a ∣ s , θ ) ∑ s ′ ∈ S p ( s ′ ∣ s , a ) ∇ θ v π ( s ′ ) = ∑ s ′ ∈ S p ( s ′ ∣ s ) ∇ θ v π ( s ′ ) = ∑ s ′ ∈ S [ P π ] s s ′ ∇ θ v π ( s ′ ) \sum\limits_{a\in{\cal A}}\pi(a|s,\theta)\sum\limits_{s^\prime\in {\cal S}}p(s^\prime|s,a)\nabla_\theta v_\pi(s^\prime)=\sum\limits_{s^\prime\in {\cal S}}p(s^\prime|s)\nabla_\theta v_\pi(s^\prime)=\sum\limits_{s^\prime\in {\cal S}}[P_\pi]_{ss^\prime}\nabla_\theta v_\pi(s^\prime) a∈A∑π(a∣s,θ)s′∈S∑p(s′∣s,a)∇θvπ(s′)=s′∈S∑p(s′∣s)∇θvπ(s′)=s′∈S∑[Pπ]ss′∇θvπ(s′)
~
将 式 (9.16) 写成 矩阵形式:
[ ⋮ ∇ θ v π ( s ) ⋮ ] ⏟ ∇ θ v π ∈ R m n = [ ⋮ u ( s ) ⋮ ] ⏟ u ∈ R m n + γ ( P π ⊗ I m ) [ ⋮ ∇ θ v π ( s ′ ) ⋮ ] ⏟ ∇ θ v π ∈ R m n \underbrace{\begin{bmatrix}\vdots\\ \nabla_\theta v_\pi(s)\\ \vdots\\\end{bmatrix}}_{\nabla_\theta v_\pi \in{\mathbb R}^{mn}}=\underbrace{\begin{bmatrix}\vdots\\ u(s)\\ \vdots\\\end{bmatrix}}_{u\in{\mathbb R}^{mn}}+\gamma (P_\pi \otimes I_m) \underbrace{\begin{bmatrix}\vdots\\ \nabla_\theta v_\pi(s^\prime)\\ \vdots\\\end{bmatrix}}_{\nabla_\theta v_\pi \in{\mathbb R}^{mn}} ∇θvπ∈Rmn ⋮∇θvπ(s)⋮ =u∈Rmn ⋮u(s)⋮ +γ(Pπ⊗Im)∇θvπ∈Rmn ⋮∇θvπ(s′)⋮
~
简写为:
~
∇ θ v π = u + γ ( P π ⊗ I m ) ∇ θ v π \nabla_\theta v_\pi=u+\gamma (P_\pi\otimes I_m)\nabla_\theta v_\pi ∇θvπ=u+γ(Pπ⊗Im)∇θvπ
- 其中 n = ∣ S ∣ n=|\cal S| n=∣S∣, m m m 为参数向量 θ \theta θ 的维度。
~
整理上式
~
( I n m − γ ( P π ⊗ I m ) ) ∇ θ v π = u \Big(I_{nm}-\gamma (P_\pi\otimes I_m)\Big)\nabla_\theta v_\pi=u (Inm−γ(Pπ⊗Im))∇θvπ=u
~
∇ θ v π = ( I n m − γ P π ⊗ I m ) − 1 u = ( I n ⊗ I m − γ P π ⊗ I m ) − 1 u = [ ( I n − γ P π ) − 1 ⊗ I m ] u \begin{aligned}\nabla_\theta v_\pi&= (I_{nm}-\gamma P_\pi\otimes I_m)^{-1}u\\ &=(I_n\otimes I_m-\gamma P_\pi\otimes I_m)^{-1}u\\ &=\big[(I_n -\gamma P_\pi)^{-1}\otimes I_m\big]u\end{aligned} ∇θvπ=(Inm−γPπ⊗Im)−1u=(In⊗Im−γPπ⊗Im)−1u=[(In−γPπ)−1⊗Im]u
~
∇ θ v π ( s ) = ∑ s ′ ∈ S [ ( I n − γ P π ) − 1 ] s s ′ u ( s ′ ) 注意矩阵形式与原形式的对应记法 = ∑ s ′ ∈ S [ ( I n − γ P π ) − 1 ] s s ′ ∑ a ∈ A ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) ( 9.18 ) \begin{aligned}\nabla_\theta v_\pi(s)&=\sum\limits_{s^\prime\in {\cal S}}\Big[(I_n -\gamma P_\pi)^{-1}\Big]_{ss^\prime}u(s^\prime)~~~~~\textcolor{blue}{注意矩阵形式与原形式的对应记法}\\ &=\sum\limits_{s^\prime\in {\cal S}}\Big[(I_n -\gamma P_\pi)^{-1}\Big]_{ss^\prime}\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s^\prime,\theta)q_\pi(s^\prime,a)~~~~~~~~~~(9.18)\end{aligned} ∇θvπ(s)=s′∈S∑[(In−γPπ)−1]ss′u(s′) 注意矩阵形式与原形式的对应记法=s′∈S∑[(In−γPπ)−1]ss′a∈A∑∇θπ(a∣s′,θ)qπ(s′,a) (9.18)
关于 [ ( I n − γ P π ) − 1 ] s s ′ \Big[(I_n -\gamma P_\pi)^{-1}\Big]_{ss^\prime} [(In−γPπ)−1]ss′ 的概率解释
~
因为 ( I n − γ P π ) − 1 = I + γ P π + γ 2 P π 2 + ⋯ (I_n -\gamma P_\pi)^{-1}=I+\gamma P_\pi+\gamma^2 P_\pi^2+\cdots (In−γPπ)−1=I+γPπ+γ2Pπ2+⋯
~
[ ( I n − γ P π ) − 1 ] s s ′ = [ I ] s s ′ + γ [ P π ] s s ′ + γ 2 [ P π 2 ] s s ′ + ⋯ = ∑ k = 1 ∞ γ k [ P π k ] s s ′ \Big[(I_n -\gamma P_\pi)^{-1}\Big]_{ss^\prime}=[I]_{ss^\prime}+\gamma [P_\pi]_{ss^\prime}+\gamma^2[P_\pi^2]_{ss^\prime}+\cdots=\sum\limits_{k=1}^\infty\gamma^k[P_\pi^k]_{ss^\prime} [(In−γPπ)−1]ss′=[I]ss′+γ[Pπ]ss′+γ2[Pπ2]ss′+⋯=k=1∑∞γk[Pπk]ss′
~
注意, [ P π k ] s s ′ [P_\pi^k]_{ss^\prime} [Pπk]ss′ 是恰好经过 k k k 个时间步从 s s s 过渡到 s ′ s' s′ 的概率。
因此, [ ( I n − γ P π ) − 1 ] s s ′ \Big[(I_n -\gamma P_\pi)^{-1}\Big]_{ss^\prime} [(In−γPπ)−1]ss′ 是使用任意步数从 s s s 过渡到 s ′ s' s′ 的折扣总概率。
通过定义 [ ( I n − γ P π ) − 1 ] s s ′ ≐ Pr π ( s ′ ∣ s ) \Big[(I_n -\gamma P_\pi)^{-1}\Big]_{ss^\prime}\doteq \text{Pr}_\pi(s'|s) [(In−γPπ)−1]ss′≐Prπ(s′∣s),式 (9.18) 变为 (9.14)。
定理 9.2: 折扣情形下 v ˉ π 0 \bar v_\pi^0 vˉπ0 的梯度
在折扣因子 γ ∈ ( 0 , 1 ) \gamma\in (0,1) γ∈(0,1) 的情形下, v ˉ π 0 = d 0 T v π \bar v_\pi^0=d_0^Tv_\pi vˉπ0=d0Tvπ 的梯度为:
~
∇ θ v ˉ π 0 = E [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \nabla_\theta \bar v_\pi^0={\mathbb E}\Big[\nabla_\theta\ln\pi(A|S,\theta)q_\pi(S,A)\Big] ∇θvˉπ0=E[∇θlnπ(A∣S,θ)qπ(S,A)]
- 其中 S ∼ ρ π S\sim \rho_\pi S∼ρπ, A ∼ π ( S , θ ) A\sim \pi(S,\theta) A∼π(S,θ)
~
状态分布 ρ π ( s ) = ∑ s ′ ∈ S d 0 ( s ′ ) Pr ( s ∣ s ′ ) , s ∈ S ( 9.19 ) \rho_\pi(s)=\sum\limits_{s^\prime\in {\cal S}}d_0(s^\prime)\text{Pr}(s|s^\prime),~~~~~s\in{\cal S}~~~~~~~~~~(9.19) ρπ(s)=s′∈S∑d0(s′)Pr(s∣s′), s∈S (9.19)
- 其中 Pr ( s ∣ s ′ ) = ∑ k = 0 ∞ γ k [ P π k ] s ′ s = [ ( I − γ P π ) − 1 ] s ′ s \text{Pr}(s|s^\prime)=\sum\limits_{k=0}^\infty\gamma^k [P_\pi^k]_{s^\prime s}=\Big[(I -\gamma P_\pi)^{-1}\Big]_{s^\prime s} Pr(s∣s′)=k=0∑∞γk[Pπk]s′s=[(I−γPπ)−1]s′s 是在策略 π \pi π 下从 s ′ s^\prime s′ 转移到 s s s 的 折扣概率。
Box 9.3: Proof of Theorem 9.2
由于 d 0 ( s ) d_0(s) d0(s) 与策略 π \pi π 无关,则
~
∇ θ v ˉ π 0 = ∇ θ ∑ s ∈ S d 0 ( s ) v π ( s ) = ∑ s ∈ S d 0 ( s ) ∇ θ v π ( s ) = ∑ s ∈ S d 0 ( s ) ∑ s ′ ∈ S Pr π ( s ′ ∣ s ) ∑ a ∈ A ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) ⏟ 引理 9.2 ,式 9.14 = ∑ s ′ ∈ S ( ∑ s ∈ S d 0 ( s ) Pr π ( s ′ ∣ s ) ) ∑ a ∈ A ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) = ∑ s ′ ∈ S ρ π ( s ′ ) ∑ a ∈ A ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) = ∑ s ∈ S ρ π ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) 将 s ′ 换成 s = ∑ s ∈ S ρ π ( s ) ∑ a ∈ A π ( a ∣ s , θ ) ∇ θ ln π ( a ∣ s , θ ) q π ( s , a ) = E [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned}\nabla_\theta\bar v_\pi^0=\nabla_\theta\sum\limits_{s\in {\cal S}}d_0(s)v_\pi(s)&=\sum\limits_{s\in{\cal S}}d_0(s)\textcolor{blue}{\nabla_\theta} v_\pi(s)\\ &=\sum\limits_{s\in{\cal S}}d_0(s)\underbrace{\sum\limits_{s^\prime\in{\cal S}}\text{Pr}_\pi(s^\prime|s)\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s^\prime,\theta)q_\pi(s^\prime,a)}_{引理 ~9.2,式~9.14}\\ &=\sum\limits_{s^\prime\in{\cal S}}\Bigg(\sum\limits_{s\in{\cal S}}d_0(s)\text{Pr}_\pi(s^\prime|s)\Bigg)\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s^\prime,\theta)q_\pi(s^\prime,a)\\ &=\sum\limits_{s^\prime\in{\cal S}}\rho_\pi(s^\prime)\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s^\prime,\theta)q_\pi(s^\prime,a)\\ &=\sum\limits_{s\in{\cal S}}\rho_\pi(s)\sum\limits_{a\in {\cal A}}\nabla_\theta \pi(a|s,\theta)q_\pi(s,a)~~~~~~\textcolor{blue}{将~ s^\prime~ 换成~ s}\\ &=\sum\limits_{s\in{\cal S}}\rho_\pi(s)\sum\limits_{a\in {\cal A}} \textcolor{blue}{\pi(a|s,\theta)\nabla_\theta \ln \pi(a|s,\theta)}q_\pi(s,a)\\ &={\mathbb E}[\nabla_\theta\ln\pi(A|S,\theta)q_\pi(S,A)]\end{aligned} ∇θvˉπ0=∇θs∈S∑d0(s)vπ(s)=s∈S∑d0(s)∇θvπ(s)=s∈S∑d0(s)引理 9.2,式 9.14 s′∈S∑Prπ(s′∣s)a∈A∑∇θπ(a∣s′,θ)qπ(s′,a)=s′∈S∑(s∈S∑d0(s)Prπ(s′∣s))a∈A∑∇θπ(a∣s′,θ)qπ(s′,a)=s′∈S∑ρπ(s′)a∈A∑∇θπ(a∣s′,θ)qπ(s′,a)=s∈S∑ρπ(s)a∈A∑∇θπ(a∣s,θ)qπ(s,a) 将 s′ 换成 s=s∈S∑ρπ(s)a∈A∑π(a∣s,θ)∇θlnπ(a∣s,θ)qπ(s,a)=E[∇θlnπ(A∣S,θ)qπ(S,A)]
- 其中 S ∼ ρ π S\sim \rho_\pi S∼ρπ , A ∼ π ( S , θ ) A\sim \pi(S,\theta) A∼π(S,θ)
证毕。
定理 9.3 折扣情形下 r ˉ π \bar r_\pi rˉπ 和 v ˉ π \bar v_\pi vˉπ 的梯度
在折扣因子为 γ ∈ ( 0 , 1 ) \gamma\in (0,1) γ∈(0,1) 的情形下, r ˉ π \bar r_\pi rˉπ 和 v ˉ π \bar v_\pi vˉπ 的梯度为:
∇ θ r ˉ π = ( 1 − γ ) ∇ θ v ˉ π ≈ ∑ s ∈ S d π ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) = E [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned}\nabla_\theta \bar r_\pi=(1-\gamma)\nabla_\theta \bar v_\pi&\approx\sum\limits_{s\in {\cal S}}d_\pi(s)\sum\limits_{a\in {\cal A}}\nabla_\theta\pi(a|s,\theta)q_\pi(s,a)\\ &={\mathbb E}[\nabla_\theta\ln\pi(A|S,\theta)q_\pi(S,A)]\end{aligned} ∇θrˉπ=(1−γ)∇θvˉπ≈s∈S∑dπ(s)a∈A∑∇θπ(a∣s,θ)qπ(s,a)=E[∇θlnπ(A∣S,θ)qπ(S,A)]
- 其中 S ∼ d π S\sim d_\pi S∼dπ, A ∼ π ( S , θ ) A\sim \pi(S,\theta) A∼π(S,θ)
这里,当 γ \gamma γ 更接近 1 时, 近似更精确。
Box 9.4: Proof of Theorem 9.3
∇ θ v ˉ π = ∇ θ ∑ s ∈ S d π ( s ) v π ( s ) = ∑ s ∈ S ∇ θ d π ( s ) v π ( s ) + ∑ s ∈ S d π ( s ) ∇ θ v π ( s ) ( 9.20 ) 求导法则 \begin{aligned}\nabla_\theta \bar v_\pi&=\nabla_\theta\sum\limits_{s\in {\cal S}}d_\pi(s)v_\pi(s)\\ &=\sum\limits_{s\in {\cal S}}\nabla_\theta d_\pi(s)v_\pi(s)+\sum\limits_{s\in {\cal S}}d_\pi(s)\nabla_\theta v_\pi(s)~~~~~~~~~~(9.20)~~~~\textcolor{blue}{求导法则}\end{aligned} ∇θvˉπ=∇θs∈S∑dπ(s)vπ(s)=s∈S∑∇θdπ(s)vπ(s)+s∈S∑dπ(s)∇θvπ(s) (9.20) 求导法则
对第 2 项,将式 (9.17) 代入
~
∑ s ∈ S d π ( s ) ∇ θ v π ( s ) = ( d π T ⊗ I m ) ∇ θ v π = ( d π T ⊗ I m ) [ ( I n − γ P π ) − 1 ⊗ I m ] u = [ d π T ( I n − γ P π ) − 1 ] ⊗ I m u ( 9.21 ) = 1 1 − γ d π T ⊗ I m u = 1 1 − γ ∑ s ∈ S d π ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) ⏟ u \begin{aligned}\sum\limits_{s\in {\cal S}}d_\pi(s)\nabla_\theta v_\pi(s)=(d_\pi^T\otimes I_m)\nabla_\theta v_\pi&=(d_\pi^T\otimes I_m)\big[(I_n-\gamma P_\pi)^{-1}\otimes I_m\big]u\\ &=\big[d_\pi^T(I_n-\gamma P_\pi)^{-1}\big]\otimes I_m u~~~~~~~~~~(9.21)\\ &=\frac{1}{1-\gamma}d_\pi^T\otimes I_m u\\ &=\frac{1}{1-\gamma}\sum\limits_{s\in {\cal S}}d_\pi(s)\underbrace{\sum\limits_{a\in {\cal A}}\nabla _\theta \pi(a|s,\theta)q_\pi(s,a)}_{u}\end{aligned} s∈S∑dπ(s)∇θvπ(s)=(dπT⊗Im)∇θvπ=(dπT⊗Im)[(In−γPπ)−1⊗Im]u=[dπT(In−γPπ)−1]⊗Imu (9.21)=1−γ1dπT⊗Imu=1−γ1s∈S∑dπ(s)u a∈A∑∇θπ(a∣s,θ)qπ(s,a)对于 d π T ( I n − γ P π ) − 1 = 1 1 − γ d π T d_\pi^T(I_n-\gamma P_\pi)^{-1}=\frac{1}{1-\gamma}d^T_\pi dπT(In−γPπ)−1=1−γ1dπT
两边同乘 I n − γ P π I_n-\gamma P_\pi In−γPπ, 得 d π T = 1 1 − γ d π T ( I n − γ P π ) = 1 1 − γ ( 1 − γ ) d π T d_\pi^T=\frac{1}{1-\gamma}d^T_\pi(I_n-\gamma P_\pi)=\frac{1}{1-\gamma}(1-\gamma)d^T_\pi dπT=1−γ1dπT(In−γPπ)=1−γ1(1−γ)dπT第一项:由于第 2 项包含 1 1 − γ \frac{1}{1-\gamma} 1−γ1, 当 γ → 1 \gamma\to 1 γ→1 时, 第 2 项占据主导, 因此
~
∇ θ v ˉ π ≈ 1 1 − γ ∑ s ∈ S d π ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) \nabla_\theta \bar v_\pi\approx \frac{1}{1-\gamma}\sum\limits_{s\in {\cal S}}d_\pi(s)\sum\limits_{a\in {\cal A}}\nabla _\theta \pi(a|s,\theta)q_\pi(s,a) ∇θvˉπ≈1−γ1s∈S∑dπ(s)a∈A∑∇θπ(a∣s,θ)qπ(s,a)
~
∇ θ r ˉ π = ( 1 − γ ) ∇ θ v ˉ π ≈ ∑ s ∈ S d π ( s ) ∑ a ∈ A ∇ θ π ( a ∣ s , θ ) q π ( s , a ) = ∑ s ∈ S d π ( s ) ∑ a ∈ A π ( a ∣ s , θ ) ∇ θ ln π ( a ∣ s , θ ) q π ( s , a ) = E [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned}\nabla_\theta \bar r_\pi=(1-\gamma)\nabla_\theta \bar v_\pi&\approx\sum\limits_{s\in {\cal S}}d_\pi(s)\sum\limits_{a\in {\cal A}}\nabla _\theta \pi(a|s,\theta)q_\pi(s,a)\\ &=\sum\limits_{s\in {\cal S}}d_\pi(s)\sum\limits_{a\in {\cal A}}\pi(a|s,\theta)\nabla _\theta \ln \pi(a|s,\theta)q_\pi(s,a)\\ &={\mathbb E}[\nabla_\theta\ln \pi(A|S,\theta)q_\pi(S,A)]\end{aligned} ∇θrˉπ=(1−γ)∇θvˉπ≈s∈S∑dπ(s)a∈A∑∇θπ(a∣s,θ)qπ(s,a)=s∈S∑dπ(s)a∈A∑π(a∣s,θ)∇θlnπ(a∣s,θ)qπ(s,a)=E[∇θlnπ(A∣S,θ)qπ(S,A)]
~
上式的近似要求当 γ → 1 \gamma→1 γ→1 时,第一项不趋于无穷。