Universidad Rey Juan Carlos Curso 2014–2015 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Q-learning son ciertas (a) Para garantizar la convergencia de los valores Q a los valores Q∗ óptimos, el entorno tiene que ser determinista. (b) Para garantizar la convergencia de los valores Q a los valores Q∗ óptimos, el entorno tiene que ser estacionario. (c) Los algoritmos de aprendizaje por refuerzo aprenden la pólitica óptima π ∗ (s) usando un conjunto de parejas < s, π ∗ (s) > (d) Los algoritmos de aprendizaje por refuerzo en su versión básica necesitan almacenar un valor Q(s, a) para toda pareja estado-acción < s, a > 2. Considera el siguiente escenario. Una persona se encuentra delante de una máquina tragaperras y decide si juega o no. Si decide jugar, debe pagar un euro como precio del juego. La máquina tiene 3 botones: A, B y COBRAR. El juego consiste en sumar números a un contador que inicialmente está en 0 y conseguir una suma de 3. Para aumentar el contador, el jugador puede presionar los botones A o B. Al presionar el botón A, la máquina siempre suma 2 al contador. Al presionar el botón B la máquina suma aleatoriamente 1 o 2 al contador (cada uno de los valores con una probabilidad de 0,5). El jugador puede aumentar el contador (mediante los botones A y B), mientras el contador tiene un valor menor a 3. Si el valor es mayor o igual a 3, los dos botones A y B ya no funcionan y el juego termina. Si al terminar el valor del contador es igual a 3, se activa el botón COBRAR y, al presionar este botón, la máquina devuelve 2 euros de ganancia. Si el valor del contador es mayor a 3, el botón COBRAR no se activa y el juego termina sin ganancias para el jugador. (a) Modeliza este problema como un proceso de decisión de Markov: Especifica los diferentes estados (incluye también el estado en el que el jugador decide si juega o no juega con la máquina), las acciones con sus recompensas y respectivas transiciones. NOTA: Puedes usar un grafo o un conjunto de tablas para especificar el modelo. Solución: El siguiente grafo presenta el modelo del escenario descrito. El estado I es el estado en el que un jugador decide si quiere jugar o no. El estado F representa el estado final. Los estados cx (con x=0,1,2,3 o 4) representan los distintos estados posibles de la máquina según el valor actual del contador (valor de x). Página 1 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo (b) Suponiendo que la constante de descuento γ tenga el valor 1, determina los valores de la polı́tica óptima (π ∗ ) ası́ como los valores de las funciones valorestado (V ∗ ) y valor-estado-acción (Q∗ ) para todos los estados y pares estadoacción y con respecto a la polı́tica óptima. NOTA: para determinar estos valores NO es necesario aplicar el algoritmo visto en clase. ¿Es razonable jugar a este juego? Solución: Los valores de las funciones π ∗ , V ∗ y Q∗ son los siguientes: V ∗ I F C0 C1 C2 C3 C4 0,5 0 1,5 2 1 2 0 Q∗ (s, a) I F A B COBRAR jugar 0,5 no jugar 0 - C0 C1 C2 C3 C4 1 2 0 1,5 1,5 1 2 - Es razonable jugar con esta máquina porque la ganancia esperada en cada juego es de 0,5 euros, es decir, en promedio, el jugador gana dinero con este juego. Página 2 de 16 Hoja de Problemas Tema 12 π∗ Aprendizaje III:Aprendizaje por refuerzo I F C0 C1 C2 C3 C4 jugar - B A B COBRAR - 3. Considera el problema en la siguiente figura. -10 50 s0 s1 -10 s2 -10 -10 s3 -10 s4 100 s5 -10 Si hay una flecha entre dos estados si y sj significa que se puede ejecutar un acción que hace transitar el agente, de manera determinista, del estado si al estado sj , recibiendo la correspondiente recompensa. Los estados s0 y s5 son estados terminales. (a) Calcule los valores V ∗ (s) para todos los estados, suponiendo que γ = 1. Calcule también los valores de Q∗ (s, a) para todas las parejas estado-acción, y la polı́tica óptima en este entorno. Solución: *:60 Q*:70 Q*:80 Q Q*:56.6 Q*:67.3 Q*:78.1 -10 s0 50 *:50 Q*:50 Q V*:0 s1 -10 s2 -10 s3 s4 100 s5 Q*:100 Q*:100 V*:67.3 -10 V*:78.1 -10 V*:89 -10 V*:100 * * * * V :70 -­‐10 V :80 -­‐10 V :90 -­‐10 V :100 V * :0 Q*:78.1 Q*:89 Q*:67.3 * * * Q :70 Q :80 Q :90 (b) Calcule los valores V ∗ (s) para todos los estados, suponiendo que γ = 0,8. Calcule también los valores de Q∗ (s, a) para todas las parejas estado-acción, y la polı́tica óptima en este caso. ¿Qué diferencia hay respecto al caso anterior? Argumente su respuesta. Solución: Como en este caso el valor de γ, 0.8, es menor que el valor de γ anterior, el agente da menos importancia a las recompensas futuros. Por tanto, en el estado s1 prefiere ir a la izquierda, en vez de ir hacı́a el estado s5 . 4. El siguiente grafo representa un MDP determinista. Aplicando el algoritmo de iteración de valores para la resolución de MDPs, presenta en una tabla la evolución de los valores de Q∗ y determina los valores finales de V ∗ y π ∗ . Realiza el algoritmo haste que se hayan obtenido los valores finales de Q∗ . Los parámetros a utilizar son los siguientes: valores de Q∗ inicializados a 0. Orden de ejecución en cada iteración: estados de s0 a s6 y para cada estado, acciones de a0 a a2 . Página 3 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo Q*:30 -10 s0 50 Q*:50 Q*:26.8 -10 s1 s2 V*:50 -10 V*:46 Q*:26.8 Q*:46 -10 s3 -10 Q*:46 s4 V*:70 100 Q*:100 s5 -10 V*:100 Q*:70 γ=1 Solución: En la siguiente tabla se presenta la evolución de los valores de Q∗ : it. (s0 , a0 ) (s0 , a1 ) 0 0 0 -1 10 1 2 -2 0 3 -5 4 4 -5 4 (s1 , a1 ) (s2 , a0 ) 0 0 -1 -10 -4 -13 -4 -13 -4 -13 (s2 , a2 ) 0 -11 -6 -6 -6 (s3 , a0 ) (s3 , a1 ) 0 0 -3 -10 -3 -10 -3 -10 -3 -10 (s3 , a2 ) (s4 , a1 ) 0 0 -4 5 -7 5 -7 5 -7 5 Cuadro 1: Tabla 1 Los valores finales se encuentran en la cuarta iteración. Los valores de V ∗ y π ∗ son los siguientes: ∗ V π∗ s0 4 a1 s1 -4 a1 s2 -6 a2 s3 -3 a0 s4 5 a1 s5 0 - s6 0 - Cuadro 2: Tabla 1 5. El siguiente grafo representa un MDP NO determinista. Aplicando el algoritmo de iteración de valores para la resolución de MDPs, presenta en una tabla la evolución de los valores de Q∗ y determina los valores finales de V ∗ y π ∗ . Realiza el algoritmo Página 4 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo haste que se hayan obtenido los valores finales de Q∗ . Los parámetros a utilizar son los siguientes: valores de Q∗ inicializados a 0. Orden de ejecución en cada iteración: estados de s0 a s6 y para cada estado, acciones de a0 a a2 . γ=1 NOTA: en comparación con el grafo del ejercicio anterior, en este caso existe una transición no determinista (a2 en s2 ). Solución: En la siguiente tabla se presenta la evolución de los valores de Q∗ : it. (s0 , a0 ) (s0 , a1 ) 0 0 0 1 -1 10 -2 0 2 3 -5 2,33 4 -5 2,33 (s1 , a1 ) (s2 , a2 ) 0 0 -1 -10 -4 -7,66 -4 -7,66 -4 -7,66 (s3 , a0 ) (s3 , a1 ) 0 0 -3 -10 -3 -10 -3 -10 -3 -10 Cuadro 3: Tabla 1 Los valores de V ∗ y π ∗ son los siguientes: ∗ V π∗ s0 s1 2,33 -4 a1 a1 s2 s3 -7,66 -3 a2 a0 s4 5 a1 Cuadro 4: Tabla 1 Página 5 de 16 s5 0 s6 0 (s3 , a2 ) (s4 , a1 ) 0 0 -4 5 -7 5 -7 5 -7 5 siguiente secuencia de números aleatorios {0,3; 0,95; 0,4; 0,999; 0,2}. (b) ¿Que pasarı́a si se inicializan los valores Q(a) todos a 10, y se aplica la polı́tica greedy? Hoja de Problemas Tema 12 presentado Aprendizaje III:Aprendizaje por refuerzo 4. Considera el problema logı́stico en la siguiente figura: El objetivo del agente (A) es moverse lo más rápido posible a la casilla más oscura 6. Considera el problema logı́stico presentado en la siguiente figura: (casilla 3). Para ello debe usar una polı́tica que le permite encontrar las acciones El objetivo agente (A)agente es moverse lo más rápido casilla(pero más oscura óptimas paradel este fin. El se puede mover deposible casilla aalacasilla no en (casilla 3). Para ello debe usar una polı́tica que le permite encontrar las acciones diagonal) y no puede atravesar las barreras (lineas gordas). La casilla 5 tiene una óptimas parapor este El agente se puede movermucho de casilla a casilla (pero no en peculiaridad: ellafin. el agente se pude desplazar más rápido. diagonal) y no puede atravesar las barreras (lineas gordas). La casilla 5 tiene una Para aprender la polı́tica óptima del robot se ha decidido usar el algoritmo Q learning. peculiaridad: por ella el agente se pude desplazar mucho más rápido. Para ello, se ha asignado las siguientes recompensas a las acciones del agente: Para aprender la polı́tica óptima del robot se ha decidido usar el algoritmo Q learning. cualquier movimiento que lerecompensas hace entrar a la 3; del agente: Para+50 ello,a se ha asignado las siguientes lascasilla acciones -1 a cualquier movimiento que le hace entrar en la casilla 5; +50 a cualquier movimiento que le hace entrar a la casilla 3; -2 a cualquier otro movimiento. -1 a cualquier movimiento que le hace entrar en la casilla 5; Se supone una vez a la casilla 5, el agente no realiza más aciones. -2 a que cualquier otrollegado movimiento. (a) ¿Que metodo de actualización de la función Q se debe emplear en este problema Se supone que una vez llegado a la casilla 3, el agente no realiza ninguna acción más. y por qué? (a) ¿Que metodo de actualización de la función Q se debe emplear en este problema (b) Simula el funcionamiento del algoritmo Q learning para este problema pasa o y por qué? paso teniendo en cuenta lo siguiente: Solución: Los valores de la función Q se inicializan todos al valor 0; El El entorno determinista porquegreedy. los resultados agenteesemplea una polı́tica Es decir,de encada cadaaccion estado(movimiento) elige siempre del laagente en cada estado siempre le lleva a un mismo estado resultante. Por acción con el mayor valor Q. tanto, la fórmula adecuada(gamma) para la actualización de los valores de la función Q el factor de descuento es 1. serı́a: Si varias acciones tienen en un estado el mismo mejor valor Q, el agente Q(s, a) ← r(s, a) + γ • maxb∈A (Q(s0 , b)) dónde s0 es el estado al que llega el elige la accion según el siguiente órden: izquierda (L), arriba (U) derecha agente después de haber realizado la acción a en el estado s. (R), abajo (D) (b)Representa Simula el funcionamiento delagente algoritmo Q learning para este o el camino que el recorre y los cambios en problema los valorespasa de la paso teniendo en cuenta lo siguiente: función Q. Los valores de la función Q se inicializan todos al valor 0; El agente emplea una polı́tica Páginagreedy. 2 de 3 Es decir, en cada estado elige siempre la acción con el mayor valor Q. el factor de descuento (gamma) es 1. Página 6 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo Si varias acciones tienen en un estado el mismo mejor valor Q, el agente elige la accion según el siguiente órden: izquierda (L), arriba (U) derecha (R), abajo (D) Representa el camino que el agente recorre y los cambios en los valores de la función Q. Solución: Se resume el funcionamiento del agente. Se emplean las acciones L, U, R, D y los estados 1,...,9 (número de cada casilla). Inicialmente todos los valores de la función Q tienen valor 0 y el estado inicial es el 8. La tabla 1 refleja los movimientos del agente (estado actual, acción, estado nuevo). Movimiento 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Est. act. 8 7 4 7 8 5 2 1 2 5 6 5 8 9 8 5 2 5 6 Acc. L U D R U U L R D R L D R L U U D R U Est. nuevo 7 4 7 8 5 2 1 2 5 6 5 8 9 8 5 2 5 6 3 Cuadro 5: Tabla 1 En la tabla 2 se reflejan las actualizaciones de los valores de la función Q para cada par estado/acción. Como se puede observar, el movimiento 14 es la primera vez que el agente actualiza el valor de Q a un valor distinto que la recompensa inmediata. Página 7 de 16 Hoja de Problemas Tema 12 mov. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 R 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 2 L 0 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 D 0 0 0 0 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -3 -3 -3 4 D 0 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 U 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 Aprendizaje III:Aprendizaje por refuerzo 5 R 0 0 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 D 0 0 0 0 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -2 L 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 U D 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 7 U 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 R 0 0 0 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 L -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 8 U 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -3 -3 -3 -3 -3 9 R L 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 0 -2 -3 -2 -3 -2 -3 -2 -3 -2 -3 -2 -3 U 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Cuadro 6: Tabla 2 (c) Repite el mismo problema anterior 2 veces, pero con los valores de la función Q ya aprendidos. Solución: Si repetimos el mismo escenario de nuevo, el agente realiza las siguientes acciones: Movimiento 1 2 3 4 5 6 7 Est. act. 8 7 4 7 8 9 6 Acc. L U D R R U U Est. nuevo 7 4 7 8 9 6 3 y actualiza los valores de Q de la forma que siguie: En la tercera repetición del escenario se obtienen los siguientes resultados: Como se puede observar, a partir de este momento, el agente siempre irı́a por el camino 8/9/6/3 con la ganancia 46. Sin embargo el camino óptimo es 8/5/6/3 con la ganancia de 47. Con la polı́tica greedy, una vez encontrado un camino bueno, el agente deja de explorar nuevos caminos y, por tanto no encuentra el camı́no óptimo. Para evitar Página 8 de 16 Hoja de Problemas Tema 12 mov. 1 2 3 4 5 6 7 1 R -2 -2 -2 -2 -2 -2 -2 2 L -2 -2 -2 -2 -2 -2 -2 D -3 -3 -3 -3 -3 -3 -3 4 D -2 -2 -4 -4 -4 -4 -4 U -3 -3 -3 -3 -3 -3 -3 Aprendizaje III:Aprendizaje por refuerzo 5 R -2 -2 -2 -2 -2 -2 -2 Movimiento 1 2 3 mov. 1 2 3 1 2 4 R L D D -2 -2 -3 -4 -2 -2 -3 -4 -2 -2 -3 -4 U -3 -3 -3 5 R -2 -2 -2 D -2 -2 -2 -2 -2 -2 -2 L -1 -1 -1 -1 -1 -1 -1 Est. act. 8 9 6 D L -2 -1 -2 -1 -2 -1 6 U D 50 0 50 0 50 0 50 0 50 0 50 0 50 0 Acc. R U U 6 U D 50 0 50 0 50 0 7 U -2 -4 -4 -4 -4 -4 -4 R -2 -2 -2 -4 -4 -4 -4 L -4 -4 -4 -4 -4 -4 -4 8 U -3 -3 -3 -3 -3 -3 -3 9 R -2 -2 -2 -2 -2 -2 -2 L -3 -3 -3 -3 -3 -3 -3 U 0 0 0 0 0 48 48 Est. nuevo 9 6 3 7 U -4 -4 -4 R L -4 -4 -4 -4 -4 -4 8 U -3 -3 -3 9 R L 46 -3 46 -3 46 -3 U 48 48 48 este problema, se debe emplear una polı́tica -greedy en la que el agente elige de vez en cuando (con probabilidad ) una acción que no tenga el mejor valor Q. En nuestro caso, con una polı́tica -greedy el agente eligirá en algún momento la acción U para ir del estado 8 al 5 y con eso encontrarı́a el mejor camino (como podeis comprobar viendo como se actualizarı́an los valores de Q). (d) Calcula los valores de las recompensas accumuladas (V ∗ )para cada uno de los estados (casillas) si el agente siguiese la politica óptima. Solución: Los valores de la función V ∗ para cada estado son los siguientes: 1 45 2 3 47 0 4 43 5 48 6 50 7 45 8 47 9 48 7. En un videojuego, un jugador tiene que recorrer una especie de laberinto desde un punto de salida (s) a un punto de destino (x) tal y como se presenta la siguiente figura: El jugador puede desplazarse de un punto de cruze a otro por los caminos existentes (flechas). El jugador sólo puede irse hacı́a adelante (hacı́a la derecha) y no puede volver por el camino por el que haya venido. Cuando el jugador entra en un nuevo punto de cruze ocurren los siguientes eventos según los sı́mbolos que marcan el cruze: +: el jugador gana 2 monedas =: el jugador gana 9 monedas Página 9 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo *: el jugador gana 1 moneda %: l jugador pierde una vida En la salida (x) el jugador no gana monedas ni pierde ninguna vida y se termina el juego. Para identificar los estados del problema (puntos de cruze) se emplean las letras minúsculas de la figura. Las acciones se identifican por a1 y a2 , de tal forma que en cada estado el camino más hacia arriba corresponde a a1 y el otro (si existiese) a a2 . Es decir, tomar el camino de“d” a “c” corresponde a realizar la acción a1 en el estado “d”, mientras el camino de “d” a “e” corresponde a realizar la acción a2 en el estado “d”. Se supone que el jugador no conoce este escenario a priori y su objetivo es aprender el camino más lucrativo en sucesivos instancias del juego. El camino ma?s lucrativo es aquél en el que el jugador obtiene el mayor número de monedas y pierde menos vidas. Para establecer una relación entre vidas y monedas, el jugador estima que cada vida equivale a 10 monedas. Apliqué el algoritmo de Q-learning a este problema con los siguientes parámetros: Los valores de la función Q se inicializan todos a 0 Emplea el siguiente factor de descuento: γ = 1 El jugador elige sus acciones con una polı́tica greedy (ávara) Si en un momento dado no tiene ningún criterio mejor, prefiere siempre las acciones (caminos) más arriba. (a) Ejecuta el algoritmo Q-learning para una instancia del problema, indicando las acciones que el jugador realiza (los puntos por los que pasa) y la evolución de los valores de la función Q. Solución: Con los parámetros indicados en el enunciado, el jugador realizarı́a los movimientos correspondientes a la lı́nea discontinua y actualizarı́a los valores de Q de las acciones correspondientes a los valores que se representan en la figura (todas las demás acciones mantienen el valor de inicialización 0). Página 10 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo (b) Dado los valores de la función Q aprendidos, ejecuta el algoritmo de nuevo para una segunda y una tercera instancia del juego. Nuevamente indica las acciones que el jugador realiza y la evolución de los valores de la función Q. Solución: En las siguientes 2 instancias del juego, el jugador realizará las siguientes acciones y actualizará los valores de Q de la siguiente forma. Instancia 2: Instancia 3: (c) Indica si el jugador aprenderı́a el camino óptimo si se ejecutase el algoritmo de forma iterativa en nuevas instancias del juego. Argumenta, por qué encuentra (no encuentra) el camino óptimo. Solución: Página 11 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo Hay dos caminos óptimos: s-a-b-c-e-x y s-a-d-c-e-x (con ganancia de 9). Sin embargo, si se ejecutase el algoritmo con los parámetros especificados de forma iterativa, no encontrarı́a ninguno de estos dos caminos. Después de varias ejecuciones, el jugador se “quedarı́a” con el camino s-f-g-e-x con una ganancia de 5. El jugador no encontrarı́a el camino óptimo porque emplea una polı́tica greedy para seleccionar sus acciones. Con esta polı́tica, una vez que haya encontrado un camino aceptable, se “quedarı́a” con él. Para encontrar el camino óptimo el jugador deberı́a emplear una polı́tica que explore más los posibles caminos como, por ejemplo, una polı́tica épsilon-greedy. 8. Considera el siguiente problema con un único estado. Hay una tragaperra con tres posibles botones (A, B y C), cada uno de los cuales devuelve una recompensa de 4, 5 y 3 respectivamente. Queremos aprender a seleccionar el botón que más recompensa genera, utilizando Q-learning con γ = 0 (ya que es un problema con un único estado) para entornos deterministas. Supongamos que al principio los valores Q(a) son todos 0. (a) Compara la suma de las recompensas obtenidas ası́ como los valores de Q(a) aprendidos después de 5 interacciones con la tragaperra, usando la polı́tica de selección greedy, -greedy con = 0,01 y -greedy con = 0,1. Si la selección de la acción a ejecutar se basa en el valor Q(a) y hay más de una acción con el mismo valor de Q(a), se elije en order alfabético. Para simular la aleatoriedad de las polı́ticas -greedy utilice la siguiente idea: Antes de elejir una acción, el agente calcula un número aleatorio entre 0 y 1. Si este número es mayor que 1 − elige la acción con el mayor valor Q. En caso contrario elige una de las otras acciones (la primera por órden alfabética). Para simular este procedimiento, utilice la siguiente secuencia de números aleatorios {0,3; 0,95; 0,4; 0,999; 0,2}. Solución: (1) greedy La polı́tica greedy selecciona la acción con valor de Q(a) mayor. Al principio son todos 0, por lo tanto seleccionará la acción A, que devuelve 4. X Iteración 1: recompensas = 4, Q(A) = 4, Q(B) = 0, Q(C) = 0 A partir de esta iteración, la X Iteración 2: recompensas X Iteración 3: recompensas X Iteración 4: recompensas X Iteración 5: recompensas polı́tica greedy siempre seleccionará la acción A = 8, Q(A) = 4, Q(B) = 0, Q(C) = 0 = 12, Q(A) = 4, Q(B) = 0, Q(C) = 0 = 16, Q(A) = 4, Q(B) = 0, Q(C) = 0 = 20, Q(A) = 4, Q(B) = 0, Q(C) = 0 (2) -greedy con = 0,01 La polı́tica -greedy primero genera un número aleatorio entre 0 y 1, y si este es menor que 1 − , selecciona la acción a con valor Q(a) máximo, en caso contrario selecciona una de las otras acciones al azar. Página 12 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo El primer valor aleatorio es 0.3 < 0.99, por lo tanto el agente selecciona la acción con valor Q(a) máximo, en este caso A ya que todas tienen un valor de 0 X Iteración 1: recompensas = 4, Q(A) = 4, Q(B) = 0, Q(C) = 0 El segundo valor aleatorio es 0.95 < 0.99, por lo tanto se selecciona A X Iteración 2: recompensas = 8, Q(A) = 4, Q(B) = 0, Q(C) = 0 El tercer valor aleatorio es 0.4 < 0.99, por lo tanto se selecciona A X Iteración 3: recompensas = 12, Q(A) = 4, Q(B) = 0, Q(C) = 0 El cuarto valor aleatorio es 0.999 > 0.99, por lo tanto se selecciona una acción que no sea A, en este caso B (ya que viene antes que C en order alfabético) X Iteración 4: recompensas = 17, Q(A) = 4, Q(B) = 5, Q(C) = 0 El quinto valor aleatorio es 0.2 < 0.99, por lo tanto se selecciona la acción con valor Q(a) máximo, en este caso B X Iteración 5: recompensas = 22, Q(A) = 4, Q(B) = 5, Q(C) = 0 (3) -greedy con = 0,1 El primer valor aleatorio es 0.3 < 0.9, por lo tanto el agente selecciona la acción con valor Q(a) máximo, en este caso A ya que todas tiene un valor 0 X Iteración 1: recompensas = 4, Q(A) = 4, Q(B) = 0, Q(C) = 0 El segundo valor aleatorio es 0.95 > 0.9, por lo tanto se selecciona una acción que no sea A, en este caso B (ya que viene antes que C en order alfabético) X Iteración 2: recompensas = 9, Q(A) = 4, Q(B) = 5, Q(C) = 0 El tercer valor aleatorio es 0.4 < 0.9, por lo tanto se selecciona B X Iteración 3: recompensas = 14, Q(A) = 4, Q(B) = 5, Q(C) = 0 El cuarto valor aleatorio es 0.999 > 0.9, por lo tanto se selecciona una acción que no sea B, en este caso A (ya que viene antes que C en order alfabético) X Iteración 4: recompensas = 18, Q(A) = 4, Q(B) = 5, Q(C) = 0 El quinto valor aleatorio es 0.2 < 0.9, por lo tanto se selecciona B X Iteración 5: recompensas = 23, Q(A) = 4, Q(B) = 5, Q(C) = 0 (b) ¿Que pasarı́a si se inicializasen los valores Q(a) todos a 10, y se aplicase la polı́tica greedy? Solución: Página 13 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo La polı́tica greedy selecciona la acción con el mayor valor de Q(a). Al principio las 3 acciones tienen el mismo valor (10), por lo tanto seleccionará la acción A (por órden alfabético), que devuelve 4. X Iteración 1: recompensas = 4, Q(A) = 4, Q(B) = 10, Q(C) = 10 En la segunda iteración, la acción seleccionada por la polı́tica greedy será B X Iteración 2: recompensas = 9, Q(A) = 4, Q(B) = 5, Q(C) = 10 En la tercera iteración, la acción con valor Q(a) máximo es C X Iteración 3: recompensas = 12, Q(A) = 4, Q(B) = 5, Q(C) = 3 A partir de la cuarta iteración, el agente siempre seleccionará la acción B. X Iteración 4: recompensas = 17, Q(A) = 4, Q(B) = 5, Q(C) = 3 X Iteración 5: recompensas = 22, Q(A) = 4, Q(B) = 5, Q(C) = 3 Página 14 de 16 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo 9. Aplica el algoritmo de aprendizaje Q-learning al problema presentado en el siguiente grafo. Presenta la evolución de los valores de Q en una tabla. Repite 3 episodios: En los dos primeros episodios el agente elige siempre la acción de mayor valor Q (y la acción b en caso de empate) En el tercer episodio, ocurre lo mismo, salvo en el estado inicial s0 , en el que el agente elige la acción b para explorar. Respecto a la acción b en s2 , supón que la primera vez que el agente ejecuta esta acción, se transita al estado s3 , la segunda vez al estado s4 , la tercera de nuevo a s3 y ası́ sucesivamente. Utiliza los siguientes parámetros: los valores de Q(s, a) son inicializados en 0 el estado inicial en los 3 episiodios es el estado s0 γ = 1 y α = 0, 1 Solución: Primer episodio: El agente empieza en el estado s0 . Las 2 acciones disponibles tienen el mismo valor inicial de 0 para la función Q. El agente elige la acción b, recibe -3 y transita a s2 . Ahora actualiza el valor de Q(s0 , b) := Q(s0 , b) + α · (r + γ · maxc Q(s2 , c) − Q(s0 , b)). Se obtiene Q(s0 , b) := 0 + 0, 1 · (−3 + 1 · 0 − 0) = 0, 3. En la siguiente iteración, el agente elige la acción b (ya que las 2 acciones tienen el mismo valor 0 de Q), llega a s3 y recibe una recompensa de 10. Se actualiza Q(s2 , b) := Q(s2 , b) + α · (r + γ · maxc Q(s3 , c) − Q(s2 , b)). Se obtiene Q(s2 , b) := 0 + 0, 1 · (10 + 1 · 0 − 0) = 1. En la siguiente iteración, el agente elige la acción b (ya que las 2 acciones tienen el mismo valor 0 de Q), llega a s4 y recibe una recompensa de 6. Se actualiza Q(s3 , b) := Q(s3 , b)+α·(r+γ·maxc Q(s4 , c)−Q(s3 , b)). Se obtiene Q(s3 , b) := 0+0, 1·(6+1·0−0) = 0, 6. RECUERDA que maxc Q(s4 , c) es 0 ya que no existen acciones disponibles en s4 . La tabla siguiente resume el proceso de actualización: it. inic. 1 2 3 est s0 s0 s2 s3 ac est n. b b b s2 s3 s4 Q(s0 , a) 0 0 0 0 Q(s0 , b) 0 -0,3 -0,3 -0,3 Q(s1 , b) Página 15 de 16 Q(s2 , a) Q(s2 , b) Q(s3 , a) Q(s3 , b) 0 0 0 0 1 1 0 0 0 0,6 Hoja de Problemas Tema 12 Aprendizaje III:Aprendizaje por refuerzo Segundo episodio: (los valores de la función Q son los ya aprendidos) El agente empieza en el estado s0 . Elige la acción a porque tiene el mayor valor Q. Llega al estado s1 y recibe 2 de recompensa. Ahora actualiza el valor de Q(s0 , a) := Q(s0 , a)+α·(r+γ·maxc Q(s1 , c)−Q(s0 , a)). Se obtiene Q(s0 , a) := 0+0, 1·(2+1·0−0) = 0, 2. En la siguiente iteración, el agente elige la acción b (es la única disponible), llega a s3 y recibe -1. Se actualiza Q(s1 , b) := Q(s1 , b) + α · (r + γ · maxc Q(s3 , c) − Q(s1 , b)). Se obtiene Q(s1 , b) := 0 + 0, 1 · (−1 + 1 · 0, 6 − 0) = −0, 04. Después, el agente elige la acción b en s3 (ya que tienen el mayor valor de Q), llega a s4 y recibe una recompensa de 6. Se actualiza Q(s3 , b) := Q(s3 , b) + α · (r + γ · maxc Q(s4 , c) − Q(s3 , b)). Se obtiene Q(s3 , b) := 0, 6 + 0, 1 · (6 + 1 · 0 − 0, 6) = 1, 14 (maxc Q(s4 , c) es 0 ya que no existen acciones disponibles en s4 ). La tabla siguiente resume el proceso de actualización: it. inic. 1 2 3 est s0 s0 s1 s3 ac est n. a b b s1 s3 s4 Q(s0 , a) 0 0,2 0,2 0,2 Q(s0 , b) -0,3 -0,3 -0,3 -0,3 Q(s1 , b) 0 -0,04 -0,04 Q(s2 , a) 0 0 0 0 Q(s2 , b) 1 1 1 1 Q(s3 , a) 0 0 0 0 Q(s3 , b) 0,6 0,6 0,6 1,14 Tercer episodio: El agente empieza en el estado s0 . Aunque la acción a tiene el mayor valor Q, el agente explora y ejecuta la acción b (como se describe en el enunciado); llega a s2 y recibe −3. Actualiza el valor de Q(s0 , b) := Q(s0 , b) + α · (r + γ · maxc Q(s2 , c) − Q(s0 , b)). Se obtiene Q(s0 , b) := −0, 3 + 0, 1 · (−3 + 1 · 1 − (−0, 3)) = −0, 47. En la siguiente iteración, el agente elige la acción b (es la de mayor valor Q en el estado s2 ), y esta vez llega al estado s4 (ver enunciado) y recibe 10 de recompensa. Se actualiza Q(s2 , b) := Q(s2 , b) + α · (r + γ · maxc Q(s4 , c) − Q(s2 , b)). Se obtiene Q(s2 , b) := 1 + 0, 1 · (10 + 1 · 0 − 1) = 1, 9. La tabla siguiente resume el proceso de actualización: iit. inic. 1 2 est s0 s0 s2 ac est n. b b s2 s4 Q(s0 , a) 0,2 0,2 0,2 Q(s0 , b) -0,3 -0,47 -0,47 Q(s1 , b) -0,04 -0,04 -0,04 Q(s2 , a) 0 0 0 Q(s2 , b) 1 1 1,9 Q(s3 , a) 0 0 0 Q(s3 , b) 1,14 1,14 1,14 Realizando el aprendizaje durante más episiodios, el agente eventualmente aprende los valores correctos de Q∗ . Página 16 de 16