强化学习——值函数与Bellman方程

在强化学习中,agent和环境之间进行一系列交互:在每个时刻 t ,根据环境的状态和奖励,agent采取某一行为;这个行为会作用到环境中,环境改变状态并对agent进行奖励。

这里写图片描述

agent的目标是最大化累积奖励。

1 MDP

马尔可夫决策过程(Markov Decision Process, MDP)是对环境的建模。

MDP是一个五元组 <S,A,P,R,γ> ,其中
- S 是一个有限状态集
- A 是一个有限动作集
- P 是一个状态转移概率矩阵, Pass=P[St+1=s|St=s,At=a]
- R 是一个奖励函数, Ras=E[Rt+1|St=s,At=a]
- γ 是一个折扣因子 γ[0,1] .

策略 π 是agent的行为函数:

π(a|s)=P[At=a|St=s]

注意,策略只和状态相关,和时间无关(静态的)。

2 值函数与Bellman期望方程

2.1 值函数

值函数是对未来奖励的一个预测。

回报(return)
回报 Gt 是从时刻 t 开始的总折扣奖励:

Gt=Rt+1+γRt+2+=k=1γkRt+k+1

状态值函数
状态值函数 vπ(s) 是从状态 s 出发,按照策略 π 采取行为得到的期望回报:

vπ(s)=Eπ[Gt|St=s]

状态值函数可以用来评价状态的好坏。

根据定义可以得到:

vπ(s)=Eπ[Rt+1+γGt+1|St=s]=Eπ[Rt+1+γvπ(St+1)|St=s]

行为值函数
行为值函数 qπ(s,a) 是从状态 s 出发,采取行为 a 后,然后按照策略 π 采取行为得到的期望回报:

qπ(s,a)=Eπ[Gt|St=s,At=a]

根据定义可以得到:

qπ(s,a)=E[Rt+1+γqπ(St+1,At+1)|St=s,At=a]

2.2 Bellman期望方程

Bellman期望方程其实就是 vπ(s) qπ(s,a) 自身以及相互之间的递推关系。

vπ(s) qπ(s,a) 之间的关系

vπ(s)=aAπ(a|s)qπ(s,a)(1)

这里写图片描述

qπ(s,a)=Ras+γsSPassvπ(s)(2)

这里写图片描述

vπ(s) 自身的递推关系

把公式(2)代入(1)中得到:

vπ(s)=aπ(a|s)Ras+γsPassvπ(s)(3)

这里写图片描述

qπ(s,a) 自身的递推关系

把公式(1)代入(2)中得到:

qπ(s,a)=Ras+γsPassaπ(a|s)qπ(s,a)(4)

这里写图片描述

3 最优值函数与Bellman最优方程

3.1 最优值函数

最优状态值函数
最优值函数 v(s) 是在所有策略上的最大值函数:

v(s)=maxπvπ(s)

最优行为值函数
最优行为值函数 q(s,a) 是在所有策略上的最大行为值函数:

q(s,a)=maxπqπ(s,a)

当最优值函数已知时,可以认为MDP已被解决。

3.2 Bellman最优方程

Bellman最优方程其实就是 v(s) q(s,a) 自身以及相互之间的递推关系。

v(s) q(s,a) 之间的关系

v(s)=maxπvπ(s)=maxπaAπ(a|s)qπ(s,a)=maxaq(s,a)(5.1)(5.2)(5.3)

这里写图片描述

问题:(5.3)为什么成立?

aAπ(a|s)qπ(s,a)maxaqπ(s,a)maxπaAπ(a|s)qπ(s,a)maxπmaxaqπ(s,a)maxπaAπ(a|s)qπ(s,a)maxaq(s,a)

只能证明出 ,怎么证明 = 呢?

q(s,a)=maxπqπ(s,a)=maxπRas+γsSPassvπ(s)=Ras+γsSPassv(s)(6.1)(6.2)(6.3)

这里写图片描述

同样,怎么证明公式(6.3)呢?

v(s) 自身的递推关系

把公式(6)代入(5)中得到:

v(s)=maxaRas+γsSPassv(s)(7)

这里写图片描述

q(s,a) 自身的递推关系

把公式(5)代入公式(6)得到:

q(s,a)=Ras+γsSPassmaxaq(s,a)(8)

这里写图片描述

4 最优策略

定义策略之间的偏序关系

ππ if vπ(s)vπ(s), s

那么有如下定理成立:

对任意MDP:

  • 存在最优策略 π ,满足 ππ,π
  • 所有最优策略的状态值函数都等于最优状态值函数 vπ(s)=v(s)
  • 所有的最优策略的行为值函数都等于最优行为值函数 qπ(s,a)=q(s,a)

思考这样一个问题:如果某个状态 s1 是在策略 π1 上取到最优状态值,而 s2 是在另一个策略 π2 上取得最优状态值,那么最优策略是什么呢?

这种情况下是不存在最优策略的。
但是对于有限MDP,并且值函数有界时,上述情况并不存在,即至少有一个最优策略。

猜你喜欢

转载自blog.csdn.net/VictoriaW/article/details/78839929