集百家所论 sarsa算法和qlearning算法的不同之处的详细深入探讨( 三 )


这种结合的方式确实会使Q-算法表现出一些与SARSA相似的特性,因为它引入了探索随机性 。然而,需要注意的是,尽管它们在某种程度上相似,但SARSA和Q-仍然有一些根本性的差异,如更新规则和状态-动作选择的方式 。
所以,如果你想要一个更接近SARSA算法的学习算法,可以将Q-与ε-策略结合使用,这将增加探索的随机性 。这个组合将使Q-在某种程度上类似于SARSA,但仍然有一些不同之处 。
后续
我发现了很优秀的文章,讲得比我清楚很多,特意在此附上
和Sarsa的区别到底是什么?为什么说勇敢而Sarsa胆小谨慎?(这篇文章偏感性,能从直觉上有个大致感受)
强化学习笔记2:彻底搞清楚什么是Q-与Sarsa(这篇文章偏理性,能真正明白,也终于说到了我困惑的地方怎么解释,其第三部分,即(三、Q-如何实现更加有效的探索?)个人感觉是全文精华部分,再次重新排版重写一下,方便大家查阅)
我们的目的是更新黄色状态的动作价值 Q ( S = y e l l l o w , A ) Q(S=,A) Q(S=,A)
假设我们已知在黄色状态下只有2种状态可选,即灰动作和黑动作 。蓝色和绿色状态下的最大价值动作都是红动作 。
在某个回合()中,在第n步时,状态为黄色,并且在第k-1次更新 Q ( S = y e l l o w , A ) Q(S=,A) Q(S=,A)时,已知灰动作价值比黑动作大,即 Q k ( S n , a n = g r a y ) > Q k ( S n , a n ′ = b l a c k ) Q_k(S_n,a_n=gray)>Q_k(S_n,a'_n=black) Qk?(Sn?,an?=gray)>Qk?(Sn?,an′?=black)
在通过 ε-策略选择动作时,会有两种情况,我们用①和②表示
①有 1 ? ε / 2 1-ε/2 1?ε/2的概率选择当前价值Q最大的灰动作 a n a_n an?
而黑动作就不更新,即 Q k + 1 ( S n , a n ′ ) = Q k ( S n , a n ′ ) Q_{k+1}(S_n,a'_n)=Q_{k}(S_n,a'_n) Qk+1?(Sn?,an′?)=Qk?(Sn?,an′?)
其中 S n = y e l l o w S_n= Sn?=,S n + 1 = b l u e S_{n+1}=blue Sn+1?=blue
②有 ε / 2 ε/2 ε/2的概率选择价值Q较小的黑动作 a n ′ a'_n an′?
Q k + 1 ( S n , a n ′ ) = Q k ( S n , a n ′ ) + α [ R n + 1 + m a x Q i ( S n + 1 ′ , a n + 1 ′ ) ? Q k ( S n , a n ′ ) ] Q_{k+1}(S_n,a'_n)=Q_{k}(S_n,a'_n)+\alpha[R_{n+1}+(S'_{n+1},a'_{n+1})-Q_k(S_n,a'_n)] Qk+1?(Sn?,an′?)=Qk?(Sn?,an′?)+α[Rn+1?+maxQi?(Sn+1′?,an+1′?)?Qk?(Sn?,an′?)]
而灰动作就不更新,即 Q k + 1 ( S n , a n ) = Q k ( S n , a n ) Q_{k+1}(S_n,a_n)=Q_{k}(S_n,a_n) Qk+1?(Sn?,an?)=Qk?(Sn?,an?)
其中 S n = y e l l o w S_n= Sn?=,S n + 1 ′ = g r e e n S'_{n+1}=green Sn+1′?=green
无论是情况①还是②,黄色状态下灰动作与黑动作的价值的大小关系都可能发生变化!!,我们通过最大值更新目标策略 π \pi π
Q k + 1 π ( S = y e l l o w , A ) = m a x { Q k + 1 ( S n , a n ) , Q k + 1 ( S n , a n ′ ) } Q_{k+1}^{\pi}(S=,A)=max\{Q_{k+1}(S_n,a_n),Q_{k+1}(S_n,a'_n)\} Qk+1π?(S=,A)=max{Qk+1?(Sn?,an?),Qk+1?(Sn?,an′?)}
【集百家所论sarsa算法和qlearning算法的不同之处的详细深入探讨】比如,当出现情况②时,探索了黑动作后,更新后有 Q k + 1 ( S n , a n ) < Q k + 1 ( S n , a n ′ ) Q_{k+1}(S_n,a_n)Qk+1?(Sn?,an?)