代码链接:https://pan.baidu.com/s/1GjV1sWn2Ajp3uB9iMOYEOw 。提取码:09a1 。
简介
- 在动态规划设置中,智能体完全了解 MDP(这比强化学习设置简单多了。在强化学习设置中,智能体一开始完全不了解环境如何确定状态和动作,必须完全通过互动来了解如何选择动作。)
迭代方法
- 为了获得策略
对应的状态值函数
,只需求解
的贝尔曼预期方程对应的方程组。
- 虽然可以通过分析方式求解方程组,但是将重点讲解迭代方法。
迭代策略评估
- 迭代策略评估是在动态规划设置中用到的算法,用于估算策略
对应的状态值函数
。在此方法中,我们将向值函数估值中应用贝尔曼更新,直到估值的变化几乎不易觉察。
动作值的估值
- 在动态规划设置中,可以使用以下方程从状态值函数
快速获得动作值函数
策略改进
- 策略改进对策略
对应的动作值函数
进行估算
,并返回改进(或对等)的策略
,其中
。该算法首先构建动作值函数估值
。然后,对应每个状态
,只需选择最大化
的动作
。换句话说,
,针对所有
。
策略迭代
- 策略迭代是一种可以在动态规划设置中解决 MDP 的算法。它包含一系列的策略评估和改进步骤,肯定会收敛于最优策略(对应任意_有限_ MDP)。
截断策略迭代
- 截断策略迭代是在动态规划设置中用来估算策略
对应的状态值函数
的算法。对于此方法,在对状态空间执行固定次数的遍历后,停止评估步骤。我们将评估步骤中的此方法称为截断策略评估。
值迭代
- 值迭代是在动态规划设置中用来估算策略
对应的状态值函数
的算法。对于此方法,每次对状态空间进行遍历时,都同时进行策略评估和策略改进。