MDP 与 贝尔曼方程

Markov Decision Process

学习强化学习接触到的第一个概念可能就是马尔可夫链(Markov Chain,MC)和马尔可夫决策过程(Markov Decision Process,MDP)了。简单来说,就是下一步要发生的事与过去无关,只与现在相关。MC分为离散型和连续性,离散型的数学定义如下:
MDP 与 贝尔曼方程_第1张图片

按照MC去实行决策的过程叫MDP,马尔可夫决策过程。

我们需要判断某个过程是否满足基本MDP的定义,才能进一步将其定义成MDP,定义一个MDP,有一套流程:
首先准确的找到State,即状态空间
其次准确的找到Action,即行为空间
找到边界条件,Boundary Conditions
列Optimal equation,求解最优方程

准确定义状态空间和行为空间是解决问题的前提条件。而对于最优方程的求解则是主要问题。最优方程面对的主要是V(s),状态价值函数,指在状态s下智能体能获得的最大价值,这个过程也可以称作贝尔曼方程的求解过程。

MDP的分类有以下几种:
一,Finite_MDP,有限时间的MDP,通常是MDP with N steps
属于离散类型

二,Infinite_MDP,无限时间的MDP,属于连续类型,又分为三种:
1,折扣型MDP,即会增加一个折扣因子,该因子<1,可以通俗理解为模型对于未来状态的重视程度,若折扣因子十分接近1,则说明未来的价值与当今的价值权重相当,而当其接近0时说明其未来的价值权重十分小,甚至可以忽略不计。
MDP 与 贝尔曼方程_第2张图片

2,非折扣型MDP,未来的状态价值与现今的差别不大,适用于最短路径问题,赌博问题等情景。

3,平均型MDP,这种老师没咋讲。

贝尔曼方程与动态规划

刷过算法题的小朋友应该都听过动态规划(Dynamic Programing,DP),DP总的来说是一类优化方法,思想是将远问题分解为多个小问题,多借助开辟的存储空间,采用类似于递归的过程求解某个最优值。

而前文提到的MDP中的最优方程,本质上就是基于动态规划的贝尔曼方程(Bellman equation)。贝尔曼方程在强化学习中十分重要,后续的Q-learning,SARSA等经典算法都是基于贝尔曼方程的思想。以离散型MDP的贝尔曼方程为例:
在这里插入图片描述

贝尔曼方程的本质是一个递归方程,左右两边都有V(i),左边的表示当前的状态(n steps to go)
右边的表示下一步的状态(n-1 steps to go),贝尔曼方程表达的思想就是:当前状态的最大价值等于某个action之后带来的reward与所有后续状态的价值之和,兼顾了当下与未来。其中的P(a),可以理解为转换概率,即从当前状态跳到下一个状态(不确定,有很多可能)的概率。

贝尔曼方程的求解可以采用DP动态规划的方法去求解,例如一些经典的问题:赌博问题,37%rule等。

总结

MDP和贝尔曼方程是强化学习最基本的理论基石,对于后续的高阶算法都有思想的映射。

你可能感兴趣的:(强化学习)