论文笔记(七十二)Reward Centering(五)
Reward Centering(五)
- 文章概括
- 摘要
- 附录
- B 理论细节
- C 实验细节
- D 相关方法的联系
文章概括
引用:
@article{naik2024reward,
title={Reward Centering},
author={Naik, Abhishek and Wan, Yi and Tomar, Manan and Sutton, Richard S},
journal={arXiv preprint arXiv:2405.09999},
year={2024}
}
Naik, A., Wan, Y., Tomar, M. and Sutton, R.S., 2024. Reward Centering. arXiv preprint arXiv:2405.09999.
原文: https://arxiv.org/abs/2405.09999
代码、数据和视频:
系列文章:
请在
《
《
《文章
》
》
》 专栏中查找
论文笔记(七十二)Reward Centering(一)
论文笔记(七十二)Reward Centering(二)
论文笔记(七十二)Reward Centering(三)
论文笔记(七十二)Reward Centering(四)
论文笔记(七十二)Reward Centering(五)
摘要
我们证明,在解决持续强化学习问题时,折扣方法如果通过减去奖励的经验均值来对奖励进行中心化处理,其性能会显著提升。在常用的折扣因子下,这种改进是显著的,并且随着折扣因子趋近于1,改进幅度进一步增加。此外,我们证明,如果一个问题的奖励被加上一个常数偏移量,则标准方法的表现会变得更差,而采用奖励中心化的方法则不受影响。在on-policy设置下,估计平均奖励是直接的;对于off-policy设置,我们提出了一种稍微更复杂的方法。奖励中心化是一个通用的概念,因此我们预计几乎所有的强化学习算法都能从奖励中心化的加入中受益。
附录
B 理论细节
本节内容包括:
(a) 基于Devraj和Meyn(2021)分析的Q-learning基于值的中心化方法的完整收敛性结果,以及 (b) 量化值估计中状态-动作无关常数偏移量的减少。
假设智能体与MDP的交互遵循一个固定的行为策略 b ∈ Π b \in \Pi b∈Π。令 S t , A t S_t, A_t St,At表示时间步 t t t时的状态-动作对,随后智能体接收奖励 R t + 1 R_{t+1} Rt+1,并转移到下一个状态 S t + 1 S_{t+1} St+1。令 ν t ( s , a ) \nu_t(s, a) νt(s,a)表示直到时间步 t t t,状态-动作对 ( s , a ) (s,a) (s,a)出现的次数。
- ν t ( s , a ) \nu_t(s,a) νt(s,a):直到时间步 t t t 为止,状态-动作对 ( s , a ) (s,a) (s,a) 出现的总次数。
- 例如,如果到第10步时, ( s 2 , a 1 ) (s_2,a_1) (s2,a1)在步骤2、5、9被选过,则 ν 10 ( s 2 , a 1 ) = 3 \nu_{10}(s_2,a_1)=3 ν10(s2,a1)=3。
基于值的中心化Q-learning的更新规则如下:
Q
t
+
1
(
S
t
,
A
t
)
≐
Q
t
(
S
t
,
A
t
)
+
α
ν
t
(
S
t
,
A
t
)
δ
t
,
(12)
Q_{t+1}(S_t, A_t) \doteq Q_t(S_t, A_t) + \alpha_{\nu_t(S_t, A_t)} \delta_t, \tag{12}
Qt+1(St,At)≐Qt(St,At)+ανt(St,At)δt,(12)
R
ˉ
t
+
1
≐
R
ˉ
t
+
η
α
ν
t
(
S
t
,
A
t
)
δ
t
,
(13)
\bar{R}_{t+1} \doteq \bar{R}_t + \eta \alpha_{\nu_t(S_t, A_t)} \delta_t, \tag{13}
Rˉt+1≐Rˉt+ηανt(St,At)δt,(13)
where,
δ
t
≐
R
t
+
1
−
R
ˉ
t
+
γ
max
a
′
Q
t
(
S
t
+
1
,
a
′
)
−
Q
t
(
S
t
,
A
t
)
.
(14)
\text{where,} \quad \delta_t \doteq R_{t+1} - \bar{R}_t + \gamma \max_{a'} Q_t(S_{t+1}, a') - Q_t(S_t, A_t). \tag{14}
where,δt≐Rt+1−Rˉt+γa′maxQt(St+1,a′)−Qt(St,At).(14)
更新规则:公式(12)-(14)
1. 时序差分误差 δ t \delta_t δt (公式(14))
δ t = R t + 1 − R ˉ t + γ max a ′ Q t ( S t + 1 , a ′ ) − Q t ( S t , A t ) . \delta_t \;=\; R_{t+1} \;-\;\bar{R}_t \;+\;\gamma\,\max_{a'} Q_t(S_{t+1},a') \;-\;Q_t(S_t,A_t). δt=Rt+1−Rˉt+γa′maxQt(St+1,a′)−Qt(St,At).
与标准Q-learning相比,这里把奖励 R t + 1 R_{t+1} Rt+1 替换为 R t + 1 − R ˉ t R_{t+1}-\bar{R}_t Rt+1−Rˉt。这意味着:
- 我们只关心“即时奖励相对于当前平均奖励”的差值;
- 若 R t + 1 R_{t+1} Rt+1比 R ˉ t \bar{R}_t Rˉt大,则 δ t \delta_t δt相对增大,说明这次回报比平均水平好;
- 若 R t + 1 R_{t+1} Rt+1比 R ˉ t \bar{R}_t Rˉt小,则 δ t \delta_t δt减小甚至为负,说明这次回报低于平均水平。
后半部分 γ max a ′ Q t ( S t + 1 , a ′ ) − Q t ( S t , A t ) \gamma \max_{a'} Q_t(S_{t+1},a') - Q_t(S_t,A_t) γmaxa′Qt(St+1,a′)−Qt(St,At) 就是传统Q-learning的TD误差结构。
2. Q值更新(公式(12))
Q t + 1 ( S t , A t ) ≐ Q t ( S t , A t ) + α ν t ( S t , A t ) δ t . Q_{t+1}(S_t, A_t) \;\doteq\; Q_t(S_t, A_t) \;+\;\alpha_{\nu_t(S_t, A_t)}\,\delta_t. Qt+1(St,At)≐Qt(St,At)+ανt(St,At)δt.
- 这跟标准Q-learning形式一致,只是步长用的是 α ν t ( S t , a ) \alpha_{\nu_t(S_t,a)} ανt(St,a),即依赖于“ ( s , a ) (s,a) (s,a)已被更新过几次”的计数 ν t ( s , a ) \nu_t(s,a) νt(s,a)。
- δ t \delta_t δt来自公式(14)。
- 其他 ( s , a ) ≠ ( S t , A t ) (s,a)\neq (S_t,A_t) (s,a)=(St,At)的Q值不变。
3. 平均奖励更新(公式(13))
R ˉ t + 1 ≐ R ˉ t + η α ν t ( S t , A t ) δ t . \bar{R}_{t+1} \;\doteq\; \bar{R}_t \;+\;\eta\,\alpha_{\nu_t(S_t, A_t)}\,\delta_t. Rˉt+1≐Rˉt+ηανt(St,At)δt.
- 这是额外的一步:用同一个TD误差 δ t \delta_t δt 来调整平均奖励 R ˉ \bar{R} Rˉ。
- η > 0 \eta>0 η>0 是一个缩放因子,用来控制更新幅度。
- 步长 α ν t ( S t , A t ) \alpha_{\nu_t(S_t,A_t)} ανt(St,At) 同样用于保证学习率递减并最终收敛。
η
>
0
\eta > 0
η>0,且步长参数
α
n
\alpha_n
αn的更新规则为:
α
n
=
c
n
+
d
,
其中
c
,
d
>
0
,
∀
n
≥
1.
\alpha_n = \frac{c}{n + d}, \quad \text{其中 } c, d > 0, \forall n \geq 1.
αn=n+dc,其中 c,d>0,∀n≥1.
Devraj 和 Meyn(2021)在其算法中使用了步长序列 1 / n 1/n 1/n,但可以容易验证, α n = c / ( n + d ) \alpha_n = c/(n + d) αn=c/(n+d) 也满足 Borkar 和 Meyn(2000)奠基性研究中提出的步长条件(该条件被 Devraj & Meyn(2021)用于证明其算法的收敛性)。
步长参数 α n = c n + d \alpha_n = \frac{c}{n + d} αn=n+dc
Devraj & Meyn (2021) 在他们的算法中用的是 1 n \frac{1}{n} n1 型步长序列。这里则是 c n + d \frac{c}{n+d} n+dc,其本质相同,因为在大 n n n 时,它和 1 n \frac{1}{n} n1
具有相似的衰减行为。满足了Borkar & Meyn (2000) 提出的收敛条件,例如:
- ∑ n α n = ∞ \sum_n \alpha_n = \infty ∑nαn=∞ (保证充分探索)
- ∑ n α n 2 < ∞ \sum_n \alpha_n^2 < \infty ∑nαn2<∞ (保证最终收敛稳定)
- 等等。
在表格型Q-learning中,我们常把 α ν t ( s , a ) \alpha_{\nu_t(s,a)} ανt(s,a) 设为 α ν t ( s , a ) = c ν t ( s , a ) + d \alpha_{\nu_t(s,a)} = \frac{c}{\nu_t(s,a)+d} ανt(s,a)=νt(s,a)+dc。当 ( s , a ) (s,a) (s,a) 被访问的次数越多,步长越小,以避免过度振荡。
在这个公式中, α n = c n + d \alpha_n = \frac{c}{n + d} αn=n+dc 表示用于更新的步长(学习率),其中:
- c > 0 c > 0 c>0 是一个比例常数,它决定了步长的整体大小。较大的 c c c 意味着每次更新的幅度会更大;
- d > 0 d > 0 d>0 是一个正的偏移常数,用于在 n n n 很小时防止分母过小,从而使初始步长不会太大,保证更新的稳定性。
这两个参数通常需要根据具体问题进行调整,使得步长序列满足经典的 Robbins–Monro 条件(例如: ∑ n = 1 ∞ α n = ∞ \sum_{n=1}^{\infty} \alpha_n = \infty ∑n=1∞αn=∞ 且 ∑ n = 1 ∞ α n 2 < ∞ \sum_{n=1}^{\infty} \alpha_n^2 < \infty ∑n=1∞αn2<∞),以确保算法收敛。实际应用中, c c c 和 d d d 通常通过经验调参或者交叉验证确定。
数值例子:一个小型MDP
下面给出一个简化场景,帮助你理解公式(12)-(14)如何在具体更新中起作用。
1. MDP结构
- 状态空间: { s 1 , s 2 } \{s_1, s_2\} {s1,s2}。
- 动作空间: { a 1 , a 2 } \{a_1, a_2\} {a1,a2}。
- 转移:若在 s 1 s_1 s1 执行 a 1 a_1 a1,回报 R = 7 R=7 R=7,下一状态大概率仍是 s 1 s_1 s1;其他转移稍差些,回报可能是5或3等。
- 行为策略 b b b:固定 ϵ \epsilon ϵ-greedy,在 s 1 s_1 s1 下 80%选 a 1 a_1 a1,20%选 a 2 a_2 a2,等等。
- 折扣因子 γ = 0.9 \gamma=0.9 γ=0.9。
- 步长参数: α n = c n + d \alpha_n = \frac{c}{n+d} αn=n+dc;为简单,令 c = 1.0 , d = 0 c=1.0, d=0 c=1.0,d=0,即 α n = 1 / n \alpha_n=1/n αn=1/n。
2. 具体一次交互
时间步 t = 10 t=10 t=10:当前状态 S 10 = s 1 S_{10}=s_1 S10=s1,行为策略选 A 10 = a 1 A_{10}=a_1 A10=a1,得到奖励 R 11 = 7 R_{11}=7 R11=7,转移到 S 11 = s 2 S_{11}=s_2 S11=s2。
之前 ν 10 ( s 1 , a 1 ) = 4 \nu_{10}(s_1,a_1)=4 ν10(s1,a1)=4,这表示 ( s 1 , a 1 ) (s_1,a_1) (s1,a1) 已出现4次,所以 α ν 10 ( s 1 , a 1 ) = α 4 = 1 4 \alpha_{\nu_{10}(s_1,a_1)}=\alpha_4=\frac{1}{4} αν10(s1,a1)=α4=41。
假设当前平均奖励 R ˉ 10 = 5.2 \bar{R}_{10}=5.2 Rˉ10=5.2。
假设 Q 10 ( s 1 , a 1 ) = 12 , Q 10 ( s 2 , a 1 ) = 10 , Q 10 ( s 2 , a 2 ) = 9 Q_{10}(s_1,a_1)=12, Q_{10}(s_2,a_1)=10, Q_{10}(s_2,a_2)=9 Q10(s1,a1)=12,Q10(s2,a1)=10,Q10(s2,a2)=9 等等。
(a) 计算 δ 10 \delta_{10} δ10 (公式(14))
δ 10 = R 11 − R ˉ 10 + γ max a ′ Q 10 ( s 2 , a ′ ) − Q 10 ( s 1 , a 1 ) . \delta_{10} = R_{11} - \bar{R}_{10} + \gamma \max_{a'} Q_{10}(s_2,a') - Q_{10}(s_1,a_1). δ10=R11−Rˉ10+γa′maxQ10(s2,a′)−Q10(s1,a1).
- R 11 = 7 R_{11}=7 R11=7, R ˉ 10 = 5.2 \bar{R}_{10}=5.2 Rˉ10=5.2,所以 R 11 − R ˉ 10 = 1.8 R_{11}-\bar{R}_{10}=1.8 R11−Rˉ10=1.8。
- 在 s 2 s_2 s2时, max a ′ Q 10 ( s 2 , a ′ ) = max { 10 , 9 } = 10 \max_{a'}Q_{10}(s_2,a')=\max\{10,9\}=10 maxa′Q10(s2,a′)=max{10,9}=10。
- γ = 0.9 \gamma=0.9 γ=0.9,故 γ max a ′ Q 10 ( s 2 , a ′ ) = 0.9 ∗ 10 = 9 \gamma \max_{a'}Q_{10}(s_2,a')=0.9*10=9 γmaxa′Q10(s2,a′)=0.9∗10=9。
- 当前Q值 Q 10 ( s 1 , a 1 ) = 12 Q_{10}(s_1,a_1)=12 Q10(s1,a1)=12。
所以 δ 10 = 1.8 + 9 − 12 = − 1.2. \delta_{10} = 1.8 + 9 - 12 = -1.2. δ10=1.8+9−12=−1.2.
这是一个负值,表示“这次中心化奖励+未来回报”比我们先前的估计要低。
(b) 更新 Q值 (公式(12))
Q 11 ( s 1 , a 1 ) = Q 10 ( s 1 , a 1 ) + α 4 δ 10 = 12 + 1 4 × ( − 1.2 ) = 12 − 0.3 = 11.7. Q_{11}(s_1,a_1) = Q_{10}(s_1,a_1) + \alpha_4\,\delta_{10} = 12 + \frac{1}{4}\times(-1.2) = 12 - 0.3 = 11.7. Q11(s1,a1)=Q10(s1,a1)+α4δ10=12+41×(−1.2)=12−0.3=11.7.
- 其他 Q值不变: Q 11 ( s 1 , a 2 ) = Q 10 ( s 1 , a 2 ) Q_{11}(s_1,a_2)=Q_{10}(s_1,a_2) Q11(s1,a2)=Q10(s1,a2), etc.
c c c 更新平均奖励 (公式(13))
R ˉ 11 = R ˉ 10 + η α 4 δ 10 . \bar{R}_{11} = \bar{R}_{10} + \eta\,\alpha_4\,\delta_{10}. Rˉ11=Rˉ10+ηα4δ10.
- 设 η = 1 \eta=1 η=1(简化), α 4 = 1 4 \alpha_4=\frac{1}{4} α4=41, δ 10 = − 1.2 \delta_{10}=-1.2 δ10=−1.2。
- R ˉ 10 = 5.2 \bar{R}_{10}=5.2 Rˉ10=5.2。
R ˉ 11 = 5.2 + 1 × 1 4 × ( − 1.2 ) = 5.2 − 0.3 = 4.9. \bar{R}_{11} = 5.2 + 1\times\frac{1}{4}\times(-1.2) = 5.2 - 0.3 = 4.9. Rˉ11=5.2+1×41×(−1.2)=5.2−0.3=4.9.
(d) 解释
- Q值 Q ( s 1 , a 1 ) Q(s_1,a_1) Q(s1,a1) 从12降到11.7,说明:这次“中心化即时奖励+折扣后回报”不及原估计;
- 平均奖励 R ˉ \bar{R} Rˉ 也降低了,从5.2到4.9,表示“平均奖励水平”略被下调,因为这次体验不如我们之前以为的好。
若我们再进行许多步,就会看到 Q值和 R ˉ \bar{R} Rˉ不断调整,最终收敛到某个解。 若奖励有常数偏移(例如每次 +10),这种“中心化”更新能把 Q值“拉回”到一个更小数值范围。
定理1(正式表述) 若由固定行为策略诱导的联合过程 { S t , A t } \{S_t, A_t\} {St,At}是不可约马尔可夫链,即从任意状态-动作对出发,在有限步内以非零概率转移到任意其他状态-动作对,则在基于值的中心化表格型Q-learning(公式(12)–(14)) 中, ( Q t , R ˉ t ) (Q_t, \bar{R}_t) (Qt,Rˉt) 收敛到方程(11)的解 ( q ˉ γ , r ˉ ) (\bar{\mathbf{q}}^{\gamma}, \bar{r}) (qˉγ,rˉ)。
q ~ γ ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) ( r − r ˉ + γ max a ′ q ~ γ ( s ′ , a ′ ) ) . (11) \tilde{q}^{\gamma}(s, a) = \sum_{s', r} p(s', r \mid s, a) \left( r - \bar{r} + \gamma \max_{a'} \tilde{q}^{\gamma}(s', a') \right). \tag{11} q~γ(s,a)=s′,r∑p(s′,r∣s,a)(r−rˉ+γa′maxq~γ(s′,a′)).(11)
- 不可约马尔可夫链:说明整个状态-动作空间是互相连通的,确保所有状态-动作对都能被探索到。
- 固定行为策略:智能体每次在状态 s s s 时根据一个固定策略 β ( a ∣ s ) β(a∣s) β(a∣s) 选动作 a a a,因此状态-动作序列就形成了一个马尔可夫链。
- 不可约(irreducible):从任何状态-动作对 ( s , a ) (s,a) (s,a),都有非零概率在有限步内到达任何其他状态-动作对 ( s ′ , a ′ ) (s',a') (s′,a′)。换句话说,整个状态-动作空间是“连通”的,不会分成互相不交流的子集。
直观理解:不可约性保证算法在足够长的时间里能探索到所有状态-动作对,从而有机会对它们进行学习更新。如果有些状态-动作对永远无法访问,就没法估计它们的Q值,也就无法谈收敛。
- Q t Q_t Qt 与 R ˉ t \bar{R}_t Rˉt 的收敛:随着时间步 t t t 增加,算法中的 Q 值估计和平均奖励估计都会收敛到某个固定解,这个解满足公式 (11)。
- 中心化后的 Q 值 q ~ γ ( s , a ) \tilde{q}^\gamma(s,a) q~γ(s,a):与标准 Q-learning 不同,这里每一步奖励都减去了一个常数 r ˉ \bar{r} rˉ,使得解中不再含有大常数偏移。
- 相对 Q-learning算法族:Devraj 和 Meyn 提出了一个更一般的算法,其更新规则中会减去一个函数 f ( Q ~ γ ) f(\tilde{Q}^\gamma) f(Q~γ),而这个函数由两个参数 μ \mu μ 和 κ \kappa κ 控制。
证明 我们首先证明,基于值的中心化Q-learning是Devraj和Meyn(2021)提出的相对Q-learning(Relative Q-learning)算法族的一个特例,其中 μ \mu μ和 κ \kappa κ取特定值。这使我们能够直接利用他们的收敛性结果。
一般的相对Q-learning算法在时间步 t t t使用 ( S t , A t , R t + 1 , S t + 1 ) (S_t, A_t, R_{t+1}, S_{t+1}) (St,At,Rt+1,St+1)更新其表格型估计 Q ~ γ : S × A → R \tilde{Q}^{\gamma}: \mathcal{S} \times \mathcal{A} \to \mathbb{R} Q~γ:S×A→R,其更新规则如下(使用我们的记号表示):
Q ~ t + 1 γ ( S t , A t ) ≐ Q ~ t γ ( S t , A t ) + α t [ R t + 1 − f ( Q ~ t γ ) + γ max a ′ Q ~ t γ ( S t + 1 , a ′ ) − Q ~ t γ ( S t , A t ) ] , (15) \tilde{Q}_{t+1}^{\gamma}(S_t, A_t) \doteq \tilde{Q}_{t}^{\gamma}(S_t, A_t) + \alpha_t \left[ R_{t+1} - f(\tilde{Q}_{t}^{\gamma}) + \gamma \max_{a'} \tilde{Q}_{t}^{\gamma}(S_{t+1}, a') - \tilde{Q}_{t}^{\gamma}(S_t, A_t) \right], \tag{15} Q~t+1γ(St,At)≐Q~tγ(St,At)+αt[Rt+1−f(Q~tγ)+γa′maxQ~tγ(St+1,a′)−Q~tγ(St,At)],(15)
其中,
f
(
Q
~
t
γ
)
f(\tilde{Q}_{t}^{\gamma})
f(Q~tγ)定义为:
f
(
Q
~
t
γ
)
≐
κ
∑
s
,
a
μ
(
s
,
a
)
Q
~
t
γ
(
s
,
a
)
,
f(\tilde{Q}_{t}^{\gamma}) \doteq \kappa \sum_{s,a} \mu(s, a) \tilde{Q}_{t}^{\gamma}(s, a),
f(Q~tγ)≐κs,a∑μ(s,a)Q~tγ(s,a),
其中,
κ
>
0
\kappa > 0
κ>0是一个标量,
μ
:
S
×
A
→
[
0
,
1
]
\mu: \mathcal{S} \times \mathcal{A} \to [0,1]
μ:S×A→[0,1]是一个概率质量函数(probability mass function)。
- Q ~ γ ( s , a ) \tilde{Q}^{\gamma}(s,a) Q~γ(s,a) 表示经过奖励中心化后的 Q 值(即“相对” Q 值)。
- f ( Q ~ γ ) f(\tilde{Q}^\gamma) f(Q~γ) 是一个全局函数,用于计算整个 Q 值表的加权平均值,起到“平衡”作用。
- μ ( s , a ) \mu(s,a) μ(s,a) 是一个概率质量函数,它对每个状态-动作对分配一个权重(满足 ∑ s , a μ ( s , a ) = 1 \sum_{s,a} \mu(s,a)=1 ∑s,aμ(s,a)=1),是定义在状态-动作对上的概率分布。例如,如果 μ ( s , a ) \mu(s,a) μ(s,a) 是某个“目标策略”的稳定分布,则它反映了“在长期中, ( s , a ) (s,a) (s,a)出现的相对频率”。在相对Q-learning里,它用来决定“从Q值中减去多少”时,对每个 ( s , a ) (s,a) (s,a)的权重;
- κ > 0 \kappa > 0 κ>0 是一个标量,用来缩放“要减去的量”。如果 κ \kappa κ 越大,就意味着我们要减去更多;反之亦然。
在我们的基于值的奖励中心化 Q-learning 中,实际上选择的更新正好等价于令 f ( Q ~ γ ) = r ˉ f(\tilde{Q}^\gamma) = \bar{r} f(Q~γ)=rˉ(平均奖励),这对应于 Devraj 和 Meyn 算法族中某一特定参数选择,即 μ \mu μ 和 κ \kappa κ 取特定值,使得 f ( Q ~ γ ) f(\tilde{Q}^\gamma) f(Q~γ) 就等于当前的平均奖励估计 r ˉ \bar{r} rˉ。这样,我们就可以直接利用他们关于收敛性的证明。
现在注意,使用TD误差(公式(12)和(13))同时更新平均奖励估计和值函数估计,得到:
R ˉ t − R ˉ 0 = η ( ∑ s , a Q t ( s , a ) − ∑ s , a Q 0 ( s , a ) ) . \bar{R}_t - \bar{R}_0 = \eta \left( \sum_{s,a} Q_t(s,a) - \sum_{s,a} Q_0(s,a) \right). Rˉt−Rˉ0=η(s,a∑Qt(s,a)−s,a∑Q0(s,a)).
为了简化分析,我们可以不失一般性地假设 R ˉ 0 = 0 \bar{R}_0 = 0 Rˉ0=0 且 Q 0 = 0 \mathbf{Q_0 = 0} Q0=0。
因此,
R
ˉ
t
\bar{R}_t
Rˉt可表示为:
R
ˉ
t
=
η
∑
s
,
a
Q
~
t
γ
(
s
,
a
)
.
\bar{R}_t = \eta \sum_{s,a} \tilde{Q}_{t}^{\gamma}(s, a).
Rˉt=ηs,a∑Q~tγ(s,a).
设我们在每一步更新时都使用同一个时间步 t t t 的更新增量。记:
- 对于每次更新(在某个时间步 k k k),状态-动作对 ( S k , A k ) (S_k, A_k) (Sk,Ak) 被更新,Q 值增加了 Δ Q k = α ν k ( S k , A k ) δ k . \Delta Q_k = \alpha_{\nu_k(S_k, A_k)}\, \delta_k. ΔQk=ανk(Sk,Ak)δk.
- 同时,平均奖励增加了 Δ R ˉ k = η α ν k ( S k , A k ) δ k = η Δ Q k . \Delta \bar{R}_k = \eta\, \alpha_{\nu_k(S_k, A_k)}\, \delta_k = \eta\, \Delta Q_k. ΔRˉk=ηανk(Sk,Ak)δk=ηΔQk.
假设从初始时间 0 0 0 到时间 t t t,一共做了若干次更新(可能不同的状态-动作对被更新,但我们把所有更新累加起来)。则有:
R ˉ t − R ˉ 0 = ∑ k = 0 t − 1 Δ R ˉ k = ∑ k = 0 t − 1 η Δ Q k . \bar{R}_t - \bar{R}_0 = \sum_{k=0}^{t-1} \Delta \bar{R}_k = \sum_{k=0}^{t-1} \eta\, \Delta Q_k. Rˉt−Rˉ0=k=0∑t−1ΔRˉk=k=0∑t−1ηΔQk.
而如果我们把所有更新累加起来,对于 Q 值来说,考虑所有状态-动作对,总的变化就是
∑ s , a Q t ( s , a ) − ∑ s , a Q 0 ( s , a ) = ∑ k = 0 t − 1 Δ Q k . \sum_{s,a} Q_t(s,a) - \sum_{s,a} Q_0(s,a) = \sum_{k=0}^{t-1} \Delta Q_k. s,a∑Qt(s,a)−s,a∑Q0(s,a)=k=0∑t−1ΔQk.
因此, R ˉ t − R ˉ 0 = η ∑ k = 0 t − 1 Δ Q k = η ( ∑ s , a Q t ( s , a ) − ∑ s , a Q 0 ( s , a ) ) . \bar{R}_t - \bar{R}_0 = \eta \sum_{k=0}^{t-1} \Delta Q_k = \eta \left( \sum_{s,a} Q_t(s,a) - \sum_{s,a} Q_0(s,a) \right). Rˉt−Rˉ0=ηk=0∑t−1ΔQk=η(s,a∑Qt(s,a)−s,a∑Q0(s,a)).
随后,我们可以将表格型情况下的更新公式(9)–(10)合并为:
Q ~ t + 1 γ ( S t , A t ) ≐ Q ~ t γ ( S t , A t ) + α t ( R t + 1 − η ∑ s , a Q ~ t γ ( s , a ) + γ max a ′ Q ~ t γ ( S t + 1 , a ′ ) − Q ~ t γ ( S t , A t ) ) . (16) \tilde{Q}_{t+1}^{\gamma}(S_t, A_t) \doteq \tilde{Q}_{t}^{\gamma}(S_t, A_t) + \alpha_t \left( R_{t+1} - \eta \sum_{s,a} \tilde{Q}_{t}^{\gamma}(s, a) + \gamma\max_{a'} \tilde{Q}_{t}^{\gamma}(S_{t+1}, a') - \tilde{Q}_{t}^{\gamma}(S_t, A_t) \right). \tag{16} Q~t+1γ(St,At)≐Q~tγ(St,At)+αt(Rt+1−ηs,a∑Q~tγ(s,a)+γa′maxQ~tγ(St+1,a′)−Q~tγ(St,At)).(16)
w t + 1 A t ≐ w t A t + α t δ t ∇ w t q ^ ( x t , A t ) , (9) \mathbf{w}_{t+1}^{A_t} \doteq \mathbf{w}_{t}^{A_t} + \alpha_t \delta_t \nabla_{\mathbf{w}_t} \hat{q}(\mathbf{x}_t, A_t), \tag{9} wt+1At≐wtAt+αtδt∇wtq^(xt,At),(9)
R ˉ t + 1 ≐ R ˉ t + η α t δ t , (10) \bar{R}_{t+1} \doteq \bar{R}_t + \eta \alpha_t \delta_t, \tag{10} Rˉt+1≐Rˉt+ηαtδt,(10)
where, δ t ≐ R t + 1 − R ˉ t + γ max a ( w t a ) ⊤ x t + 1 − ( w t A t ) ⊤ x t . \text{where,} \quad \delta_t \doteq R_{t+1} - \bar{R}_t + \gamma \max_{a} (\mathbf{w}_{t}^{a})^\top \mathbf{x}_{t+1} - (\mathbf{w}_{t}^{A_t})^\top \mathbf{x}_t. where,δt≐Rt+1−Rˉt+γamax(wta)⊤xt+1−(wtAt)⊤xt.
比较公式(15)和(16),我们可以看出,基于值的奖励中心化Q-learning是相对Q-learning(Relative Q-learning) 的一个特例,其中:
μ ( s , a ) = 1 ∣ S ∣ ∣ A ∣ , ∀ s , a , and κ = η ∣ S ∣ ∣ A ∣ . \mu(s, a) = \frac{1}{|\mathcal{S}||\mathcal{A}|}, \quad \forall s,a, \quad \text{and} \quad \kappa = \eta |\mathcal{S}||\mathcal{A}|. μ(s,a)=∣S∣∣A∣1,∀s,a,andκ=η∣S∣∣A∣.
Q ~ t + 1 γ ( S t , A t ) ≐ Q ~ t γ ( S t , A t ) + α t [ R t + 1 − f ( Q ~ t γ ) + γ max a ′ Q ~ t γ ( S t + 1 , a ′ ) − Q ~ t γ ( S t , A t ) ] , (15) \tilde{Q}_{t+1}^{\gamma}(S_t, A_t) \doteq \tilde{Q}_{t}^{\gamma}(S_t, A_t) + \alpha_t \left[ R_{t+1} - f(\tilde{Q}_{t}^{\gamma}) + \gamma \max_{a'} \tilde{Q}_{t}^{\gamma}(S_{t+1}, a') - \tilde{Q}_{t}^{\gamma}(S_t, A_t) \right], \tag{15} Q~t+1γ(St,At)≐Q~tγ(St,At)+αt[Rt+1−f(Q~tγ)+γa′maxQ~tγ(St+1,a′)−Q~tγ(St,At)],(15)
相对 Q-learning 的更新公式 (式15)
相对 Q-learning 的一般形式写为 Q ~ t + 1 γ ( S t , A t ) = Q ~ t γ ( S t , A t ) + α t [ R t + 1 − f ( Q ~ t γ ) + γ max a ′ Q ~ t γ ( S t + 1 , a ′ ) − Q ~ t γ ( S t , A t ) ] , \tilde{Q}_{t+1}^{\gamma}(S_t, A_t) = \tilde{Q}_t^{\gamma}(S_t, A_t) + \alpha_t \Bigl[ R_{t+1} - f(\tilde{Q}_t^{\gamma}) + \gamma\,\max_{a'} \tilde{Q}_t^{\gamma}(S_{t+1}, a') - \tilde{Q}_t^{\gamma}(S_t, A_t) \Bigr], Q~t+1γ(St,At)=Q~tγ(St,At)+αt[Rt+1−f(Q~tγ)+γa′maxQ~tγ(St+1,a′)−Q~tγ(St,At)], 其中定义了一个函数 f ( Q ~ t γ ) ≐ κ ∑ s , a μ ( s , a ) Q ~ t γ ( s , a ) . f(\tilde{Q}_t^{\gamma}) \doteq \kappa \sum_{s,a} \mu(s,a)\,\tilde{Q}_t^{\gamma}(s,a). f(Q~tγ)≐κs,a∑μ(s,a)Q~tγ(s,a). 这里:
- μ ( s , a ) \mu(s,a) μ(s,a) 是定义在状态-动作对上的概率质量函数,即对所有 s , a s,a s,a 有 ∑ s , a μ ( s , a ) = 1 , μ ( s , a ) ≥ 0. \sum_{s,a} \mu(s,a) = 1, \quad \mu(s,a)\ge0. s,a∑μ(s,a)=1,μ(s,a)≥0.
- κ > 0 \kappa>0 κ>0 是一个标量参数。
特例的参数选择
我们看到公式(16)中,“减去”的部分写作 η ∑ s , a Q ~ t γ ( s , a ) . \eta \sum_{s,a} \tilde{Q}_t^{\gamma}(s,a). ηs,a∑Q~tγ(s,a).
如果在相对 Q-learning 的一般形式中选取 μ ( s , a ) = 1 ∣ S ∣ ∣ A ∣ ∀ s , a , \mu(s,a) = \frac{1}{|\mathcal{S}||\mathcal{A}|} \quad \forall s,a, μ(s,a)=∣S∣∣A∣1∀s,a, 那么 ∑ s , a μ ( s , a ) Q ~ t γ ( s , a ) = 1 ∣ S ∣ ∣ A ∣ ∑ s , a Q ~ t γ ( s , a ) . \sum_{s,a} \mu(s,a) \tilde{Q}_t^{\gamma}(s,a) = \frac{1}{|\mathcal{S}||\mathcal{A}|} \sum_{s,a} \tilde{Q}_t^{\gamma}(s,a). s,a∑μ(s,a)Q~tγ(s,a)=∣S∣∣A∣1s,a∑Q~tγ(s,a). 令 κ = η ∣ S ∣ ∣ A ∣ , \kappa = \eta\, |\mathcal{S}||\mathcal{A}|, κ=η∣S∣∣A∣, 则 f ( Q ~ t γ ) = κ ∑ s , a μ ( s , a ) Q ~ t γ ( s , a ) = η ∣ S ∣ ∣ A ∣ × 1 ∣ S ∣ ∣ A ∣ ∑ s , a Q ~ t γ ( s , a ) = η ∑ s , a Q ~ t γ ( s , a ) . f(\tilde{Q}_t^{\gamma}) = \kappa \sum_{s,a} \mu(s,a) \tilde{Q}_t^{\gamma}(s,a) = \eta\, |\mathcal{S}||\mathcal{A}| \times \frac{1}{|\mathcal{S}||\mathcal{A}|}\sum_{s,a} \tilde{Q}_t^{\gamma}(s,a) = \eta \sum_{s,a} \tilde{Q}_t^{\gamma}(s,a). f(Q~tγ)=κs,a∑μ(s,a)Q~tγ(s,a)=η∣S∣∣A∣×∣S∣∣A∣1s,a∑Q~tγ(s,a)=ηs,a∑Q~tγ(s,a).
Devraj 和 Meyn(2021 年)的收敛结果就适用了。也就是说:
Q
~
t
γ
→
Q
~
∞
γ
≐
q
∗
γ
−
κ
1
−
γ
+
κ
μ
⊤
q
∗
γ
1
\tilde{\mathbf{Q}}_{t}^{\gamma} \to \tilde{\mathbf{Q}}_{\infty}^{\gamma} \doteq \mathbf{q}_{\ast}^{\gamma} - \frac{\kappa}{1-\gamma+\kappa} \mu^{\top} \mathbf{q}_{\ast}^{\gamma} \mathbf{1}
Q~tγ→Q~∞γ≐q∗γ−1−γ+κκμ⊤q∗γ1
=
q
∗
γ
−
η
1
−
γ
+
η
∣
S
∣
∣
A
∣
∑
s
,
a
q
∗
γ
(
s
,
a
)
1.
(17)
= \mathbf{q}_{\ast}^{\gamma} - \frac{\eta}{1-\gamma+\eta |\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\ast}^{\gamma}(s,a) \mathbf{1}. \tag{17}
=q∗γ−1−γ+η∣S∣∣A∣ηs,a∑q∗γ(s,a)1.(17)
Q ~ ∞ γ = q ∗ γ − k 1 − γ 1 , \tilde{\mathbf{Q}}_{\infty}^{\gamma} = \mathbf{q}_{\ast}^{\gamma} - \frac{k}{1-\gamma} \mathbf{1}, Q~∞γ=q∗γ−1−γk1,
解的结构:相对 Bellman 方程
当算法收敛时, Q ~ ∞ γ \tilde{Q}_\infty^\gamma Q~∞γ 会满足一个“相对 Bellman 方程”:
Q ~ ∞ γ ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r − f ( Q ~ ∞ γ ) + γ max a ′ Q ~ ∞ γ ( s ′ , a ′ ) ] . \tilde{Q}_\infty^\gamma(s,a) = \sum_{s',r} p(s',r\mid s,a)\Bigl[r - f(\tilde{Q}_\infty^\gamma) + \gamma \max_{a'}\tilde{Q}_\infty^\gamma(s',a')\Bigr]. Q~∞γ(s,a)=s′,r∑p(s′,r∣s,a)[r−f(Q~∞γ)+γa′maxQ~∞γ(s′,a′)].
关键结论:该方程的解与“标准”最优 Q 值 q ∗ γ \mathbf{q}_\ast^\gamma q∗γ 之间只差一个对所有 ( s , a ) (s,a) (s,a)都相同的常数项。这是因为:
- 标准 Q-learning 的最优解满足: q ∗ γ ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ max a ′ q ∗ γ ( s ′ , a ′ ) ] . q_\ast^\gamma(s,a) = \sum_{s',r}p(s',r\mid s,a)\Bigl[r + \gamma\max_{a'}q_\ast^\gamma(s',a')\Bigr]. q∗γ(s,a)=s′,r∑p(s′,r∣s,a)[r+γa′maxq∗γ(s′,a′)].
- 相对 Q-learning 的解只是在“奖励”处多减去一个常数 f ( Q ~ ∞ γ ) f(\tilde{Q}_\infty^\gamma) f(Q~∞γ)。
- 若一个解 Q ~ ∞ γ \tilde{Q}_\infty^\gamma Q~∞γ 与 q ∗ γ \mathbf{q}_\ast^\gamma q∗γ 在每个 ( s , a ) (s,a) (s,a) 相差同一个数 c c c,则把 c c c 带入 Bellman 方程时会刚好抵消掉那份“额外的常数奖励”,故这种“差一个常数”的结构必然出现。
换言之,
Q ~ ∞ γ ( s , a ) = q ∗ γ ( s , a ) − (常数项) , \tilde{Q}_\infty^\gamma(s,a) = q_\ast^\gamma(s,a) \;-\; \text{(常数项)}, Q~∞γ(s,a)=q∗γ(s,a)−(常数项), 其中“常数项”与 ( s , a ) (s,a) (s,a) 无关,但会依赖 μ \mu μ、 κ \kappa κ、 q ∗ γ \mathbf{q}_\ast^\gamma q∗γ 等。
常数项大小: κ 1 − γ + κ μ ⊤ q ∗ γ \frac{\kappa}{1-\gamma+\kappa}\mu^\top \mathbf{q}_\ast^\gamma 1−γ+κκμ⊤q∗γ
Devraj & Meyn 的理论结果更精确地告诉我们:那个常数项正好是
κ 1 − γ + κ μ ⊤ q ∗ γ , \frac{\kappa}{\,1-\gamma + \kappa\,}\;\mu^{\top}\mathbf{q}_\ast^\gamma, 1−γ+κκμ⊤q∗γ, 其中
μ ⊤ q ∗ γ = ∑ s , a μ ( s , a ) q ∗ γ ( s , a ) . \mu^{\top}\mathbf{q}_\ast^\gamma = \sum_{s,a} \mu(s,a)\,q_\ast^\gamma(s,a). μ⊤q∗γ=s,a∑μ(s,a)q∗γ(s,a).
为什么会是这个值? 大致思路:
- 令 c = κ 1 − γ + κ μ ⊤ q ∗ γ . c = \frac{\kappa}{\,1-\gamma + \kappa\,}\;\mu^{\top}\mathbf{q}_\ast^\gamma. c=1−γ+κκμ⊤q∗γ.
- 考虑 Q ~ ( s , a ) = q ∗ γ ( s , a ) − c . \tilde{Q}(s,a) = q_\ast^\gamma(s,a) - c. Q~(s,a)=q∗γ(s,a)−c.
- 验证它满足相对 Bellman 方程(或其不动点条件)。
- 利用不可约性和步长条件等,可知算法会收敛到该不动点。
具体推导中,会先假设 Q ~ \tilde{Q} Q~与 q ∗ γ q_\ast^\gamma q∗γ差一个常数 c c c,带入相对 Bellman 方程,解出 c c c 的值就是 κ 1 − γ + κ μ ⊤ q ∗ γ \frac{\kappa}{1-\gamma+\kappa}\mu^\top q_\ast^\gamma 1−γ+κκμ⊤q∗γ。这是(17)中的第一种写法。
特殊选择: μ \mu μ 均匀分布、 κ = η ∣ S ∣ ∣ A ∣ \kappa=\eta|\mathcal{S}||\mathcal{A}| κ=η∣S∣∣A∣
在你给出的第二种等号中,我们把
κ = η ∣ S ∣ ∣ A ∣ , μ ( s , a ) = 1 ∣ S ∣ ∣ A ∣ , \kappa = \eta\,|\mathcal{S}||\mathcal{A}|, \quad \mu(s,a) = \frac{1}{|\mathcal{S}||\mathcal{A}|}, κ=η∣S∣∣A∣,μ(s,a)=∣S∣∣A∣1, 则
μ ⊤ q ∗ γ = ∑ s , a 1 ∣ S ∣ ∣ A ∣ q ∗ γ ( s , a ) = 1 ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) . \mu^\top \mathbf{q}_\ast^\gamma = \sum_{s,a}\,\frac{1}{|\mathcal{S}||\mathcal{A}|}\,q_\ast^\gamma(s,a) = \frac{1}{|\mathcal{S}||\mathcal{A}|}\sum_{s,a}q_\ast^\gamma(s,a). μ⊤q∗γ=s,a∑∣S∣∣A∣1q∗γ(s,a)=∣S∣∣A∣1s,a∑q∗γ(s,a). 带入后就得到 κ 1 − γ + κ μ ⊤ q ∗ γ = η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ × 1 ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) = η 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) . \frac{\kappa}{\,1-\gamma + \kappa\,}\,\mu^\top \mathbf{q}_\ast^\gamma = \frac{\eta\,|\mathcal{S}||\mathcal{A}|}{\,1-\gamma + \eta\,|\mathcal{S}||\mathcal{A}|\!} \times \frac{1}{|\mathcal{S}||\mathcal{A}|}\sum_{s,a}q_\ast^\gamma(s,a) = \frac{\eta}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!} \sum_{s,a} q_\ast^\gamma(s,a). 1−γ+κκμ⊤q∗γ=1−γ+η∣S∣∣A∣η∣S∣∣A∣×∣S∣∣A∣1s,a∑q∗γ(s,a)=1−γ+η∣S∣∣A∣ηs,a∑q∗γ(s,a). 这正是公式(17)右边的减去那一项
η 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) 1. \frac{\eta}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\sum_{s,a} q_\ast^\gamma(s,a)\;\mathbf{1}. 1−γ+η∣S∣∣A∣ηs,a∑q∗γ(s,a)1.
因此:
R
ˉ
t
→
R
ˉ
∞
≐
η
∑
s
,
a
q
∗
γ
(
s
,
a
)
−
η
2
∣
S
∣
∣
A
∣
1
−
γ
+
η
∣
S
∣
∣
A
∣
∑
s
,
a
q
∗
γ
(
s
,
a
)
\bar{R}_t \to \bar{R}_{\infty} \doteq \eta \sum_{s,a} q_{\ast}^{\gamma}(s,a) - \frac{\eta^2 |\mathcal{S}||\mathcal{A}|}{1-\gamma+\eta |\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\ast}^{\gamma}(s,a)
Rˉt→Rˉ∞≐ηs,a∑q∗γ(s,a)−1−γ+η∣S∣∣A∣η2∣S∣∣A∣s,a∑q∗γ(s,a)
=
η
(
1
−
γ
)
1
−
γ
+
η
∣
S
∣
∣
A
∣
∑
s
,
a
q
∗
γ
(
s
,
a
)
.
(18)
= \frac{\eta (1-\gamma)}{1-\gamma+\eta |\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\ast}^{\gamma}(s,a). \tag{18}
=1−γ+η∣S∣∣A∣η(1−γ)s,a∑q∗γ(s,a).(18)
1. Q ~ ∞ γ \tilde{Q}_\infty^\gamma Q~∞γ的展开
根据(17):
Q ~ ∞ γ ( s , a ) = q ∗ γ ( s , a ) − η 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s ′ , a ′ q ∗ γ ( s ′ , a ′ ) . \tilde{Q}_\infty^\gamma(s,a) \;=\; q_{\ast}^\gamma(s,a) \;-\; \frac{\eta}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!} \;\sum_{s',a'} q_{\ast}^\gamma(s',a'). Q~∞γ(s,a)=q∗γ(s,a)−1−γ+η∣S∣∣A∣ηs′,a′∑q∗γ(s′,a′).
由于它对所有 ( s , a ) (s,a) (s,a) 都一样地减去一个常数项
Δ = η 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s ′ , a ′ q ∗ γ ( s ′ , a ′ ) , \Delta \;=\; \frac{\eta}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!} \;\sum_{s',a'} q_{\ast}^\gamma(s',a'), Δ=1−γ+η∣S∣∣A∣ηs′,a′∑q∗γ(s′,a′), 我们可以写作 Q ~ ∞ γ ( s , a ) = q ∗ γ ( s , a ) − Δ . \tilde{Q}_\infty^\gamma(s,a) = q_{\ast}^\gamma(s,a) - \Delta. Q~∞γ(s,a)=q∗γ(s,a)−Δ.
2. 对 ( s , a ) (s,a) (s,a) 求和
现在, ∑ s , a Q ~ ∞ γ ( s , a ) = ∑ s , a [ q ∗ γ ( s , a ) − Δ ] . \sum_{s,a}\,\tilde{Q}_\infty^\gamma(s,a) = \sum_{s,a}\Bigl[q_{\ast}^\gamma(s,a)-\Delta\Bigr]. s,a∑Q~∞γ(s,a)=s,a∑[q∗γ(s,a)−Δ].
- 第一项: ∑ s , a q ∗ γ ( s , a ) \sum_{s,a} q_{\ast}^\gamma(s,a) ∑s,aq∗γ(s,a),记作 Q ∗ = ∑ s , a q ∗ γ ( s , a ) Q_\ast = \sum_{s,a} q_{\ast}^\gamma(s,a) Q∗=∑s,aq∗γ(s,a)。
- 第二项: Δ \Delta Δ是常数,对每个 ( s , a ) (s,a) (s,a) 都相同,因此加和 ∣ S ∣ ∣ A ∣ |\mathcal{S}||\mathcal{A}| ∣S∣∣A∣ 次: ∑ s , a ( − Δ ) = − Δ × ∣ S ∣ ∣ A ∣ . \sum_{s,a} (-\Delta) = -\Delta \times |\mathcal{S}||\mathcal{A}|. s,a∑(−Δ)=−Δ×∣S∣∣A∣.故
∑ s , a Q ~ ∞ γ ( s , a ) = ( ∑ s , a q ∗ γ ( s , a ) ) − ∣ S ∣ ∣ A ∣ Δ . \sum_{s,a}\,\tilde{Q}_\infty^\gamma(s,a) = \Bigl(\sum_{s,a} q_{\ast}^\gamma(s,a)\Bigr) - |\mathcal{S}||\mathcal{A}|\;\Delta. s,a∑Q~∞γ(s,a)=(s,a∑q∗γ(s,a))−∣S∣∣A∣Δ. 再把 Δ \Delta Δ 的表达式带进去:
Δ = η 1 − γ + η ∣ S ∣ ∣ A ∣ Q ∗ , \Delta = \frac{\eta}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\;Q_\ast, Δ=1−γ+η∣S∣∣A∣ηQ∗, 就有
∣ S ∣ ∣ A ∣ Δ = η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ Q ∗ . |\mathcal{S}||\mathcal{A}|\;\Delta = \frac{\eta\,|\mathcal{S}||\mathcal{A}|}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\;Q_\ast. ∣S∣∣A∣Δ=1−γ+η∣S∣∣A∣η∣S∣∣A∣Q∗. 因此
∑ s , a Q ~ ∞ γ ( s , a ) = Q ∗ − η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ Q ∗ = Q ∗ ( 1 − η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ ) . \sum_{s,a}\,\tilde{Q}_\infty^\gamma(s,a) = Q_\ast - \frac{\eta\,|\mathcal{S}||\mathcal{A}|}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\;Q_\ast = Q_\ast\Bigl(1 - \frac{\eta\,|\mathcal{S}||\mathcal{A}|}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\Bigr). s,a∑Q~∞γ(s,a)=Q∗−1−γ+η∣S∣∣A∣η∣S∣∣A∣Q∗=Q∗(1−1−γ+η∣S∣∣A∣η∣S∣∣A∣).
做一个分子分母上的运算:
1 − η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ = 1 − γ + η ∣ S ∣ ∣ A ∣ − η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ = 1 − γ 1 − γ + η ∣ S ∣ ∣ A ∣ . 1 - \frac{\eta\,|\mathcal{S}||\mathcal{A}|}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!} = \frac{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\, - \eta\,|\mathcal{S}||\mathcal{A}|\!}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!} = \frac{\,1-\gamma\,}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}. 1−1−γ+η∣S∣∣A∣η∣S∣∣A∣=1−γ+η∣S∣∣A∣1−γ+η∣S∣∣A∣−η∣S∣∣A∣=1−γ+η∣S∣∣A∣1−γ. 故 ∑ s , a Q ~ ∞ γ ( s , a ) = 1 − γ 1 − γ + η ∣ S ∣ ∣ A ∣ Q ∗ . \sum_{s,a}\,\tilde{Q}_\infty^\gamma(s,a) = \frac{1-\gamma}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\;Q_\ast. s,a∑Q~∞γ(s,a)=1−γ+η∣S∣∣A∣1−γQ∗.
3. 最终得到 R ˉ ∞ \bar{R}_\infty Rˉ∞
因为
R ˉ ∞ = η ∑ s , a Q ~ ∞ γ ( s , a ) , \bar{R}_\infty = \eta \sum_{s,a}\,\tilde{Q}_\infty^\gamma(s,a), Rˉ∞=ηs,a∑Q~∞γ(s,a), 于是
R ˉ ∞ = η × 1 − γ 1 − γ + η ∣ S ∣ ∣ A ∣ Q ∗ = η ( 1 − γ ) 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) . \bar{R}_\infty = \eta \times \frac{\,1-\gamma\,}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\;Q_\ast = \frac{\eta(1-\gamma)}{\,1-\gamma + \eta|\mathcal{S}||\mathcal{A}|\!}\;\sum_{s,a}q_{\ast}^\gamma(s,a). Rˉ∞=η×1−γ+η∣S∣∣A∣1−γQ∗=1−γ+η∣S∣∣A∣η(1−γ)s,a∑q∗γ(s,a).
这正是(18):R ˉ ∞ = η ∑ s , a q ∗ γ ( s , a ) − η 2 ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) = η ( 1 − γ ) 1 − γ + η ∣ S ∣ ∣ A ∣ ∑ s , a q ∗ γ ( s , a ) . \bar{R}_\infty = \eta \sum_{s,a} q_{\ast}^{\gamma}(s,a) - \frac{\eta^2 |\mathcal{S}||\mathcal{A}|}{1-\gamma+\eta |\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\ast}^{\gamma}(s,a) = \frac{\eta (1-\gamma)}{1-\gamma+\eta |\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\ast}^{\gamma}(s,a). Rˉ∞=ηs,a∑q∗γ(s,a)−1−γ+η∣S∣∣A∣η2∣S∣∣A∣s,a∑q∗γ(s,a)=1−γ+η∣S∣∣A∣η(1−γ)s,a∑q∗γ(s,a).
现在我们验证 ( Q ~ ∞ γ , R ˉ ∞ ) (\tilde{\mathbf{Q}}_{\infty}^{\gamma}, \bar{{R}}_{\infty}) (Q~∞γ,Rˉ∞)满足Bellman方程(11)。
回顾Bellman方程的解形式如下:
q
~
∗
γ
+
k
1
−
γ
1
,
r
(
π
γ
∗
)
−
k
.
\tilde{\mathbf{q}}_{\ast}^{\gamma} + \frac{k}{1-\gamma} \mathbf{1}, \quad r(\pi^{\ast}_{\gamma}) - k.
q~∗γ+1−γk1,r(πγ∗)−k.
由于
q
~
∗
γ
=
q
∗
γ
−
r
(
π
γ
∗
)
1
−
γ
,
\tilde{\mathbf{q}}_{\ast}^{\gamma} = \mathbf{q}_{\ast}^{\gamma} - \frac{r(\pi^{\ast}_ {\gamma})}{1-\gamma},
q~∗γ=q∗γ−1−γr(πγ∗),
我们可以将解的形式重新表示为折扣值函数的形式:
q
∗
γ
+
k
−
r
(
π
γ
∗
)
1
−
γ
1
,
r
(
π
γ
∗
)
−
k
,
\mathbf{q}_{\ast}^{\gamma} + \frac{k - r(\pi^{\ast}_{\gamma})}{1-\gamma} \mathbf{1}, \quad r(\pi^{\ast}_{\gamma}) - k,
q∗γ+1−γk−r(πγ∗)1,r(πγ∗)−k,
或
q
∗
γ
−
d
1
−
γ
1
,
d
.
\mathbf{q}_{\ast}^{\gamma} - \frac{d}{1-\gamma} \mathbf{1}, \quad d.
q∗γ−1−γd1,d.
其中
d
=
η
(
1
−
γ
)
1
−
γ
+
η
∣
S
∣
∣
A
∣
∑
s
,
a
q
∗
γ
(
s
,
a
)
.
d = \frac{\eta(1-\gamma)}{1-\gamma+\eta |\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\ast}^{\gamma}(s,a).
d=1−γ+η∣S∣∣A∣η(1−γ)s,a∑q∗γ(s,a).
因此,我们可以看出
(
Q
~
∞
γ
,
R
ˉ
∞
)
(\tilde{\mathbf{Q}}_{\infty}^{\gamma}, \bar{R}_{\infty})
(Q~∞γ,Rˉ∞)是Bellman方程的一个解对。
现在我们可以刻画 R ˉ ∞ \bar{R}_{\infty} Rˉ∞与 r ( π γ ∗ ) r(\pi^{\ast}_{\gamma}) r(πγ∗)的接近程度。一般来说,对于表达式 R ˉ ∞ \bar{R}_{\infty} Rˉ∞(18)较为复杂,但一个特殊情况可以帮助理解。
我们知道,在策略的稳态分布
d
π
(
s
,
a
)
d_{\pi}(s,a)
dπ(s,a)下,折扣值函数的平均值满足:
∑
s
,
a
d
π
(
s
,
a
)
q
π
γ
(
s
,
a
)
=
r
(
π
)
1
−
γ
.
\sum_{s,a} d_{\pi}(s, a) q_{\pi}^{\gamma}(s, a) = \frac{r(\pi)}{1-\gamma}.
s,a∑dπ(s,a)qπγ(s,a)=1−γr(π).
现在假设状态-动作对的稳态分布是均匀分布,即:
d
π
(
s
,
a
)
=
1
∣
S
∣
∣
A
∣
,
∀
s
,
a
.
d_{\pi}(s, a) = \frac{1}{|\mathcal{S}||\mathcal{A}|}, \quad \forall s,a.
dπ(s,a)=∣S∣∣A∣1,∀s,a.
对于该策略,有:
1
∣
S
∣
∣
A
∣
∑
s
,
a
q
π
γ
(
s
,
a
)
=
r
(
π
)
1
−
γ
.
\frac{1}{|\mathcal{S}||\mathcal{A}|} \sum_{s,a} q_{\pi}^{\gamma}(s, a) = \frac{r(\pi)}{1-\gamma}.
∣S∣∣A∣1s,a∑qπγ(s,a)=1−γr(π).
将其代入公式(18),我们得到:
R ˉ ∞ = η ∣ S ∣ ∣ A ∣ 1 − γ + η ∣ S ∣ ∣ A ∣ r ( π γ ∗ ) . (19) \bar{R}_{\infty} = \frac{\eta |\mathcal{S}||\mathcal{A}|}{1 - \gamma + \eta |\mathcal{S}||\mathcal{A}|} r(\pi_{\gamma}^{\ast}). \tag{19} Rˉ∞=1−γ+η∣S∣∣A∣η∣S∣∣A∣r(πγ∗).(19)
我们可以看到,当 η ∣ S ∣ ∣ A ∣ ≫ 1 − γ \eta |\mathcal{S}||\mathcal{A}| \gg 1 - \gamma η∣S∣∣A∣≫1−γ时, R ˉ ∞ \bar{R}_{\infty} Rˉ∞ 从下方逼近真实奖励率 r ( π γ ∗ ) r(\pi_{\gamma}^{\ast}) r(πγ∗)。在状态和动作空间较大的许多问题中,这一条件是可以满足的。
需要注意的是,这一结论来自于一个特殊情况。在更一般的情况下, R ˉ ∞ \bar{R}_{\infty} Rˉ∞(以及 Q ~ ∞ γ \tilde{\mathbf{Q}}_{\infty}^{\gamma} Q~∞γ)的收敛点较难直观解释,这是我们希望在未来工作中解决的一个问题。然而,公式(19)可以作为一个经验法则。
我们以中心化折扣值的一个性质作为本节的结尾。
引理1:当按由策略 π \pi π诱导的on-policy分布 d π \mathbf{d}_{\pi} dπ 进行加权时,中心化折扣值 v ~ π γ \tilde{\mathbf{v}}_{\pi}^{\gamma} v~πγ的加权平均值为零:
d π ⊤ v ~ π γ = 0. (20) \mathbf{d}_{\pi}^{\top} \tilde{\mathbf{v}}_{\pi}^{\gamma} = 0. \tag{20} dπ⊤v~πγ=0.(20)
证明 该证明是显然的,只需利用性质:
d
π
⊤
v
π
γ
=
r
(
π
)
1
−
γ
\mathbf{d}_{\pi}^{\top} \mathbf{v}_{\pi}^{\gamma} = \frac{r(\pi)}{1 - \gamma}
dπ⊤vπγ=1−γr(π)
(参见 Sutton & Barto, 2018,第10.4节,或 Singh et al., 1994,第5.3节)。
由于
v
~
π
γ
=
v
π
γ
−
r
(
π
)
1
−
γ
1
\tilde{\mathbf{v}}_{\pi}^{\gamma} = \mathbf{v}_{\pi}^{\gamma} - \frac{r(\pi)}{1 - \gamma} \mathbf{1}
v~πγ=vπγ−1−γr(π)1
(见公式(3)),因此:
d
π
⊤
v
~
π
γ
=
0.
\mathbf{d}_{\pi}^{\top} \tilde{\mathbf{v}}_{\pi}^{\gamma} = 0.
dπ⊤v~πγ=0.
v ~ π γ ( s ) ≐ E [ ∑ t = 0 ∞ γ t ( R t + 1 − r ( π ) ) ∣ S t = s , A t : ∞ ∼ π ] , \tilde{v}_{\pi}^{\gamma}(s) \doteq \mathbb{E} \left[ \sum_{t=0}^{\infty} \gamma^t \left( R_{t+1} - r(\pi) \right) \mid S_t = s, A_{t:\infty} \sim \pi \right], v~πγ(s)≐E[t=0∑∞γt(Rt+1−r(π))∣St=s,At:∞∼π], v π γ ( s ) = r ( π ) 1 − γ + v ~ π γ ( s ) + e π γ ( s ) ⏞ v ~ π γ ( s ) , ∀ s , (3) v_{\pi}^{\gamma}(s) = \frac{r(\pi)}{1-\gamma} + \overbrace{\tilde{v}_{\pi}^{\gamma}(s) + e_{\pi}^{\gamma}(s)}^{{\tilde{v}_{\pi}^{\gamma}(s)}}, \quad \forall s, \tag{3} vπγ(s)=1−γr(π)+v~πγ(s)+eπγ(s) v~πγ(s),∀s,(3)
C 实验细节
预测任务
“TD-learning with rewards centered by an oracle” 指的是一种使用中心化的TD学习变体,其中平均奖励估计值固定为(某种方式已知的)目标策略的真实平均奖励。换句话说,从一开始便已知真实的平均奖励,并在每个时间步从观察到的奖励中减去该值。
这一算法是一个很好的基准,因为在固定目标策略的平均奖励不随时间变化的 静态问题中,其学习速率可能是所有基于TD的预测算法中的理论最优解。
每种算法都在随机游走问题(random-walk problem)上运行50,000步,并重复50次。
- 步长参数 α \alpha α每步衰减0.99999。
- 所有算法的值估计及TD-with-centering的平均奖励估计均初始化为零。
- 测试的
α
\alpha
α值集合:
α ∈ { 0.01 , 0.02 , 0.04 , 0.08 , 0.16 , 0.32 } \alpha \in \{0.01, 0.02, 0.04, 0.08, 0.16, 0.32\} α∈{0.01,0.02,0.04,0.08,0.16,0.32}- 我们选择在整个训练过程中RMSVE最低的
α
\alpha
α,对于标准未中心化方法,最佳
α
\alpha
α为:
- γ = 0.9 \gamma = 0.9 γ=0.9时: α = 0.04 \alpha = 0.04 α=0.04
- γ = 0.99 \gamma = 0.99 γ=0.99时: α = 0.08 \alpha = 0.08 α=0.08
- 我们选择在整个训练过程中RMSVE最低的
α
\alpha
α,对于标准未中心化方法,最佳
α
\alpha
α为:
- 对应于这些步长值,我们测试了中心化方法的
η
\eta
η参数,范围为:
η ∈ { 1 / 640 , 1 / 160 , 1 / 40 , 1 / 10 } \eta \in \{1/640, 1/160, 1/40, 1/10\} η∈{1/640,1/160,1/40,1/10}- 选择满足上述标准的 η \eta η值。
- 需要注意,这不一定是中心化方法的最优 ( α , η ) (\alpha, \eta) (α,η)组合,但这无妨,因为我们确保了基准方法的超参数经过了适当调整。
控制任务
表2列出了所有实验环境中共同使用的超参数:
- 折扣因子 γ \gamma γ,
- 步长 α \alpha α,
- 中心化参数 η \eta η。
需要注意的是,设定 η = 0 \eta = 0 η=0并初始化平均奖励估计为零时,带奖励中心化的Q-learning完全等价于标准Q-learning。
对于每组参数,算法运行 N N N步并重复 R R R次。各问题的 ( N , R ) (N, R) (N,R)参数对如下:
- 访问控制排队(Access-Control Queuing): ( 80 k , 50 ) (80k, 50) (80k,50)
- PuckWorld: ( 300 k , 20 ) (300k, 20) (300k,20)
- Pendulum: ( 100 k , 15 ) (100k, 15) (100k,15)
- Catch(线性函数逼近): ( 20 k , 50 ) (20k, 50) (20k,50)
- Catch(非线性函数逼近): ( 80 k , 15 ) (80k, 15) (80k,15)
奖励偏移(Reward Shift)
为了生成不同问题的变体,我们将奖励整体平移一个数值,数值大致与原问题中的奖励尺度成比例:
- 访问控制排队 & PuckWorld: { − 8 , − 4 , 0 , 4 , 8 } \{-8, -4, 0, 4, 8\} {−8,−4,0,4,8}
- Pendulum: { − 12 , − 6 , 0 , 6 , 12 } \{-12, -6, 0, 6, 12\} {−12,−6,0,6,12}
- Catch: { − 4 , − 2 , 0 , 2 , 4 } \{-4, -2, 0, 2, 4\} {−4,−2,0,2,4}
智能体的行为策略始终为 ϵ \epsilon ϵ-贪心策略( ϵ \epsilon ϵ-greedy),其中 ϵ \epsilon ϵ固定为0.1。
在所有实验中:
- 平均奖励估计初始化为零。
- 值估计权重的初始化方式:
- 在表格型和线性实验中,所有权重均初始化为零。
- 在非线性实验中,权重初始化为接近零的小值(使用PyTorch默认初始化方式,Paszke et al., 2019)。
在线性实验中,瓦片编码(tile coding)参数如下:
- Catch:使用16个 4 × 4 × 4 4 \times 4 \times 4 4×4×4大小的瓦片。
- PuckWorld:使用32个 4 × 4 × 4 × 4 × 4 × 4 4 \times 4 \times 4 \times 4 \times 4 \times 4 4×4×4×4×4×4大小的瓦片。
这些瓦片数量和大小未针对任何特定问题或算法进行优化。
我们在深度强化学习(非线性)实验中设定了常用的参数值:
- 批量大小(batch size)设为64。
- 值网络(value-network)和奖励率(reward-rate)参数每32步更新一次。
- 目标网络(target network)每128步更新一次。
- 经验回放缓冲区(experience buffer)大小设为10,000。
除了主要的步长参数,Adam优化器(Adam optimizer)使用PyTorch默认参数(Kingma & Ba, 2014)。
在非线性设置(即DQN)中,当前形式的奖励中心化需要比表格型或线性版本更大的 η \eta η值。
原因在于深度强化学习算法的实现方式,特别是小批量(minibatch)训练的影响:
- 在算法3的第10行,TD误差在小批量转换(minibatch of transitions)上取均值。
- 这一均值操作可能导致用于奖励率更新的总体梯度非常小,因此需要更大的 η \eta η值来补偿这一效应。
在我们的实现中,我们添加了两个简单的优化:
-
使平均奖励估计完全独立于其初始化值:
- 这可以通过 无偏的常数步长技巧(unbiased constant step-size trick) 实现(参见 Sutton & Barto, 2018,第2.7节习题)。
-
加速平均奖励估计的更新传播:
- 具体方法如下:
- 首先计算TD误差,
- 然后更新奖励率估计,
- 接着使用新的奖励率估计重新计算TD误差,
- 最后更新值估计。
- 具体方法如下:
这些优化不会影响整体实验趋势,但以极小的计算成本带来了轻微但可察觉的提升,因此我们推荐使用这些优化。
在涉及问题奖励整体平移的实验中,各个问题变体上获得的奖励不能直接进行比较。
为直观理解这一点,设想原始问题中的前四个奖励值为 { 2 , 0 , 3 , 1 } \{2, 0, 3, 1\} {2,0,3,1}。
- 在奖励整体加5的变体中,这四个奖励可能变为 { 7 , 5 , 8 , 4 } \{7, 5, 8, 4\} {7,5,8,4}。
- 在后者问题中,智能体可能表面上表现得比前者更好,即使它的第四个奖励相对较低。
为了使比较具有意义,我们可以从智能体获得的奖励中减去最初添加到所有奖励的常数,即:
- 将奖励平移回去,以便在不同问题变体间进行公平比较。
我们在展示奖励平移实验的结果时采用了这一方法,
- 这在y轴标签中通过“shifted”一词明确标示。
图8–14补充了正文中展示的主要趋势:
- 随着折扣因子趋近于1,奖励中心化的有效性增强;
- 使用奖励中心化后,算法对奖励的任意常数偏移更具鲁棒性;
- 奖励中心化的性能对参数 η \eta η的选择具有较强的鲁棒性。
图8:参数研究展示了两种算法在访问控制排队问题变体上的性能敏感性。误差条表示一个标准误差,在某些情况下小于曲线的线宽。
- 最左侧:无中心化时,Q-learning在不同问题变体上的性能存在显著差异,这一现象在较宽范围的步长参数 α \alpha α下均成立。
- 中间至右侧:有中心化时,不同问题变体上的性能几乎相同,并且对参数 η \eta η的选择具有较强的鲁棒性。
- 所有曲线对应折扣因子 γ = 0.9 \gamma = 0.9 γ=0.9,在其他折扣因子下也观察到相同趋势。
图9:学习曲线展示了Q-learning在PuckWorld问题变体上(
γ
=
0.99
\gamma = 0.99
γ=0.99)的有无奖励中心化的表现。
- 无中心化时,算法在不同问题变体上的性能存在较大差异。
- 有中心化时,算法在各变体上的性能基本相同。
- 奖励中心化还显著加快了学习速度。
这些趋势在不同的 γ \gamma γ值下均保持一致。
图10:参数研究展示了算法在PuckWorld环境下对参数的敏感性。
- 最左侧:无中心化时,Q-learning在较大范围的 α \alpha α取值下表现较差。
- 中间至右侧:对于每个折扣因子,有中心化的Q-learning在较宽的 α \alpha α范围内表现更优。
图11:参数研究展示了算法在PuckWorld问题变体上的性能敏感性。误差条表示一个标准误差,在某些情况下小于曲线的线宽。
- 最左侧:无中心化时,Q-learning在不同问题变体上的性能存在显著差异,这一现象在较宽范围的步长参数 α \alpha α下均成立。
- 中间至右侧:有中心化时,Q-learning在不同问题变体上的性能基本相同,并且对参数 η \eta η的选择具有较强的鲁棒性。
- 所有曲线对应折扣因子 γ = 0.99 \gamma = 0.99 γ=0.99,在其他折扣因子下也观察到相同趋势。
图12:学习曲线展示了Q-learning在Pendulum问题变体上(
γ
=
0.8
\gamma = 0.8
γ=0.8)的有无奖励中心化的表现。
- 无中心化时,算法在不同问题变体上的性能存在较大差异。
- 有中心化时,算法在各变体上的性能基本相同。
- 奖励中心化还显著加快了学习速度。
这些趋势在不同的 γ \gamma γ值下均保持一致。
图13:参数研究展示了算法在Pendulum环境下对参数的敏感性。
- γ = 0.5 \gamma = 0.5 γ=0.5过小,无法有效解决该问题。
- 最左侧:当折扣因子大于0.9时,DQN的性能下降。
- 中间至右侧:对于每个折扣因子,有中心化的DQN在较宽的 α \alpha α范围内表现更优。
- 此外,中心化方法的性能对参数 η \eta η的选择不太敏感。
图14:参数研究展示了算法在
γ
=
0.8
\gamma = 0.8
γ=0.8时对Pendulum问题变体的敏感性。
- 最左侧:无中心化时,DQN在不同问题变体上的性能存在显著差异。
- 中间至右侧:有中心化时,DQN在较宽的步长参数 α \alpha α范围内,在不同问题变体上的性能基本相同,并且对参数 η \eta η的选择具有较强的鲁棒性。
我们还报告了PPO(Schulman et al., 2017)算法在有无奖励中心化情况下的初步实验结果。
我们选择在经典Mujoco问题(Todorov et al., 2012) 上进行测试。
- Mujoco环境通常被实现为情节性问题(episodic problems),
- 我们通过以下方式将其转换为持续性问题(continuing problems):
- 将情节截断参数(episode-truncation parameter)设置为一个极大的值;
- 若智能体进入不可恢复状态(unrecoverable state),则重置环境为起始状态,并给予一个较大的负奖励(若适用)。
在实验中,我们使用了基于值的中心化方法(公式(10)),其中 δ t \delta_t δt对应于PPO标准方法计算的优势估计(advantage estimates)。
图15:学习曲线展示了PPO在六个Mujoco环境的持续性版本中,有无奖励中心化的表现。
实线表示10次独立运行的均值,阴影区域表示一个标准误差。
图15展示了PPO在有无奖励中心化情况下的学习曲线。
- y轴表示智能体在最近1000个时间步内获得的平均奖励。
- 与本文所有其他实验一样,评估过程是在线进行的,即没有单独的训练或测试阶段。
由于超参数较多,深入研究需要更长时间,但在**初步实验(每个环境10次运行)**中,我们发现:
- 奖励中心化在所有问题上均带来轻微提升,
- 在Humanoid问题上的提升最为显著。
不同环境下对应于平均奖励估计的步长参数如下:
- Hopper: 1 E − 4 1E-4 1E−4
- HalfCheetah: 1 E − 3 1E-3 1E−3
- Walker2D: 2 E − 5 2E-5 2E−5
- Swimmer: 5 E − 5 5E-5 5E−5
- Humanoid: 1 E − 2 1E-2 1E−2
- Ant: 1 E − 4 1E-4 1E−4
D 相关方法的联系
与Devraj和Meyn(2021)同时,Schneckenreither(2020)发现Laurent级数分解表明,显式估计平均奖励可以完全去除偏移量。因此,他们提出了一种估计并减去平均奖励的算法,但有两个重要区别:
(a) 平均奖励估计仅在非探索性动作后更新;
(b) 算法使用两个折扣因子,以实现最强的最优性准则——Blackwell最优性。
Schneckenreither 未提供其算法的收敛性证明,但他们分析了如果算法收敛到期望的固定点,则最终策略将是(Blackwell)最优的。
Wan et al.(2021)指出,平均奖励估计可以在每个时间步更新,包括探索性动作的时间步,并证明了他们算法的几乎必然收敛性。结合Devraj和Meyn的研究,我们证明了基于值的奖励中心化Q-learning的收敛性。
奖励中心化与优势函数(Advantage Function)的关系
奖励中心化和优势函数带来的优势是正交的(orthogonal benefits)。
- 优势函数有利于actor(策略更新部分),减少策略空间更新的方差(Sutton & Barto, 2018;Schulman et al., 2016)。
- 奖励中心化则有利于critic(值函数估计)或基线估计,消除估计大型状态无关常数偏移的需要。
优势函数的计算方式如下:
a
π
γ
(
s
,
a
)
=
q
π
γ
(
s
,
a
)
−
v
π
γ
(
s
)
,
∀
s
,
a
.
a_{\pi}^{\gamma}(s, a) = q_{\pi}^{\gamma}(s, a) - v_{\pi}^{\gamma}(s), \quad \forall s, a.
aπγ(s,a)=qπγ(s,a)−vπγ(s),∀s,a.
其中,
q
π
γ
(
s
,
a
)
q_{\pi}^{\gamma}(s, a)
qπγ(s,a)和
v
π
γ
(
s
)
v_{\pi}^{\gamma}(s)
vπγ(s)都包含了状态无关的偏移量
r
(
π
)
/
(
1
−
γ
)
r(\pi)/(1-\gamma)
r(π)/(1−γ)。
当计算 q π γ ( s , a ) q_{\pi}^{\gamma}(s, a) qπγ(s,a)和 v π γ ( s ) v_{\pi}^{\gamma}(s) vπγ(s)的差值时 ,偏移量相互抵消,其净效应为零。
但关键问题在于,状态值和动作值的估计都包含这一大偏移量,因此奖励中心化可以去除估计值中不必要的偏移量,从而简化critic的估计问题。
同时,奖励中心化不会改变actor的更新,因为优势函数本身不受影响:
a
~
π
γ
(
s
,
a
)
=
q
~
π
γ
(
s
,
a
)
−
v
~
π
γ
(
s
)
,
\tilde{a}_{\pi}^{\gamma}(s, a) = \tilde{q}_{\pi}^{\gamma}(s, a) - \tilde{v}_{\pi}^{\gamma}(s),
a~πγ(s,a)=q~πγ(s,a)−v~πγ(s),
其中:
q
~
π
γ
(
s
,
a
)
=
q
π
γ
(
s
,
a
)
−
r
(
π
)
1
−
γ
,
v
~
π
γ
(
s
)
=
v
π
γ
(
s
)
−
r
(
π
)
1
−
γ
.
\tilde{q}_{\pi}^{\gamma}(s, a) = q_{\pi}^{\gamma}(s, a) - \frac{r(\pi)}{1 - \gamma}, \quad \tilde{v}_{\pi}^{\gamma}(s) = v_{\pi}^{\gamma}(s) - \frac{r(\pi)}{1 - \gamma}.
q~πγ(s,a)=qπγ(s,a)−1−γr(π),v~πγ(s)=vπγ(s)−1−γr(π).
因此,我们预计奖励中心化将有益于所有需要估计值函数的算法,包括所有涉及优势估计(advantage estimation)的actor-critic方法。
将所有奖励除以一个(可能变化的)标量数通常被称为奖励缩放(reward scaling)(参见Engstrom et al., 2020)。
与奖励中心化类似,奖励缩放在持续性问题中不会改变策略的排序。
- 缩放(scaling) 减少了奖励的分布范围;
- 中心化(centering) 使奖励接近零;
- 两者均有利于复杂的函数逼近器(如人工神经网络),因为神经网络的值估计通常从接近零的初始化开始。
流行的stable_baselines3库使用了基于折扣回报方差的运行估计来缩放(并裁剪)奖励(代码链接:https://github.com/DLR-RM/stable-baselines3/blob/e3dea4b2e03da6fb7ea70db89602909081a7967b/stable_baselines3/common/vec_env/vec_normalize.py#L256)。
在持续性问题中,结合均值中心化(mean-centering)将带来额外的好处。
需要注意的是,在off-policy设置下,均值和方差的计算机制比on-policy设置更复杂。
- 我们的基于TD误差的方法可能是off-policy设置的最终解决方案的一部分。
- 仅维护奖励方差的运行估计(如stable_baselines的做法)会引入偏差。
- 正如前文所述,Schaul et al.(2021)的方法是一个很好的起点。
奖励中心化可以被视为奖励塑造(reward shaping,Ng et al., 1999)的一种特殊形式,其中使用了一个常数的、状态无关的势函数(potential function):
Φ
(
s
)
=
r
(
π
)
1
−
γ
,
∀
s
.
\Phi(s) = \frac{r(\pi)}{1 - \gamma}, \quad \forall s.
Φ(s)=1−γr(π),∀s.
该方法的定理1(Theorem 1)进一步证明了奖励中心化不会改变问题的最优策略。
奖励塑造的一个潜在缺点是,完全指定基于势函数的塑造奖励可能较为复杂,尤其是对于状态空间较大的问题。
- 奖励中心化的实现相对简单,因为:
- 势函数在整个状态空间内都是常数,
- 我们可以从数据中可靠地学习平均奖励。
此外,我们注意到奖励偏移(reward shifting)的概念已在情节性问题(episodic problems)中被探索。
- Sun et al.(2022) 的实验表明,从所有奖励中减去一个合适的常数可以在某些情节性问题中有所帮助。
- 然而,我们不认为在情节性问题中,奖励偏移或中心化通常都会带来好处,原因在于:
- 在持续性问题中,给所有奖励加减一个常数不会改变问题本质,
- 但在情节性问题中,整体平移奖励可能会改变问题本身(例如,参见正文最后一节中的网格世界示例)。