Conceptos básicos de aprendizaje reforzado y sus ...

47
Conceptos básicos de aprendizaje reforzado y sus aplicaciones en robótica Dr.-Eng. Miguel A. Solis Congreso de Robótica y Neurociencia CRoNe 2018 16 Noviembre de 2018

Transcript of Conceptos básicos de aprendizaje reforzado y sus ...

Page 1: Conceptos básicos de aprendizaje reforzado y sus ...

Conceptos básicos de aprendizaje reforzado ysus aplicaciones en robótica

Dr.-Eng. Miguel A. Solis

Congreso de Robótica y NeurocienciaCRoNe 2018

16 Noviembre de 2018

Page 2: Conceptos básicos de aprendizaje reforzado y sus ...

Estructura

Introducción

Aprendizaje reforzadoFundamentosDefinición de un problema en RL

MétodosPlataforma para ejemplosValue IterationPolicy IterationQ-learning

Aplicaciones en robótica

2 / 47

Page 3: Conceptos básicos de aprendizaje reforzado y sus ...

Introducción

Aprendizaje reforzadoFundamentosDefinición de un problema en RL

MétodosPlataforma para ejemplosValue IterationPolicy IterationQ-learning

Aplicaciones en robótica

3 / 47

Page 4: Conceptos básicos de aprendizaje reforzado y sus ...

(algunos) Tipos de aprendizaje

I Aprendizaje Supervisado: encontrar un mapeo de entrada asalida, supervisor provee valores correctos.

I Regresión: la salida corresponde a un valor numérico.I Clasificación: la salida corresponde a una etiqueta de clase.

I Aplicaciones:I Reconocimiento de rostros, escritura, gestosI Diagnóstico médicoI Bioinformática, QuimioinformáticaI ...

4 / 47

Page 5: Conceptos básicos de aprendizaje reforzado y sus ...

Recomendaciones

I Entrada: preferencias de otros usuarios con perfil similarI Salida: predicción de la etiqueta de clase que me interesa

5 / 47

Page 6: Conceptos básicos de aprendizaje reforzado y sus ...

Detección de Spam

I Entrada: palabras en correo, junto con la cantidad de repeticionesI Salida: Spam / No-Spam

6 / 47

Page 7: Conceptos básicos de aprendizaje reforzado y sus ...

Reconocimiento de objetos

iCub Simulator

7 / 47

Page 8: Conceptos básicos de aprendizaje reforzado y sus ...

(algunos) Tipos de aprendizaje

I Aprendizaje no supervisado: de los datos de entrenamiento, sólose conocen las entradas

I Aplicaciones:I Extracción de característicasI Reducción de la dimensionalidad

8 / 47

Page 9: Conceptos básicos de aprendizaje reforzado y sus ...

Reconocimiento de amigos en Facebook

Sugerencia en el etiquetado de amigos

9 / 47

Page 10: Conceptos básicos de aprendizaje reforzado y sus ...

Aprendizaje reforzado

I Aprende de interacciones con el entornoI Aplicaciones:

I Problemas de decisión secuencialI Sistemas adaptivos

10 / 47

Page 11: Conceptos básicos de aprendizaje reforzado y sus ...

Introducción

Aprendizaje reforzadoFundamentosDefinición de un problema en RL

MétodosPlataforma para ejemplosValue IterationPolicy IterationQ-learning

Aplicaciones en robótica

11 / 47

Page 12: Conceptos básicos de aprendizaje reforzado y sus ...

Psicología

I Edward L. Thorndike - Animal Intelligence: An experimental studyof the associate processes in animals (1898)

I El animal modifica su conducta según interacción de prueba yerror con el medio ambiente

12 / 47

Page 13: Conceptos básicos de aprendizaje reforzado y sus ...

Interacción

El agente interactúa con el entorno a través de percepciones yacciones.

I Recibe como entrada (percibe), el estado actual del entorno, s.

I Luego, genera una acción (ejecuta) a como salida.

I Recibe una señal de refuerzo (recompensa).

13 / 47

Page 14: Conceptos básicos de aprendizaje reforzado y sus ...

Esquema

14 / 47

Page 15: Conceptos básicos de aprendizaje reforzado y sus ...

Elementos

Un problema de aprendizaje reforzado (RL - Reinforcement Learning),formulado como un MDP (Proceso de Decisión Markoviano) estácompuesto por (S,A,T,R) donde...

I ¿Markoviano?

15 / 47

Page 16: Conceptos básicos de aprendizaje reforzado y sus ...

Proceso de Markov

Un estado sk se dice que obedece a un proceso de Markov (de 1erorden) ssi:

Pr{sk+1|sk} = Pr{sk+1|s1, ..., sk},

16 / 47

Page 17: Conceptos básicos de aprendizaje reforzado y sus ...

Elementos

Un problema de aprendizaje reforzado, formulado como un MDP(Proceso de Decisión Markoviano) está compuesto por (S,A,T,R)donde

I S: Conjunto de estadosI A: Conjunto de accionesI T: S× A× S→ [0,1] (desconocido)I R: S× A× S→ R.I π: S→ A.

17 / 47

Page 18: Conceptos básicos de aprendizaje reforzado y sus ...

Aprendizaje Reforzado

Estado sk ∈ S : Acción ak ∈ A

sk →ak sk+1

Función de transición de estado T :

sk+1 = T (sk ,ak )

18 / 47

Page 19: Conceptos básicos de aprendizaje reforzado y sus ...

Recompensas

rk = r(sk−1,ak , sk )

I rk > 0I rk = 0I rk < 0

Politica π: S → AUna politica es óptima si maximiza la recompensa a largo plazo

19 / 47

Page 20: Conceptos básicos de aprendizaje reforzado y sus ...

Retorno

Función de Valor:

Vπ(sk ) = rk + γrk+1 + γ2rk+2 + ... =∞∑

i=0

γ i rk+i

0 ≤ γ < 1, rk acotado

Una politica π∗ es óptima si:

V ∗(s) = Vπ∗(s) ≥ Vπ(s) ∀s, π

20 / 47

Page 21: Conceptos básicos de aprendizaje reforzado y sus ...

Introducción

Aprendizaje reforzadoFundamentosDefinición de un problema en RL

MétodosPlataforma para ejemplosValue IterationPolicy IterationQ-learning

Aplicaciones en robótica

21 / 47

Page 22: Conceptos básicos de aprendizaje reforzado y sus ...

Value Iteration

Consiste en realizar k iteraciones, hasta que Vk (s)− Vk−1(s) essuficientemente pequeño, con actualización según

Vk (s) = m«axa

∑s′

p(s′, s,a) ·(r(s′, s,a) + γVk−1(s′)

)

22 / 47

Page 23: Conceptos básicos de aprendizaje reforzado y sus ...

Value Iteration

1: k = 02: V̂0(x) = 0 ∀s ∈ S3: while ∆ > ε do . (para ε pequeño)4: for s ∈ S do5: V̂k+1(x) = m«axa∈A

∑s′∈S Pr{(s,a, s′)} (R(s,a) + γV (s′))

6: end for7: ∆ = ‖V̂k+1 − V̂k‖8: k = k + 19: end while

10: return π

23 / 47

Page 24: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

I Estados: ubicación en la grillaI Acciones: arriba, izquierda, derecha, abajoI Recompensa: +1, -1, -0.1

24 / 47

Page 25: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

Después de 1 iteración:

25 / 47

Page 26: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

Después de 2 iteraciones:

26 / 47

Page 27: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

En convergencia:

27 / 47

Page 28: Conceptos básicos de aprendizaje reforzado y sus ...

Toma de decisiones

Entonces...

Vk (s) = m«axa

∑s′

p(s′, s,a) ·(r(s′, s,a) + γVk−1(s′)

)I debo ejecutar necesariamente la acción que maximiza este

argumento?I comportamiento greedyI comportamiento ε-greedy

28 / 47

Page 29: Conceptos básicos de aprendizaje reforzado y sus ...

Policy Iteration

1: π̂0(s) = acción aleatoria ∀s ∈ S2: V̂0(s) = 0 ∀s ∈ S . arbitrariamente3: evaluar_politica()4: mejorar_politica()

29 / 47

Page 30: Conceptos básicos de aprendizaje reforzado y sus ...

Policy Iteration

evaluar_politica():

1: k = 02: while ∆ > ε do . (para ε pequeño)3: for s ∈ S do4: V̂k+1(s) = m«axa∈A

∑s′∈S Pr{(s,a, s′)} (R(s,a) + γV (s′))

5: end for6: ∆ = ‖V̂k+1 − V̂k‖7: k = k + 18: end while

30 / 47

Page 31: Conceptos básicos de aprendizaje reforzado y sus ...

Policy Iterationmejorar_politica() :

1: politica_estable = true2: k = 03: for s ∈ S do4: π̂k+1(s) = argmaxa∈A

∑s′∈S Pr{(s,a, s′)} (R(s,a) + γV (s′))

5: if π̂k (s) 6= π̂k+1(s) then6: politica_estable = false7: end if8: end for9: if politica_estable then

10: return π̂k11: else12: evaluar_politica()13: end if

31 / 47

Page 32: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

I Se encuentra de forma directa la política

I De todas formas se evalúa la función de valor

32 / 47

Page 33: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

33 / 47

Page 34: Conceptos básicos de aprendizaje reforzado y sus ...

Valor Q

I Así como V (s) corresponde a la función que valoriza el estado,Q(s,a) corresponde a la función que valoriza el tomar ciertaacción en ese estado.

I Para una política óptima π∗, se cumple

Q∗(s,a) ≥ Qπ(s,a) ∀s,a, π

34 / 47

Page 35: Conceptos básicos de aprendizaje reforzado y sus ...

Q-learning

I Consiste en iterar sobre cada par (estado,acción), para α y γ fijos.I Actualización:

Q(sk ,ak )← (1− α) Q(sk ,ak ) + α(

rk+1 + γ m«axa

Q(sk+1,a))

35 / 47

Page 36: Conceptos básicos de aprendizaje reforzado y sus ...

Q-learning

1: Q̂(s0,a0) = 0 ∀s ∈ S, a ∈ A2: for k = 1,2, ...,n do3: Observar sk ,ak ,R(sk ,ak ), sk+14: Q̂(sk , ak ) = Q̂(sk , ak ) + α

(Rk+1 + γ m«axak+1 Q̂(sk+1, ak+1)− Q̂(sk , ak )

)5: end for6: return Q̂

Suponiendo Q̂ = Q∗, entonces la acción óptima para cada estado sepuede obtener maximizando:

π∗(s[k ]) = arg m«axa[k ]

Q∗(s[k ],a[k ]),

36 / 47

Page 37: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

I No se realizan iteraciones sobre todo el espacio de estados, sólocuando el estado se visita

I Este ejemplo es repetitivo (cuando se llega a un estado final,vuelve al inicio)

I atención con los óptimos locales

37 / 47

Page 38: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

Pegado en óptimo local:

38 / 47

Page 39: Conceptos básicos de aprendizaje reforzado y sus ...

Ejemplo

Incorporando exploración:

39 / 47

Page 40: Conceptos básicos de aprendizaje reforzado y sus ...

Introducción

Aprendizaje reforzadoFundamentosDefinición de un problema en RL

MétodosPlataforma para ejemplosValue IterationPolicy IterationQ-learning

Aplicaciones en robótica

40 / 47

Page 41: Conceptos básicos de aprendizaje reforzado y sus ...

RoboCup SSL

I G.A. Ahumada, C.J. Nettle and M.A. Solis, ‘AcceleratingQ-learning through Kalman Filter Estimations applied in aRoboCup SSL Simulation’, Proceedings of the 10th IEEE LatinAmerican Robotics Symposium, 2013.

41 / 47

Page 42: Conceptos básicos de aprendizaje reforzado y sus ...

RoboCup SSL

Estado compuesto porI posición de pelotaI posición y orientación de arquero

42 / 47

Page 43: Conceptos básicos de aprendizaje reforzado y sus ...

RoboCup SSL

Generación de estrategia defensiva

estado compuesto por:I dist(Ki ,pelota), dist(Tj ,pelota)I dist(Ki ,Kj )I dist(Ki ,Tj )I angle(Ki ,Tj )

Memoria de Ingeniería Civil Informática - Franco Ollino (2016)

43 / 47

Page 44: Conceptos básicos de aprendizaje reforzado y sus ...

RoboCup SSL

Generación de estrategia defensiva

I recolección de experiencias (transiciones)I actualización por lotes

44 / 47

Page 45: Conceptos básicos de aprendizaje reforzado y sus ...

Péndulo invertido rotatorio

Péndulo de Furuta

I Sintonización de parámetros del controlador

45 / 47

Page 46: Conceptos básicos de aprendizaje reforzado y sus ...

Lectura recomendada

I Richard S. Sutton and Andrew G. Barto. Reinforcement Learning:An Introduction, 1998.

I Jens Kober, J Andrew Bagnell, and Jan Peters. Reinforcementlearning in robotics: A survey. The International Journal ofRobotics Research, 32(11):1238–1274, 2013.

I Volodymyr Mnih, Koray Kavukcuoglu, David Silver, et al.Human-level control through deep reinforcement learning. Nature,518(7540):529-533, 2015.

46 / 47

Page 47: Conceptos básicos de aprendizaje reforzado y sus ...

Preguntas?

47 / 47