贝尔曼方程 (Bellman Equation) 描述了动作价值函数的递归关系。
贝尔曼方程
假设 Rt 是 St,At,St+1 的函数。那么
Qπ(st,at)=ESt+1,At+1[Rt+γ⋅Qπ(St+1,At+1)∣St=st,At=at]
通过 Q,V 之间的关系,我们可以得到贝尔曼方差的其他两种形式:
Qπ(st,at)Vπ(st)=ESt+1[Rt+γ⋅Vπ(St+1)∣St=st,At=at]=EAt,St+1[Rt+γ⋅Vπ(St+1)∣St=st]
贝尔曼方程的证明
Qπ(st,at)=ESt+1,At+1[Ut∣St=st,At=at]=ESt+1,At+1[Rt+γ⋅Ut+1∣St=st,At=at]=ESt+1,At+1[Rt∣St=st,At=at]+γ⋅ESt+1,At+1[Ut+1∣St=st,At=at]
分析第二项,Ut+1 的期望可以写成
==ESt+1,At+1[Ut+1∣St=st,At=at]ESt+1,At+1[ESt+2,At+2[Ut+1∣St+1,At+1]∣St=st,At=at]ESt+1,At+1[Qπ(St+1,At+1)∣St=st,At=at]
综上所述,我们得到
Qπ(st,at)=ESt+1,At+1[Rt+γ⋅Qπ(St+1,At+1)∣St=st,At=at]
最优贝尔曼方程
假设 Rt 是 St,At,St+1 的函数。那么
Q∗(st,at)=ESt+1∼p(∣st,at)[Rt+γ⋅A∈AmaxQ∗(St+1,A)∣St=st,At=at]
最优贝尔曼方程的证明
设最优策略函数为 π∗=argmaxπQπ(s,a),∀s∈S,a∈A。由贝尔曼方程可得:
Qπ∗(st,at)=ESt+1,At+1[Rt+γ⋅Qπ∗(St+1,At+1)∣St=st,At=at]
根据定义,最优动作价值函数是
Q∗(s,a)≜πmaxQπ(s,a),∀s∈S,a∈A
所以 Qπ∗(s,a) 就是 Q∗(s,a)。于是
Q∗(st,at)=ESt+1,At+1[Rt+γ⋅Q∗(St+1,At+1)∣St=st,At=at]
因为动作 At+1=argmaxAQ∗(St+1,A) 是状态 St+1 的确定性函数,所以
Q∗(st,at)=ESt+1[Rt+γ⋅A∈AmaxQ∗(St+1,A)∣St=st,At=at]