累积折现回报(reward)
Rt=rt+1+γrt+2+γ2rt+3+⋯=∑k=0∞γrt+k+1(1) (1) R t = r t + 1 + γ r t + 2 + γ 2 r t + 3 + ⋯ = ∑ k = 0 ∞ γ r t + k + 1
策略(policy)
策略一般写成 π(s,a) π ( s , a ) ,即在状态s下执行了动作a的概率,用来描述一系列行动方式。它是一个函数,能够采取一个状态和一个动作,并返回在当前状态下采取这个动作的概率。
![这里写图片描述](https://img-blog.csdn.net/20180708212248117?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3piZ3p6eg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
如上图显示,我们可以有:
π(Hungry,eat)=0.5π(Hungry,eat¯)=0.5π(Full,eat¯)=1.0 π ( H u n g r y , e a t ) = 0.5 π ( H u n g r y , e a t ¯ ) = 0.5 π ( F u l l , e a t ¯ ) = 1.0
价值函数(value function)
在强化学习中有两种不同的价值函数。一种是状态值函数(state value function),用V(s)表示;另一种是行动值函数(action value function) ,用Q(s,a)表示。
Vπ(s)=Qπ(s,a)=Eπ[Rt|st=s]Eπ[Rt|st=s,at=a](2)(3) (2) V π ( s ) = E π [ R t | s t = s ] (3) Q π ( s , a ) = E π [ R t | s t = s , a t = a ]
状态转移概率:
Pass′=Pr(st+1=s′|st=s,at=a)(4) (4) P s s ′ a = P r ( s t + 1 = s ′ | s t = s , a t = a )
P是过渡概率。如果我们从状态s开始,然后采取动作a,那么我们就会有 Pass′ P s s ′ a 的概率得到状态${s}’。
期望回报:
Rass′=E[rt+1|st=s,st+1=s′,at=a](5) (5) R s s ′ a = E [ r t + 1 | s t = s , s t + 1 = s ′ , a t = a ]
我们从状态s开始,采取行动a,然后转移到状态 s′ s ′ 得到了下一个回报的期望值,即 Rass′ R s s ′ a 。
马尔科夫决策过程:
一个有限的马尔科夫决策过程由一个四元组构成 M=(S,A,P,R) M = ( S , A , P , R ) 。其中 S S 表示有限的状态集空间,A A 表示动作集空间, P P 表示状态转移概率矩阵,R R 表示期望回报值。
在MDP中给定任意一个状态 s∈S s ∈ S 和一个动作 a∈A a ∈ A ,就会以某个概率转移到下一个状态 s′∈S s ′ ∈ S
这个概率为:
p(s′|s,a)=Pr(st+1=s′|st=s,at=a)∈P(6) (6) p ( s ′ | s , a ) = P r ( s t + 1 = s ′ | s t = s , a t = a ) ∈ P
并获得下一个回报的期望值为:
Rass′=E[rt+1|st=s,st+1=s′,at=a]∈R(7) (7) R s s ′ a = E [ r t + 1 | s t = s , s t + 1 = s ′ , a t = a ] ∈ R
贝尔曼方程
有了上述的一些工具,我们就能够开始推到贝尔曼方程了,由回报公式(1)和状态值函数(2),我们可以得到以下的公式:
Vπ(s)=Eπ[rt+1+γrt+2+γ2rt+3+⋯|st=s]=Eπ[∑k=0∞γkt+k+1|st=s](8) (8) V π ( s ) = E π [ r t + 1 + γ r t + 2 + γ 2 r t + 3 + ⋯ | s t = s ] = E π [ ∑ k = 0 ∞ γ t + k + 1 k | s t = s ]
然后在求和中分离出
rt+1 r t + 1 ,得到如下式子:
Vπ(s)=E[rt+1+γ∑k=0∞γkrt+k+2|st=s](9) (9) V π ( s ) = E [ r t + 1 + γ ∑ k = 0 ∞ γ k r t + k + 2 | s t = s ]
根据以下两式:
Eπ[rt+1|st=s]=∑aπ(s,a)∑s′Pass′Rass′(10) (10) E π [ r t + 1 | s t = s ] = ∑ a π ( s , a ) ∑ s ′ P s s ′ a R s s ′ a
Eπ[γ∑k=0∞γkrt+k+2|st=s]=∑aπ(s,a)∑s′Pass′γEπ[∑k=0∞γkrt+k+2|st+1=s′](11) (11) E π [ γ ∑ k = 0 ∞ γ k r t + k + 2 | s t = s ] = ∑ a π ( s , a ) ∑ s ′ P s s ′ a γ E π [ ∑ k = 0 ∞ γ k r t + k + 2 | s t + 1 = s ′ ]
推出贝尔曼方程式:
Vπ(s)=∑aπ(s,a)∑s′Pass′{Rass′+γEπ[∑k=0∞γkrt+k+2|st+1=s′]}(12) (12) V π ( s ) = ∑ a π ( s , a ) ∑ s ′ P s s ′ a { R s s ′ a + γ E π [ ∑ k = 0 ∞ γ k r t + k + 2 | s t + 1 = s ′ ] }
可以发现该方程的末尾段即使当
s=s′ s = s ′ 时候的状态值方程,故可以得到下式:
Vπ(s)=∑aπ(s,a)∑s′Pass′[Rass′+γ∑k=0∞Vπ(s′)](13) (13) V π ( s ) = ∑ a π ( s , a ) ∑ s ′ P s s ′ a [ R s s ′ a + γ ∑ k = 0 ∞ V π ( s ′ ) ]
贝尔曼方程的行为值函数也可以用类似的方法推导,结果如下所示:
Qπ(s,a)=Eπ[rt+1+γrt+2+γ2rt+3+⋯|st=s,at=a]Qπ(s,a)=E[rt+1+γ∑k=0∞γkrt+k+2|st=s,at=a]Qπ(s,a)=∑s′Pass′{Rass′+γ∑a′Eπ[∑k=0∞γkrt+k+2|st+1=s′,at+1=a′]}Qπ(s,a)=∑s′Pass′[Rass′+γ∑a′Qπ(s′,a′)] Q π ( s , a ) = E π [ r t + 1 + γ r t + 2 + γ 2 r t + 3 + ⋯ | s t = s , a t = a ] Q π ( s , a ) = E [ r t + 1 + γ ∑ k = 0 ∞ γ k r t + k + 2 | s t = s , a t = a ] Q π ( s , a ) = ∑ s ′ P s s ′ a { R s s ′ a + γ ∑ a ′ E π [ ∑ k = 0 ∞ γ k r t + k + 2 | s t + 1 = s ′ , a t + 1 = a ′ ] } Q π ( s , a ) = ∑ s ′ P s s ′ a [ R s s ′ a + γ ∑ a ′ Q π ( s ′ , a ′ ) ]
yining贝尔曼方程http://www.atyun.com/10331.html