3.1 简介
马尔可夫决策过程(Markov decision process,MDP)是强化学习的重要概念。要学好强化学习,我们首先要掌握马尔可夫决策过程的基础知识。前两章所说的强化学习中的环境一般就是一个马尔可夫决策过程。与多臂老虎机问题不同,马尔可夫决策过程包含状态信息以及状态之间的转移机制。如果要用强化学习去解决一个实际问题,第一步要做的事情就是把这个实际问题抽象为一个马尔可夫决策过程,也就是明确马尔可夫决策过程的各个组成要素。本章将从马尔可夫过程出发,一步一步地进行介绍,最后引出马尔可夫决策过程。
3.2 马尔可夫过程
3.2.1 随机过程
随机过程(stochastic process)是概率论的“动力学”部分。概率论的研究对象是静态的随机现象,而随机过程的研究对象是随时间演变的随机现象(例如天气随时间的变化、城市交通随时间的变化)。在随机过程中,随机现象在某时刻的取值是一个向量随机变量,用表示,所有可能的状态组成状态集合。随机现象便是状态的变化过程。在某时刻的状态通常取决于时刻之前的状态。我们将已知历史信息时下一个时刻状态为的概率表示成
。
3.2.2 马尔可夫性质
当且仅当某时刻的状态只取决于上一时刻的状态时,一个随机过程被称为具有马尔可夫性质(Markov property),用公式表示为=
。也就是说,当前状态是未来的充分统计量,即下一个状态只取决于当前状态,而不会受到过去状态的影响。需要明确的是,具有马尔可夫性并不代表这个随机过程就和历史完全没有关系。因为虽然t+1时刻的状态只与t时刻的状态有关,但是t时刻的状态其实包含了t-1时刻的状态的信息,通过这种链式的关系,历史的信息被传递到了现在。马尔可夫性可以大大简化运算,因为只要当前状态可知,所有的历史信息都不再需要了,利用当前状态信息就可以决定未来。
3.2.3 马尔可夫过程
马尔可夫过程(Markov process)指具有马尔可夫性质的随机过程,也被称为马尔可夫链(Markov chain)。我们通常用元组描述一个马尔可夫过程,其中是有限数量的状态集合,是状态转移矩阵(state transition matrix)。假设一共有n个状态,此时。状态转移矩阵定义了所有状态对之间的转移概率,即
矩阵p中第i行第j列元素表示从状态
转移到状态
的概率,我们称
为状态转移函数。从某个状态出发,到达其他状态的概率和必须为 1,即状态转移矩阵的每一行的和为 1。
图 3-1 是一个具有 6 个状态的马尔可夫过程的简单例子。其中每个绿色圆圈表示一个状态,每个状态都有一定概率(包括概率为 0)转移到其他状态,其中通常被称为终止状态(terminal state),因为它不会再转移到其他状态,可以理解为它永远以概率 1 转移到自己。状态之间的虚线箭头表示状态的转移,箭头旁的数字表示该状态转移发生的概率。从每个状态出发转移到其他状态的概率总和为 1。例如,有 90%概率保持不变,有 10%概率转移到,而在又有 50%概率回到,有 50%概率转移到。
图3-1 马尔可夫过程的一个简单例子
我们可以写出这个马尔可夫过程的状态转移矩阵:
其中第i行j列的值则代表从从状态转移到状态
概率。
给定一个马尔可夫过程,我们就可以从某个状态出发,根据它的状态转移矩阵生成一个状态序列(episode),这个步骤也被叫做采样(sampling)。
3.3 马尔可夫奖励过程
在马尔可夫过程的基础上加入奖励函数 和折扣因子,就可以得到马尔可夫奖励过程(Markov reward process)。一个马尔可夫奖励过程由构成,各个组成元素的含义如下所示。
- S是有限状态的集合。
- P是状态转移矩阵。
- r是奖励函数,某个状态的奖励 指转移到该状态时可以获得奖励的期望。
是折扣因子(discount factor),的取值范围为。引入折扣因子的理由为远期利益具有一定不确定性,有时我们更希望能够尽快获得一些奖励,所以我们需要对远期利益打一些折扣。接近 1 的更关注长期的累计奖励,接近 0 的更考虑短期奖励。
3.3.1 回报
在一个马尔可夫奖励过程中,从第时刻状态开始,直到终止状态时,所有奖励的衰减之和称为回报(Return),公式如下:
其中,表示在时刻获得的奖励。在图 3-2 中,我们继续沿用图 3-1 马尔可夫过程的例子,并在其基础上添加奖励函数,构建成一个马尔可夫奖励过程。例如,进入状态可以得到奖励,表明我们不希望进入,进入可以获得最高的奖励,但是进入之后奖励为零,并且此时序列也终止了。
图3-2 马尔可夫奖励过程的一个简单例子
比如选取为起始状态,设置,采样到一条状态序列为
,就可以计算的回报,得到