Algorithm 何时使用某种强化学习算法?
我正在学习强化学习,读萨顿的书作为大学课程。除了经典的PD、MC、TD和Q-学习算法外,我还阅读了用于解决决策问题的策略梯度方法和遗传算法。 我以前从未有过这方面的经验,我在理解什么时候一种技术应该优于另一种技术时遇到了问题。我有一些想法,但我不确定。有人能简要地解释一下或告诉我一个来源,在那里我可以找到一些关于应该使用某种方法的典型情况的信息吗?据我所知:Algorithm 何时使用某种强化学习算法?,algorithm,machine-learning,artificial-intelligence,markov-chains,reinforcement-learning,Algorithm,Machine Learning,Artificial Intelligence,Markov Chains,Reinforcement Learning,我正在学习强化学习,读萨顿的书作为大学课程。除了经典的PD、MC、TD和Q-学习算法外,我还阅读了用于解决决策问题的策略梯度方法和遗传算法。 我以前从未有过这方面的经验,我在理解什么时候一种技术应该优于另一种技术时遇到了问题。我有一些想法,但我不确定。有人能简要地解释一下或告诉我一个来源,在那里我可以找到一些关于应该使用某种方法的典型情况的信息吗?据我所知: 动态规划和线性规划应该只在MDP只有很少的动作和状态,并且模型是已知的情况下使用,因为它非常昂贵。但什么时候DP比LP好 当我没有问题的
- 动态规划和线性规划应该只在MDP只有很少的动作和状态,并且模型是已知的情况下使用,因为它非常昂贵。但什么时候DP比LP好
- 当我没有问题的模型,但我可以生成样本时,使用蒙特卡罗方法。它没有偏差,但有很高的方差
- 当MC方法需要太多样本而方差较低时,应使用时间差分方法。但是我什么时候应该使用TD和Q-Learning
- 策略梯度和遗传算法适用于连续MDP。但是当一个比另一个好的时候
- 代理是在线学习还是离线学习
- 我们能把探索和开发阶段分开吗
- 我们能进行足够的探索吗
- MDP的视界是有限的还是无限的
- 国家和行动是连续的吗
状态和动作是连续的吗?考虑这一假设有助于选择正确的方法(算法)。为RL开发了离散算法和连续算法。一些“连续”算法在内部将状态或动作空间离散化。对于离线情况下的Q-学习,我不同意。Q-Learning可以很容易地在网上完成,而且从我所看到的情况来看,它与在线案例融合得非常好。我没有明确表示SARSA不是在线的,因为我在评论中没有提到SARSA。我只是说Q-learning可以在这两种情况下使用。SARSA是策略算法的一个例子。当您希望在了解策略的同时控制系统时,这种算法是最佳选择。关于Q-learning,我必须提到,当我们说Q-learning时,我们指的是Watkins提出的算法的原始版本(如果我没有错的话,1997年),虽然Q-learning有许多修改版本可供使用。联机与脱机您指的是打开策略与关闭策略。@mimoralea联机和脱机与打开和关闭策略不同(我只是想纠正这个错误,以防sombody偶然发现这篇文章):在线更新是在运行一集时执行的,通常在每一步之后执行,而离线更新是在该集终止且已知全部奖励后执行的(无引导)。另一方面,On policy update指对用于采样的策略进行的更新。非策略更新使用某些技术(重要性抽样、v跟踪)使用其他轮询的转出更新策略。