价值迭代和策略迭代有什么区别?
machine-learning
8
0

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

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

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

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

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

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

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

收藏
评论

基本区别是-

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

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

策略迭代是基于“策略评估->策略改进”的原理进行的。

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

收藏
评论

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

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

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

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

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

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题