《强化学习导论》:Dynamic Programming

这里的DP是强化学习中用于求解MDP问题的一种方法,本章用DP找到满足最优贝尔曼方程的策略

《强化学习导论》:Dynamic Programming_第1张图片

首先我们考虑如何评估状态值函数v,这又被称为策略评估问题

《强化学习导论》:Dynamic Programming_第2张图片

考虑迭代策略评估,其迭代公式如下

算法描述如下

《强化学习导论》:Dynamic Programming_第3张图片

例子,走迷宫,其中每走一步奖励-1,多次迭代即可逼近v

《强化学习导论》:Dynamic Programming_第4张图片

对于一个确定性策略,所谓策略改进,就是新策略使得

迭代使用4.7式可得下面结论,从而证明了4.8式

《强化学习导论》:Dynamic Programming_第5张图片

下面是新的贪心策略,对所有状态更新动作,由上面的证明可得价值函数一定是递增的

《强化学习导论》:Dynamic Programming_第6张图片

结合策略评估和策略改进可以得到下面的迭代方法,E表示策略评估,I表示策略改进

总体来说可以描述为

《强化学习导论》:Dynamic Programming_第7张图片

这种迭代方法通常适用于确定性策略

值迭代,可以看出值迭代和策略迭代的区别在于直接取最大值估计v(k+1)
可以用最优贝尔曼方程来理解

算法描述

《强化学习导论》:Dynamic Programming_第8张图片

值迭代把策略评估以及改进整合到了一个步骤中

GPI中的评估和改进流程可视为竞争和合作。 他们的竞争意味着他们拉开相反的方向。 使值函数的策略贪婪通常会使值函数对于已更改的策略不正确,并且使值函数与策略一致通常会导致policy不再变得贪婪。 然而,从长远来看,这两个过程相互作用以找到单个联合解决方案:最优值函数和最优策略

DP的缺点是对于状态大的问题求解效率一般

你可能感兴趣的:(《强化学习导论》:Dynamic Programming)