Aprendizaje de refuerzo en un entorno no estacionario.

9

P1: ¿Existen métodos comunes o aceptados para tratar el entorno no estacionario en el aprendizaje por refuerzo en general?

P2: en mi gridworld, la función de recompensa cambia cuando se visita un estado. Cada episodio, las recompensas se restablecen al estado inicial. Todo lo que quiero que mi agente aprenda es "No regrese a menos que realmente lo necesite", sin embargo, esto hace que el entorno no sea estacionario. ¿Se puede / debe incorporar esta regla tan simple en el modelo MDP y cómo? ¿Q-learning es la mejor solución para tratar este problema? ¿Alguna sugerencia o ejemplos disponibles?

P3: He estado estudiando Q-learning con la experiencia de reproducción como una solución para lidiar con entornos no estacionarios, ya que decorelaciona las actualizaciones sucesivas. ¿Es este el uso correcto del método o se trata más de hacer que el aprendizaje sea más eficiente con los datos? Y solo lo he visto usado con aproximación de valor. No estoy seguro de si es una exageración usarlo para un espacio de estado discreto simple, como gridworld, o si hay una razón diferente para esto.

No dude en responder o comentar incluso si no puede responder a todas las preguntas.

Voltronika
fuente

Respuestas:

10

P1: ¿Existen métodos comunes o aceptados para tratar el entorno no estacionario en el aprendizaje por refuerzo en general?

α

Sin embargo , esto aborda la no estacionariedad a largo plazo, como el problema que cambia entre episodios, o en una escala de tiempo aún más larga. Su descripción se parece más a su deseo de cambiar la estructura de recompensas en función de las acciones que el agente ha tomado, en un corto período de tiempo. Esa respuesta dinámica a las acciones se enmarca mejor como un MDP más complejo y diferente, no como "no estacionariedad" dentro de un MDP más simple.

Un agente no puede aprender los cambios en el entorno que aún no ha muestreado, por lo que cambiar la estructura de recompensas no evitará que el agente regrese a los estados visitados anteriormente. A menos que esté usando algo como un RNN en el agente, el agente no tendrá una "memoria" de lo que sucedió antes en el episodio que no sea lo que esté representado en el estado actual (posiblemente usar un RNN hace que la capa oculta de la parte RNN del Estado). A través de múltiples episodios, si usa un agente de Q-learning tabular, el agente simplemente aprenderá que ciertos estados tienen un valor bajo, no podrá saber que la segunda o tercera visita al estado causan ese efecto, porque no tiene manera de representar ese conocimiento. No podrá adaptarse al cambio lo suficientemente rápido como para aprender en línea y a mitad del episodio.

P2: en mi gridworld, la función de recompensa cambia cuando se visita un estado. Todo lo que quiero que mi agente aprenda es "No regrese a menos que realmente lo necesite", sin embargo, esto hace que el entorno no sea estacionario.

Si eso es todo lo que necesita que aprenda el agente, tal vez esto pueda ser alentado por una estructura de recompensa adecuada. Antes de poder hacer eso, debe comprenderse a sí mismo lo que "realmente necesita" implica, y qué tan estricto tiene que ser lógicamente. Sin embargo, puede estar bien simplemente asignando una penalización por visitar cualquier ubicación que el agente ya haya visitado o haya visitado recientemente.

¿Se puede / debe incorporar esta regla tan simple en el modelo MDP y cómo?

Sí, debe agregar la información sobre las ubicaciones visitadas en el estado. Esto inmediatamente hará que su modelo de estado sea más complejo que un simple mundo de cuadrícula, lo que aumentará la dimensionalidad del problema, pero es inevitable. La mayoría de los problemas del mundo real superan rápidamente los ejemplos de juguetes proporcionados para enseñar los conceptos de RL.

Una alternativa es enmarcar el problema como un proceso de decisión de Markov parcialmente observable (POMDP) . En ese caso, el estado "verdadero" aún incluiría todo el historial necesario para calcular las recompensas (y como se trata de un problema de juguete en una computadora, todavía tendría que representarlo de alguna manera), pero el agente puede intentar aprender de conocimiento del estado, lo que sea que le dejes observar. En general, este es un enfoque mucho más difícil que expandir la representación estatal, y no lo recomendaría aquí. Sin embargo, si la idea le parece interesante, podría usar su problema para explorar los POMDP. Aquí hay un artículo reciente (del equipo Deep Mind de Google, 2015) que analiza dos algoritmos RL combinados con RNN para resolver POMDP.

P3: He estado estudiando Q-learning con la experiencia de reproducción como una solución para lidiar con entornos no estacionarios, ya que decorelaciona las actualizaciones sucesivas. ¿Es este el uso correcto del método o se trata más de hacer que el aprendizaje sea más eficiente con los datos?

La repetición de la experiencia no ayudará con entornos no estacionarios. De hecho, podría empeorar el rendimiento en ellos. Sin embargo, como ya se dijo, su problema no se trata realmente de un entorno no estacionario, sino de manejar dinámicas de estado más complejas.

648×8264

Con un estimador de funciones, la repetición de la experiencia es muy útil, ya que sin ella, el proceso de aprendizaje es probable que sea inestable. El reciente enfoque DQN para jugar juegos de Atari utiliza la repetición de la experiencia por este motivo.

Neil Slater
fuente
Si el entorno no es estacionario, ¿cómo lidiar con el hecho de que, en el ejemplo del mundo de la cuadrícula, estar en el estado en el tiempo t = 1 no es lo mismo que estar en ese estado en t = 2? Si los trata como estados separados, ¿seguramente explotará la dimensionalidad de su espacio de estado?
tratando
@tryingtolearn: El objetivo de un estado de Markov es que captura todos los detalles importantes de cómo progresará el MDP desde ese punto. Por lo general, estar en estado en t = 1 no es diferente de estar en el mismo estado en t = 2, en términos de recompensa futura esperada y transiciones de estado. Si terminas con reglas que se basan en el valor de t, entonces pones t en el estado. Esto puede suceder si puede obtener una recompensa en cualquier momento, pero el número de pasos es limitado: el episodio siempre termina en t = 10, por ejemplo. En ese caso, conocer su tiempo restante podría ser importante
Neil Slater
@NeilSlater, ¿puede ampliar las ideas POMDP y RNN en su respuesta? Suenan interesantes Y si es posible, proporcione fuentes relevantes porque a veces es difícil navegar por la literatura. Realmente no me gusta la idea de mantener la secuencia de estados visitados, aunque esto es lo único en lo que puedo pensar hasta ahora, así que estoy buscando otras opciones. El modelo se vuelve demasiado complicado de esa manera, dado que necesito introducir una regla muy simple. No estoy seguro de si me falta algo muy obvio o simplemente no estoy usando el modelo y la formulación correctos.
Voltronika
@NeilSlater ¿No puede evitarse esto mediante el uso de métodos como el gradiente de políticas? En la práctica, ¿sabes cuál es el estándar para resolver este tipo de problemas?
tratando de aprender
1
@Voltronika Expandí la respuesta agregando un párrafo sobre POMDP. Tenga en cuenta que enmarcar su problema como un POMDP hace que sea mucho más difícil trabajar y resolver que extender el estado para incluir la memoria adecuada de las ubicaciones visitadas. Por lo tanto, le sugiero que solo considere eso si estudiar POMDP es un objetivo.
Neil Slater
0

Q1: Q learning es un algoritmo de aprendizaje reforzado en línea que funciona bien con el entorno estacionario. También se puede usar con un modelo no estacionario con la condición de que el modelo (función de recompensa y probabilidades de transición) no cambie rápidamente.

Khalid Ibrahim
fuente