离线强化学习的特点是采样策略 π ′ ≠ 待评估策略 π \pi'\ne 待评估策略\pi π′=待评估策略π,这就带来一个问题:
如何根据 π ′ \pi' π′获取的多条完整轨迹数据,计算得到 Q π ( s , a ) Q_\pi(s,a) Qπ?(s,a)的估计值,而不是 Q π ′ ( s , a ) Q_{\pi'}(s,a) Qπ′?(s,a)的估计值。
重要性采样定理为解决上述问题指明了方向,因此,理解重要性采样定理是理解离线MC强化学习的关键。
已知随机变量
x
x
x的函数
f
(
x
)
f(x)
f(x)、
x
x
x的两个不同概率分布
p
(
x
)
,
q
(
x
)
p(x),q(x)
p(x),q(x),令
g
(
x
)
=
p
(
x
)
f
(
x
)
q
(
x
)
g(x)=\frac{p(x)f(x)}{q(x)}
g(x)=q(x)p(x)f(x)?,设
E
p
(
f
)
E_p(f)
Ep?(f)为
f
(
x
)
f(x)
f(x)在
p
(
x
)
p(x)
p(x)下的期望,
E
q
(
g
)
E_q(g)
Eq?(g)为
g
(
x
)
g(x)
g(x)在
q
(
x
)
q(x)
q(x)分布下的期望,则:
{
E
p
(
f
)
=
E
q
(
g
)
E
p
(
f
)
=
∫
x
p
(
x
)
f
(
x
)
d
x
E
q
(
g
)
=
∫
x
q
(
x
)
g
(
x
)
d
x
\begin{align}\begin{cases} E_p(f)=E_q(g)\\ E_p(f)=\int_xp(x)f(x)dx\\ E_q(g)=\int_xq(x)g(x)dx \end{cases} \end{align}
?
?
??Ep?(f)=Eq?(g)Ep?(f)=∫x?p(x)f(x)dxEq?(g)=∫x?q(x)g(x)dx???
根据重要性采样定理的积分描述,很容易推导出其统计学描述,如下:
已知对
x
x
x按照
q
(
x
)
q(x)
q(x)进行采样得到的样本集为
S
q
=
{
x
q
,
1
,
x
q
,
2
,
?
?
,
x
q
,
m
}
S_q=\{x_{q,1},x_{q,2},\cdots,x_{q,m}\}
Sq?={xq,1?,xq,2?,?,xq,m?},则
可利用如下公式计算出
E
p
(
f
)
E_p(f)
Ep?(f)的渐进无偏估计
E
p
^
(
f
)
\hat{E_p}(f)
Ep?^?(f)和
E
q
(
g
)
E_q(g)
Eq?(g)的
渐进无偏估计
E
q
^
(
g
)
\hat{E_q}(g)
Eq?^?(g):
E
p
^
(
f
)
=
E
q
^
(
g
)
=
1
m
∑
k
=
1
m
p
(
x
q
,
k
)
f
(
x
q
,
k
)
q
(
x
q
,
k
)
\begin{align} \hat{E_p}(f)=\hat{E_q}(g)=\frac{1}{m}\sum_{k=1}^m\frac{p(x_{q,k})f(x_{q,k})}{q(x_{q,k})} \end{align}
Ep?^?(f)=Eq?^?(g)=m1?k=1∑m?q(xq,k?)p(xq,k?)f(xq,k?)???
在估计
x
x
x的函数
f
(
x
)
f(x)
f(x)在
p
(
x
)
p(x)
p(x)下的期望时,若实际情形不允许按照
p
(
x
)
p(x)
p(x)对
x
x
x进行采样,从而直接根据公式
E
p
^
(
f
)
=
1
m
∑
k
=
1
m
f
(
x
p
,
k
)
\hat{E_p}(f)=\frac{1}{m}\sum_{k=1}^mf(x_{p,k})
Ep?^?(f)=m1?∑k=1m?f(xp,k?)估计
E
p
(
f
)
E_p(f)
Ep?(f)时,可以按照概率
q
(
x
)
q(x)
q(x)
对
x
x
x进行采样获得样本集
S
q
S_q
Sq?,然后利用公式(2)进行间接估计,得到
E
p
(
f
)
E_p(f)
Ep?(f)
在离线MC强化学习中,要解决的问题是:
已知采样策略
π
′
\pi'
π′、待评估策略
π
\pi
π、利用
π
′
\pi'
π′采集获得m条完整轨迹
E
P
=
{
E
p
1
,
E
p
2
,
?
?
,
E
p
m
}
EP=\{Ep_1,Ep_2,\cdots,Ep_m\}
EP={Ep1?,Ep2?,?,Epm?},其中,
E
p
k
=
{
(
s
k
,
0
,
a
k
,
0
,
r
k
,
1
)
,
(
s
k
,
1
,
a
k
,
1
,
r
k
,
2
)
,
?
?
,
(
s
k
,
N
k
?
1
,
a
k
,
N
k
?
1
,
r
k
,
N
k
)
,
(
s
k
,
N
k
,
a
k
,
N
k
,
r
k
,
N
k
+
1
)
}
,
k
=
1
,
2
,
?
?
,
m
Ep_k=\{(s_{k,0},a_{k,0},r_{k,1}),(s_{k,1},a_{k,1},r_{k,2}),\cdots,(s_{k,N_k-1},a_{k,N_k-1},r_{k,N_k}),(s_{k,N_k},a_{k,N_k},r_{k,N_k+1})\},k=1,2,\cdots,m
Epk?={(sk,0?,ak,0?,rk,1?),(sk,1?,ak,1?,rk,2?),?,(sk,Nk??1?,ak,Nk??1?,rk,Nk??),(sk,Nk??,ak,Nk??,rk,Nk?+1?)},k=1,2,?,m,所有轨迹的
最后一个状态
s
k
,
N
k
≡
s
T
(
终止状态
)
s_{k,N_k}\equiv s_T(终止状态)
sk,Nk??≡sT?(终止状态)
,若固定
s
t
=
s
,
a
t
=
a
s_t=s,a_t=a
st?=s,at?=a,则每条轨迹中三元组
(
s
,
a
,
r
)
(s,a,r)
(s,a,r)中的
r
r
r可以看做是随机变量,累积回报
G
π
′
(
s
,
a
)
G^{\pi'}(s,a)
Gπ′(s,a)是
r
r
r的函数
求解:策略 π \pi π下的累积回报函数 G π ( s , a ) G^{\pi}(s,a) Gπ(s,a)的期望 Q π ( s , a ) Q_\pi(s,a) Qπ?(s,a)的估计值 Q π ^ ( s , a ) \hat{Q_\pi}(s,a) Qπ?^?(s,a)。
求解过程: