11

使用查找表(而不是函数逼近)的经典 Q-learning 算法是否等同于动态规划?

4

3 回答 3

22

来自 Sutton & Barto 的书(强化学习:简介,第 4 章

术语动态规划 (DP) 是指一组算法,可用于计算给定环境的完美模型作为马尔可夫决策过程 (MDP) 的最优策略。经典的 DP 算法在强化学习中的效用有限,因为它们假设完美模型和巨大的计算开销,但它们在理论上仍然很重要。

因此,尽管两者具有相同的工作原理(使用表格强化学习/动态编程或近似 RL/DP),但经典 DP 和经典 RL 之间的主要区别在于,首先假设模型是已知的。这基本上意味着知道转移概率(表示在给定动作 a 的情况下从状态 s 变为状态 s 的概率)和预期的即时奖励函数。

相反,RL 方法只需要访问一组样本,在线或离线收集(取决于算法)。

当然,可以在 RL 和 DP 之间使用混合方法,例如从样本中学习模型,然后在学习过程中使用该模型的方法。

注意:术语动态规划,除了一组与 RL 相关的数学优化技术外,还用于指代“一般算法模式”,正如一些评论中所指出的那样。在这两种情况下,基本原理都是相同的,但根据上下文可能具有不同的含义。

于 2016-08-17T08:24:02.800 回答
16

动态规划是一个包含许多算法的保护伞。Q-Learning 是一种特定的算法。所以,不,不一样。

此外,如果您的意思是动态编程,如Value IterationPolicy Iteration,仍然不一样。这些算法是“计划”方法。你必须给他们一个转换和一个奖励函数,他们将迭代地计算一个价值函数和一个最优策略

Q-Learning 是一种无模型的强化学习方法。这个是“无模型”的,不是因为它不使用机器学习模型或类似的东西,而是因为它们不需要也不使用环境模型(也称为 MDP)来获得最优策略。您还有“基于模型”的方法。与动态编程方法不同,这些方法基于学习模型,而不是简单地使用模型。而且,与无模型方法不同,在估计值后不要丢弃样本,而是尝试重建转换和奖励函数以获得更好的性能。

基于模型的方法结合了无模型算法和规划算法,以比无模型方法(Q-Learning)所需的样本量更少且不需要像动态规划方法(值/策略迭代)这样的模型来获得同样好的结果。

于 2017-11-16T15:48:32.780 回答
-1

如果你在离线设置中使用 Q-learning,例如 AlphaGo,那么它就相当于动态规划。不同之处在于它也可以用于在线设置。

于 2016-08-17T05:49:47.127 回答