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.