[RL Notes] 加权重要度采样及增量实现
Contents [show]
1. 加权重要度采样
MC 预测算法中使用的简单重要度采样定义为
V(s)≐∑t∈T(s)ρt:T(t)−1Gt|T(s)|
其中 T(s) 为所有访问过状态 s 的集合,T(t) 表示在时刻 t 后首次终止,Gt 表示在 t 之后到达 T(t) 时的回报,{Gt}t∈T(s) 为状态 s 对应的回报,{ρt:T(t)−1}t∈T(s) 为相应的重要度采样比。简单重要度采样只是简单地计算平均值。
另外还可以使用加权平均的方法,称为加权重要度采样,定义为
V(s)≐∑t∈T(s)ρt:T(t)−1Gt∑t∈T(s)ρt:T(t)−1
如果式 (2) 中的分母为零,则该式的定义也为零。
2. 增量实现
假设有一个回报序列 G1,G2,⋯,Gn−1,它们都从相同的状态开始,每一个回报对应一个随机权重 Wt(如前面的重要度采样比 Wt=ρt:T(t)−1),使用加权重要度采样时,需要估计
Vn≐n−1∑k=1WkGkn−1∑k=1Wk,n≥2
我们希望能跟踪 Vn 的变化,从而使用增量的方式对其进行更新
Vn+1≐Vn+WnCn[Gn–Vn],n≥1
其中
Cn+1≐Cn+Wn+1
定义 C0≐0。
由此可以得到增量实现离轨策略 MC 预测算法如下所示。
离轨策略 MC 预测算法(策略评估),用于估计 Q≈qπ
输入:一个任意的目标策略 π
初始化:对所有 s∈S,a∈A(s):
任意初始化 Q(s,a)∈R
C(s,a)←0
无限循环(对每幕):
b← 任何能包括 π 的策略
根据 b 生成一幕序列:S0,A0,R1,⋯,ST−1,AT−1,RT
G←0
W←1
对幕中的每一步循环,t=T−1,T−2,⋯,0,当 W≠0 时:
G←γG+Rt+1
C(St,At)←C(St,At)+W
Q(St,At)←Q(St,At)+WC(St,At)[G–Q(St,At)]
W←Wπ(At|St)b(At|St)
如果 W=0,则退出内循环