此为《强化学习》第三章。
用户-环境接口
马尔科夫决策过程 (Markov Decision Process, MDP) 是建模在交互中学习的一种直观框架。学习者和决策者被称为用户 (Agent) ,其他和用户无关的但能和用户进行交互的部分被称为环境 (Environment) 。第
t
时刻,用户处于状态
St
,得到奖励
Rt
,在某个策略下选择了行为
At
,从而进入下一个状态
St+1
,得到下一个状态的奖励
Rt+1
,如下图所示。
注意,有的时候环境并不会根据
(St,At)
提供一组固定的
(St+1,Rt+1)
,而是按概率分布随机选择一个,因此有
p(s′,r|s,a)≐Pr{St+1=s′,Rt+1=r|St=s,At=a}
概率显然满足
∑s′∈S∑r∈Rp(s′,r|s,a)=1,(∀s∈S,a∈A)
目标和奖励
在学习决策过程中,目标 (Goal) 是最大化累计奖励的期望值。
离散时刻下的回报
离散时刻 (Episodic) 下,我们可以把整个过程分解为一个个时刻。在
t
时刻,我们定义期望回报 (Expected Return)
Gt
为未来各个时刻(直到最终时刻
T
)得到的奖励,即
Gt≐Rt+1+Rt+2+...+RT
通常,我们认为较近时刻得到的奖励应赋予更大的权重,因此我们给每个时刻的奖励加上一个衰减比例 (Discount Rate)
γ∈[0,1]
,即
Gt≐Rt+1+γRt+2+γ2Rt+3+...=∑k=0∞γkRt+1+k
显然有
Gt=Rt+1+γGt+1
离散和连续任务下的统一记号语言
略。
策略与值函数
类似上一篇中的定义,策略 (Policy)
π(a|s)
定义为状态
s
下选择行为
a
的概率,即
π(a|s)≐Pr{At=a|St=s}
在策略
π
下状态
s
的值函数 (Value Function) 定义为以状态
s
为起点,然后遵循策略
pi
,得到的期望回报(由于策略和环境都可能是概率分布,因此为回报也是一个概率分布),即
vπ(s)≐Eπ[Gt|St=s]=Eπ[∑k=0∞γkRt+1+k|St=s]
类似的,我们也可以定义在策略
π
下状态
s
采取行为
a
的值函数 (Action-Value Function) ,即
qπ(s,a)≐Eπ[Gt|St=s,At=a]=Eπ[∑k=0∞γkRt+1+k|St=s,At=a]
将值函数的期望展开,得到
vπ(s)=Eπ[Rt+1+γGt+1|St=s]=∑aπ(a|s)∑s′∑rp(s′,r|s,a)[r+γE[Gt+1|St+1=s′]]=∑aπ(a|s)∑s′∑rp(s′,r|s,a)[r+γvπ(s′)]
此为值函数的贝尔曼等式 (Bellman Equation) 。类似的,对于行为值函数,有
qπ(s,a)=∑s′∑rp(s′,r|s,a)[r+γ∑a′π(a′|s′)qπ(s′,a′)]
显然,状态值函数
vπ(s)
和行为值函数
qπ(s,a)
之间是紧密相联系的。对于状态值函数,有
vπ(s)=Eπ[Gt|St=s]=∑aπ(a|s)Eπ[Gt|St=s,At=a]=∑aπ(a|s)qπ(s,a)
对于行为值函数,有
qπ(s,a)=Eπ[Gt|St=s,At=a]=∑s′∑rp(s′,r|s,a)[r+γEπ[Gt+1|St+1=s′]]=∑s′∑rp(s′,r|s,a)[r+γvπ(s′)]=Eπ[Rt+1+γvπ(St+1)|St=s,At=a]
这一节中还提到了回溯图 (Backup Diagram) 的表示方法,它用空心圆表示状态和值函数,用实心圆表示行为和行为值函数,空心到实心的连线表示策略下选择各个行为的概率,实心到空心的连线表示环境中由上一状态和上一行为选择下一状态和奖励的概率。如下图所示。
可以用回溯图法表示出值函数和行为值函数的贝尔曼等式,如下图所示。
下一节中可以看到,在策略选择行为时,可以在空心到实心的张角中加一弧线,表示选择最大的期望回报作为下一步的行为。
最优策略与最优值函数
我们定义最优状态值函数 (Optimal State-Value Function)
v∗(s)
为最优策略
π∗
下的状态值函数,最优策略即能使值函数取到最大值的策略,即
v∗(s)≐vπ∗(s)≐maxπvπ(s)
类似地,我们定义最优行为值函数 (Optimal Action-Value Function)
q∗(s,a)
为最优策略下的行为值函数,即
q∗(s,a)≐qπ∗(s,a)≐maxπqπ(s,a)
这里需要注意最佳策略
π∗
和普通的策略
π
之间的区别。普通的策略
π
可以是一个概率分布,而最优策略则用了贪心算法,因此它的形式更加接近于
π∗(s)=abest
。
最优状态值函数和最优行为值函数也满足贝尔曼等式。推导如下(参考上一节中两种值函数的互推):
v∗(s)q∗(s,a)=maxπvπ(s)=maxπ∑aπ(a|s)qπ(s,a)=maxaq∗(s,a)=maxa∑s′∑rp(s′,r|s,a)[r+γv∗(s′)]=maxπqπ(s,a)=∑s′∑rp(s′,r|s,a)[r+γv∗(s′)]=∑s′∑rp(s′,r|s,a)[r+γmaxa′q∗(s′,a′)]
最优状态值函数和最优行为值函数也可以用回溯图表示,如下图。
最优化与近似
略。
参考文献
《Reinforcement Learning: An Introduction (second edition)》Richard S. Sutton and Andrew G. Barto