Q学习和SARSA之间的区别在于,Q学习将当前状态与最佳可能的下一状态进行比较,而SARSA将当前状态与实际下一状态进行比较。
如果使用贪婪选择策略,也就是说,动作值最高的动作被100%选择,那么SARSA和Q-learning是否相同?
发布于 2015-10-27 16:46:06
嗯,实际上不是。SARSA和Q-learning之间的一个关键区别是SARSA是一种基于策略的算法(它遵循正在学习的策略),而Q-learning是一种非策略算法(它可以遵循任何策略(满足某些收敛要求)。
注意,在两种算法的下面的伪代码中,SARSA选择a‘and s’,然后更新Q函数;而Q学习首先更新Q函数,并且在下一次迭代中选择要执行的下一个动作,该下一个动作是从更新的Q函数导出的,并且不一定等于被选择来更新Q的a‘。


在任何情况下,这两种算法都需要探索(即,采取与贪婪行动不同的行动)才能收敛。
SARSA和Q-learning的伪代码是从Sutton和Barto的书中提取的:Reinforcement Learning: An Introduction (HTML version)
发布于 2017-08-04 21:41:43
如果我们只使用贪婪的策略,那么就不会有探索,所以学习就不会起作用。在epsilon变为0(例如1/t )的极限情况下,SARSA和Q-Learning将收敛到最优策略q*。然而,随着epsilon的固定,SARSA将收敛到最优学习策略,而Q- epsilon-greedy将收敛到最优策略q*。
我在这里写了一个小纸条来解释两者之间的区别,并希望它能有所帮助:
https://tcnguyen.github.io/reinforcement_learning/sarsa_vs_q_learning.html
发布于 2019-04-10 06:26:57
如果已经形成了最优策略,则具有纯贪婪和Q学习的SARSA是相同的。
然而,在训练中,我们只有一个策略或次优策略,纯粹贪婪的SARSA只会收敛到可用的“最佳”次优策略,而不会尝试探索最优策略,而Q学习可以做到,因为

,这意味着它尝试所有可用的操作,并选择最大的一个。
https://stackoverflow.com/questions/32846262
复制相似问题