Es un tema sutil.
Si observa el algoritmo A3C en el documento original (p.4 y el apéndice S3 para el pseudocódigo), su algoritmo de actor crítico (el mismo algoritmo tiene problemas episódicos y continuos) está desactivado por un factor de gamma en relación con el actor. pseudocódigo crítico para problemas episódicos en el libro de Sutton y Barto (p.332 de la edición de enero de 2019 de http://incompleteideas.net/book/the-book.html ). El libro de Sutton y Barto tiene el "primer" gamma adicional como está etiquetado en su imagen. Entonces, ¿el libro o el papel A3C está mal? Realmente no.
La clave está en la p. 199 del libro de Sutton y Barto:
Si hay un descuento (gamma <1), debe tratarse como una forma de terminación, que puede hacerse simplemente incluyendo un factor en el segundo término de (9.2).
El problema sutil es que hay dos interpretaciones del factor de descuento gamma:
- Un factor multiplicativo que pone menos peso en recompensas futuras distantes.
- Una probabilidad, 1 - gamma, de que una trayectoria simulada termina espuriosamente, en cualquier momento. Esta interpretación solo tiene sentido para casos episódicos y no para casos continuos.
Implementaciones literales:
- Simplemente multiplique las recompensas futuras y las cantidades relacionadas (V o Q) en el futuro por gamma.
- Simule algunas trayectorias y termine aleatoriamente (1 - gamma) de ellas en cada paso de tiempo. Las trayectorias terminadas no otorgan recompensas inmediatas o futuras.
G∇lnπ(a|s)
γ2G∇lnπ(a|s)0.81G∇lnπ(a|s)
G∇lnπ(a|s)G
Puede elegir la interpretación de gamma, pero debe tener en cuenta las consecuencias del algoritmo. Personalmente prefiero seguir con la interpretación 1 solo porque es más simple. Entonces uso el algoritmo en el documento A3C, no en el libro de Sutton y Barto.
Su pregunta fue sobre el algoritmo REINFORCE, pero he estado discutiendo sobre el actor crítico. Tiene exactamente el mismo problema relacionado con las dos interpretaciones gamma y la gamma adicional en REINFORCE.