前言
本期是手把手教你入门强化学习第二篇了,在这期,笔者会介绍强化学习中最核心的数学模型——Markov决策过程
,用来描述智能体(Agent)与环境(Environment)交互的框架。同样会尽量通俗易懂,不过本次会有大量数学推导,如果对此不了解的友友,看不懂的没有关系,跟上期一样同样会有实践代码环节
,帮助大家更好地理解背后的原理。
前期回顾
一、马尔可夫过程
马尔可夫性质
我们在一个时序的过程中,若t+1时的状态只跟t时的状态有关,而与t时之前的任何状态都没有关系,我们就认为t时的状态具有马尔可夫性质。
马尔可夫过程
而具备马尔可夫性质的随机过程称为马尔可夫过程(MP)或者马尔可夫链(MC)。这个过程我们能够用一个元组来描述。
S 是有限状态的集合, P 是状态转移概率矩阵。
状态转移矩阵定义了从任意状态到其所有后续状态s'的状态转移概率:
P=(P11…P1n⋮⋮Pn1…Pnn)
每一行的转移概率之和相加为一。
如果我们从马尔可夫过程中生成一个状态序列这一过程叫做采样(也就是根据转移概率,随机选择生成一串状态) 若最后一个状态是终止状态,我们就称该状态是完整的状态序列。
二、马尔可夫奖励过程
但是上面这个我们还没有引入强化学习中的奖励过程,若我们引入奖励,我们需要变为4元组,称为马尔可夫奖励过程(MRP)。它是由构成的一个元组,其中
S,P上述已经提过,而R是一个奖励函数,γ是一个衰减因子:γ∈[0,1]。
在马尔可夫过程中,我们每经历一次状态转移,也就是强化学习中,智能体做出动作,都会收到环境所给予的奖励,我们把一个状态序列所经历的所有奖励累计起来,叫做收获
(return)。
收获(Return)是在一个马尔可夫奖励过程中从某一状态St开始采样直到终止状态时所有奖励的衰减之和。数学表达式如下:
Gt=Rt+1+γRt+2+⋯=∞∑k=0γkRt+k+1
在这一过程中,我们引入 γ 这个在[0,1]范围内的衰减系数。我们可以这样理解,对于当下时刻当前状态来说,当前的奖励对我影响是最大的,随着状态的转移,奖励逐渐衰减。但当 γ 衰减系数取1时,我们认为它具有"长远眼光",因为它将所有状态(后续转移状态)的奖励同等考虑。
这时候我们引入一个新的概念,价值。
价值(Value)
是马尔可夫奖励过程中状态收获的期望。其数学表达式为:v(s)=E[Gt|St=s]
一个状态的价值是该状态的收获的期望,也就是说从这个状态出发的所有状态序列(一般计算不了,我们尽量算多,算的越多越准确),我们计算它的奖励,然后对其求期望就是这个状态具备的价值。
这时候我们提出一个函数,
价值函数
。它建立了状态到价值的映射关系。不过我们发现它的计算过程过于复杂,有没有更简单的方法呢?我们把公式推导一下。
v(s)=E[Gt|St=s]=E[Rt+1+γRt+2+γ2Rt+3+…|St=s]=E[Rt+1+γ(Rt+2+γRt+3+…)|St=s]=E[Rt+1+γ(Gt+1)|St=s]=E[Rt+1+γv(St+1)|St=s]
最终得到:
v(s)=E[Rt+1+γv(St+1)|St=s]
而又因为Rt+1的期望就是其自身,因为每次离开同一个状态得到的奖励都是一个固定值,用s'表示下一个状态,故最后方程可以写出:
这就是马尔可夫奖励过程中的
贝尔曼方程
,他表示一个状态的价值由两部分组成:1 该状态的即时奖励
2 其他状态的衰减奖励和转移概率相乘的总和
在强化学习问题中,如果智能体能够知道每个状态的价值,就能在当前状态下所有能采取的行为中,选择出哪一个行为最有意义、最有价值。
马尔可夫决策过程
马尔可夫奖励过程不涉及智能体的决策选择,而马尔可夫决策过程(MDP)则是由一个五元组组成,相较于奖励过程,我们多一个元素,A表示一个有限行为集。
这里给出一个概念,策略函数
,用字母π表示。策略函数π是某一状态下基于行为集合的一个概率分布,我们给出策略函数:
π(a|s)=P[At=a|St=s]
这里解释一下为什么是概率分布,由于动作的选择就有概率性的,我们采取行为是从这个动作空间进行抽样得到的。
这个时候,我们拓展一下之前定义的价值函数,vπ(s)
状态价值函数
,表示从状态s开始,遵循当前策略π时所获得收获的期望:vπ(s)=E[Gt|St=s]
同样,由于引入了行为,为了描述同一状态下采取不同行为的价值,我们定义一个
基于策略π的行为价值函数
qπ(s,a),表示在遵循策略π时对当前状态s执行某一具体行为a所能得到的收获的期望:
定义了基于策略π的状态价值函数和行为价值函数后,依据贝尔曼方程,我们可以得到如下两个贝尔曼期望方程:
由于行为是连接马尔可夫决策过程中状态转换的桥梁,因此一个行为的价值与状态的价值关系紧密,具体表现为一个状态的价值可以用该状态下所有行为价值来表达:
类似地,一个行为的价值可以用该行为所能到达的后续状态的价值来表达:
组合起来,我们得到:
解决强化学习问题意味着要寻找一个最优的策略(让个体在与环境交互过程中获得始终比其他策略都要多的收获),这个最优策略用π表示。一旦找到最优策略π,就意味着该强化学习问题得到了解决。寻找最优策略是一件比较困难的事情,但是可以通过比较两个不同策略的优劣来确定一个较好的策略。
【定义】最优状态价值函数(Optimal Value Function)是所有策略下产生的众多状态价值函数中的最大者:
【定义】最优行为价值函数(Optimal Action-Value Function)是所有策略下产生的众多行为价值函数中的最大者:
最优策略
可以通过最大化最优行为价值函数q*(s,a)来获得:
也就是说最优策略在面对每一个状态时将总是选择能够带来最大、最优行为价值的行为。这同时意味着,一旦得到q*(s,a),最优策略也就找到了。因此求解强化学习问题就转变为求解最优行为价值函数问题。
而求解贝尔曼最优方程不是线性方程,无法直接求解,通常采用迭代法来求解,具体有价值迭代、策略迭代、Q学习、Sarsa学习等多种迭代方法,我将在后面几期的博客中详细介绍。
总结
本博客从马尔可夫性质引入,到马尔可夫过程,再到马尔可夫奖励过程,最后到马尔可夫决策过程,从中讲述了强化学习中最重要的几个概念,包括策略函数
,状态转移
,价值函数
,最优行为价值函数
,这也是我们学强化学习前必须掌握的概念。
如果想要更深入强化学习的内容,关注我,下期更精彩
创作不易,求关注,点赞,收藏,谢谢~
感兴趣的友友也可以关注我的csdn账号。
https://blog.csdn.net/qq_53769632?spm=1000.2115.3001.5343