【统计强化学习】状态抽象

本文探讨了在统计强化学习中如何利用状态抽象提高样本效率。介绍了三种不同类型的精确状态抽象(最优策略无关、最优值函数无关、环境模型无关)及其相互关系,并讨论了近似状态抽象的概念,包括ε-近似抽象。状态抽象有助于减少需要训练的数据量,但也可能导致近似误差。此外,文章提到了近似方法在解决状态抽象的NP难度问题中的应用。
摘要由CSDN通过智能技术生成

本系列文章主要参考UIUC姜楠老师开设的cs542

文章目录

根据上一章得到的界限,算法训练需要的样本数和状态空间大小呈多项式关系。对于某些状态空间很大的任务,一个行之有效的方法则是智能体能够利用先验知识从已学习到一个 状态泛化到另一个状态。而最简单的泛化方法就是状态抽象(state abstraction / state aggregation / state compression)。状态抽象是一个映射 ϕ \phi ϕ,能将原始状态空间 S \mathcal{S} S 映射到特定的有限的抽象状态空间 S ϕ \mathcal{S}_\phi Sϕ,即对于 S \mathcal{S} S 下的两个状态 s ( 1 ) s^{(1)} s(1) s ( 2 ) s^{(2)} s(2),在 S ϕ \mathcal{S}_\phi Sϕ 下有 ϕ ( s ( 1 ) ) = ϕ ( s ( 2 ) ) ) \phi(s^{(1)})=\phi(s^{(2))}) ϕ(s(1))=ϕ(s(2))),然后再在 S ϕ \mathcal{S}_\phi Sϕ​ 下使用之前提及的表格类型方法,等价于增加了样本数量,提高样本效率。

显然,使用状态抽象后再使用之前的确定性等价方法,由于样本数量的增加,评估误差(estimation errors)则降低了。但是另一方面,假设将原始状态空间上两个差异非常大的状态映射为同一个状态,则训练出来的算法的近似误差(approximation error)就会较大。其中,近似误差是指模型的偏差,如对非线性问题用线性回归模型去近似,则存在近似误差;估计误差就是指模型的方差。而这方差会随着样本量的提升而减小。

精确抽象

下面先从松到紧,给出三种不同的状态抽象 ϕ \phi ϕ 的定义:

  • 最优策略无关( π ∗ \pi^* π-irrelevant)的状态抽象:是指存在一个最优策略 π ∗ \pi^* π,使得对 ∀ s ( 1 ) , s ( 2 ) ∈ S \forall s^{(1)},s^{(2)} \in \mathcal{S} s(1),s(2)S ϕ ( s ( 1 ) ) = ϕ ( s ( 2 ) ) \phi(s^{(1)}) = \phi(s^{(2)}) ϕ(s(1))=ϕ(s(2)),都有 π M ∗ ( s ( 1 ) ) = π M ∗ ( s ( 2 ) ) \pi_M^*(s^{(1)}) = \pi_M^*(s^{(2)}) πM(s(1))=πM(s(2))。即要求只要策略相同的两个状态就可以合并;
  • 最优值函数无关( Q ∗ Q^* Q-irrelevant)的状态抽象:是指对 ∀ s ( 1 ) , s ( 2 ) ∈ S \forall s^{(1)},s^{(2)} \in \mathcal{S} s(1),s(2)S ϕ ( s ( 1 ) ) = ϕ ( s ( 2 ) ) \phi(s^{(1)}) = \phi(s^{(2)}) ϕ(s(1))=ϕ(s(2)) ∀ a ∈ A \forall a \in \mathcal{A} aA,都有 Q M ∗ ( s ( 1 ) , a ) = Q M ∗ ( s ( 2 ) , a ) Q_M^*(s^{(1)},a) = Q_M^*(s^{(2)},a) QM(s(1),a)=QM(s(2),a)。即不仅要求策略相同,还要求两个状态上所有动作的值相同才能合并;
  • 环境模型无关(model-irrelevant)的状态抽象:是指对 ∀ s ( 1 ) , s ( 2 ) ∈ S \forall s^{(1)},s^{(2)} \in \mathcal{S} s(1),s(2)S ϕ ( s ( 1 ) ) = ϕ ( s ( 2 ) ) \phi(s^{(1)}) = \phi(s^{(2)}) ϕ(s(1))=ϕ(s(2)) ∀ a ∈ A \forall a \in \mathcal{A} aA x ′ ∈ S ϕ x' \in \mathcal{S}_\phi xSϕ,都有:
    R ( s ( 1 ) , a ) = R ( s ( 2 ) , a ) , ∑ s ′ ∈ ϕ − 1 ( x ′ ) P ( s ′ ∣ s ( 1 ) , a ) = ∑ s ′ ∈ ϕ − 1 ( x ′ ) P ( s ′ ∣ s ( 2 ) , a ) R(s^{(1)},a) = R(s^{(2)},a), \\ \sum_{s' \in \phi^{-1}(x')}P(s'|s^{(1)},a) = \sum_{s' \in \phi^{-1}(x')}P(s'|s^{(2)},a) R(s(1),a)=R(s(2),a),sϕ1(x)P(ss(1),a)=sϕ1(x)P(ss(2),a)

状态抽象还可用矩阵来表示。用大小为 ∣ S ϕ ∣ × ∣ S ∣ |\mathcal{S}_\phi|\times|\mathcal{S}| Sϕ×S 的矩阵 Φ \Phi Φ 来表示状态抽象映射,即 Φ ( x , s ) = I [ ϕ ( s ) = x ] \Phi(x,s)=\mathbb{I}[\phi(s)=x] Φ(x,s)=I[ϕ(s)=x],有 Φ P ( s ( 1 ) , a ) = Φ P ( s ( 2 ) , a ) \Phi P(s^{(1)},a) = \Phi P(s^{(2)},a) ΦP(s(1),a)=ΦP(s(2),a)。根据上面三种状态抽象定义,显然有如下定理:环境模型无关则最优值函数无关,同样最优值函数无关则最优策略无关。

下面来分析环境模型无关的状态抽象方法,这种方法在最开始被称为 bisimulations。该状态抽象最为严格,要求在环境模型上两个状态相同才能合并,但注意是指经过映射后转移到 S ϕ \mathcal{S}_\phi Sϕ 的概率相等,并不是指在原环境模型上转移概率相等。这样做的目的是为了提高泛化性,避免映射规则过于严格。例如,对于前两种状态抽象方式,不仅可以将重复的(即重要程度一致的状态)合并,还能将无关的状态合并(即无关状态的策略和值都可用同一个空白值来表示,这样就能合并为同一个状态),但是如果第三种状态抽象方法中是假设 P ( s ′ ∣ s ( 1 ) , a ) = P ( s ′ ∣ s ( 2 ) , a ) P(s'|s^{(1)},a)=P(s'|s^{(2)},a) P(ss(1),a)=P(ss(2),a) 而非 P ( x ′ ∣ s ( 1 ) , a ) = P ( x ′ ∣ s ( 2 ) , a ) P(x'|s^{(1)},a)=P(x'|s^{(2)},a) P(xs(1),a)=P(xs(2),a),则这些无关状态就很难剔除了。

虽然环境模型无关的状态抽象最严格,但是这种方法能够保证下面两个数据集是基本等价的:一个是从映射后的 MDP 模型 M ϕ M_\phi Mϕ 采集的数据;另一个是从原始 MDP 模型 M M M 中采集到数据后再映射,即 ( s , a , r , s ′ ) → ( ϕ ( s ) , a , r , ϕ ( s ′ ) ) (s,a,r,s')\rightarrow(\phi(s),a,r,\phi(s')) (s,a,r,s)(ϕ(s),a,r,ϕ(s))。另一方面,对于最优值函数无关的状态抽象方法,这种方法是不保留原有环境模型的奖励函数和状态转移函数的,虽然某些表格类型方法仍能使用(如 Q-learning),但是对于应用到其他算法环境就需要重新分析。最后对于最优策略无关的状态抽象方法,之前提及的基于值的方法和基于模型的表格类型方法都不能使用。

最后,对于给定的 MDP,存在唯一一种最小的环境模型无关的状态抽象方法,下面将给出其证明。另外,要求出这种状态抽象方法是 NP 难问题,因此后面还会讲到使用近似方法求解。

要证明该定理,首先需要定义两个 bisimulations 的合并(common coarsening):对于任意 s ( 1 ) s^{(1)} s(1) s ( 2 ) s^{(2)} s(2),只有当 ϕ 1 ( s ( 1 ) ) = ϕ 1 ( s ( 2 ) ) \phi_1(s^{(1)})=\phi_1(s^{(2)}) ϕ1(s(1))=ϕ1(s(2)) ϕ 2 ( s ( 1 ) ) = ϕ 2 ( s ( 2 ) ) \phi_2(s^{(1)})=\phi_2(s^{(2)}) ϕ2(s(1))=ϕ2(s(2)) 时,才有 ϕ 1 \phi_1 ϕ1 ϕ 2 \phi_2 ϕ2 的合并 ϕ 12 \phi_{12} ϕ12 ϕ 12 ( s ( 1 ) ) = ϕ 12 ( s ( 2 ) ) \phi_{12}(s^{(1)})=\phi_{12}(s^{(2)}) ϕ12(s(1))=ϕ12(s(2))。即合并表示如果两种状态抽象方法都将某两个状态映射到同一状态,则合并后也将其映射到同一个状态。下面先证明两个 bisimulations 合并后的结果仍为 bisimulations。由于奖励函数方面显然成立,所以下面证明状态转移函数,有:
P ( y ′ ∣ s ( 1 ) , a ) = ∑ s ′ ∈ ϕ 12 − 1 ( y ′ )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值