属于强化学习的领域/算法有哪些?
TD(0)、Q-Learning 和 SARSA 都是时间差分算法,属于强化学习领域,但还有更多吗?
动态规划算法,例如策略迭代和价值迭代,是否被视为强化学习的一部分?或者这些只是时间差分算法的基础,它们是唯一的 RL 算法?
属于强化学习的领域/算法有哪些?
TD(0)、Q-Learning 和 SARSA 都是时间差分算法,属于强化学习领域,但还有更多吗?
动态规划算法,例如策略迭代和价值迭代,是否被视为强化学习的一部分?或者这些只是时间差分算法的基础,它们是唯一的 RL 算法?
动态规划算法(如策略迭代和值迭代)通常在强化学习的上下文中出现(特别是在《强化学习: Barto 和 Sutton 的介绍》一书中),因为它们与强化学习算法非常相关,比如-学习。它们都基于可以将环境建模为 MDP 的假设。
然而,动态规划算法要求底层 MDP 的转移模型和奖励函数是已知的。因此,它们通常被称为规划算法,因为它们可用于在给定环境的“动态”(由 MDP 表示)的情况下找到策略(可以被认为是plan )。他们只是利用环境中给定的“物理规则”来寻找策略。这种“利用”被称为规划算法。
另一方面,学习和类似算法不需要已知 MDP。他们试图通过与环境交互来找到策略(或价值函数)。他们最终从经验(即与环境的交互)中推断出底层 MDP 的“动态”。
如果没有给出 MDP,这个问题通常被称为完全强化学习问题。所以,算法像-learning 或 SARSA 通常被认为是强化学习算法。动态规划算法(如策略迭代)不能解决“完整的 RL 问题”,因此它们并不总是被视为 RL 算法,而只是规划算法。
RL 算法有几类。有时间差异、蒙特卡罗、actor-critic、无模型、基于模型、on-policy、off-policy、预测、控制、基于策略或基于价值的算法。这些类别可以重叠。例如,-学习是一种时差 (TD)、无模型、离策略、控制和基于值的算法:它基于时差 (TD) 更新规则,它不使用环境模型(无模型),它使用与它学习的策略不同的行为策略(off-policy),它用于找到一个策略(控制),它试图逼近一个价值函数而不是直接的策略(价值-基于)。
在《强化学习:简介》中,作者建议强化学习的主题涵盖了可以以这种方式构建的问题的分析和解决方案:
强化学习和机器学习、登山等很多以“ing”结尾的话题一样,同时也是一个问题,是一类在问题上效果很好的解决方法,也是研究这个问题及其解决方法的领域。为所有三件事使用一个名称很方便,但同时在概念上保持三者分开是必不可少的。尤其是问题和解决方法的区别在强化学习中非常重要;未能做出这种区分是许多混乱的根源。
和:
马尔可夫决策过程旨在以最简单的可能形式仅包括这三个方面——感觉、行动和目标,而不是轻视其中任何一个。任何非常适合解决此类问题的方法,我们都认为是强化学习方法。
因此,为了回答您的问题,最简单的看法是,RL 比经典的基于价值的 SARSA 和 Q 学习的最优控制方法更多(更多)。
在书中包含 DP 和其他“与 RL 相关”的算法可以让作者展示这些概念的密切相关性。例如,在实践中几乎没有将 Dyna-Q(一种与 Q 学习密切相关的规划算法)与经验回放区分开来。将一个严格称为“计划”,将另一个称为“强化学习”,并将它们分开对待,可能会降低对主题的洞察力。在许多情况下,在您最初认为的 RL 和“非 RL”方法之间存在混合方法,甚至是连续统一体。理解这一点为您提供了一个工具包来修改和发明算法。
话虽如此,这本书并不是强化学习的唯一仲裁者。归根结底,这只是一个分类问题,只有在您与某人交流并且有可能产生误解时才有意义。如果你说出你正在使用哪种算法,那么与你交谈的人是否认为它是 RL 并不重要。问题是什么以及您打算如何解决它很重要。