概述
- 马尔可夫决策过程综合动作、状态、收益建立了强化学习最基础的数学模型。
- 回报是智能体需要最大化的全部未来收益的函数,折扣对未来收益进行加权。
- 交互任务根据其是否能自然分解为幕分为分幕式任务和持续性任务。
- 策略的价值函数给出了每个状态或“状态-动作”二元组的期望回报值。
- 最优价值函数给出了价值函数在所有策略中的最大值,相应的策略为最优策略。
- 贝尔曼最优方程是最优价值函数必须满足的一致性条件,在非理想情况下只能近似求解。
“智能体-环境”交互接口#
马尔可夫决策过程(MDP)是一种通过交互式学习来实现目标的理论框架。进行学习及实施决策的机器被称为智能体,智能体之外所有与其相互作用的事物都被称为环境。智能体选择动作,环境对这些动作做出相应的响应,并向智能体呈现出新的状态。环境也会产生一个收益,这就是智能体在动作选择过程中想要最大化的目标。
我们对此过程建立数学模型。在每个时刻t,智能体观察到所在的环境状态的某种特征表达St∈S,并在此基础上选择一个动作At∈A(s)。下一时刻,作为其动作的结果,智能体接收到一个数值化的收益Rt+1∈R,并进入一个新的状态St+1。从而,MDP和智能体共同给出了一个序列:
S0,A0,R1,S1,A1,R2,⋯在有限MDP中,S、A和R都只有有限个元素。在这种情况下,随机变量Rt和St具有定义明确的离散概率分布,并且只依赖于前继状态和动作。在给定前继状态s和动作a的值时,这些随机变量的特定值s′∈S和r∈R在t时刻出现的概率是:
p(s′,r∣s,a)=˙Pr{St=s′,Rt=r∣St−1=s,At−1=a}函数p定义了MDP的动态特性,为每个s和a的选择都指定了一个概率分布。St和Rt的每个可能的值出现的概率只取决于前一个状态St−1和动作At−1,即状态具有马尔可夫性。
从四参数动态函数p:S×R×S×A→[0,1]中,我们可以计算出关于环境的任何其他信息,例如状态转移概率p:S×S×A→[0,1]:
p(s′∣s,a)=˙r∈R∑p(s′,r∣s,a)“状态-动作”二元组的期望收益r:S×A→R:
r(s,a)=˙E[Rt∣St−1=s,At−1=a]=r∈R∑rs′∈S∑p(s′,r∣s,a)“状态-动作-后继状态”三元组的期望收益r:S×A×S→R:
r(s,a,s′)=˙E[Rt∣St−1=s,At−1=a,St=s′]=r∈R∑rp(s′∣s,a)p(s′,r∣s,a)MDP框架非常抽象与灵活。一般来说,动作可以是任何我们想要做的决策,而状态则可以是任何对决策有所帮助的事情。
目标和收益#
在强化学习中,智能体的目标被形式化表征为收益。在每个时刻,收益都是一个单一标量数值Rt∈R。所有的目标都可以归结为最大化智能体接收到的收益累积和的期望值。
如果要想智能体为我们做某件事,我们提供收益的方式必须要使得智能体在最大化收益的同时也实现我们的目标。例如,围棋智能体只有当最终获胜时才能获得收益,而非达到某个子目标。如果实现这些子目标也能获得收益,比如吃掉对方的子,那么它可能会找到一种以输掉比赛为代价的方式来达成它们。
回报和分幕#
智能体最大限度提高长期收益的目标必然与时刻t后接收的收益序列Rt+1,Rt+2,Rt+3,⋯有关。为了正式化定义这个目标,我们给出回报Gt,它被定义为收益序列的一些特定函数,我们寻求的则是最大化期望回报。在最简单的情况下,回报是后续收益的总和:
Gt=˙Rt+1+Rt+2+Rt+3+⋯+RT其中T是最终时刻。最终时刻的概念被用于分幕式任务,在这类任务中,智能体和环境的交互能被自然地分成一系列被称为幕的子序列,每个子序列都存在最终时刻,例如一盘游戏、走一次迷宫等重复性的交互过程。每幕都以一种特殊状态结束,被称为终结状态,随后会重新从某个标准起始状态或起始状态的分布中的某个状态样本开始。在分幕式任务中,我们有时要区分非终结状态集,记为S,和包含终结与非终结状态的所有状态集,记为S+。最终时刻T是一个随机变量,通常随着幕的不同而不同。
与分幕式任务相对的是持续性任务,即智能体和环境的交互不能被自然地分为单独的幕,而是持续不断地发生,例如一个连续的过程控制任务或长期运行机器人的应用。持续性任务的最终时刻T=∞,这将导致最大化回报很容易趋于无穷,为此我们需要引入折扣的概念。
根据折扣方法,回报是后续收益经过折扣系数加权后的收益总和,即折后回报:
Gt=Rt+1+γRt+2+γ2Rt+3+⋯=k=0∑∞γkRt+k+1其中γ∈[0,1]是折扣率,它决定了未来收益的现值。如果γ<1,那么只要收益序列{Rk}有界,Gt就是一个有限值。随着γ接近1,折后回报将更多地考虑未来的收益,智能体将变得更有远见。相邻时刻的折扣回报可以用如下递归方式联系起来:
Gt=˙Rt+1+γRt+2+γ2Rt+3+γ3Rt+4+⋯=Rt+1+γ(Rt+2+γRt+3+γ2Rt+4+⋯)=Rt+1+γGt+1通常我们定义GT=0,这样上式将适用于任意时刻t<T。
分幕式和持续性任务的统一表示法#
分幕式任务的描述除了时刻还要区分所在的幕。St,i表示幕i中时刻t的状态,At,i、Rt,i、πt,i、Ti等也一样。但通常情况下我们只考虑某个特定的单一的幕序列或适用于所有幕的东西,因此会删除幕编号的显式引用。
统一分幕式(有限项)和持续性(无限项)任务的表示的一种思路是将回报定义为无限项的总和,并在有限项的情况下令最终时刻之后的项都等于0。另一种思路是将回报表示为:
Gt=˙k=t+1∑Tγk−t−1Rk并允许T=∞或γ=1(但不能同时出现)的情况。
策略和价值函数#
价值函数是状态(或“状态-动作”二元组)的函数,用来评估当前智能体在给定状态下的期望回报。智能体的期望回报取决于智能体所选择的动作,因此价值函数与特定的行为方式相关,我们称之为策略。
策略是从状态到每个动作的选择概率之间的映射。如果智能体在时刻t选择策略π,那么π(a∣s)是当St=s时At=a时的概率。
策略π下状态s的价值函数记为vπ(s),即从状态s开始,智能体按照策略π进行决策所获得的回报的概率期望值。对于MDP,我们正式定义vπ为:
vπ(s)=˙Eπ[Gt∣St=s]=Eπ[k=0∑∞γkRt+k+1St=s]其中Eπ[⋅]表示在给定策略π时一个随机变量的期望值,函数vπ称为策略π的状态价值函数。
同理,策略π下在状态s时采取动作a的价值记为qπ(s,a),这就是根据策略π,从状态s开始,执行动作a之后,所有可能的决策序列的期望回报:
qπ(s,a)=˙Eπ[Gt∣St=s,At=a]=Eπ[k=0∑∞γkRt+k+1St=s,At=a]函数qπ为策略π的动作价值函数。
价值函数vπ和qπ都能从经验中估算得到。如果一个智能体遵循策略π,且对每个遇到的状态都记录该状态后的实际回报的平均值,那么随着状态出现的次数接近无穷大,这个平均值会收敛到状态价值vπ(s)。如果为每个状态的每个动作都保留单独的平均值,那么这些平均值也会收敛到动作价值qπ(s,a)。这种估算方法称作蒙特卡洛方法,将在后续章节介绍。
在强化学习和动态规划中,价值函数都满足某种递归关系。对于任何策略π和任何状态s,s的价值与其可能的后继状态的价值之间存在以下关系:
vπ(s)=˙Eπ[Gt∣St=s]=Eπ[Rt+1+γGt+1∣St=s]=a∑π(a∣s)s′∑r∑p(s′,r∣s,a)[r+γR[Gt+1∣St+1=s′]]=a∑π(a∣s)s′,r∑p(s′,r∣s,a)[r+γvπ(s′)]其中,动作a取自集合A(s),下一时刻状态s′取自集合S(在分幕式问题中取自集合S+),收益值r取自集合R。该式被称为贝尔曼方程,它对所有可能性采用其出现的概率进行了加权平均。这也说明起始状态的价值一定等于后继状态的(折扣)期望值加上对应收益的期望值。

我们可以用回溯图表示这种状态价值和后继状态价值之间的关系。其中空心圆表示一个状态,实心圆表示一个“状态-动作”二元组。从状态s开始,并将其作为根节点,智能体根据策略π采取动作集合中任一动作。对每个动作,环境会根据其动态特性函数p,以一个后继状态 s′及其收益r作为响应。回溯图中的关系是回溯运算的基础,也是强化学习方法的核心内容。回溯操作就是将后继状态(或“状态-动作”二元组)的价值信息回传给当前时刻的状态(或“状态-动作”二元组)。
最优策略和最优价值函数#
解决一个强化学习任务意味着要找出一个策略,使其能够在长期过程中获得大量收益。对于所有的s∈S,如果vπ(s)⩾vπ′(s),则可以说π⩾π′。总会存在至少一个策略不劣于其他所有策略,即最优策略,记为π∗。最优策略共享相同的状态价值函数,即最优状态价值函数,记为v∗,其定义为:
∀s∈S,v∗(s)=˙πmaxvπ(s)最优策略也共享最优动作价值函数,记为q∗,其定义为:
∀s∈S,a∈A,q∗(s,a)=˙πmaxqπ(s,a)对于“状态-动作”二元组(s,a),这个函数给出了在状态s下,先采取动作a,之后按照最优策略决策的期望回报,因此可以用v∗表示q∗:
q∗(s,a)=E[Rt+1+γv∗(St+1)∣St=s,At=a]贝尔曼最优方程指出,最优策略下各个状态的价值一定等于这个状态下最优动作的期望值:
v∗(s)=a∈A(s)maxqπ∗(s,a)以下是博主查阅其余资料自行总结的反证法:
根据定义,状态价值函数vπ(s)是根据策略π选择动作a的概率对相应的动作价值函数qπ(s,a)加权平均,那么必然有vπ(s)⩽amaxqπ(s,a),对于一个最优策略π∗,亦有其状态价值函数满足vπ∗(s)⩽amaxqπ∗(s,a)。
假设vπ∗(s)<amaxqπ∗(s,a),那么必然存在一个更优的策略π∗′,在状态s选择A=aargmaxqπ∗(s,a),之后仍按照策略π∗选择,使得vπ∗′=amaxqπ∗(s,a),这与最优策略的定义矛盾,因而最优策略的状态价值函数必然趋近于其动作价值函数的最大值。而在有限MDP的条件下(其余条件暂不深入展开),最优策略必然存在,因而必有vπ∗(s)=amaxqπ∗(s,a)。
将最优动作价值函数写为期望或求和的形式,我们得到贝尔曼最优方程的两种形式:
v∗(s)=amaxE[Rt+1+γv∗(St+1)∣St=s,At=a]=amaxs′,r∑p(s′,r∣s,a)[r+γv∗(s′)]同理q∗的贝尔曼最优方程为:
q∗(s,a)=E[Rt+1+γa′maxq∗(St+1,a′)St=s,At=a]=s′,r∑p(s′,r∣s,a)[r+γa′maxq∗(s′,a′)]一旦根据贝尔曼最优方程求得最优状态价值函数v∗,确定最优策略只需对q∗进行单步搜索,并基于此采取贪心策略即可。
显示求解贝尔曼最优方程来寻找最优策略的方法很少是直接有效的,其至少依赖三条在实际情况下很难满足的假设:
- 我们准确地知道环境的动态变化特性;
- 有足够的计算资源来求解;
- 马尔可夫性质。
在强化学习中,我们通常只能用近似解法来解决这类问题。
除此之外,存储容量也是一个很重要的约束。价值函数、策略和模型的估计通常需要大量的存储空间。在状态集合小而有限的任务中,用数组或表格来估计每个状态(或“状态-动作”二元组)是可能的,我们称之为表格型任务,对应的方法为表格型方法。但在许多实际情况下,有很多状态不能用表格中的一行表示。在这种情况下,价值函数必须采用近似方法,通常使用紧凑的参数化函数表示方法。