Obwohl ich weiß, dass SARSA nicht den Richtlinien entspricht, während Q-Learning nicht den Richtlinien entspricht, ist es (für mich) schwierig, bei der Betrachtung ihrer Formeln einen Unterschied zwischen diesen beiden Algorithmen festzustellen.
Nach dem Buch Reinforcement Learning: An Introduction (von Sutton und Barto). In dem SARSA-Algorithmus kann bei gegebener Richtlinie die entsprechende Aktionswertfunktion Q (im Zustand s und Aktion a zum Zeitpunkt t), dh Q (s t , a t ), wie folgt aktualisiert werden
Q (s t , a t ) = Q (s t , a t ) + α * (r t + γ * Q (s t + 1 , a t + 1 ) - Q (s t , a t ))
Andererseits ist der Aktualisierungsschritt für den Q-Learning-Algorithmus der folgende
Q (s t , a t ) = Q (s t , a t ) + α * (r t + γ * max a Q (s t + 1 , a) - Q (s t , a t ))
was auch geschrieben werden kann als
Q (s t , a t ) = (1 - α) * Q (s t , a t ) + α * (r t + γ * max a Q (s t + 1 , a))
Dabei ist γ (Gamma) der Abzinsungsfaktor und r t die Belohnung, die zum Zeitpunkt t von der Umgebung erhalten wird.
Ist der Unterschied zwischen diesen beiden Algorithmen die Tatsache, dass SARSA nur den nächsten Richtlinienwert nachschlägt, während Q-Learning den nächsten maximalen Richtlinienwert nachschlägt ?
TLDR (und meine eigene Antwort)
Vielen Dank an alle, die diese Frage beantwortet haben, seit ich sie zum ersten Mal gestellt habe. Ich habe ein Github-Repo mit Q-Learning gemacht und empirisch verstanden, was der Unterschied ist. Alles hängt davon ab, wie Sie Ihre nächstbeste Aktion auswählen. Unter algorithmischen Gesichtspunkten kann dies eine mittlere , maximale oder beste Aktion sein, je nachdem, wie Sie sie implementiert haben.
Der andere Hauptunterschied ist , wenn diese Auswahl geschieht (zB Online - vs offline ) und wie / warum das Lernen auswirkt. Wenn Sie dies im Jahr 2019 lesen und eher eine praktische Person sind, ist das Spielen mit einem RL-Spielzeugproblem wahrscheinlich der beste Weg, um die Unterschiede zu verstehen.
Ein letzter wichtiger Hinweis ist, dass sowohl Suton & Barto als auch Wikipedia häufig gemischte, verwirrende oder falsche formelhafte Darstellungen in Bezug auf die beste / maximale Aktion und Belohnung des nächsten Staates haben :
r (t + 1)
ist in der Tat
r (t)
Hoffe, das hilft jedem, der jemals daran hängen bleibt.