22. 离线MC强化学习算法(1)

发布时间:2024年01月22日

1. 理解离线MC强化学习的关键

离线强化学习的特点是采样策略 π ′ ≠ 待评估策略 π \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强化学习的关键。

2. 什么是重要性采样

  • 重要性采样定理的积分描述

已知随机变量 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=1m?q(xq,k?)p(xq,k?)f(xq,k?)???

3.重要性采样定理给我们的一般启示

在估计 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)

4.重要性采样定理给离线蒙特卡洛强化学习的启示

在离线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)

求解过程:

  • 1.根据 E P EP EP,利用公式计算得到 ( s , a ) (s,a) (s,a)固定时,随机变量 r r r的函数 G π ′ ( s , a ) G^{\pi '}(s,a) Gπ(s,a)在m个采样点
    的样本函数值 G k π ′ ( s , a ) , k = 1 , 2 , ? ? , m G^{\pi'}_k(s,a),k=1,2,\cdots,m Gkπ?(s,a),k=1,2,?,m
  • 2.根据重要性采样公式(2),及 G k π ′ ( s , a ) = G k π ( s , a ) G^{\pi '}_k(s,a)=G^{\pi}_k(s,a) Gkπ?(s,a)=Gkπ?(s,a)可得:
    Q π ^ ( s , a ) = 1 m ∑ k = 1 m p k π p k π ′ G k π ( s , a ) = 1 m ∑ k = 1 m p k π p k π ′ G k π ′ ( s , a ) p k π ? 策略 π 下,出现完整轨迹 E p k 的概率 p k π ′ ? 策略 π ′ 下,出现完整轨迹 E p k 的概率 ρ k = p k π p k π ′ ? 重要性采样比例,表示待评估策略 π 下和采样策略 π ′ 下获得轨迹 E p k 的概率之比 p k π = [ π ( a k , 0 ∣ s k , 0 ) P s k , 0 s k , 1 a k , 0 ] × [ π ( a k , 1 ∣ s k , 1 ) P s k , 1 s k , 2 a k , 1 ] × ? × [ π ( a k , N k ? 1 ∣ s k , N k ? 1 ) P s k , N k ? 1 s k , N k a k , N k ? 1 ] = ∏ i = 0 N k ? 1 π ( a k , i ∣ s k , i ) P s k , i s k , i + 1 a k , i p k π ′ = ∏ i = 0 N k ? 1 π ′ ( a k , i ∣ s k , i ) P s k , i s k , i + 1 a k , i ρ k = ∏ i = 0 N k ? 1 π ( a k , i ∣ s k , i ) ∏ i = 0 N k ? 1 π ′ ( a k , i ∣ s k , i ) \begin{align*} \hat{Q_\pi}(s,a)&=\frac{1}{m}\sum_{k=1}^m\frac{p_k^{\pi}}{p_k^{{\pi}'}}G^{{\pi}}_k(s,a)\\ &=\frac{1}{m}\sum_{k=1}^m\frac{p_k^{\pi}}{p_k^{{\pi}'}}G^{{\pi}'}_k(s,a)\\ p_k^{\pi}&-策略\pi 下,出现完整轨迹Ep_k的概率\\ p_k^{\pi'}&-策略\pi' 下,出现完整轨迹Ep_k的概率\\ \rho_k=\frac{p_k^{\pi}}{p_k^{\pi'}}&-重要性采样比例,表示待评估策略\pi 下和采样策略\pi' 下获得轨迹Ep_k的概率之比\\ p_k^{\pi}&=[\pi(a_{k,0}|s_{k,0})P_{s_{k,0}s_{k,1}}^{a_{k,0}}]\times [\pi(a_{k,1}|s_{k,1})P_{s_{k,1}s_{k,2}}^{a_{k,1}}]\times\cdots \times[\pi(a_{k,N_k-1}|s_{k,N_k-1})P_{s_{k,N_k-1}s_{k,N_k}}^{a_{k,N_k-1}}]\\ &=\prod_{i=0}^{N_k-1}\pi(a_{k,i}|s_{k,i})P_{s_{k,i}s_{k,i+1}}^{a_{k,i}}\\ p_k^{\pi'}&=\prod_{i=0}^{N_k-1}\pi'(a_{k,i}|s_{k,i})P_{s_{k,i}s_{k,i+1}}^{a_{k,i}}\\ \rho_k&=\frac{\prod_{i=0}^{N_k-1}\pi(a_{k,i}|s_{k,i})}{\prod_{i=0}^{N_k-1}\pi'(a_{k,i}|s_{k,i})} \end{align*} Qπ?^?(s,a)pkπ?pkπ?ρk?=pkπ?pkπ??pkπ?pkπ?ρk??=m1?k=1m?pkπ?pkπ??Gkπ?(s,a)=m1?k=1m?pkπ?pkπ??Gkπ?(s,a)?策略π下,出现完整轨迹Epk?的概率?策略π下,出现完整轨迹Epk?的概率?重要性采样比例,表示待评估策略π下和采样策略π下获得轨迹Epk?的概率之比=[π(ak,0?sk,0?)Psk,0?sk,1?ak,0??]×[π(ak,1?sk,1?)Psk,1?sk,2?ak,1??]×?×[π(ak,Nk??1?sk,Nk??1?)Psk,Nk??1?sk,Nk??ak,Nk??1??]=i=0Nk??1?π(ak,i?sk,i?)Psk,i?sk,i+1?ak,i??=i=0Nk??1?π(ak,i?sk,i?)Psk,i?sk,i+1?ak,i??=i=0Nk??1?π(ak,i?sk,i?)i=0Nk??1?π(ak,i?sk,i?)??
文章来源:https://blog.csdn.net/caijungan/article/details/135597582
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。