Markov 过程

随机过程

随机过程中,随机现象在某时刻的取值是一个向量随机变量,用表示,所有可能的状态组成状态集合 . 我们将已知历史信息时下一个时刻状态为的概率表示为

Markov 性质

我们称一个随机过程具有Markov 性质 当且仅当 某时刻的状态只取决于上一时刻的状态. 也就是说,当前状态是未来的充分统计量. 但是,由于当前状态也由前一个状态决定,所以Markov 性质也包含了历史的影响,只是这种影响不是显式的.

Markov Property

Markov 过程

Markov 过程 指具有Markov 性质的随机过程,也称为Markov 链. 我们通常用元组描述一个Markov 过程, 其中是有限数量的状态集合,状态转移矩阵. 假设一共有个状态,此时. 状态转移矩阵定义了所有状态对之间的转移概率

称矩阵中的每一个元素为状态转移函数,状态转移矩阵中的每一行的和为, 如果不能转移则定义概率为. 如果一个状态不能转移到任何一个状态,则称这个状态为终止状态

给定一个Markov 过程,我们可以从某个状态出发,根据它的状态转移矩阵生成一个状态序列 (episode),这个步骤也被叫做采样 (sampling)

Markov 奖励过程

含有奖励函数和折扣因子的Markov 过程称为Markov 奖励过程,用四元组表示,其中

  • 某个状态的奖励指转移到该状态时可以获得的奖励的期望
  • 折扣因子,范围是 . 引入折扣因子的理由为远期利益具有一定不确定性,有时我们更希望能够尽快获得一些奖励,所以我们需要对远期利益打一些折扣. 接近更关注长期的累计奖励,接近的更考虑短期奖励

回报

在马尔可夫奖励过程中,一个状态的期望回报(即从这个状态出发的未来累积奖励的期望)被称为这个状态的价值 (value). 所有状态的价值就组成了价值函数 (value function). 价值函数的输入为某个状态,输出为这个状态的价值. 我们将价值函数写成

这里表示时刻获得的奖励.

注意到

于是

上式便是Bellman 方程, 对每一个状态都成立. 我们可以把一个个过程的Markov 奖励过程中的所有状态的价值表示为一个列向量,同理也可以把奖励函数写成,由此把Bellman 方程写为

也就是

计算得

这个算法的时间复杂度是,其中是状态个数,因此这种方法只适用很小的马尔可夫奖励过程. 求解较大规模的马尔可夫奖励过程中的价值函数时,可以使用动态规划(dynamic programming) 算法、蒙特卡洛方法(Monte-Carlo method)时序差分(temporal difference)

Markov 决策过程

Markov 决策过程 (MDP) 在 Markov 奖励过程的基础上加上了动作 (action) , 其集合为, 故一个MDP可以由元组构成

注意MDP中的状态转移函数由转移矩阵拓展为了更一般的状态转移函数,表示在状态执行动作后到达状态的概率. 在状态和动作离散的情况下,可用一个三维张量来表示

策略

不同于马尔可夫奖励过程,在马尔可夫决策过程中,通常存在一个智能体来执行动作. 马尔可夫决策过程是一个与时间相关的不断进行的过程,在智能体和环境 MDP 之间存在一个不断交互的过程:智能体根据当前状态选择动作; MDP 根据奖励函数和状态转移函数得到并反馈给智能体. 智能体的目标是最大化得到的累计奖励. 智能体根据当前状态从动作的集合中选择一个动作的函数,被称为策略.

策略通常用, 表示在输入状态时采取动作的概率. 当一个策略是确定性策略(deterministic policy) 时,它在每个状态时只输出一个确定性的动作,即只有该动作的概率为,其他动作的概率为 ;当一个策略是随机性策略(stochastic policy) 时,它在每个状态时输出的是关于动作的概率分布,然后根据该分布进行采样就可以得到一个动作.

在MDP中的状态价值函数和策略有关,定义为

同时再定义一个动作价值函数 (action-value function)

由此可以推出两个价值函数之间的关系

Bellman 期望方程

两个状态函数的 Bellman 期望方程

求解MDP

为了求解MDP中的各个状态的价值函数,可以对策略的动作选择进行边缘化 (marginalization)

定义

这构建了一个MRP . 也就是说,当策略函数确定时,一个MDP可以退化为MRP来求解** **

Monte-Carlo 方法

Monte-Carlo 方法使用重复随机抽样,然后运用概率统计方法来从抽样结果中归纳出我们想求的目标的数值估计

求解一个状态的价值,也就是求解它的期望回报,这时候就可以根据策略在MDP上采样很多条序列,然后计算从这个状态出发的回报再求其期望

采样次数越多,Monte-Carlo 方法估计的期望值越精确

占用度量

定义MDP的初始状态分布, 用表示采取策略时智能体在时刻处于状态的概率, 则有. 由此定义策略的状态访问分布 (state visitation distribution)

其中是用来使得概率加和为的归一化因子. 状态访问概率表示一个策略和 MDP 交互会访问到的状态的分布, 它的一个转移方程是

此外,我们还可以定义策略的占用度量 (occupancy measure)

它表示动作状态对被访问到的概率,二者之间存在如下关系

进一步得出

定理1

智能体分别以策略和同一个MDP交互得到的占用度量满足

定理2

给定一合法占用度量,可生成该占用度量的唯一策略是

以上提到的 “合法”占用度量 是指存在一个策略使智能体与 MDP 交互产生的状态动作对被访问到的概率.

最优策略

定义最优状态价值函数

最优动作价值函数

它们之间的关系

另一方面

由此可以构造出最优策略

最优策略满足

Bellman 最优方程

即最优价值函数的转移方程