美文网首页
深度学习和强化学习(四)从on-policy的SARSA到off

深度学习和强化学习(四)从on-policy的SARSA到off

作者: 循梦渡 | 来源:发表于2019-11-15 13:59 被阅读0次

SARSA算法,属于在线控制这一类,即一直使用一个策略来更新价值函数和选择新的动作,而这个策略是ϵ−贪婪法

算法流程:迭代轮数T,状态集S, 动作集A, 步长α,衰减因子γ, 探索率ϵ,输出:所有的状态和动作对应的价值Q

\

注意A'并不执行,而只是用来更新价值函数,但实际上,由于SARSA中更新价值函数和选择新的动作都是同样使用e-贪婪法 下一步的执行肯定也就是A’

那么同样的,对应的多步时序差分在线控制算法,就是我们的SARSA(λ), SARSA(λ)算法默认都是基于反向来进行价值函数迭代。

对应动作价值函数

Qlearning

对于Q-Learning,我们会使用ϵ−贪婪法来选择新的动作,这部分和SARSA完全相同。但是对于价值函数的更新,Q-Learning使用的是贪婪法,而不是SARSA的ϵ−贪婪法。这一点就是SARSA和Q-Learning本质的区别。

Q-Learning直接学习的是最优策略,而SARSA在学习最优策略的同时还在做探索。这导致我们在学习最优策略的时候,如果用SARSA,为了保证收敛,需要制定一个策略,使ϵ−ϵ−贪婪法的超参数ϵϵ在迭代的过程中逐渐变小。Q-Learning没有这个烦恼。

    另外一个就是Q-Learning直接学习最优策略,但是最优策略会依赖于训练中产生的一系列数据,所以受样本数据的影响较大,因此受到训练数据方差的影响很大,甚至会影响Q函数的收敛。Q-Learning的深度强化学习版Deep Q-Learning也有这个问题。

    在学习过程中,SARSA在收敛的过程中鼓励探索,这样学习过程会比较平滑,不至于过于激进,导致出现像Q-Learning可能遇到一些特殊的最优“陷阱”。比如经典的强化学习问题"Cliff Walk"。

    在实际应用中,如果我们是在模拟环境中训练强化学习模型,推荐使用Q-Learning,如果是在线生产环境中训练模型,则推荐使用SARSA。

相关文章

网友评论

      本文标题:深度学习和强化学习(四)从on-policy的SARSA到off

      本文链接:https://www.haomeiwen.com/subject/pnzjictx.html