马尔可夫决策过程

本文介绍了马尔可夫决策过程(MDP)的概念,包括其马尔可夫性质、状态转移概率、五元组表示以及在强化学习中的应用。讨论了如何处理非马尔可夫环境的问题,指出MDP在实际场景中的局限性和变体如POMDP的适用性。

马尔可夫决策过程

一、马尔可夫性质

随机过程

随机过程(Stochastic Process) 是一个或多个事件、随机系统或者随机现象随时间发生演变的过程

P[St+1∣S1,…,St]\mathbb{P}[S_{t+1}|S_{1},\dots,S_{t}]P[St+1S1,,St]

  • 概率论研究静态随机现象的统计规律
  • 随机过程研究动态随机现象的统计规律

在这里插入图片描述

马尔科夫性质

状态 StS_{t}St 是马尔科夫的,当且仅当
P[St+1∣St]=P[St+1∣S1,…,St]\mathbb{P} [S_{t+1}|S_{t}]=\mathbb{P}[S_{t+1}|S_{1},\dots,S_{t}]P[St+1St]=P[St+1S1,,St]

性质

  • 状态从历史(History)中捕获了所有相关信息

St+1=f(Ht)⟺St+1=f(St)S_{t+1}=f(H_{t}) \Longleftrightarrow S_{t+1}=f(S_{t})St+1=f(Ht)St+1=f(St)

  • 当状态已知的时候,可以抛开历史不管
  • 也就是说,当前状态是未来的充分统计量

在统计学中,充分统计量(Sufficient Statistic)是一种统计量,包含了样本中包含的所有关于参数的信息。换句话说,给定充分统计量的取值,样本中的其他信息对于估计参数是没有用的。

二、马尔可夫决策过程

马尔科夫决策过程(Markov Decision Process,MDP)

提供了一套为在结果部分随机、部分在决策者的控制下的决策过程建模的数学框架

P[St+1∣St]=P[St+1∣S1,…,St]\mathbb{P}[S_{t+1}|S_{t}]=\mathbb{P}[S_{t+1}|S_{1},\dots,S_{t}]P[St+1St]=P[St+1S1,,St]

P[St+1∣St,At]\mathbb{P}[S_{t+1}|S_{t},A_{t}]P[St+1St,At]

MDP形式化地描述了一种强化学习的环境

  • 环境完全可观测
  • 即,当前状态可以完全表征过程(马尔科夫性质)

在这里插入图片描述

MDP五元组

MDP可以由一个五元组表示(S,A,{Psa},γ,RS,A,\{P_{sa}\},\gamma,RS,A,{Psa},γ,R

  • SSS 是状态的集合

    • 比如,迷宫中的位置,Atari游戏中的当前屏幕显示
  • AAA是动作的集合

    • 比如,向N,E,S,W移动,手柄操纵杆方向和按钮
  • PsaP_{sa}Psa是状态转移概率

    Psa:S×A→Ω(S)P_{sa}:S \times A \rightarrow \Omega(S)Psa:S×AΩ(S)

    • 对每个状态s∈Ss\in SsS和动作a∈Aa\in AaAPsaP_{sa}Psa是下一个状态在S中的概率分布
  • γ∈[0,1]\gamma \in [0,1]γ[0,1]是对未来奖励的折扣因子

    • 如果γ=1\gamma = 1γ=1,那么我们就可以认为未来的奖励和当下的奖励具有一样的重要程度
    • 如果γ=0\gamma = 0γ=0,那么就只需要关注当前状态的奖励,不需要考虑未来的奖励
  • R:S×A→RR:S \times A \rightarrow \mathbb{R}R:S×AR 是奖励函数

    • 有时奖励只和状态相关

MDP的动态

MDP的动态如下所示:

  1. 从状态 S0S_{0}S0 开始
  2. 智能体选择某个动作 a0∈Aa_{0} \in Aa0A
  3. 智能体得到奖励 R(s0,a0)R(s_{0},a_{0})R(s0,a0)
  4. MDP随机转移到下一个状态 s1∼Ps0a0s_{1}\sim P_{ s_{0} a_{0} }s1Ps0a0

这个过程不断进行

S0→a0,R(s0,a0)S1→a1,R(s1,a1)S2→a2,R(s2,a2)S3⋯S_{0} \xrightarrow[]{a_{0},R(s_{0},a_{0})} S_{1} \xrightarrow[]{a_{1},R(s_{1},a_{1})} S_{2} \xrightarrow[]{a_{2},R(s_{2},a_{2})} S_{3} \cdotsS0a0,R(s0,a0)S1a1,R(s1,a1)S2a2,R(s2,a2)S3

直到终止状态STS_{T}ST出现为止,或者无止尽地进行下去

智能体的总回报为

R(s0,a0)+γR(s1,a1)+γ2R(s2,a2)+⋯R(s_{0},a_{0}) + \gamma R(s_{1},a_{1}) + \gamma ^{2} R(s_{2},a_{2}) + \cdotsR(s0,a0)+γR(s1,a1)+γ2R(s2,a2)+

MDP的动态性

在大部分情况下,奖励只和状态 R(s)R(s)R(s) 相关

  • 比如,在迷宫游戏中,奖励只和位置相关
  • 在围棋中,奖励只基于最终所围地的大小有关

这时,奖励函数为 R(s):S→RR(s):S\rightarrow \mathbb{R}R(s):SR

MDP的过程为

s0→a0,R(s0)s1→a1,R(s1)s2→a2,R(s2)s3⋯s_{0} \xrightarrow[]{a_{0},R(s_{0})} s_{1} \xrightarrow[]{a_{1},R(s_{1})} s_{2} \xrightarrow[]{a_{2},R(s_{2})} s_{3} \cdotss0a0,R(s0)s1a1,R(s1)s2a2,R(s2)s3

累积奖励为

R(s0)+γR(s1)+γ2R(s2)+⋯R(s_{0}) + \gamma R(s_{1}) + \gamma^{2}R(s_{2}) + \cdotsR(s0)+γR(s1)+γ2R(s2)+

三、和动态环境交互产生的数据分布

在这里插入图片描述

给定同一个动态环境(即MDP),不同的策略采样出来的(状态-行动)对的分布是不同的

占用度量和策略

占用度量(Occupancy Measure)

ρπ(s,a)=Ea∼π(s),s′∼p(s,a)[∑t=0Tγtp(st=s,at=a)]{\rho^{\pi}(s,a)}={\mathbb{E}_{a \sim \pi(s),s' \sim p(s,a)}{\left[{\sum^{T}_{t=0}{\gamma^{t}p(s_{t}=s,a_{t}=a)}}\right]}}ρπ(s,a)=Eaπ(s),sp(s,a)[t=0Tγtp(st=s,at=a)]

定理1:和同一个动态环境交互的两个策略 π1\pi_{1}π1π2\pi_{2}π2 得到的占用度量

ρπ1=ρπ2iffπ1=π2\rho^{\pi_{1}}=\rho^{\pi_{2}}\quad iff \quad \pi_{1}=\pi_{2}ρπ1=ρπ2iffπ1=π2

定理2:给定一占用度量 ρ\rhoρ ,可生成该占用度量的唯一策略是

πρ=ρ(s,a)∑a′ρ(s,a′)\pi_{\rho}=\frac{\rho(s,a)}{\sum_{a'}{\rho(s,a')}}πρ=aρ(s,a)ρ(s,a)

状态占用度量
ρπ(s)=Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[∑t=0Tγtp(st=s)]=Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[∑t=0Tγtp(st=s)∑a′p(at=a′∣st=s)]=∑a′Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[∑t=0Tγtp(st=s,at=a′)]=∑a′ρπ(s,a′) \begin{aligned} {\rho^{\pi}(s)}&={\mathbb{E}_{a \sim \pi(\cdot | s),s' \sim p(\cdot | s,a)}{\left[{\sum^{T}_{t=0}{\gamma^{t}p(s_{t}=s)}}\right]}} \\ &={\mathbb{E}_{a \sim \pi(\cdot | s),s' \sim p(\cdot | s,a)}{\left[{\sum^{T}_{t=0}{\gamma^{t}p(s_{t}=s)}\sum_{a'}{p(a_{t}=a'|s_{t}=s)}}\right]}} \\ &={\sum_{a'}{\mathbb{E}_{a \sim \pi(\cdot | s),s' \sim p(\cdot | s,a)}{\left[{\sum^{T}_{t=0}{\gamma^{t}p(s_{t}=s,a_{t}=a')}}\right]}}} \\ &= {\sum_{a'}{\rho^{\pi}(s,a')}} \end{aligned} ρπ(s)=Eaπ(s),sp(s,a)[t=0Tγtp(st=s)]=Eaπ(s),sp(s,a)[t=0Tγtp(st=s)ap(at=ast=s)]=aEaπ(s),sp(s,a)[t=0Tγtp(st=s,at=a)]=aρπ(s,a)

策略的累积奖励为
V(π)=Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[R(s0,a0)+γR(s1,a1)+γ2R(s2,a2)+⋯ ]=∑s,aEa∼π(⋅∣s),s′∼p(⋅∣s,a)[∑t=0Tγtp(st=s,at=a)]R(s,a)=∑s,aρπ(s,a)R(s,a)=Eπ[R(s,a)] \begin{aligned} {V(\pi)}&={\mathbb{E}_{a \sim \pi(\cdot|s),s' \sim p(\cdot|s,a)}{\left[R(s_{0},a_{0})+\gamma R(s_{1},a_{1})+\gamma^{2} R(s_{2},a_{2})+\cdots\right]}} \\ &={\sum_{s,a}{\mathbb{E}_{a \sim \pi(\cdot|s),s' \sim p(\cdot|s,a)}}\left[\sum^{T}_{t=0}{\gamma^{t}p(s_{t}=s,a_{t}=a)}\right]R(s,a)} \\ &= {\sum_{s,a}{\rho^{\pi}(s,a)R(s,a)}} \\ &={\mathbb{E}_{\pi}{[R(s,a)]}} \end{aligned} V(π)=Eaπ(s),sp(s,a)[R(s0,a0)+γR(s1,a1)+γ2R(s2,a2)+]=s,aEaπ(s),sp(s,a)[t=0Tγtp(st=s,at=a)]R(s,a)=s,aρπ(s,a)R(s,a)=Eπ[R(s,a)]

四、常见问题

当某些现实场景不适用于马尔可夫性质时,基于MDP假设的强化学习有什么好的解决办法吗?
  • 如果一些场景的状态或者观测不具备马尔可夫性质,那就在其基础上再抽象一个latent variable使之具备马尔可夫性质。其实MDP里面的状态就是在观测基础上抽象出来的具有马尔可夫性质的latent variable
实际上很多现实场景都是没有MDP性质的,但是强化学习还是通过各种方法尽量抽象成MDP,是因为大多数算法都是基于MDP推导的吗?目前有没有不基于MDP的方法呢?
  • 强化学习是一种兼顾控制论的机器学习理论的一种方法,其建立是基于控制论状态转移进行建模的,所以提出了相关MDP的定义和性质。当然在现实场景中很多都不符合严格MDP的定义,但是可能符合MDP的变体,比如POMDP(Partially Observable Markov Decision Process),就可以有效的将只有Environment中的State具备的MDP的情况扩展为Agent中的Observation也有类似MDP的性质。
  • 大多数RL的相关的算法是基于MDP进行推导的,不基于MDP的推导的证明往往是与过程性无关的,比如一些Value Function的Lipschitz连续的保证和证明,但是涉及到多步的证明一般需要使用MDP的性质。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值