马尔科夫决策过程是强化学习中的一个基本框架,用来表示agent与环境的交互过程:agent观测得到环境的当前状态之后,采取动作,环境进入下一个状态,agent又得到下一个环境状态的信息,形成一个循环回路。
在理解马尔科夫决策过程之前,首先要理解马尔科夫、马尔科夫奖励过程。
1. 马尔科夫过程
满足马尔科夫性质的状态转换过程是马尔科夫过程;
什么是马尔科夫性质呢?
在环境状态的转换过程中,环境的下一个状态只取决于当前状态,和历史状态无关,即满足马尔科夫性质。
2. 马尔科夫奖励过程
(1)马尔科夫链可以通过转移图和转移矩阵这两种形式表示:
转移图
转移矩阵
(2) 马尔科夫奖励过程:马尔科夫链加上奖励函数(价值函数)
(3) 马尔科夫奖励过程需要重点研究的是如何求解状态空间里每个状态的奖励函数?
奖励: 马尔科夫奖励过程中,每次到达一个过程,会得到一个奖励,这个奖励是已知的。
Return(回报)? 当前状态之后的未来状态获取奖励(乘上折扣率)的累加值。这里计算的是一个特定的轨迹的Return
奖励函数:某个状态的奖励函数得到的是该状态的价值:Return的期望
问题:每个状态都有一个特定奖励函数吗?奖励函数的值等于价值,每个状态都有一个价值
Bellman Equation(贝尔曼等式):奖励函数的另一种计算方法
求解奖励函数方法1:动态规划的方法(基于贝尔曼等式)
求解奖励函数方法2:蒙特卡罗(Monte Carlo)方法(基于采样求return期望)
具体地,例如:以状态S1为起始状态,可能接下来的状态转换轨迹是(S3、S4、S6),也可能是(S2、S3、S5)等等,总之可以通过产生大量的轨迹,每个轨迹都会得到一个 return,然后直接取一个平均,那么就可以等价于现在S1的价值。
3. 马尔科夫决策过程
在马尔科夫奖励过程中加入动作和策略,即是马尔科夫决策过程,策略是当前状态下采取某动作的概率。
状态价值函数:和马尔科夫奖励过程的价值函数类似
Q函数-动作价值函数:某一个状态采取某一个动作,得到一个return的期望
状态价值函数(价值函数)与动作价值函数的关系:对 Q 函数中的动作函数进行加和,就可以得到价值函数(状态价值函数)
状态价值函数的贝尔曼等式:
动作价值函数的贝尔曼等式: