马尔可夫决策过程
一、马尔可夫性质
随机过程
随机过程(Stochastic Process) 是一个或多个事件、随机系统或者随机现象随时间发生演变的过程
P[St+1∣S1,…,St]\mathbb{P}[S_{t+1}|S_{1},\dots,S_{t}]P[St+1∣S1,…,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+1∣St]=P[St+1∣S1,…,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+1∣St]=P[St+1∣S1,…,St]
P[St+1∣St,At]\mathbb{P}[S_{t+1}|S_{t},A_{t}]P[St+1∣St,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 Ss∈S和动作a∈Aa\in Aa∈A,PsaP_{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×A→R 是奖励函数
- 有时奖励只和状态相关
MDP的动态
MDP的动态如下所示:
- 从状态 S0S_{0}S0 开始
- 智能体选择某个动作 a0∈Aa_{0} \in Aa0∈A
- 智能体得到奖励 R(s0,a0)R(s_{0},a_{0})R(s0,a0)
- MDP随机转移到下一个状态 s1∼Ps0a0s_{1}\sim P_{ s_{0} a_{0} }s1∼Ps0a0
这个过程不断进行
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):S→R
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),s′∼p(s,a)[t=0∑Tγ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),s′∼p(⋅∣s,a)[t=0∑Tγtp(st=s)]=Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[t=0∑Tγtp(st=s)a′∑p(at=a′∣st=s)]=a′∑Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[t=0∑Tγ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),s′∼p(⋅∣s,a)[R(s0,a0)+γR(s1,a1)+γ2R(s2,a2)+⋯]=s,a∑Ea∼π(⋅∣s),s′∼p(⋅∣s,a)[t=0∑Tγ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的性质。
本文介绍了马尔可夫决策过程(MDP)的概念,包括其马尔可夫性质、状态转移概率、五元组表示以及在强化学习中的应用。讨论了如何处理非马尔可夫环境的问题,指出MDP在实际场景中的局限性和变体如POMDP的适用性。
1608






