初学强化学习,看了David Silver的视频最初没有看懂价值迭代与策略迭代二者区别,看了几篇博客后理解了,分享一下给大家参考。公式等在这里不再赘述,只纪录一下我当初没有理解的部分。
1.策略迭代
1.1 策略评估
课堂中的这幅图片误导了我一段时间,实际上是只有左边描述了一次策略评估的过程,右边图的意思是其实无需迭代很多次,V矩阵对应的贪心策略已经满足最优策略(但实际上在迭代过程中我们并不知道当前V的策略,因为策略迭代中策略评估与策略改进是分开的,只有在策略改进阶段我们才能确定当前的策略)。但在实际的策略评估中,需要一直进行到V矩阵收敛才能进入到策略改进阶段。
1.2 策略改进
策略改进阶段输入为策略评估阶段的V矩阵,并根据V矩阵由贪心策略确定相应的策略并继续进行策略评估。以此进行反复迭代更新,最终策略会收敛至最佳策略。
2.价值迭代
价值迭代就相当于是在每一次V矩阵更新的时候,都会更新对应的策略。在下一次迭代更新矩阵V的时候就会使用新的策略,这样直到最后V收敛。这种方法可以避免策略迭代中多次迭代但V对应的策略却早已达到最佳策略的情况。
最后放上两个算法的伪代码供进行比对: