斯坦福CS234增强学习——(2)当你已知世界模型
Markov Process or Markov Chain(马尔可夫过程,也叫马尔可夫链)
最简单的形式就是马尔可夫链(也叫马尔可夫过程),该模型只考虑了状态和状态转移矩阵(即一种状态向所有状态转变的概率),忽略agent采取的行动和回报(action和reward)。
Markov Reward Process(马尔可夫奖励过程)
在马尔可夫链的基础上,我们加上回报(reward),则模型进化为马尔可夫奖励过程。
价值函数
价值函数就是回报的加权求和,对于确定性过程,无所谓求均值,但是对于随机过程则必须求均值。
折扣因子
对于折扣因子γ,提出它的原因在于为了使得价值函数收敛有界。γ为0代表我们只考虑即时回报;而γ为1则代表了我们将所有的延迟奖励看作与即时奖励具有同等地位,若事件长度有限则可以考虑。利用γ,我们可以用矩阵形式计算价值函数,方法是(1)求解如下第一张图图所示的等式即可,等式中只有价值函数是未知量(2)如下述第二张图,利用动态规划进行求解,按照图中公式进行迭代,知道前后两次迭代的差小于我们所规定的误差范围即可
Markov Decision Process(马尔可夫过程)
在马尔可夫奖励过程的基础上,再加上决策行动(action),我们最终就得到了马尔可夫决策过程。
Policy
按照我们给出的这些定义,我们可以看到,当我们的policy给定时,马尔可夫决策过程将退化为马尔可夫奖励过程,如此一来,我们可以利用上述马尔可夫奖励过程的技术来解决马尔可夫决策过程问题。其中,R和P可以利用马尔可夫决策过程中相应变量的加权求和来表示:
MDP Control
下面我们将考虑最一般化的形式:马尔可夫决策过程控制。此时,policy并非固定,我们需要寻找到最好的policy使得价值函数取得最大值(价值函数具有唯一的最优解,然而policy却并非如此):
这里我解释一下为什么确定性policy的数量为27 :一条确定性policy是每个状态到决策行动的映射,如:当处于s1,采取行动a1,当处于s2,s3……,分别采用对应的决策行动,这就是一条确定性policy。诸如这样的policy一共有27 。
MDP Policy Iteration (PI)
在这部分,我们假定我们的policy是确定性的,在该情况下,为了找到最优的策略,我们需要采用一定的方法,首先,我们当然可以采用枚举法,但是策略的数量是指数级别的,很难在有限时间内完成,因此,我们提出了策略迭代(Policy Iteration):首先我们随机初始化一种policy,然后激素三其价值函数,而后进行policy优化得到更好的策略。
为了进行上述的优化过程,我们首先提出了**状态-行动值(State-Action Value)**的概念,即在某一步不遵循给定的策略,而在在之后的步骤中遵循给定的策略,如此得到的价值函数的值:
然后我们就可以利用该定义进行优化:
这种优化过程看起来有一些奇怪,因为它只在某一步采用了决策行动a,在后续步骤中仍旧采用了之前的policy,下面我们将证明这是一个单调优化过程(即对于每一个状态,在改进后,其价值函数都大于等于之前的policy的价值函数):
MDP Value Iteration (VI)
同样地,我们也可以进行价值迭代,其思想如下:首先,我们认为价值函数只计算一步的价值,然后计算前两步的价值,以此类推……
VI的收敛性证明
首先,我们给出压缩算子的定义(norm的意思是范数,x是一个向量):
利用该定义,我们可以完成对VI收敛性的证明:
证明简述:第一行到第二行的转变的原因是——a’是最佳决策行动,换为a之后值会降低;
因为我们多次运用了BV,所以经过不断的压缩,最终函数就会收敛。