Universidad Rey Juan Carlos Curso 2011–2012 Inteligencia Artificial Ingenier´ıa Inform´

Anuncio
Universidad Rey Juan Carlos
Inteligencia Artificial
Ingenierı́a Informática
Hoja de Problemas 11
Aprendizaje por refuerzo
Curso 2011–2012
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 problema en figura.
-10
s0
50
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 el correspondiente reward. Los estados s0 y s5 son estados terminales.
(a) 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, indicando
para cada estado las acciones que el agente ejecutará, una vez aprendida Q∗ (s, a).
Solución:
Q*:30
-10
s0
50
Q*:50
s1
V*:50
Q*:26.8
-10
s2
-10
V*:46
Q*:26.8
Q*:46
-10
s3
-10
Q*:46
V*:70
s4
100
Q*:100
s5
-10 V*:100
Q*:70
(b) Calcule los valores V ∗ (s) para todos los estados, suponiendo que γ = 0,99. Calcule también los valores de Q∗ (s, a) para todas las parejas estado-acción, indicando
para cada estado las acciones que el agente ejecutará, una vez aprendida Q∗ (s, a).
¿Que diferencia hay respecto al caso anterior? Argumente su respuesta.
Solución:
Como en este caso el valor de γ, 0.99, es mayor que el valor de γ anterior,
el agente de más importancia a los rewards futuros. Siendo capaz de ver más
allá que el agente del caso anterior, aprende que en el estado s1 es mejor ir a la
Página 1 de 2
Hoja de Problemas 11
Aprendizaje por refuerzo
Q*:56.6
-10
s0
50
Q*:50
s1
Q*:67.3
-10
s2
Q*:78.1
-10
s3
s4
100
s5
Q*:100
V*:67.3
-10 V*:78.1
-10
V*:89
Q*:78.1
Q*:67.3
-10 V*:100
Q*:89
derecha por que al final hay un estado terminal más valioso (s6 ) que el estado
terminal más cercanod, s0 .
3. 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 un reward de 4, 5 y 3
respectivamente. Queremos aprender a seleccionar el botón que má reward 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 los rewards obtenidos ası́ como los valores de Q(a) aprendidos después de 5 interacciones con la tragaperra, usando la polı́tica se 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 secuencia de números aleatorios {0,30,950,40,9990,2}
para decidir si usar la acción a con valor Q(a) máximo. En el caso que haya que
elegir una de las otras acciones al azar, elija en orden alfabético.
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:
rewards = 4, Q(A) = 4, Q(B) = 0, Q(C) = 0
A partir de esta iteración, la polı́tica greedy siempre seleccionará la acción A
X
Iteración 2:
rewards = 8, Q(A) = 4, Q(B) = 0, Q(C) = 0
X
Iteración 3:
rewards = 12, Q(A) = 4, Q(B) = 0, Q(C) = 0
X
Iteración 4:
rewards = 16, Q(A) = 4, Q(B) = 0, Q(C) = 0
X
Iteración 5:
rewards = 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.
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 tiene un valor 0
X
Iteración 1:
rewards = 4, Q(A) = 4, Q(B) = 0, Q(C) = 0
Página 2 de 2
Hoja de Problemas 11
Aprendizaje por refuerzo
El segundo valor aleatorio es 0.95 < 0.99, por lo tanto se selecciona A
X
Iteración 2:
rewards = 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:
rewards = 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:
rewards = 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:
rewards = 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:
rewards = 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:
rewards = 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:
rewards = 14, Q(A) = 4, Q(B) = 0, 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:
rewards = 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:
rewards = 23, Q(A) = 4, Q(B) = 5, Q(C) = 0
(b) ¿Que pasarı́a si se inicializan los valores Q(a) todos a 10, y se aplica la polı́tica
greedy?
Solución:
La polı́tica greedy selecciona la acción con valor de Q(a) mayor. Al principio son
todos 10, por lo tanto seleccionará la acción A, que devuelve 4.
X
Iteración 1:
rewards = 4, Q(A) = 4, Q(B) = 10, Q(C) = 10
Página 3 de 2
Hoja de Problemas 11
Aprendizaje por refuerzo
En la segunda iteración, la acción seleccionada por la polı́tica greedy será B
X
Iteración 2:
rewards = 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:
rewards = 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:
rewards = 17, Q(A) = 4, Q(B) = 5, Q(C) = 3
X
Iteración 5:
rewards = 22, Q(A) = 4, Q(B) = 5, Q(C) = 3
Página 4 de 2
Descargar