价值迭代和策略迭代有什么区别?


93

在强化学习中,策略迭代价值迭代有什么区别?

据我了解,在值迭代中,您使用Bellman方程来求解最优策略,而在策略迭代中,您随机选择一个策略π,并找到该策略的收益。

我的疑问是,如果您在PI中选择随机策略π,那么即使我们选择多个随机策略,也如何保证它是最佳策略。


13
ai.stackexchange.comstats.stackexchange.comdatascience.stackexchange.com等网站上问这个问题会更合适。
nbro

Answers:


123

让我们并排看它们。比较的关键部分突出显示。数字来自Sutton和Barto的书:强化学习:简介

在此处输入图片说明 关键点:

  1. 策略迭代包括:策略评估+策略改进,并且反复迭代这两项直到策略收敛。
  2. 价值迭代包括:找到最优价值函数+一个策略提取。两者没有重复,因为一旦值函数最佳,则其中的策略也应最佳(即收敛)。
  3. 寻找最优值函数也可以看作是策略改进(由于最大)和截短的策略评估(仅在对所有状态进行一次扫描之后,不考虑收敛而重新分配v_(s))的组合。
  4. 除了最大操作(突出显示)以外,用于策略评估找到最优值函数的算法非常相似。
  5. 同样,政策改进政策提取的关键步骤是相同的,除了前者涉及稳定性检查。

以我的经验,策略迭代比值迭代快,因为策略比值函数收敛更快。我记得这在书中也有描述。

我想这种困惑主要来自所有这些有点相似的术语,这些术语以前也使我感到困惑。


3
我同意策略迭代收敛于更少的迭代中,并且我还在多个地方读到它更快。我在Burlap中使用这两种方法做了一些简单的盒子世界和迷宫求解实验。我发现值迭代执行了更多的迭代,但是花费更少的时间达到收敛。YMMV。
瑞安

1
@Chrom,您应该阅读相反的内容。这是本书的一句话:“策略迭代通常会以很少的迭代收敛。这在图4.1中的示例进行了说明。 ”,摘自该书2017nov5版本的第65页。
zyxue

3
是的,我玩过Grid World的几种口味。我只是想指出,在迭代方面,“更快”可能会偏爱PI。但是以秒为单位的“更快”实际上可能会偏爱VI。
瑞安

3
要澄清的是,策略迭代将花费较少的迭代,但是比值迭代要复杂得多。哪一个更快取决于环境。
RF尼尔森

2
我知道这是旧帖子。但是我强烈建议您调查一下(medium.com/@m.alzantot/…)该链接提供了一个代码,它对于我来说更加清楚。
串联

72

策略迭代算法中,您从随机策略开始,然后找到该策略的价值函数(策略评估步骤),然后根据先前的价值函数找到新的(改进的)策略,依此类推。在此过程中,保证每项策略都是对先前策略的严格改进(除非它已经是最优的)。给定策略,可以使用Bellman运算符获取其值函数。

值迭代中,从一个随机值函数开始,然后在迭代过程中找到一个新的(改进的)值函数,直到达到最佳值函数。注意,您可以轻松地从最佳值函数中得出最佳策略。该过程基于最优Bellman算子

从某种意义上说,这两种算法共享相同的工作原理,可以将它们视为广义策略迭代的两种情况。但是,最佳Bellman算子包含一个max算子,它是非线性的,因此具有不同的特征。另外,可以在纯值迭代和纯策略迭代之间使用混合方法。


1
不错的描述。好吧,让我在策略迭代中添加它,它使用belman期望方程,在值迭代中使用melman最大方程。对于值迭代,可以减少迭代次数,但对于一次迭代,可能需要进行大量工作。对于策略迭代,更多迭代
Shamane Siriwardhana

策略迭代中也没有最大运算符吗?否则如何基于新值功能更新策略?
huangzonghao

不会,SARSA算法是策略迭代的典型示例。正如您在此伪代码(incompleteideas.net/book/ebook/node64.html)中所看到的那样,值函数update不包含任何max运算符。但是,如果您是指从值函数中选择最佳操作的最大运算符(即贪婪的操作),是的,在此过程中存在最大运算。
Pablo EM

10

基本区别是-

策略迭代中-您随机选择一个策略并找到与其对应的价值函数,然后根据先前的价值函数找到一个新的(改进的)策略,依此类推,这将导致最佳策略。

值迭代中-您随机选择一个值函数,然后在迭代过程中找到一个新的(改进的)值函数,直到达到最优值函数,然后从该最优值函数中得出最优策略。

政策迭代的工作原理是“政策评估->政策改进”。

价值迭代的原则是“最优价值功能->最优政策”。


0

就我而言,与@zyxue的想法相反,VI通常比PI快得多

正如您已经知道的,原因非常简单,贝尔曼方程式用于解决给定策略的价值函数。由于我们可以直接求解最优策略的价值函数,因此解决当前策略的价值函数显然是浪费时间。

至于关于PI收敛性的问题,我认为您可能会忽略这样一个事实,即如果您针对每种信息状态改进策略,那么您就为整个游戏改进了策略。如果您熟悉“反事实后悔最小化”,这也很容易证明-每个信息状态的遗憾总和构成了整体遗憾的上限,因此,将每个状态的遗憾最小化将使总体遗憾最小化。导致最优政策。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.