强化学习算法:价值迭代和策略迭代算法

在强化学习问题中,如果知道环境的具体信息(例如所有的环境状态、状态转移概率矩阵和关于动作或状态的奖励等),则可利用这些信息构建一个 MDP 模型来对环境进行描述。一旦有了这个模型,就可以使用动态规划的方法来对最优价值函数和策略进行求解。一旦获得了最优价值函数,最优策略就是选择能够最大化下一状态价值的动作。

价值迭代

价值迭代(Value Iteration)算法是一种求解最优策略的方法,其思想是:遍历环境中的每一个状态,在每一个状态下,依次执行每一个可以执行的动作,算出执行每一个动作后获得的奖励,即状态-动作价值,当前状态的价值即为当前状态下的最大状态-动作价值。重复这个过程,直到每个状态的最优价值不再发生变化,则迭代结束。

价值迭代算法如下:
价值迭代算法

策略迭代

我们通过价值迭代(Value Iteration)间接地寻找最优策略,而在策略迭代(Policy Iteration)中直接存储和更新策略。策略迭代算法主要由两部分组成:策略估计(Policy Evaluation)和策略改进(Policy Improvement)。

其算法思想是:首先随机初始化策略 π,将状态价值函数置为 0。在策略估计部分,根据当前的策略π来计算每一个状态的价值,直到收敛为止。在策略改进部分,根据上一步求得的状态价值来计算新的策略,直到策略收敛为止,否则重新回到策略估计。

策略迭代算法如下: