Es ist ein subtiles Problem.
Wenn Sie sich den A3C-Algorithmus in der Originalarbeit ansehen (S.4 und Anhang S3 für Pseudocode), ist der Schauspieler-Kritiker-Algorithmus (der gleiche Algorithmus, sowohl episodische als auch anhaltende Probleme) um einen Gammafaktor im Verhältnis zum Schauspieler- Kritiker-Pseudocode für episodische Probleme im Sutton- und Barto-Buch (S.332, Ausgabe Januar 2019 von http://incompleteideas.net/book/the-book.html ). Das Sutton and Barto-Buch enthält das zusätzliche "erste" Gamma, wie auf Ihrem Bild angegeben. Also ist entweder das Buch oder das A3C-Papier falsch? Nicht wirklich.
Der Schlüssel ist auf S. 199 des Sutton and Barto-Buches:
Wenn es eine Diskontierung gibt (Gamma <1), sollte dies als eine Form der Kündigung behandelt werden, die einfach durch Einbeziehung eines Faktors von in den zweiten Term von (9.2) erfolgen kann.
Das subtile Problem ist, dass es zwei Interpretationen für den Abzinsungsfaktor Gamma gibt:
- Ein multiplikativer Faktor, der fernen zukünftigen Belohnungen weniger Gewicht beimisst.
- Eine Wahrscheinlichkeit, 1 - Gamma, dass eine simulierte Flugbahn zu jedem Zeitpunkt fälschlicherweise endet. Diese Interpretation ist nur für episodische Fälle sinnvoll und nicht für fortlaufende Fälle.
Wörtliche Implementierungen:
- Multiplizieren Sie einfach die zukünftigen Belohnungen und zugehörigen Größen (V oder Q) in der Zukunft mit Gamma.
- Simulieren Sie einige Trajektorien und beenden Sie sie bei jedem Zeitschritt zufällig (1 - Gamma). Abgebrochene Flugbahnen geben keine unmittelbaren oder zukünftigen Belohnungen.
Die beiden Interpretationen von Gamma sind gültig. Die Wahl des einen oder anderen bedeutet jedoch, dass Sie ein anderes Problem angehen. Die Mathematik ist etwas anders und Sie erhalten ein zusätzliches Gamma, das mit der zweiten Interpretation multipliziert . G∇lnπ(a|s)
Wenn Sie sich beispielsweise in Schritt t = 2 und gamma = 0,9 befinden, lautet der Algorithmus für die zweite Interpretation, dass der Richtliniengradient oder . Dieser Term hat 19% weniger Gradientenleistung als der Term t = 0, aus dem einfachen Grund, dass 19% der simulierten Trajektorien durch t = 2 abgestorben sind. γ2G∇lnπ(a|s)0.81G∇lnπ(a|s)
Bei der ersten Interpretation von Gamma gibt es keinen solchen 19% igen Zerfall. Der Richtliniengradient ist nur bei t = 2. Aber Gamma ist immer noch in um die zukünftigen Belohnungen abzuzinsen.G∇lnπ(a|s)G
Sie können wählen, welche Interpretation von Gamma Sie verwenden möchten, müssen jedoch die Konsequenzen für den Algorithmus berücksichtigen. Ich persönlich halte mich lieber an Interpretation 1, nur weil es einfacher ist. Also verwende ich den Algorithmus im A3C-Papier, nicht im Sutton- und Barto-Buch.
Ihre Frage betraf den REINFORCE-Algorithmus, aber ich habe über Schauspieler-Kritiker gesprochen. Sie haben genau das gleiche Problem in Bezug auf die beiden Gamma-Interpretationen und das zusätzliche Gamma in REINFORCE.