Aprendizaje por refuerzo mediante transferencia de conocimiento cualitativo por Esteban Omar García Rodríguez M. C., INAOE Tesis sometida como requisito parcial para obtener el grado de DOCTOR EN CIENCIAS EN LA ESPECIALIDAD DE CIENCIAS COMPUTACIONALES en el Instituto Nacional de Astrofísica, Óptica y Electrónica Tonantzintla, Puebla Supervisada por: Dr. Eduardo Morales Manzanares Investigador titular del INAOE Dr. José Enrique Muñoz de Cote Investigador titular del INAOE ©INAOE 2015 1 Resumen En la actualidad, la robótica forma una parte importante de la vida cotidiana y constantemente surgen nuevas aplicaciones. Sin embargo, la programación de robots que resuelven tareas complicadas requiere que los robots puedan adaptarse y aprender por cuenta propia, por lo que las técnicas de aprendizaje computacional son una alternativa viable. Dentro de los métodos de aprendizaje computacional, el aprendizaje por refuerzo (reinforcement learning, RL) es una área de estudio donde se proponen algoritmos para que un agente pueda aprender a resolver una tarea en la cual se toman decisiones secuenciales. Pero debido a que en RL se tiene que hacer exploración del ambiente, el proceso de aprendizaje es lento. Una forma de acelerar el aprendizaje es transfiriendo información desde tareas similares. La transferencia de conocimiento (transfer learning, TL) en tareas de aprendizaje por refuerzo se enfoca en desarrollar métodos para reutilizar la información obtenida durante el aprendizaje de una tarea y mejorar el aprendizaje de otra tarea, relacionada con la primera. En este trabajo se presentan dos estrategias para transferir conocimiento entre tareas con estados y acciones continuos. En el primer enfoque, se propone una nueva estrategia que sesga el modelo de la tarea objetivo, usando información cualitativa de la tarea origen. La segunda propuesta de este trabajo es una estrategia innovadora para modelar la diferencia entre las tareas origen y objetivo y generar muestras sintéticas para la tarea objetivo. En ambos enfoques se restringe la búsqueda en la tarea objetivo con lo que se acelera el proceso de aprendizaje. Se llevaron a cabo experimentos en tareas relevantes para el área de aprendizaje por refuerzo, en las cuales se obtiene una clara mejora sobre el aprendizaje sin transferencia y algoritmos del estado del arte relacionados. 1 Abstract Modern robotics has become essential in daily life, and new applications of robotics arise everyday. However, programming robots to solve complicated tasks requires them to adapt and learn by their own, thus machine learning approaches are a feasible option. One of the machine learning approaches is reinforcement learning (RL), which is a research area where several algorithms have been proposed in order to make agents learn to solve sequential decision tasks. In RL, the learning process takes too much time because of exploration. Transferring knowledge between similar tasks helps to reduce learning time. Transfer learning (TL) for reinforcement learning focuses in developing methods to use information gathered during the learning process in a task, in order to improve learning in a related task. In this dissertation, a couple of novel approaches are introduced to transfer knowledge between tasks with continuous states and actions. The first proposed approach consists in a new method to bias the target task model, using qualitative information from the source task. In the second approach, a cutting edge technique is proposed to model the difference between source and target tasks to create synthetic samples for the target task. Both approaches narrow the search of a policy, and speed up the learning process. The proposed approaches were tested in relevant tasks form reinforcement learning, where it is shown a clear improvement in the overall performance compared to state-of-the-art related algorithms. 3 Índice general 1. Introducción 13 1.1. Problemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.2. Objetivos de investigación . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.2.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.2.2. Objetivos especı́ficos . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.3. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4. Guı́a del documento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2. Fundamentos teóricos 23 2.1. Aprendizaje por Refuerzo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.1.1. Procesos de Decisición de Markov . . . . . . . . . . . . . . . . . . . . 24 2.1.2. Exploración y explotación . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2. Procesos Gaussianos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.1. Inferencia bayesiana . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.3. Transferencia de conocimiento . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3. Trabajo relacionado 37 3.1. Algoritmos de RL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.2. Algoritmos de RL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.2.1. PILCO:Probabilistic Inference for Learning Control . . . . . . . . . . 42 3.3. Procesos gaussianos en TL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.4. Transferencia en RL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5 6 ÍNDICE GENERAL 3.4.1. Transferencia en RL . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.4.2. Transferencia en RL . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.5. Análisis del trabajo relacionado . . . . . . . . . . . . . . . . . . . . . . . . . 51 4. Transferencia cualitativa 55 4.1. QTL (Qualitative Transfer Learning) . . . . . . . . . . . . . . . . . . . . . . 55 4.1.1. Inicialización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.1.2. Actualización de conocimiento . . . . . . . . . . . . . . . . . . . . . . 59 4.2. SST (Synthetic Samples Transfer ) . . . . . . . . . . . . . . . . . . . . . . . . 61 4.2.1. Descripción general . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.2.2. Estimación de un modelo desde las muestras . . . . . . . . . . . . . . 64 4.2.3. Proceso de filtrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 5. Experimentos 73 5.1. Descripción de las tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 5.1.1. Péndulo invertido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 5.1.2. Auto en la montaña . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 5.1.3. Cuadricóptero a helicóptero . . . . . . . . . . . . . . . . . . . . . . . 78 5.2. Transferencia de hiper-parámetros . . . . . . . . . . . . . . . . . . . . . . . . 80 5.2.1. Péndulo invertido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 5.2.2. Auto en la montaña . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 5.2.3. Cuadricóptero a helicóptero . . . . . . . . . . . . . . . . . . . . . . . 90 5.3. Sı́ntesis de tuplas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 5.3.1. Péndulo invertido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 5.3.2. Auto en la montaña . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 5.3.3. Cuadricóptero a helicóptero . . . . . . . . . . . . . . . . . . . . . . . 102 5.3.4. Resumen de experimentos . . . . . . . . . . . . . . . . . . . . . . . . 105 ÍNDICE GENERAL 6. Conclusiones 7 109 6.1. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 6.2. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 6.3. Publicaciones derivadas de este trabajo de tesis . . . . . . . . . . . . . . . . 111 Índice de figuras 2.1. Diagrama que representa una tarea en aprendizaje por refuerzo . . . . . . . 24 2.2. GP a priori y a posteriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.3. Variación de escalas de longitud caracterı́sticas . . . . . . . . . . . . . . . . . 31 2.4. Variación del hiper-parámetro α2 . . . . . . . . . . . . . . . . . . . . . . . . 32 2.5. Variación del hiper-parámetro σ2 . . . . . . . . . . . . . . . . . . . . . . . . 33 2.6. Objetivos de la transferencia en aprendizaje por refuerzo . . . . . . . . . . . 35 3.1. Diagrama general de enfoques relacionados con Aprendizaje por Refuerzo (RL). . 38 3.2. Aprendizaje multi-tarea asimétrico . . . . . . . . . . . . . . . . . . . . . . . 46 3.3. Diagrama general de enfoques relacionados con transferencia de conocimiento (TL) para aprendizaje por refuerzo (RL). . . . . . . . . . . . . . . . . . . . . . . . . 47 3.4. Diagrama general de enfoques relacionados con transferencia de conocimiento (TL) para aprendizaje por refuerzo (RL). . . . . . . . . . . . . . . . . . . . . . . . . 52 4.1. Inferencia bayesiana para transferir hiper-parámetros . . . . . . . . . . . . . 62 5.1. Tarea de balanceo de péndulo invertido . . . . . . . . . . . . . . . . . . . . . 75 5.2. Tarea del auto en la montaña . . . . . . . . . . . . . . . . . . . . . . . . . . 77 5.3. Tarea de transferencia cuadricóptero - helicóptero . . . . . . . . . . . . . . . 78 5.4. Curvas de aprendizaje para péndulo invertido . . . . . . . . . . . . . . . . . 82 5.5. Curvas de aprendizaje para péndulo invertido . . . . . . . . . . . . . . . . . 83 5.6. Convergencia de hiper-parámetros para péndulo invertido . . . . . . . . . . . 85 9 10 ÍNDICE DE FIGURAS 5.7. Curvas de aprendizaje para transferencia en tarea del auto en la montaña . . 88 5.7. (Continuación) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 5.8. Curvas de aprendizaje para transferencia de cuadricóptero a helicóptero . . . 91 5.9. Curvas de aprendizaje para tareas con masas incrementadas en 0.5x y 2x con respecto a la masa original (0.5 kg.) . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.10. Curvas de aprendizaje para tareas con masas incrementadas en 3x y 4x con respecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.11. Curvas de aprendizaje para transferencia en tarea del auto en la montaña . . 100 5.11. (Continuación) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 a la masa original (0.5 kg.) 5.12. Curvas de aprendizaje para la tarea de control de helicóptero, transfiriendo conocimiento desde un cuadricóptero . . . . . . . . . . . . . . . . . . . . . . 105 Índice de tablas 3.1. Algoritmos relevantes de Transferencia para Aprendizaje por Refuerzo . . . . 49 5.1. Desempeño final, recompensa acumulada y tiempo de convergencia para transferencia en tareas de péndulo invertido. . . . . . . . . . . . . . . . . . . . . . 86 5.2. Métrica task compliance en las tres tareas objetivo para el problema del auto en la montaña. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 5.3. Métricas para transferencia en la tarea cuadricóptero - helicóptero . . . . . . 91 5.4. Recompensa total en la transferencia para la tarea de péndulo invertido. . . 97 5.5. Desempeño final en la transferencia en la tarea de péndulo invertido. . . . . 98 5.6. Tiempo de convergencia en la transferencia en la tarea de péndulo invertido . 98 5.7. Desempeño final para la transferencia en la tarea del auto en la montaña. . . 99 5.8. Recompensa total para la transferencia en la tarea del auto en la montaña. . 102 5.9. Tiempo de convergencia para la transferencia en la tarea del auto en la montaña103 5.10. Desempeño final, recompensa acumulada y tiempo de convergencia para la tarea del helicóptero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 104 Capı́tulo 1 Introducción En estos dı́as no es extraño ver que algunos robots ayuden en tareas domésticas o que los automóviles, sin conductor alguno, son capaces de conducir a través del tráfico de grandes ciudades. Esas y otras aplicaciones que están por venir, como la vigilancia desde el aire o entrega de paquetes con vehı́culos aéreos autónomos, son el centro de investigación y desarrollo de muchos grupos alrededor del mundo. En estas tareas, que son muy importantes para la robótica, las variables de estado (posición, velocidad, carga de baterı́a, por ejemplo) son continuas y las acciones que se pueden ejecutar también son continuas (fuerza de frenado, ángulo de dirección, torque en determinado motor, etc.). Se espera que en poco tiempo la autonomı́a en los robots alcance un nivel para el que no se requerirá ni capacitación ni conocimientos especializados, lo cual, aunque facilita la vida de los usuarios finales de los robots, implica que los robots cada vez deberán tener más capacidad de adaptarse a las condiciones cambiantes de su ambiente y aprender nuevas tareas con facilidad. Lograr que un robot aprenda de su entorno y se adapte a su ambiente no es una tarea fácil. Los investigadores de las áreas de inteligencia artificial y robótica usan diferentes técnicas para alcanzar ese objetivo. Cuando no es fácil determinar un modelo de la tarea que el robot debe realizar, se puede seguir un esquema de aprendizaje por refuerzo, con el cual el agente 13 14 CAPÍTULO 1. INTRODUCCIÓN descubre la solución a la tarea a medida que interactúa con el ambiente. En el aprendizaje por refuerzo, no se requiere de un experto que describa las propiedades dinámicas o lógicas de la tarea, en lugar de eso el robot es controlado por un agente inteligente, que es un algoritmo que es capaz de aprender y tomar decisiones basado en la percepción de su entorno. Para poder tomar decisiones, el agente aprende, en el sentido de acumular experiencia para mejorar su desempeño. Como en un principio el agente desconoce cómo se comporta el ambiente en el que se desenvuelve, no tiene otra opción que elegir acciones al azar e ir descubriendo los resultados de sus acciones y después de algún tiempo, tendrá la experiencia para saber cuáles son las mejores acciones a ejecutar en cada situación. Esto hace que el aprendizaje sea un proceso lento porque se tiene que repetir la tarea varias veces en espacios grandes de exploración. Ahora bien, imaginemos que un agente que se ejecuta en un automóvil autónomo, ha aprendido a frenar un automóvil en el menor tiempo posible y sin derrapar. La polı́tica aprendida, por desgracia, no funcionará como se esperarı́a cuando el asfalto está cubierto por hielo, aún cuando sea el mismo automóvil. En este nuevo escenario, el agente deberá volver a ejecutar un proceso de aprendizaje bajo las nuevas condiciones, sin olvidar que cuando se trata de un robot, probar acciones cuya consecuencia se desconoce conlleva el riesgo de dañar al robot. Una área de estudio llamada aprendizaje por transferencia (TL, o transfer learning en inglés), estudia precisamente cómo poder reciclar información adquirida durante el aprendizaje de una primera tarea (tarea origen) para aprender una tarea relacionada (tarea objetivo) más rápido de lo que se aprenderı́a partiendo desde cero. El aprendizaje por transferencia por lo general ofrece tiempos de aprendizaje más cortos, debido a que usa información de una o más tareas relacionadas. Para la transferencia, es muy importante seleccionar la información adecuada. Lo que se busca en TL es extraer información de la tarea origen, que sea similar en la tarea objetivo, evitando transferir propiedades particulares de la tarea origen. El objetivo es de alguna 1.1. PROBLEMÁTICA 15 manera orientar al agente en la selección de acciones, para que aprenda eficientemente la tarea objetivo. En este trabajo lo que se desea es poder transferir varias propiedades cualitativas de la tarea origen que son comunes a la tarea objetivo. La información cualitativa, para el contexto que aquı́ se considera, consiste en propiedades de la tarea que no son cuantificables, por ejemplo, la presencia de ruido en el modelo de la tarea o el tipo general del modelo de la tarea (si es de alta frecuencia o baja frecuencia). Por poner un ejemplo ilustrativo, cuando un humano aprende a conducir una bicicleta, infiere ciertas reglas que son cualitativas, e.g. si se gira el manubrio a la derecha la bicicleta irá a la derecha, si se detiene por completo se pierde el equilibrio. Las cualidades de la tarea son conservadas y cuando tiene que aprender a conducir una motocicleta, no tendrá que hacerlo desde cero, sino que tomará la información cualitativa adquirida en el aprendizaje de la conducción de la bicicleta. Lo que se propone en esta tesis es transferir información cualitativa entre tareas donde las variables de estado y acción son continuas. Se adoptan los procesos gaussianos (GP ) como marco matemático para modelar la tarea y se aprovecha la información cualitativa que se puede manejar en ellos. 1.1. Problemática El aprendizaje por refuerzo se ha aplicado para resolver problemas en varias disciplinas, incluyendo aplicaciones recientes en el área de robótica. Sin embargo, existen retos que están ligados a la naturaleza del aprendizaje por refuerzo: El proceso de aprendizaje en un ambiente real consume mucho tiempo (debido a la exploración). Además, el aprendizaje es particularmente más lento en problemas donde se tienen muchas variables y éstas son continuas. El conocimiento obtenido se limita a resolver solamente la tarea aprendida. No se puede emplear lo aprendido en otras tareas aún cuando la nueva tarea sea similar. 16 CAPÍTULO 1. INTRODUCCIÓN La transferencia en aprendizaje por refuerzo ofrece una solución, al menos en cierta me- dida, a este tipo de problemas, reduciendo considerablemente el tiempo de aprendizaje en la tarea objetivo y permitiendo extender el conocimiento adquirido para resolver nuevas tareas. Sin embargo, la transferencia no es un proceso simple, ya que antes que nada se tiene que encontrar la información adecuada a transferirse. Si sólo se transfiere información sin cuidado, se puede producir un caso conocido como transferencia negativa, donde la tarea objetivo toma más tiempo en ser aprendida de lo que tomarı́a si se aprende desde cero. En el área de transferencia de conocimiento para aprendizaje por refuerzo, los retos a los que se enfrenta esta propuesta son los siguientes: Determinar el tipo de información a transferir. Evitar la transferencia negativa. Abordar problemas reales de considerable dificultad. Hasta el momento en los trabajos de transferencia sólo se han encontrado dominios simples (pocas variables de estado y acción, variables discretas) y la transferencia entre tareas difı́ciles (alta dimensionalidad, variables continuas) no ha sido explorada. El objetivo de la transferencia propuesta en este trabajo es que el aprendizaje de una nueva tarea sea más rápido que aprendiendo sin transferencia. En una tarea donde el agente se arriesga al hacer exploración, es deseable tener un desempeño inicial bueno desde los primeros episodios del aprendizaje y correr menos riesgo de ejecutar acciones peligrosas. La propuesta de esta tesis cubrirá también ese objetivo. Desde el punto de vista cientı́fico, se extenderá el estado del arte al desarrollar un algoritmo de transferencia de conocimiento para tareas de aprendizaje por refuerzo, donde el conocimiento a transferir será generado a partir de las propiedades cualitativas de la tareas. También se espera sobrepasar los resultados de otros enfoques de transferencia que son comparables. Las propuestas de este trabajo se prueban tanto en problemas clásicos de aprendizaje por refuerzo con alta dimensionalidad, como en un problema real de control, que consiste en el 1.1. PROBLEMÁTICA 17 control de un vehı́culo de ala rotatoria (helicóptero). El control automático de helicópteros, es un problema desafiante para las diferentes áreas de investigación que lo han abordado. Esto se debe a sus caracterı́sticas dinámicas, entre las cuales se encuentran la alta dimensionalidad, dinámica no-lineal y estocasticidad. Como resultados de este trabajo se demostrará que la transferencia cualitativa es aplicable al aprendizaje por refuerzo en problemas desafiantes, como el control de este tipo de aeronaves, que por sus propiedades dinámicas son considerados como complejos. Esto será demostrado en simulación. Esta propuesta de trabajo se centra en la creación de algoritmos de transferencia en aprendizaje por refuerzo de tareas con variables de estado y acción continuas. Para conseguirlo, se propone usar los procesos gaussianos como marco matemático. Los procesos gaussianos (GP por sus siglas en inglés) se pueden usar para aproximar el comportamiento de un sistema no lineal eficientemente. Una de las ventajas de los GP es que para modelar un sistema se pueden considerar algunas propiedades cualitativas del mismo, tales como el ruido, la suavidad de la función, periodicidad, variabilidad, entre algunas otras. En este trabajo, para tener control sobre el proceso gaussiano, se contribuye siguiendo dos enfoques. En el primer enfoque se trabaja con los parámetros libres del GP, llamados hiperparámetros, que sirven para establecer la distribución inicial de las funciones de transición en la tarea objetivo, que posteriormente se va ajustando con las nuevas muestras. En el segundo enfoque, se usan las muestras o tuplas obtenidas durante el aprendizaje de la tarea origen y las muestras disponibles de la tarea objetivo para aprender un modelo de las diferencias entre las tareas, con el cual se transforman tuplas seleccionadas de la tarea origen. En sı́ntesis, este trabajo se posiciona donde, según nuestro conocimiento actual, no existe otro trabajo. Se proponen dos enfoques para hacer transferencia de conocimiento sobre tareas con estados y acciones continuas. En el primer enfoque propuesto, la información cualitativa se obtiene de los hiper-parámetros del GP y en el segundo enfoque se usan muestras sinténticas en la tarea objetivo. En ambos enfoques, la información que se toma de la tarea origen es independiente de un mecanismo de aprendizaje especı́fico en la tarea origen, por lo que 18 CAPÍTULO 1. INTRODUCCIÓN se pueden usar diferentes algoritmos de aprendizaje en la tarea origen. Se asume que las diferencias entre las tareas origen y objetivo serán las funciones de transición y recompensas. Como resultados empı́ricos se demostrará que la transferencia es aplicable al aprendizaje por refuerzo en problemas de control, que por sus propiedades dinámicas son considerados como complejos (alta dimensionalidad, dinámica no-lineal y estocasticidad). Esto será demostrado sobre tareas relevantes para las áreas de aprendizaje por refuerzo y robótica: control de péndulo, carro y dos tipos de helicópteros. La investigación que se propone toma como base dos hipótesis principales de investigación. La primera hipótesis es que las propiedades cualitativas de la distribución de funciones de transición de la tarea origen son útiles para aprender más rápido la tarea objetivo. La segunda hipótesis es que si se modela la diferencia entre las tareas, aprovechando las muestras disponibles en ambas tareas, ese modelo se puede usar para generar muestras sintéticas para la tarea objetivo. Las hipótesis de estudio son las siguientes: Durante el aprendizaje por refuerzo se puede obtener información cualitativa que represente propiedades de la tarea original. La información cualitativa puede ayudar en la inicialización del modelo de la tarea objetivo considerando en todo momento que los estados y acciones son continuos. Es posible modelar la diferencia entre las tareas aprovechando los procesos gaussianos y las muestras disponibles tanto en la tarea origen como en la objetivo. Es posible sintetizar muestras utilizando el modelo de la diferencia entre las tareas. Partiendo de la información cualitativa, es posible sintetizar muestras para la tarea objetivo que puedan acelerar aún más el proceso de aprendizaje. 1.2. Objetivos de investigación A continuación se describen los objetivos general y especı́ficos que persigue este trabajo de tesis. 1.3. CONTRIBUCIONES 1.2.1. 19 Objetivo general El objetivo principal del trabajo propuesto es desarrollar algoritmos de transferencia para aprendizaje por refuerzo que tengan una convergencia más rápida que los del estado del arte, entre tareas con estados y acciones continuas. 1.2.2. Objetivos especı́ficos Los objetivos especı́ficos que se consideran para cumplir con el objetivo general son los siguientes: Diseñar un algoritmo que transfiera propiedades cualitativas generales de la tarea origen hacia la tarea objetivo. Diseñar un algoritmo para sintetizar tuplas útiles para la tarea objetivo, partiendo de las muestras disponibles de las tareas origen y objetivo. Evaluar y comparar los algoritmos de transferencia propuestos. En las pruebas se espera superar al aprendizaje sin transferencia (para demostrar que no hay transferencia negativa) y a la transferencia de tuplas [Lazaric et al., 2008], que es el método que ofrece mejores resultados hasta el momento. 1.3. Contribuciones Las principales contribuciones cientı́ficas de este trabajo son las siguientes: Las tareas con variables de estado y acción continuas son muy importantes para aplicaciones recientes en áreas como la robótica e inteligencia artificial. Los métodos basados en discretizar las variables no siempre son aptos, ya que algunas tareas requieren mucha precisión en las variables. En los trabajos publicados en el área de transferencia para RL, no se encontró trabajo alguno en el cual tanto los estados como las acciones de las tareas fueran continuos. En esta tesis se propone transferencia para tareas con espacios de estados y acciones continuas, sin recurrir a discretización de variables. 20 CAPÍTULO 1. INTRODUCCIÓN Se propone un nuevo enfoque de transferencia en el cual los hiper-parámetros del proceso gaussiano que representa la función de transición se usan como información cualitativa para sesgar el aprendizaje en la tarea objetivo. Eso acelera el proceso de aprendizaje en la tarea objetivo. En la literatura del área se han propuesto enfoques de selección y transferencia de tuplas. En este trabajo se propone un nuevo mecanismo donde se transforman las tuplas para adaptarlas mejor a la tarea objetivo. En el estado del arte de transferencia se prueban problemas clásicos de aprendizaje por refuerzo, que son de pocas variables de estado y acción. En este trabajo se hace transferencia entre un cuadricóptero y un helicóptero, lo cual es una tarea compleja con muchas variables de estado continuas. 1.4. Guı́a del documento En el capı́tulo 2 se presenta el marco teórico, donde se abordan los antecedentes necesarios para tratar la temática de esta tesis. En el capı́tulo 3 se expone el estado del arte relacionado con métodos de aprendizaje por refuerzo aplicables a espacios discretos y continuos. También, se describen métodos recientes de transferencia en aprendizaje por refuerzo. A partir del análisis del trabajo relacionado se finaliza con una comparación de métodos ası́ como una conclusión y justificación que da lugar a los algoritmos presentados en esta tesis. En el capı́tulo 4 se introducen los dos enfoques propuestos de aprendizaje por refuerzo utilizando transferencia de conocimiento. El primero de los enfoques propuesto (QTL) es un algoritmo con dos variantes, en el cual las funciones de la transición y las polı́ticas son aproximadas por procesos Gaussianos. El segundo enfoque propuesto (SST) se relaciona con la sı́ntesis de tuplas para la tarea objetivo, el cual está centrado en una selección y transformación de las muestras de la tarea origen para ajustar la función de transición estados en la tarea objetivo, la cual es modelada utilizando procesos Gaussianos. 1.4. GUÍA DEL DOCUMENTO 21 En el capı́tulo 5 se presentan los experimentos realizados con el objetivo de comparar y evaluar el funcionamiento de los enfoques propuestos. Finalmente, se abordan las conclusiones y trabajo futuro derivado de este trabajo de tesis, ası́ como las publicaciones obtenidas. Capı́tulo 2 Fundamentos teóricos En este capı́tulo se cubre brevemente la teorı́a relacionada con el tema de investigación. Se explica cómo funciona el aprendizaje por refuerzo, se describen los procesos de decisión de Markov y los procesos gaussianos, ası́ como la transferencia de conocimiento en el área de aprendizaje por refuerzo. 2.1. Aprendizaje por Refuerzo El aprendizaje por refuerzo (reinforcement learning (RL)) es una área dentro del aprendizaje por computadora (machine learning) dedicada al desarrollo de algoritmos que permiten a un agente (sistema, robot, personaje de videojuego, etc.) aprender a realizar una tarea donde se tienen que tomar decisiones secuenciales para alcanzar un objetivo, maximizando un valor acumulado de recompensa. En RL, un agente puede ser una instancia de diferentes tipos, por ejemplo un robot, un personaje virtual de un juego de video, o bien puede ser simplemente un sistema o algoritmo encargado de controlar una planta industrial. Existe un gran número de aplicaciones prácticas a este tipo de problemas, donde la principal ventaja es que no se requiere de un experto para encontrar la solución al problema, sino simplemente se debe formular el problema de manera adecuada, especificando las recompensas o penalizaciones para que el agente lo pueda aprender. 23 24 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS Figura 2.1: Diagrama que representa una tarea en aprendizaje por refuerzo. El agente interactúa con su ambiente ejecutando una acción, al hacerlo cambia de estado y recibe una recompensa. Después de ejecutar una acción el estado del agente cambia, como se muestra en el esquema de la figura 2.1. Para aprender, el agente repite la tarea varias veces hasta encontrar cuáles son las acciones que le llevan a acumular la mayor recompensa posible. Generalmente el agente no dispone de conocimiento previo y tiene que obtener sobre la marcha (casi siempre por prueba y error) toda la información para alcanzar el objetivo. El propósito de un agente, durante el aprendizaje por refuerzo, es encontrar una estrategia que lo lleve a elegir la mejor acción y obtener la mayor recompensa acumulada esperada en cualquier estado. Se considera que el agente ha aprendido una estrategia óptima, comúnmente llamada polı́tica óptima, cuando es capaz de acumular la mayor recompensa posible para la tarea asignada. Muchas veces para resolver la tarea adecuadamente es suficiente encontrar una polı́tica cercana a la óptima. 2.1.1. Procesos de Decisición de Markov RL, se puede caracterizar como un proceso de decisión de Markov, denotado como MDP por sus siglas en inglés. Un MDP es una tupla hS, A, R, P i, donde S es el conjunto de posibles estados del agente, donde s ∈ S se puede representar por un vector de k variables que corresponde a una posible configuración del agente dentro de su ambiente, s = hx1 , x2 , . . . , xk i. En 2.1. APRENDIZAJE POR REFUERZO 25 la tarea de aprendizaje, un agente puede iniciar la tarea en uno o más estados iniciales, denotados por sini y frecuentemente también hay uno o más estados objetivo sobj , que terminan la tarea si son alcanzados por el agente. Por cada paso de tiempo, el agente selecciona una acción de un conjunto de posibles acciones A y esto le genera una recompensa. La función de recompensa está definida como R : S × A → R. En el ambiente también está definida una función de transición estocástica P : S × A × S → [0, 1], que indica cuál es la distribución de probabilidad del estado al que se transita al ejecutar determinada acción estando en cierto estado. El agente intentará maximizar la recompensa acumulada, determinada por la función de recompensa R y la función de transición P , que el agente desconoce en un principio. La tarea de un agente es por lo general llevar a cabo exploración con la finalidad de descubrir cuáles son las recompensas que le generan las acciones y a qué estados nuevos lo conducen. En el proceso de aprendizaje, el agente va construyendo o modificando una polı́tica π : S → A, que le sirve para elegir qué acción tomar cuando está en determinado estado. El agente busca en todo momento encontrar o aproximarse a una polı́tica que maximice la recompensa total esperada, llamada polı́tica óptima y denotada como π∗. Muchos algoritmos en Aprendizaje por Refuerzo, en lugar de aprender directamente la polı́tica π, aprenden una función de valor-acción Q : S × A → R que dado un estado y acción, mapea al valor de recompensa esperado. Si se cuenta con la función Q, un agente puede seleccionar la acción óptima desde cualquier estado ejecutando la acción con el valor-acción más alto. 2.1.2. Exploración y explotación En aprendizaje por refuerzo, el agente comienza a aprender la tarea sin conocer las funciones de transición y recompensa, en otras palabras el agente comienza desconociendo por completo cómo se comporta la tarea. Como el agente desconoce cuáles son las acciones que le harán acumular la mayor recompensa posible, lo primero que el agente debe hacer es explorar. La exploración le permite al agente descubrir cuáles son las consecuencias de sus acciones a corto y largo plazo. Una vez que el agente ha explorado suficiente, puede explotar 26 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS el conocimiento adquirido. El dilema exploración-explotación es algo que ha ocupado a los investigadores en el área de aprendizaje por refuerzo. Las técnicas se han inclinado por algoritmos que encuentren un correcto balance entre la exploración y la explotación durante el aprendizaje, y con ello hallar una buena polı́tica en un tiempo reducido. En RL existen básicamente dos tipos de algoritmos: libres de modelo y algoritmos basados en modelo. Los métodos libres de modelo, se basan en una búsqueda directa de la solución al problema, no necesitan tener conocimiento de la función de recompensa o la función de transición y sus esfuerzos se centran en interactuar más con el ambiente para encontrar una buena aproximación de la función de valor y sobre ésta buscar la solución. Los métodos basados en modelo, por el contrario, usan algún conocimiento de la función de recompensa y la distribución de la función de transición y buscan generar una aproximación de éstas a medida que interactúan con el ambiente. La interacción con el ambiente en los problemas planteados como tareas por refuerzo tienen dos caracterı́sticas que hacen el aprendizaje muy costoso en términos computacionales. Por un lado cuando el agente está en cierto estado, tiene a su disposición varias acciones a tomar y para poder compararlas y saber cuál le genera mayor recompensa a futuro, debe elegir alguna y luego otra la siguiente vez que repita la tarea. Además de poder elegir entre diferentes acciones, también sucede que las transiciones de estado no son deterministas, lo cual significa que no siempre estando en el estado s1 y ejecutando la acción a1 generan el mismo cambio de estado. En las tareas de aprendizaje por refuerzo se asume que las transiciones de estado son estocásticas, lo que implica que el agente debe descubrir cuál es el estado más probable al que se transitará al elegir determinada acción en determinado estado. El agente por lo general adquiere el conocimiento para resolver la tarea sólo después de repetirla muchas veces, por lo que el proceso es costoso en términos computacionales. Entre más variables de estados y acciones se tengan para representar el ambiente, el esfuerzo que el agente hace para descubrir la solución a la tarea se multiplica. A esto se le 2.2. PROCESOS GAUSSIANOS 27 conoce como maldición de dimensionalidad. Si el problema tiene muchas variables de estado o acción, el agente deberá intentar visitar muchos estados y probar muchas acciones para descubrir la polı́tica óptima, lo que está directamente relacionado con el número de episodios que tomará aprender la tarea. Además del número de variables, el tipo de variables también afectan la forma en la que se representa el problema y los recursos necesarios para resolverlo. Si se tienen variables discretas, es posible almacenar en tablas los valores que pueden tomar. Sin embargo, si las variables del problema son continuas, no se puede almacenar toda la gama de valores posibles, en tal caso es necesario usar funciones que aproximan de alguna manera los valores que no se tienen almacenados. Los procesos gaussianos han sido usados recientemente para representar problemas de aprendizaje por refuerzo donde las variables son continuas. Su principal ventaja radica en que con muy poca información (muestras) pueden representar transiciones no lineales en la tarea. A continuación se describen resumidamente. 2.2. Procesos Gaussianos En esta sección se presenta una breve introducción a los procesos gaussianos y cómo son utilizados en el contexto de la problemática abordada en este trabajo de tesis. Un proceso gaussiano (GP) está ı́ntimamente relacionado con las distribuciones de probabilidad gaussiana multivariada. Las distribuciones de probabilidad gaussiana se usan para modelar varios problemas en distintas áreas de estudio. Una distribución gaussiana univariada se puede parametrizar por una media µ y una varianza σ 2 , mientras que en el caso de una distribución multivariada, se parametriza por un vector µ = [µ1 , . . . , µn ]T y una matriz de covarianza Σn×n . Un GP es una forma de generalización, que permite representar una distribución gaussiana con un número infinito de variables. El proceso gaussiano es un proceso estocástico que describe las propiedades de funciones, y se denota por GP(m, k) y está especificado por una función promedio m(·) y una función de covarianza o kernel k(·, ·). Las funciones deno- 28 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS (a) GP a priori. Sólo se han especificado los (b) GP a posteriori. Después de observacio- hiper-parámetros del kernel. nes e inferencia bayesiana Figura 2.2: Muestras del GP antes y después de la inferencia bayesiana. El área gris representa el 95 % del intervalo de confianza de la distribución del GP. Las lı́neas punteadas representan funciones muestreadas de las respectivas distribuciones. minadas kernel permiten operan pares de datos disponibles en el espacio de atributos. En otras palabras, los métodos de aprendizaje computacional basados en funciones kernel más que aprender un conjunto de parámetros, trabajan con pesos correspondientes a los datos de entrenamiento disponibles. La predicción de entradas nuevas es estimada aplicando una función de similaridad k entre la entrada nueva y cada uno de los datos conocidos. Los procesos gaussianos recientemente se están aprovechando en aprendizaje computacional, aprovechando su uso para hacer regresión no-lineal. Eso es posible debido a que un proceso gaussiano se puede interpretar como una distribución de funciones continuas nolineales. Es decir, si se usara un proceso gaussiano como generador de muestras, una muestra corresponderı́a a una función continua no-lineal. Para hacer regresión, en un principio se parte de los datos disponibles del problema, con los cuales se aprenden los parámetros libres del kernel. Todos los cálculos requeridos para regresión e inferencia con GPs pueden hacerse manipulando las distribuciones gaussianas multivariadas. Para hacer regresión con el GP, se asume que los datos D = {X = [x1 , . . . , xn ]> , y = [y1 , . . . , yn ]> } se han generado de acuerdo a yi = h(xi ) + , donde es ruido que sigue una 2.2. PROCESOS GAUSSIANOS 29 distribución independiente con media cero y varianza σ2 ( ∼ N (0, σ2 )). Los GPs consideran h una función aleatoria e infieren una distribución a posteriori p(h|D) sobre h desde el GP a priori p(h) y los datos D. La distribución a posteriori se usa para hacer predicciones sobre los valores de la función h(x∗ ) en puntos arbitrarios x∗ , como se puede apreciar en la figura 2.2. De forma parecida a las distribuciones gaussianas, que se especifican por un vector media y una matriz de covarianza, un GP se define por una función media mh (·) y una función de covarianza o kernel especificado como kh (x, x0 ) = Eh [h(x − mh (x))(h(x0 − mh (x0 )))] = covh [h(x), h(x0 )], x, x0 ∈ RD (2.2.1) para cualesquiera dos valores de la función x y x0 . Eh denota el valor esperado con respecto a la función h. 2.2.1. Inferencia bayesiana Para encontrar la distribución a posteriori de la función h se usan técnicas de inferencia bayesiana sobre el GP [Barber, 2012, Bertsekas and Tsitsiklis, 2002]. Primero se tiene que especificar una distribución a priori, después los datos observados se usan para refinar la distribución a priori incorporando la nueva evidencia desde las observaciones. Para especificar la distribución a priori, en la mayorı́a de las aplicaciones, tal como en este trabajo, la función media se define como m(·) = 0 y se usa el kernel cuadrático exponencial siguiente: 1 k(x, x0 ) = α2 exp(− (x − x0 )> Λ−1 (x − x0 )) + δxx0 σ2 2 (2.2.2) con Λ = diag([`21 , . . . , `2n ]) y `k para k = 1, . . . , n, llamados escalas de longitud caracterı́sticas, σ2 los términos de ruido y δxx0 denota la función delta de Kronecker. El parámetro α2 describe la variabilidad de la función latente h. Los parámetros de la función de covarianza o hiperparámetros del GP (α2 , `,σ2 ) son contenidos en el vector θ. El valor de los hiper-parámetros define la forma de las funciones en la distribución a priori. 30 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS Los valores de los hiper-parámetros definen las propiedades cualitativas de la familia de funciones. Por ejemplo, si los valores lk de la diagonal de Λ son relativamente pequeños, pueden hacer que las funciones de la distribución sean más onduladas, mientras que valores relativamente grandes de lk llevan a tener funciones más suaves, como se puede ver en la figura 2.3. En las figuras 2.4 y 2.5 se muestra el efecto de los hiper-parámetros α2 y σ2 respectivamente. Con los datos de la función latente y con yi = h(xi ) + i para i = 1, . . . , n, para un conjunto de vectores de entrada X, se aplica el teorema de Bayes: p(h|X, y, θ) = p(y|h, X, θ)p(h|θ) p(y|X, θ) (2.2.3) para obtener la distribución a posteriori del GP sobre h. Se asume que las observaciones yi son condicionalmente independientes dado X. La verosimilitud de h cumple con la siguiente forma: p(y|h, X, θ) = n Y p(yi |h(xi ), θ) = i=1 n Y N (yi |h(xi ), σ2 ) = N (y|h(X), σ2 ) (2.2.4) i=1 Para ciertos hiper-parámetros θ dados, la verosimilitud gaussiana p(y|X, h, θ) en la ecuación 2.2.4 y la distribución a priori p(h|θ) permiten calcular la ecuación 2.2.3. La distribución predictiva de los valores h∗ = h(x∗ ) para un conjunto de prueba x∗ es también una distribución gaussiana con función media y varianza dadas por: Eh [h∗ ] = k(x∗ , X)(K + σ2 I)−1 y varh [h∗ ] = k(x∗ , x∗ ) − k(x∗ , X)(K + σ2 I)−1 k(X, x∗ ) (2.2.5) (2.2.6) donde K ∈ Rn×n es la matriz kernel con Kij = k(xi , xj ) y σ2 es el ruido. Cuando los hiper-parámetros son desconocidos a priori, se pueden aprender maximizando la métrica logaritmica de máxima verosimilitud que está dada por: Z log p(y|X, θ) = log p(y|h, X, θ)p(h|θ)dh 1 1 n = − y> (Kθ + σ2 I)−1 y − log |Kθ + σ2 I| − log(2π) 2 2 2 (2.2.7) (2.2.8) 2.2. PROCESOS GAUSSIANOS (a) 31 Escalas de longitud caracterı́sticas lk = 0.11 (c) (b) Escalas de longitud caracterı́sticas lk = 1 Escalas de longitud caracterı́sticas lk = 6.17 Figura 2.3: Efecto de la escala de longitud caracterı́stica en el GP, mientras el resto de los hiper-parámetros se mantienen constantes. 32 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS (a) Variabilidad de la función α2 = 0 (c) (b) Variabilidad de la función α2 = 0.05 Variabilidad de la función α2 = 3.06 Figura 2.4: Efecto del hiper-parámetro de variabilidad de la función en el GP, mientras el resto de los hiper-parámetros se mantienen constantes. 2.2. PROCESOS GAUSSIANOS (a) 33 (b) Ruido de la función σ2 = 0 (c) Ruido de la función σ2 = 0.05 Ruido de la función σ2 = 3.06 Figura 2.5: Efecto del hiper-parámetro de ruido de la función en el GP, mientras el resto de los hiper-parámetros se mantienen constantes. 34 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS La maximización de evidencia permite encontrar un modelo que se ajusta a los datos pero también se mantiene simple (no tiende a sobreajustar ni a subajustar). El vector de hiperparámetros que se busca para maximizar se expresa como θ̂ ∈ arg max log p(y|X, θ) (2.2.9) θ y una vez que se ha aproximado, se usa en la inferencia bayesiana para determinar la distribución a posteriori sobre h. La maximización de evidencia usando la ecuación 2.2.7 es un problema de optimización no-lineal, no-convexo y puede ser difı́cil de resolver dependiendo del problema. Sin embargo, en la literatura existen varias técnicas que permiten aprender θ garantizando que el modelo se ajusta en cierta medida a los datos aún cuando no se encuentre el óptimo global (ver Rasmussen and Williams [2006]). En esta tesis los procesos gaussianos se usan para aprender un modelo de la función de transición de estados continuos. También se usan para aprender la diferencia entre la tarea origen y la tarea objetivo en el enfoque de sı́ntesis de tuplas que se propone en este trabajo. 2.3. Transferencia de conocimiento Si bien los algoritmos de aprendizaje por refuerzo han tenido notable éxito al ser aplicados a diferentes tareas, una vez que un agente ha aprendido a resolver una tarea, el conocimiento adquirido resuelve únicamente la tarea en la que el agente aprendió. El marco matemático de RL no brinda herramientas para usar tal conocimiento en una tarea nueva. Por ello una área nueva de aprendizaje por refuerzo persigue la reutilización del conocimiento adquirido durante el aprendizaje de una tarea para emplearlo en otra similar. Esta idea de transferencia de conocimiento para el aprendizaje por refuerzo es relativamente reciente y ha mostrado ser muy útil. El aprendizaje por transferencia (Transfer Learning, TL) es una área de estudio del aprendizaje computacional que ha hecho importantes contribuciones en la solución de problemas de aprendizaje supervisado. Es hasta años recientes que el aprendizaje por transferencia se 2.3. TRANSFERENCIA DE CONOCIMIENTO 35 Figura 2.6: Objetivos de la transferencia en aprendizaje por refuerzo. Las ventajas que puede ofrecer la transferencia son: menos errores al comenzar (jumpstart), alcanzar un desempeño deseado en menor tiempo, o bien, que la polı́tica aprendida sea mejor (obtenga una mayor recompensa o tenga un mejor desempeño asintótico). ha estudiado especı́ficamente para mejorar el aprendizaje por refuerzo. Con transferencia en aprendizaje por refuerzo, el conocimiento adquirido durante el aprendizaje de una tarea (tarea origen) es utilizado para aprender otra tarea (tarea objetivo) que está relacionada de alguna forma con la primera. El propósito de la transferencia es que el aprendizaje en la tarea objetivo se mejore ya sea aprendiendo la tarea más rápido, cometiendo menos errores al comienzo o teniendo una mejor polı́tica al final del aprendizaje, como se puede ver en la figura 2.6. Los métodos de transferencia para aprendizaje por refuerzo pueden considerar diferentes tipos de diferencias entre la tarea origen y la tarea objetivo. Por ejemplo, podrı́a ser que las tareas tuvieran diferentes funciones de recompensa, espacios de estado, o un conjunto de acciones diferentes. En este trabajo se considera que las tareas origen y objetivo tienen diferentes funciones de transición. Un ejemplo de tareas similares con diferentes funciones de transición es tener la conducción de una bicicleta como tarea origen y como tarea objetivo la conducción de una motocicleta. Entre la tarea origen y la tarea objetivo se puede transferir conocimiento de diversos 36 CAPÍTULO 2. FUNDAMENTOS TEÓRICOS tipos. Puede ser información de bajo nivel para tareas especı́ficas o podrı́an ser heurı́sticas para guiar el aprendizaje. También podrı́a ser información relacionada con el MDP, por ejemplo, una polı́tica, muestras de la tarea, un modelo de la tarea, etc. En esta tesis se proponen dos esquemas novedosos de transferencia. En el primero, se transfiere la polı́tica de la tarea origen como guı́a inicial para favorecer una mejor exploración en el primer episodio. A diferencia de otros trabajos, en esta propuesta se transfieren los hiperparámetros del GP de la función de transición de la tarea original. Los hiper-parámetros crean un sesgo sobre las posibles funciones de transición. Como se verá más adelante esto hace que el aprendizaje de la tarea objetivo sea más rápido. El segundo esquema que se propone en este trabajo se centra en las tuplas de la tarea objetivo, y a diferencia de lo que se hace en otros trabajos del estado del arte, donde se transfieren tuplas filtradas desde la tarea origen, en este trabajo se aproxima un GP que modela la diferencia entre la tarea origen y la tarea objetivo. Con ese modelo de la diferencia entre las tareas, se transforman tuplas seleccionadas de la tarea origen para generar tuplas sintéticas en la tarea objetivo. En el siguiente capı́tulo se presenta una revisión del trabajo relacionado, abordando las áreas de aprendizaje por refuerzo y transferencia de conocimiento para aprendizaje por refuerzo. Capı́tulo 3 Trabajo relacionado En este capı́tulo se describe el estado del arte del área de transferencia para aprendizaje por refuerzo. Para ubicar el trabajo que se propone en esta tesis, se resumen tanto métodos aplicables a espacios discretos como los que resuelven tareas que tienen espacios de estado continuos (ver la figura 3.1). También se describen los trabajos que han utilizado procesos gaussianos para transferencia en aprendizaje computacional. Finalmente, se describen y clasifican los métodos de transferencia utilizados en aprendizaje por refuerzo. 3.1. Algoritmos de RL para tareas con estados y acciones discretas Las tareas con estados y acciones discretas son las que más abundan en la literatura de RL. Su principal caracterı́stica es que los posibles valores que pueden tener las variables de estado y las variables de acción se pueden listar. La mayorı́a de los algoritmos usan toda la combinación posible de estados y acciones para aprender la tarea. Hay tareas que por su naturaleza discreta, se resuelven directamente con algoritmos de este tipo. Navegación en retı́culas y juegos de mesa son un par de ejemplos. También hay algunas tareas cuyos estados y acciones se pueden forzar a ser representados con valores discretos, con lo que se posibilita usar métodos discretos. Tal es el caso de las tareas acrobot 37 38 CAPÍTULO 3. TRABAJO RELACIONADO Algoritmos relevantes Estados y acciones discretos Q-learning, Watkins y Dayan, 1992 SARSA, Rummery y Niranjan, 1994 R-max, Braffman and Tennenholtz, 2003 Estados y acciones continuos PEGASUS, Ng et al., 2004 de aprendizaje por refuerzo Fitted R-max, Jong y Stone, 2007 CACLA, van Hasselt y Wiering, 2007 SMC-learning, Lazaric et al., 2007 Ex hai, Martı́n H et al., 2011 PILCO, Deisenroth y Rasmussen, 2011 Figura 3.1: Diagrama general de enfoques relacionados con Aprendizaje por Refuerzo (RL). y péndulo invertido, entre muchas otras. Un grupo de métodos aplicables a espacios y acciones discretas son los métodos de diferencia temporal (TD), con algoritmos como Q-learning [Watkins, 1989] y SARSA [Rummery and Niranjan, 1994]. Lo que tales algoritmos tienen en común es almacenar las recompensas obtenidas y aprender una función acción-valor Q : S × A → R donde Q(s, a) es la suma total de recompensas esperada al ejecutar la acción a estando en el estado s y siguiendo la acción con mayor valor a partir de ese punto. La mejor polı́tica es generada a partir de Q seleccionando la acción con el valor de Q más alto para el estado actual. Para resolver tareas de naturaleza continua, la principal desventaja de los algoritmos mencionados hasta el momento es precisamente que sólo son aplicables para MDPs con estados finitos y acciones finitas, y por fuerza requieren que la tarea se represente con espacios discretos, siguiendo algún mecanismo de discretización. Estos algoritmos simplemente no son aplicables si la discretización genera un número grande de estados o si las acciones son burdas. En el primer caso, un número relativamente grande de estados podrı́a saturar los recursos 3.2. ALGORITMOS DE RL 39 computacionales disponibles y por otro lado, si las acciones son burdas, la solución podrı́a dañar mecanismos o dispositivos (en el caso de un robot por ejemplo) o simplemente ser ineficiente (en el caso de videojuegos, o agentes virtuales). 3.2. Algoritmos de RL para tareas con estados y acciones continuas Existe un grupo especial de algoritmos que han sido especialmente diseñados para poder resolver tareas que no son manejables con algoritmos discretos. Uno de los enfoques que se han propuesto para espacios de estados y acciones continuas es el algoritmo Fitted RMAX [Jong and Stone, 2007], que además es un algoritmo basado en modelo y que es una extensión del trabajo de Brafman y Tennenholtz propuesto para espacios discretos ([Brafman and Tennenholtz, 2003], conocido como Rmax). Aunque Fitted R-max está diseñado para trabajar con acciones discretas, es capaz de manejar espacios de estado continuos mediante un aproximador de función1 . Como todos los algoritmos basados en modelo, el objetivo de Rmax es ir adaptando un modelo que favorece o restringe la exploración sobre ciertos estados. El algoritmo primero construye un MDP sobre una muestra de estados X, subconjunto de S. Para cada estado muestra x ∈ X y acción a ∈ A, el algoritmo Fitted R-MAX estima la transición T (x, a) usando todas las muestras disponibles para la acción a y los estados s cercanos a x. Se hace una generalización desde los estados cercanos porque posiblemente x no será visitado lo suficiente. Fitted R-MAX aproxima las transiciones y recompensas de los datos en S con una distribución de los datos en X. Mediante programación dinámica en este nuevo MDP, Fitted R-max consigue una función acción valor sobre X × A que puede ser usada para aproximar la función Q deseada. Los problemas que se han resuelto con este algoritmo incluyen el problema del auto en la montaña y navegación en mundos continuos. En ambos casos los espacios de estado son continuos, pero las acciones son discretas y de un 1 Los aproximadores de función son métodos de aprendizaje supervisado para aproximar funciones, un ejemplo son las redes neuronales. 40 CAPÍTULO 3. TRABAJO RELACIONADO par de variables, cuando mucho. Tanto los algoritmos basados en modelo, como los algoritmos libres de modelo tienen la ventaja de solucionar un buen número de problemas. Sin embargo, la mayorı́a de estas tareas por lo general son simples. Existen problemas donde se tiene un gran número de variables de estado y variables de acción, además de que la función de transición es no-lineal. Por ejemplo en aplicaciones de robótica, en particular el control de vehı́culos autónomos. Éstos son problemas reales difı́ciles de resolver y en particular, el control de vehı́culos de ala rotatoria (helicótperos) está entre los más complicados ([Ng, 2003], [Ng et al., 2004], [Coates et al., 2009], [Abbeel et al., 2007], [Abbeel et al., 2009], [Abbeel et al., 2010]). En [Ng, 2003] se propone el algoritmo PEGASUS, que usa las observaciones de las tuplas obtenidas durante el aprendizaje, aproxima una distribución sobre los datos y posteriormente genera datos fijos, para hacer la función de transición determinista (en un simulador) y de esta forma poder repetir la evaluación de cualquier polı́tica. Su principal aplicación en aprendizaje por refuerzo es hacer que una tarea sea repetible en cada episodio, es decir, las transiciones se vuelven deterministas. En [Ng et al., 2004] se usa moldeado de recompensas (también conocido como reward shaping). En él, usa aprendizaje por refuerzo para que un agente aprenda a controlar un helicóptero. La técnica que proponen aprovecha el uso de un simulador para obtener muestras de la tarea de control de un helicóptero industrial Yamaha, cuyo modelo dinámico (simulador) es proporcionado por el fabricante. Los datos del simulador, junto con las recompensas obtenidas de PEGASUS son usadas para entrenar una red neuronal que tiene como entrada el estado del helicóptero y genera un vector de acciones de control. En lo que respecta al control de vehı́culos aéreos, el objetivo del trabajo más reciente ([Coates et al., 2009], [Abbeel et al., 2007], [Abbeel et al., 2009], [Abbeel et al., 2010]) es aprender maniobras acrobáticas con un helicóptero a escala, partiendo de datos obtenidos de vuelos de demostración de un piloto experto en maniobras de aeromodelismo. El resultado es que el agente puede inferir una trayectoria de vuelo deseada a partir de varios ejemplos humanos, y posteriormente la reproduce de manera autónoma en el helicóptero a escala. Su 3.2. ALGORITMOS DE RL 41 solución parte de un modelo dinámico simple del helicóptero y usa CIFER (Comprehensive Identification from FrEquency Responses), un algoritmo aplicado en la industria aeronáutica para aproximar parámetros de la dinámica de helicópteros. Su contribución principal es en el área de aprendizaje por demostración (no lleva a cabo exploración o explotación, ni maneja un MDP, por lo que no puede ser considerado aprendizaje por refuerzo). Sin embargo, parte de las técnicas que emplea están relacionadas con el aprendizaje por refuerzo, la función de recompensa para el control es obtenida desde las múltiples demostraciones del experto. En aprendizaje por refuerzo serı́a equivalente a aprender un modelo de la función de recompensa. Aún cuando estos algoritmos pueden aprender tareas representadas en MDPs continuos, el aprendizaje sigue siendo lento y el conocimiento obtenido es útil sólo para la tarea donde se aprendió. Los algoritmos descritos dependen de un simulador preciso que se ajusta a la dinámica del helicóptero. En esta tesis se propone un algoritmo que permite aprender la tarea en un cuadricóptero y con la transferencia aprender el control de un helicóptero (los vehı́culos tienen dinámica diferente entre sı́), sin requerir nunca de conocimiento por parte de un experto ni un modelo dinámico. Para problemas que requieren el manejo de estados y acciones continuos, algunos trabajos destacan por su capacidad de trabajar con MDPs continuos: CACLA (Continuous Actor Critic Learning Automaton, [van Hasselt and Wiering, 2007]), SMC-learning (Sequential Monte Carlo learning, [Lazaric et al., 2007]) y Ex hai ([Martı́n H et al., 2011]). Tanto CACLA como SMC-learning utilizan aproximadores de funciones para representar estados y acciones paramétricamente. Ambos manejan un esquema actor-crı́tico, que es una estructura para representar la polı́tica independiente de la función de valor. La estructura de la polı́tica es el actor (se usa para seleccionar acciones) y la función valor estimada es el crı́tico porque su función es calificar la acción hecha por el actor. La calificación del crı́tico se da después de que el actor selecciona una acción. El crı́tico evalua el nuevo estado para medir si se ha mejorado o empeorado y genera una calificación. De acuerdo a las calificaciones del crı́tico se va modificando la polı́tica del actor. La diferencia central entre estos dos algoritmos es que las acciones se representan con un aproximador de función en CACLA, mientras que 42 CAPÍTULO 3. TRABAJO RELACIONADO en SMC-learning en lugar de una representación paramétrica el actor representa la polı́tica estocástica por medio de un conjunto de muestras (acciones) que se ajusta con el tiempo de acuerdo a los valores almacenados por el crı́tico. Exhai es un algoritmo basado en la idea de vecinos cercanos, aplicada al enfoque de diferencia temporal (k NN-TD, [Martı́n H et al., 2011]), pero que es capaz de manejar acciones continuas. Los algoritmos recien descritos son capaces de aprender tareas donde los estados y acciones son continuos, sin embargo, todos ellos aprenden en el orden de centenas de episodios. El único algoritmo que hasta el momento puede aprender tareas continuas de manera rápida y es eficiente con los datos es PILCO [Deisenroth and Rasmussen, 2011]. Por mencionar un ejemplo, en la tarea de control de péndulo invertido continua, PILCO aprende en menos de 10 episodios, mientras que el más cercano lo hace en alrededor de 150 episodios [Deisenroth and Rasmussen, 2011]. Por esa razón, para este trabajo se adoptó PILCO y se describe con más detalle en la siguiente sección. 3.2.1. PILCO:Probabilistic Inference for Learning Control PILCO [Deisenroth and Rasmussen, 2011] es un algoritmo del estado del arte que considera estados y acciones continuas. Utiliza procesos gaussianos para representar las funciones de transición de estado y, para aprender, utiliza métodos de optimización para hacer búsqueda de la polı́tica óptima. Para las tareas continuas, los procesos gaussianos son un marco matemático que se ha probado para representar la tarea, debido principalmente a que con GPs se pueden construir modelos precisos con muy poca información. La forma en la que la tarea se modela es usando GPs para representar la función de transición. El GP representa una distribución de funciones de transición en lugar de una sola función, lo cual permite considerar incertidumbre en las regiones del espacio de estados en los que no se ha explorado y, por lo tanto, se desconoce cuáles son las acciones óptimas. Pilco es un algoritmo que aprovecha la representación de la función de transición como un GP, y su principal contribución es el aprendizaje de la polı́tica manejando espacios continuos de estados y acciones. 3.2. ALGORITMOS DE RL 43 La función de transición es modelada como un proceso gaussiano donde los estados nuevos a los que se transita se definen como xt = f (xt−1 , at−1 ), f ∼ GP(m, k), donde xt ∈ S es el estado del agente en el momento t, y se aproxima por la función f . El modelo de transición f se representa como un proceso gaussiano con función media m y función de covarianza k. Las muestras de la tarea (xt−1 , at−1 ) ∈ RD+F y la correspondiente ∆t = xt − xt−1 + ∈ RD , ∼ N (0, Σ ), son las muestras de entrenamiento de la función latente f . Se usa ∆t en lugar de xt porque las diferencias varı́an menos que la función original y aprender tales diferencias es mejor que aprender los valores de la función directamente. El objetivo en RL es encontrar una polı́tica π: S 7→ A que maximice la recompensa acumulada esperada: π V (x0 ) = T X E [r(xt )], x0 ∼ N (µ0 , Σ0 ) (3.2.1) t=0 que es la suma de la recompensa esperada r(xt ) obtenida de una traza (x0 , . . . , xT ) de T pasos. π es una función continua aproximada por π̃, usando un conjunto de parámetros ψ. Para la mayorı́a de las tareas continuas, es útil usar una función de recompensa con la forma r(xt ) = exp(−d2 /σr2 ) que recompense cuando la distancia euclidiana d del estado actual xt al estado objetivo xtarget es pequeña, donde σr2 controla la amplitud de r. La polı́tica preliminar π̃ puede ser aproximada por una función de base radial con funciones de base gaussiana, dada por: π̃(x∗ ) = N X βs kπ (xs , x∗ ) = βπ> kπ (Xπ , x∗ ) (3.2.2) s=1 donde x∗ es una entrada de prueba, kπ es el kernel exponencial cuadrático y βπ = (Kπ + σπ2 I)−1 yπ es un vector de pesos. Kπ está formado como (Kπ )ij = kπ (xi , xj ), donde yπ = π̃(Xπ ) + π , (π ∼ N (0, σπ2 I)) representa las muestras de entrenamiento para la polı́tica, con π como ruido de medición. Xπ = [x1 , . . . , xN ], xs ∈ RD , s = 1, . . . , N , son las entradas de entrenamiento. Los puntos de apoyo Xπ y las correspondientes muestras de entrenamiento yπ son un conjunto de pseudo-muestras para la polı́tica preliminar, lo que significa que son ajustados por el algoritmo que aprende la polı́tica. La función de transición de estado se aprende como un GP, usando los datos disponi- 44 CAPÍTULO 3. TRABAJO RELACIONADO bles, aprendiendo primero una distribución a priori y luego una distribución a posteriori de funciones de transición. El modelo de transición aprendido es después usado para simular el sistema y especular sobre el comportamiento a largo plazo sin la necesidad de interacción (a lo cual se le conoce como batch learning). PILCO es un algoritmo de aprendizaje por refuerzo que aprovecha que la función de transición está representada como un GP. El algoritmo parte de tuplas o muestras de la tarea, que son usadas para aproximar un modelo de la tarea en la forma de un proceso gaussiano. Con el modelo, PILCO es capaz de poder evaluar la recompensa acumulada esperada considerando la incertidumbre en la función de transición, haciendo predicciones de las transiciones de estado dada una distribución de estados inicial. Una vez que se tiene una aproximación de la polı́tica, ésta se usa en una interacción con el ambiente, con lo que se obtienen nuevas muestras y el ciclo se repite, refinando el modelo de la tarea y ası́ mismo mejorando la polı́tica aproximada. El algoritmo concluye una vez que se alcanza algún criterio de paro, por ejemplo, cierto número de iteraciones con el ambiente o bien, que la polı́tica hallada con PILCO converja. Si bien PILCO es un algoritmo de aprendizaje muy rápido, no está diseñado para hacer transferencia entre tareas. En esta tesis, las dos propuestas algorı́tmicas están enfocadas en la transferencia de conocimiento para adquirir información de la tarea origen y acondicionar el aprendizaje en la tarea objetivo para que sea más rápido de lo que serı́a sin transferencia. Y si bien pueden funcionar con cualquier algoritmo tipo batch learning, se usa PILCO para las pruebas porque además de ser un algoritmo que funciona con espacios de estado y acción continuos, en el estado del arte es el algoritmo que aprende con el menor número de episodios. Como se vio en las secciones anteriores, los algoritmos de aprendizaje por refuerzo pueden aprender tareas de diversos tipos, pero en ningún caso el conocimiento generado puede ser trasladado a una tarea nueva aún cuando esté relacionada. Por ello la transferencia de conocimiento en el área de aprendizaje por refuerzo es una área de estudio muy importante y que se encuentra en desarrollo. 3.3. PROCESOS GAUSSIANOS EN TL 3.3. 45 Procesos gaussianos en transferencia de conocimiento en aprendizaje computacional Los procesos gaussianos han facilitado la solución de problemas de clasificación y de regresión en el aprendizaje computacional [Rasmussen and Williams, 2006] donde hay pocos datos de entrenamiento disponibles. En particular, para transferencia, los procesos gaussianos ya se han aplicado en el área de multi-task learning (aprendizaje multi-tarea), que se enfoca en aprender una tarea objetivo (llamada primaria) simultáneamente con un conjunto de tareas relacionadas (secundarias). En [Bonilla et al., 2008], se propone un modelo basado en un proceso gaussiano para aprender múltiples tareas simultáneamente. En su modelo se aprenden las dependencias entre las tareas de acuerdo con los datos observados. En [Leen et al., 2011] y [Leen et al., 2012], se propone y prueba un método de aprendizaje asimétrico (donde la tarea primaria tiene más importancia que las tareas secundarias) para clasificación de imágenes de resonancia magnética (fMRI). En él el objetivo es predecir el estı́mulo dadas las mediciones cerebrales de determinado paciente, usando las mediciones de otros pacientes. El aprendizaje asimétrico tiene su diferencia principal con el aprendizaje por transferencia en el sentido que el aprendizaje por transferencia se usa describe un escenario donde una o más tareas han sido previamente aprendidas y se desea aprender una nueva, mientras que en el aprendizaje asimétrico el aprendizaje es simultáneo y requiere que se asuma una estructura especı́fica de dependencia entre las tareas. En el trabajo de Leen et al. [2012] el modelo gráfico de dependencia que se asume es el de la Figura 3.2. Los hiper-parámetros del proceso gaussiano se aprenden entonces siguiendo el modelo de dependencia mostrado. La contribución central de ese trabajo es la técnica para encontrar los hiper-parámetros del proceso gaussiano. En [Bonilla et al., 2008],[Leen et al., 2011] y [Leen et al., 2012] se propone el uso de procesos gaussianos, pero a diferencia de el trabajo que se propone en esta tesis, el escenario que ellos plantean es el de aprendizaje supervisado, y asume que los datos están disponibles 46 CAPÍTULO 3. TRABAJO RELACIONADO Figura 3.2: [Leen et al., 2012] Modelo gráfico probabilista del modelo de proceso gaussiano multi-tarea para la transferencia. Se muestran las relaciones que se asumen entre las tareas a aprender. en su totalidad para todas las tareas involucradas. En el escenario que se maneja en esta propuesta, el aprendizaje por refuerzo parte de el desconocimiento de los datos en la tarea objetivo y la estrategia que se propone en esta tesis tiene que lidiar con el esfuerzo por ir descubriendo la mejor polı́tica en cada episodio. 3.4. Transferencia de conocimiento en aprendizaje por refuerzo Los métodos de transferencia para variables de estado y acciones fijos entre las tareas pueden ser usados cuando entre las tareas origen y la tarea objetivo se conservan las mismas variables de estado y los agentes tienen el mismo conjunto de acciones disponibles. Una lista de los métodos de transferencia para tareas de aprendizaje por refuerzo está en la Figura 3.3. En general los algoritmos de transferencia en RL han tenido buenos resultados, pero no muchos de ellos han abordado tareas que representen problemas reales. Tal como en aprendizaje por refuerzo, los algoritmos que manejan MDPs discretos son más comunes que los que soportan representaciones continuas. En la Tabla 3.1 se listan los 3.4. TRANSFERENCIA EN RL 47 Estados y acciones discretos Madden y Howley, 2004 Sherstov y Stone, 2005 Taylor et al., 2008 Algoritmos de transferencia en aprendizaje por refuerzo Estados continuos, acciones discretas TIMBREL, Taylor, 2008 Transfer of samples, Lazaric, 2008 RL transfer via sparse coding, Ammar, 2012 Figura 3.3: Diagrama general de enfoques relacionados con transferencia de conocimiento (TL) para aprendizaje por refuerzo (RL). algoritmos más destacados que hacen transferencia de conocimiento en espacios de estado y acciones discretos. En las siguientes secciones se abordarán los trabajos que proponen transferencia para aprendizaje por refuerzo. 3.4.1. Transferencia para aprendizaje por refuerzo en tareas de espacios discretos En [Madden and Howley, 2004] se hace transferencia de información entre tareas de dificultad progresiva, pero está limitado a MDPs discretos. Después de aprender una tarea origen, el agente extrae reglas para actuar basado en los valores Q aprendidos de todas las tareas previas y en un criterio llamado introspección. El algoritmo de aprendizaje por refuerzo y la introspección usan diferentes representaciones del estado. Los dos mecanismos de aprendizaje aprenden en espacios de estado diferentes, donde las variables de estado para el módulo de introspección son de alto nivel (por ejemplo variables booleanas). El mecanismo de introspección saca ventaja del tipo de tarea discreta porque puede abstraer estados que tienen propiedades geométricas (en el caso de las pruebas de este trabajo el estado considera si el agente ya tocó las paredes del laberinto y en qué orientación se tocaron). Nuevamente es 48 CAPÍTULO 3. TRABAJO RELACIONADO un trabajo limitado en cuanto a la aplicación a problemas de dinámica compleja porque la información que se transfiere son reglas por definición discretas y dependen del mecanismo de introspección para su interpretación. En la mayorı́a de los problemas de dinámica compleja los estados corresponden a variables continuas (como posición, velocidad) y no hay variables booleanas o discretas que se puedan aprovechar de manera natural como en los ambientes discretos. El trabajo de [Sherstov and Stone, 2005] considera transferir un conjunto de acciones desde una tarea origen hasta una tarea objetivo. Este trabajo está enfocado a tareas con estados discretos con conjuntos de acciones grandes. El aprendizaje se lleva a cabo sobre una modificación del MDP original. El agente en la tarea objetivo aprende en términos de los efectos de las acciones (llamados salidas), en lugar de considerar funciones de valor. Se prueba su aplicación sobre el problema de navegación en retı́culas, aunque se puede extender a un conjunto de problemas más grande. Al transferir sólo un subconjunto de acciones hacia la tarea destino, el agente en la tarea destino delimita la exploración de acciones. Este enfoque está limitado a problemas con estados discretos y su fortaleza parece estar en el tipo de tareas donde las acciones útiles están en un subconjunto de toda una gama de acciones, por ejemplo, en un horno industrial, en el cual aún cuando se tengan un gran rango de temperaturas para elegir casi siempre se eligen ciertas temperaturas. La transferencia de Sherstov aprenderá cuáles son las temperaturas más comunes y las pasará a un horno semejante para que sólo escoja de entre ellas al aprender. Este enfoque no serı́a útil para un sistema dinámico, como los que se consideran en este trabajo, ya que aún cuando en la tarea origen fueran claramente más frecuentes ciertas acciones que otras, al pasar sólo esas acciones a un sistema dinámico similar es posible que se requiera un conjunto más amplio de acciones o toda la gama de acciones. El único caso en el que no pasarı́a eso serı́a si los sistemas dinámicos fueran idénticos, en cuyo caso serı́a una transferencia trivial. 3.4. TRANSFERENCIA EN RL 49 Tabla 3.1: Algoritmos relevantes de Transferencia para Aprendizaje por Refuerzo Conocimiento Métricas transferido comparación Madden and Howley [2004] regla r. total Sherstov and Stone [2005] acciones r. total Taylor et al. [2008] tuplas r. total Lazaric [2008] tuplas r. total Ammar et al. [2012] mapeo t. convergencia Algoritmo 3.4.2. Transferencia para RL en tareas de espacios continuos Existe poco trabajo relacionado con transferencia de conocimiento aplicada a aprendizaje por refuerzo en espacios de estados continuos y ninguno para estados de acción continuos. El primero de estos enfoques es propuesto en [Taylor et al., 2008], en el cual se consideran pares de tareas donde las acciones son diferentes, las variables de estado son diferentes y se emplea una técnica denominada inter-task mapping para relacionar los espacios de acción y las variables de estado de las dos tareas. Bajo la regla de mapeo se traducen las instancias obtenidas en la tarea origen y se utilizan como datos en el aprendizaje de la tarea objetivo. Con este método se aprende el problema del auto en la montaña en 2D y se transfiere el conocimiento para aprenderlo en 3D con una recompensa acumulada mayor al aprendizaje desde cero. Este tipo de transferencia trabaja con tuplas desde la tarea origen que son pasadas directamente hacia el aprendizaje en la tarea objetivo. Este algoritmo transfiere un modelo basado en instancias, y depende también de algoritmos de aprendizaje basados en modelo (en sus pruebas usaron Fitted R-max). En el trabajo de Ammar et al. [2012], se sigue la lı́nea de investigación de Taylor et al. [2008] y se centra en identificar funciones que puedan relacionar variables de la tarea origen con variables de la tarea objetivo. En [Taylor et al., 2008], las reglas de mapeo eran definidas bajo el criterio de un experto, pero en el trabajo de Ammar et al. [2012] se busca hacerlo de 50 CAPÍTULO 3. TRABAJO RELACIONADO forma automática. La forma en que se consigue es buscando caracterı́sticas destacadas de alto nivel en las muestras de la tarea origen, usando sparse coding. Ellos proponen una medida de similaridad que trabaja con las caracterı́sticas de alto nivel entre las tareas origen y objetivo, y con esa medida pueden encontrar pares de variables relacionadas entre la tarea origen y la tarea objetivo (lo cual corresponde precisamente a la función de inter-task mapping). Un trabajo que es punto de comparación es el propuesto en [Lazaric, 2008], en el cual se transfieren tuplas desde un conjunto de tareas origen. Se asume que estas tareas origen y la tarea objetivo tienen similares funciones de transición y funciones de recompensa. En su trabajo, la contribución principal es un método para la selección de las muestras desde las tareas origen, donde las tuplas obtenidas sirven a algoritmos de aprendizaje basados en modelo. Los resultados son que se reduce el número de muestras que el agente necesita para aprender la tarea objetivo, lo cual significa que se pueden obtener buenos resultados con un número reducido de tuplas de la tarea objetivo. Las tuplas que se transferirán desde la tarea origen a la objetivo son seleccionadas desde el conjunto de tareas origen de manera automática, con base en dos criterios o métricas propuestos en su trabajo: cumplimiento (cuánto se parecen probabilı́sticamente la tarea origen y la objetivo) y relevancia (la distancia de cada muestra a un kernel que representa la tarea). El criterio de cumplimiento mide la probabilidad de que una tarea del conjunto de tareas origen pueda generar las muestras que se tomaron de la tarea objetivo y ese valor de cumplimiento se le asigna a la tarea origen especı́fica. Este valor se calcula por cada una de las tareas origen. El valor de relevancia sirve para medir la probabilidad de que una muestra de la tarea origen haya sido generada de la misma distribución que la tarea destino. Estas dos medidas y correspondientes umbrales se utilizan para seleccionar tuplas e insertarlas al conjunto de entrenamiento de la tarea destino. El aprendizaje que se lleva a cabo tanto en la tarea origen como en la destino es aprendizaje basado en modelo. Una de las ventajas de este método es que se reduce el número de muestras que el agente necesita para aprender la tarea objetivo, lo cual significa que se pueden obtener buenos resultados con un número reducido de tuplas de la tarea objetivo. El argumento del trabajo es que al estar relacionadas por una distribución las tareas origen y 3.5. ANÁLISIS DEL TRABAJO RELACIONADO 51 la objetivo, algunas de las tareas origen tendrán tuplas similares a la tarea objetivo. 3.5. Análisis del trabajo relacionado En las secciones anteriores se resumieron los algoritmos más importantes del estado del arte para aprender tareas por refuerzo, ası́ como los algoritmos para transferencia de conocimiento en tareas de aprendizaje por refuerzo. Aunque existe un número grande de algoritmos de aprendizaje y transferencia, en la mayorı́a de las propuestas se trabaja sobre tareas donde las variables de estado y acción son discretas. Además, los trabajos presentados se prueban sobre tareas más bien teóricas y no tanto problemas cotidianos. En esta tesis, se abordan problemas con variables de estado y acción continuas, y se prueba sobre tareas donde las variables de estado y acción son continuas, lo cual es más aplicable a casos reales de control. Las tareas con espacios continuos son importantes para problemas de la vida cotidiana, en problemas como robótica o automatización en la industria. PILCO es un algoritmo que destaca por resolver tareas con espacios de estado y acción continuos en un tiempo muy reducido, sin embargo, por sı́ solo no es capaz de transferir el conocimiento adquirido entre tareas similares, como se propone en el presente trabajo de tesis. De los algoritmos de transferencia publicados hasta el momento, muy pocos trabajos han hecho transferencia en tareas de estados continuos. El trabajo de Lazaric [Lazaric et al., 2008] propone un mecanismo de transferencia para tareas con estados continuos, pero no acciones continuas. De ahı́ la importancia de este trabajo, cuyo objetivo es transferir información entre tareas con espacios de estado y acción continuos. Lo que se propone en esta tesis se sitúa en una área en la que no se ha hecho investigación, los algoritmos propuestos se muestran ubicados en la figura 3.4. Es el primer trabajo que propone hacer transferencia de conocimiento sobre tareas con estados y acciones continuas. Para la transferencia en ese tipo de tareas, se plantean dos mecanismos novedosos que buscan reducir la exploración mejorando el modelo de la tarea objetivo. Los esfuerzos del trabajo están entonces concentrados en la reducción de riesgos de visitar estados peligrosos durante el aprendizaje en la tarea objetivo, aprovechando la información transferida. 52 CAPÍTULO 3. TRABAJO RELACIONADO Estados y acciones discretos Madden y Howley, 2004 Sherstov y Stone, 2005 Taylor et al., 2008 Estados continuos, acciones discretas Algoritmos de transferencia TIMBREL, Taylor, 2008 en aprendizaje por refuerzo Transfer of samples, Lazaric, 2008 RL transfer via sparse coding, Ammar, 2012 Estados y acciones continuos Algoritmo QTL, contribución de este trabajo Algoritmo SST, contribución de este trabajo Figura 3.4: Diagrama general de enfoques relacionados con transferencia de conocimiento (TL) para aprendizaje por refuerzo (RL). En el primer enfoque propuesto en esta tesis, se aprovecha el uso de los procesos gaussianos para representar la función de transición de estados y se presenta un par de mecanismos para combinar gradualmente las propiedades cualitativas de las tareas origen y objetivo. Se trata de un enfoque que no se habı́a intentado en trabajo previo, con el cual se incrementa la precisión de la distribución de funciones de transición a priori en la tarea objetivo. Esto mejora el modelo en la tarea objetivo y acelera el aprendizaje. La segunda propuesta de esta tesis consiste en un algoritmo para sintetizar muestras para la tarea objetivo, con lo que se puede refinar el modelo de la tarea y aprender más rápido. A diferencia de la propuesta de Lazaric [Lazaric, 2008], donde se seleccionan tuplas y se transfieren sin cambios a la tarea objetivo, en esta tesis se propone utilizar tuplas sintéticas que se obtienen de transformar tuplas selectas de la tarea origen. En [Lazaric, 2008] los experimentos se realizan con una tarea que tiene estados continuos, pero con acciones 3.5. ANÁLISIS DEL TRABAJO RELACIONADO 53 discretas. La aplicación del algoritmo de transferencia de Lazaric fue probado con un problema con dos variables de estado y una de acción (discreta). En este trabajo, se hace transferencia para aprender el control de vuelo en un helicóptero autónomo, considerado como uno de los problemas más difı́ciles de control ([Ng et al., 2004], [Abbeel et al., 2010]). En resumen, con respecto a los trabajos relacionados la presente tesis propone las siguientes aportaciones: PILCO [Deisenroth and Rasmussen, 2011] es un algoritmo del estado del arte que ha revolucionado los tiempos en los que se aprende una tarea con estados y acciones continuas. Sin embargo, por sı́ solo no es capaz de hacer transferencia entre tareas. En el presente trabajo se adopta PILCO como algoritmo de aprendizaje de la polı́tica para hacer transferencia de información hacia una nueva tarea, aunque el enfoque propuesto se puede extender a otros algoritmos de búsqueda de polı́tica. El algoritmo de Lazaric ha obtenido resultados relevantes en el área de transferencia para aprendizaje por refuerzo. Sin embargo, el enfoque está limitado a tareas con acciones discretas, y sólo consiste en filtrar tuplas y transferirlas. A diferencia del trabajo de Lazaric, en esta tesis los enfoques propuestos son capaces de transferir entre tareas con acciones continuas, y la propuesta de sı́ntesis de tuplas no sólo filtra y aprovecha las mejores tuplas de la tarea origen, sino que también las transforma para adecuarse mejor a la tarea objetivo. En el siguiente capı́tulo se detallan los enfoques propuestos para la tarea de transferencia de conocimiento cualitativo en aprendizaje por refuerzo. Capı́tulo 4 Transferencia cualitativa En este capı́tulo se abordarán detalles de los enfoques propuestos en esta tesis. Primero la transferencia de hiper-parámetros, que transfiere las cualidades de la función de transición de la tarea origen y posteriormente la sı́ntesis de tuplas, que hace una selección de muestras en la tarea origen y las transforma para refinar el modelo de la tarea objetivo. 4.1. QTL (Qualitative Transfer Learning ) En el trabajo propuesto se transfiere información de los hiper-parámetros desde la función de transición de la tarea origen a la tarea objetivo, para describir cualitativamente la forma general de la función de transición en la tarea objetivo. Para representar la función de transición se usa un GP con una función media definida como m(·) = 0 y un kernel cuadrático exponencial k con función de covarianza definida en la Ecuación 4.1.1. 1 k(x, x0 ) = α2 exp(− (x − x0 )> Λ−1 (x − x0 )) + δxx0 σ2 2 (4.1.1) Las entradas para la función kernel k son de la forma x̃ = [x> a> ]> , donde todas las variables de los vectores estado y acción se manejan en un solo vector. Los hiper-parámetros que describen la forma general de la función de transición, que son caracterı́sticas como suavidad, periodicidad, variabilidad y tolerancia al ruido, en la distribución a priori están definidos por α2 , `, y σ2 . Sin embargo, cuando no se dispone de conocimiento previo sobre las propiedades 55 56 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA de las funciones, los hiper-parámetros del kernel son por lo regular ajustados por un proceso de optimización que toma en cuenta los datos disponibles (por lo general se usa maximización de evidencia [Rasmussen and Williams, 2006]). En el enfoque propuesto, los hiper-parámetros son ajustados en cada episodio de interacción agente-ambiente. 4.1.1. Inicialización Tomando como base la información disponible en la tarea origen, un algoritmo de transferencia puede tomar de la tarea origen una o más fuentes de información disponibles. Por ejemplo, puede pasar la polı́tica, un modelo de la tarea, muestras de la tarea o alguna abstracción o representación de la tarea. En esta tesis se transfieren la polı́tica, información cualitativa de la función de transición y muestras del tipo hs, a, s0 , ri. En el enfoque de transferencia de hiper-parámetros, también llamado QTL lo único que se transfiere son la polı́tica e información de la función de transición, contenida en los hiper-parámetros. Transferir solamente la polı́tica no resuelve la tarea objetivo (como se menciona en Taylor and Stone [2009]). La polı́tica aprendida en la tarea origen no necesariamente lleva al estado deseado en la nueva tarea, a menos que ambas tareas sean exactamente iguales, pero la polı́tica transferida puede obtener mejores resultados que una polı́tica aleatoria inicial en la tarea objetivo. En esta tesis la polı́tica se utiliza como inicialización solamente. La transferencia de la función de transición, tal cual, tampoco resuelve la tarea objetivo. Asumir que la función de transición es la misma en ambas tareas es asumir que ambas tareas son idénticas y si se transfiere la función de transición (modelo de la tarea) el agente seguramente aprenderá una polı́tica errónea. Sin embargo, en este trabajo se parte de que ambas funciones de transición comparten caracterı́sticas cualitativas (suavidad, periodicidad, variabilidad y tolerancia al ruido) y que es posible refinarlas en la tarea objetivo, lo cual sı́ conduce a resultados satisfactorios. La función de transición adquirida en la tarea origen se usa para modelar una distribución de funciones de transición para la tarea objetivo, gracias a su representación usando procesos gaussianos. En el enfoque propuesto, la tarea objetivo comienza con una función de transición a priori 4.1. QTL (QUALITATIVE TRANSFER LEARNING) 57 que usa los mismos hiper-parámetros que en la tarea origen, es decir, la tarea objetivo se inicia asumiendo que tiene las mismas propiedades cualitativas que la tarea origen (ruido, suavidad, periodicidad, etc.). En la tarea objetivo, los hiper-parámetros son actualizados gradualmente para permitir al agente irse adaptando al conocimiento nuevo. Este proceso permite que la tarea de aprendizaje en la tarea objetivo se centre más en descubrir la polı́tica óptima que en encontrar el modelo de la tarea. Para la transferencia de hiper-parámetros en nuestro trabajo se proponen dos enfoques de actualización: (i) Un factor de actualización geométrico, que permite usar el conocimiento de un experto para controlar la tasa a la cual la información de la tarea objetivo es incorporada al modelo y (ii) una actualización bayesiana, que toma en cuenta la confianza en la nueva información obtenida de la tarea objetivo. Algoritmo 4.1. QTL (Aprendizaje por Transferencia Qualitativa) Entrada: θs , πs {Hiper-parámetros y polı́tica} 1: π̃ ← πs {Se inicia la polı́tica con la polı́tica de tarea origen} 2: θ0 ← θs {Se inician los hiper-parámetros con los de la tarea origen} 3: Interactuar con el ambiente, aplicar π̃ para obtener tuplas (tipo hs, a, r, s0 i). 4: repetir 5: Inferir la distribución de las funciones de transición fv , usando las tuplas disponibles y los hiper-parámetros θi . 6: repetir 7: Evaluar la polı́tica π̃ sobre f . Obtener V π̃ 8: Refinar π̃ {Usando algoritmo de búsqueda de polı́tica (e.g. PILCO)} 9: hasta convergencia 10: Interactuar con el ambiente, aplicar π̃ para obtener más tuplas. 11: Aprender θp con maximización de evidencia, usando todas las tuplas. 12: θi+1 ← fupdate (θp , θi ) Aplicar la regla de actualización (factor de olvido o actualización bayesiana) 13: hasta tarea aprendida 58 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA El algoritmo propuesto (ver algoritmo 4.1) comienza con una polı́tica inicial para explorar el ambiente, una vez que el algoritmo obtiene datos usando la polı́tica, se aprende con estos datos la función de transición y se recalcula la polı́tica, que esta vez toma en cuenta el nuevo modelo aprendido. Entre más pronto el agente obtenga muestras significativas de la tarea actual, más rápido se aprenderá una polı́tica adecuada. En esta tesis, en lugar de comenzar con una polı́tica aleatoria, se usa en el primer episodio la polı́tica original. Como se verá en la parte experimental, esta estrategia mejora de forma significativa el desempeño. También se inicializan los valores de los hiper-parámetros con los obtenidos de la función de transición de la tarea origen. El algoritmo usa un GP por cada una de las variables de estado del vector de estado. Es decir, al final existirá una distribución de función de transición fv por cada variable de estado v y en conjunto los GPs describirán la función de transición global. Cada vez que el agente interactúa con su ambiente, las muestras y los hiper-parámetros de la tarea objetivo son actualizados y eventualmente reemplazarán con la información de la tarea objetivo. Para buscar la polı́tica óptima, se usa el algoritmo PILCO (lı́neas 7 y 8 del algoritmo 4.1). Sin embargo, cualquier otro método de batch learning puede ser fácilmente adaptado mientras que permita estados y acciones continuos. En caso de PILCO, éste se basa en un proceso de optimización que aprovecha directamente el GP para poder encontrar la polı́tica (para más detalles se puede consultar [Deisenroth and Rasmussen, 2011]). Una vez que se ha aprendido la polı́tica, ésta es usada por el agente al interactuar con su ambiente en el siguiente episodio, cuando se recolectan nuevas tuplas(lı́nea 10 del algoritmo 4.1). A partir de las nuevas tuplas, se aprenden nuevos hiper-parámetros usando maximización de evidencia (como se describió en la sección 2.2) y se combinan con los que han sido previamente transferidos, siguiendo una de las reglas de actualización descritas en la siguiente sección. 4.1. QTL (QUALITATIVE TRANSFER LEARNING) 4.1.2. 59 Actualización de conocimiento Si en la tarea objetivo se siguiera un esquema de actualización como lo hace PILCO, después del primer episodio se perderı́a la información transferida. Esto no es deseable ya que en la primera interacción con el ambiente aún se tienen pocas tuplas y muchas de ellas no sirven para estimar un buen modelo de la tarea. Esto es casi igual que aprender sin transferencia. Las caracterı́sticas cualitativas de la tarea origen son usadas como punto de partida para la tarea objetivo, pero a medida que se van recopilando más tuplas en la tarea objetivo el modelo que se aprende de las nuevas tuplas se hace más preciso y lo que se desea es que el agente use cada vez más el nuevo modelo. Proponemos ajustar los hiper-parámetros usando dos enfoques: factor de olvido y actualización bayesiana. Sea θ = [α2 , `, σ2 ]> un vector de hiper-parámetros. Sean θs los hiper-parámetros transferidos desde la tarea origen, θi los hiper-parámetros usados en el kernel para la tarea objetivo en el episodio i. Sean θpi los hiper-parámetros aprendidos por maximización de evidencia en la tarea objetivo en el episodio i. Para aplicar el factor de olvido, se calculan los valores de los hiper-parámetros de la tarea objetivo según las siguientes ecuaciones: θ0 = θs (4.1.2) θi = γθi−1 + (1 − γ)θpi , i > 0 (4.1.3) donde γ ∈ [0, 1] es la tasa a la cual se incorporan los hiper-parámetros del episodio previo en la función de kernel. El valor de γ especifica cómo se va a ir diluyendo la información de la tarea original con el tiempo y en la sección 5.2 se muestran los resultados para diferentes valores de γ. En este trabajo también se propone otra forma de actualizar los hiper-parámetros usando un enfoque bayesiano. La inferencia bayesiana ha sido aplicada en el área de ciencias computacionales para resolver diversos problemas (ver [Murphy, 2012]), ya que permite combinar información de diversas fuentes tomando en cuenta la incertidumbre. 60 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA La inferencia bayesiana es usada para refinar la probabilidad a priori con nuevas observa- ciones. En el problema que se plantea en esta tesis, la inferencia bayesiana permite combinar información de ambas tareas (origen y objetivo) en cada episodio, considerando los hiperparámetros como variables aleatorias continuas con una distribución gaussiana. Para variables aleatorias continuas, la inferencia bayesiana puede actualizar una distribución a priori con nuevo conocimiento obtenido de otra fuente de información, ofreciendo una distribución a posteriori más ajustada a los datos. En este trabajo, cada hiper-parámetro se trata como una variable aleatoria normalmente distribuida, lo cual permite modelar la incertidumbre en cada tarea. El valor aprendido en la tarea origen se maneja como conocimiento a priori, y se condiciona sobre el valor aprendido en la tarea objetivo. El valor inferido en el episodio k − 1 es usado como a priori para el episodio k. En los primeros episodios del proceso de aprendizaje en la tarea objetivo, el agente tendrá muy pocas muestras de la función de transición. Debido a esta baja cantidad de muestras, el modelo aprendido de esas muestras no será preciso y el proceso de combinación dará más peso a los hiper-parámetros transferidos que a los que se aprenden en la tarea objetivo. La certidumbre es ajustada de acuerdo a la cantidad de muestras recolectadas por el agente, y puede iniciarse de forma muy simple, tal como la que se indica en las ecuaciones 4.1.8 y 4.1.9. En cada episodio k, se combinan las sucesivas aproximaciones del valor de los hiperparámetros aprendidos por maximización de evidencia θpk . Esto se modela asumiendo que el valor aprendido en cada uno de los hiper-parámetros tiene ruido gaussiano: p(θpk ) ∼ N (µp , σp2 ) (4.1.4) donde µp es el valor aprendido por maximización de evidencia y σp2 es inicializado según la ecuación 4.1.7. La distribución a posteriori está especificada por: p(θ|θpk ) ∼ N (µk , σk2 ) donde (4.1.5) 4.2. SST (SYNTHETIC SAMPLES TRANSFER) σk2 µk 2 σp2 σk−1 = 2 σp2 + σk−1 µk−1 µp 2 = σk + 2 2 σk−1 σp 61 (4.1.6) (4.1.7) 2 es la varianza de la distribución a priori y σk2 es la varianza a posteriori. donde σk−1 La incertidumbre inicial en los hiper-parámetros de la tarea origen es tomada en cuenta con el enfoque bayesiano, fijando una distribución inicial y ajustándola a medida que se incorporan nuevas muestras. En un comienzo, los parámetros de las distribuciones de los hiper-parámetros se inician de la siguiente forma: 2 σk=0 = 1 nsource 1 σp2 = ntarget (4.1.8) (4.1.9) donde nsource y ntarget son el número de muestras recolectadas en la tarea origen y la tarea objetivo respectivamente. La inferencia bayesiana actualiza entonces los valores de hiper-parámetros que se usan en la tarea objetivo, tomando en cuenta la confianza que se tiene en la información de la tarea origen y en la tarea objetivo. La forma en la que se van actualizando las distribuciones de los nuevos hiper-parámetros se ilustra en la gráfica 4.1. 4.2. SST (Synthetic Samples Transfer ) En esta sección se describe la propuesta de enfoque basado en la sı́ntesis de tuplas para la transferencia de conocimiento desde una tarea origen hacia la tarea objetivo, nombrado SST. En la solución propuesta, se construye un modelo de la tarea objetivo utilizando información selecta de la tarea origen. Se sintetiza información en la tarea objetivo, lo cual permite al agente tener una mucho mejor idea de cómo se comporta la tarea. El modelo en la tarea objetivo es refinado conforme el agente explora en esta nueva tarea. 62 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA 0.6 valor de hiper−parámetro a priori valor de hiper−parámetro aprendida con muestras de la tarea objetivo distribución del hiper−parámetro usada en el modelo de tarea objetivo Probabilidad 0.5 0.4 0.3 0.2 0.1 0 −5 −4 −3 −2 −1 0 1 2 3 4 5 3 4 5 Valor del hiper−parámetro (a) Primer episodio de la tarea objetivo. 0.9 0.8 valor de hiper−parámetro a priori valor de hiper−parámetro aprendido con muestras de la tarea objetivo distribución del hiper−parámetro usada en el modelo de la tarea objetivo 0.7 Probabilidad 0.6 0.5 0.4 0.3 0.2 0.1 0 −5 −4 −3 −2 −1 0 1 2 Valor del hiper−parámetro (b) Entre más tuplas se obtienen, la incertidumbre se reduce en la tarea objetivo. Figura 4.1: Esta ilustración muestra una distribución de hiper-parámetros en la tarea origen (curva roja punteada), tarea objetivo (curva azul con cuadros) y la curva inferida (verde continua). En los primeros episodios (a), los hiper-parámetros en la tarea objetivo tienen alta incertidumbre, por lo que los valores inferidos tienden hacia los valores de la tarea origen. Cuando se han obtenido más tuplas en la tarea objetivo (b), los hiper-parámetros aprendidos tienen menor incertidumbre y los valores inferidos tienden hacia los valores aprendidos en la tarea objetivo. 4.2. SST (SYNTHETIC SAMPLES TRANSFER) 4.2.1. 63 Descripción general El enfoque de sı́ntesis de tuplas considera tareas donde las variables de los espacios de acción y estado son iguales en la tarea origen y objetivo, pero la dinámica puede variar, ejemplos de este tipo de tareas pueden ser que un agente aprenda a conducir una bicicleta y después transferir a la tarea de conducción de una motocicleta, o bien controlar un automóvil sedan para después pasar a la tarea de conducción de un automóvil de Fórmula 1. En tales ejemplos de transferencia, la tarea origen y la tarea objetivo tienen las mismas variables de estado y las mismas variables de acción, sin embargo, escoger determinada acción no lleva a los mismos cambios de estado. Para poner un ejemplo más claro, si en un auto sedan se presiona el acelerador a fondo no se produce el mismo cambio de estado que en un auto de carreras, sin embargo, en ambos casos se tienen las mismas variables de estado y acción y la la respuesta a la acción es similar: aumentar la velocidad. El agente construye un modelo de la tarea estimando la función de transición de estado, la cual especifica cómo cambia el estado del agente una vez que se elige una acción. En RL, el agente desconoce la función de transición al comenzar la tarea, por lo que el modelo se construye conforme se hace exploración de las acciones. En un escenario ideal, el agente explorarı́a estados cercanos a la solución de la tarea y acumuları́a suficiente información para construir un buen modelo en los primeros episodios. Sin embargo, cuando la tarea comienza, el agente tiende a explorar con acciones aleatorias y visitar estados que no están cercanos a la solución de la tarea. Esta información no es buena para construir un modelo acertado de la tarea. Es, entonces, en estas primeras interacciones con el ambiente que el enfoque propuesto aprovecha la información de la tarea origen, para sintetizar tuplas que ayuden al agente a construir un modelo certero de la tarea objetivo. La polı́tica puede ser representada con cualquier aproximador, pero en este trabajo de tesis se decidió usar el enfoque propuesto en [Deisenroth and Rasmussen, 2011], porque en él la polı́tica se representa también por un proceso gaussiano y se puede aprender usando estimaciones del gradiente de la función valor de acuerdo a las simulaciones y después optimizando la polı́tica. 64 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA La polı́tica se usa para interactuar sobre el ambiente real y ası́ obtener más tuplas (del tipo estado, acción, estado sucesor). Este ciclo de interacción puede ser repetido mientras que no se alcance el comportamiento o desempeño deseado. Una vez que se ha aprendido el modelo, se usa el algoritmo PILCO para buscar la polı́tica sobre el modelo aprendido. En el enfoque propuesto, no se restringe a trabajar con PILCO, sino que se pueden usar otros algoritmos de búsqueda de polı́tica que usen aproximadores de función en la función de transición, aún cuando no usen GP directamente (el GP puede usarse para evaluar la transición y simplemente ignorar la incertidumbre que provee el GP). Sin embargo, PILCO es un algoritmo que trabaja de manera natural con estados y acciones continuas, y aprovecha que la función de transición esté representada como un proceso gaussiano, ya que usa la incertidumbre para buscar la polı́tica. 4.2.2. Estimación de un modelo desde las muestras Cuando el agente está en el primer episodio, no hay información suficiente para saber cómo se comporta la tarea, por lo que es difı́cil obtener una polı́tica adecuada. En los enfoques de transferencia de tuplas, se seleccionan algunas muestras de la tarea origen y se agregan al conjunto de muestras de la tarea objetivo. En el enfoque aquı́ propuesto, se crean muestras artificiales para la tarea objetivo, partiendo de las muestras conocidas en las tareas origen y objetivo, junto con un modelo de la diferencia entre las tareas, . Esto hace que el agente requiera menos exploración en la tarea nueva y de esta forma aprende más rápido y cometiendo menos errores. En el método SST propuesto (algoritmo 4.2), primero se usa la polı́tica aprendida en la tarea origen para inicializar la tarea objetivo. Tal como se ha descrito en [Taylor and Stone, 2009], aún cuando la polı́tica de la tarea origen no resuelve la tarea objetivo, la polı́tica de la tarea origen es un mejor punto de partida que una polı́tica aleatoria. Las pocas tuplas recolectadas en la tarea objetivo y las de la tarea origen se usan para sintetizar más muestras en la tarea objetivo y construir un modelo más preciso de la tarea objetivo. El modelo aprendido es entonces ajustado en cada episodio y las nuevas muestras de la tarea objetivo 4.2. SST (SYNTHETIC SAMPLES TRANSFER) 65 son integradas también. Se usan dos procesos gaussianos para estimar los modelos correspondientes a las tareas origen y objetivo (ver algoritmo 4.3), usando solamente muestras disponibles. Con estos modelos de las tareas, se aproxima un tercer modelo, que es la diferencia de los dos. El modelo de la diferencia entre las tareas se usa para sintetizar las muestras para la tarea objetivo, tomando las muestras seleccionadas de la tarea origen como punto de referencia. Primero se seleccionan muestras de la tarea origen y después, las muestras seleccionadas se transforman para generar muestras sintéticas para la tarea objetivo. Sean x̃source = [s> a> ]> , x̃source ∈ RD+F muestras de la tarea origen, donde D es la dimensión del vector de estado x y F es la dimensión del vector acción a. De esta forma se representan las entradas de la función de transición. Sean ỹsource ∈ RD salidas de la función de transición latente fsource . De forma similar, las muestras de la tarea objetivo son denotadas por x̃target ∈ RD+F y su correspondiente salida ỹtarget ∈ RD , para especificar la función de transición ftarget . El algoritmo utiliza la polı́tica de la tarea origen para obtener tuplas en el primer episodio. En la primera interacción con el ambiente se obtienen tuplas del tipo hs, a, r, s0 i, de donde se toman x̃source = [s> a> ]> , ỹsource = s0 , como se muestra en las lı́neas 1 y 2 del algoritmo 4.2. Para la tarea objetivo, se sintetizan muestras partiendo de las muestras disponibles en la tarea origen y las muestras que ya se tienen en la tarea objetivo. Con esta nueva información, se aprende el modelo de la tarea objetivo, el cual se representa con los GP fv (un GP por cada variable de estado v), en las lı́neas 4 y 5 del algoritmo 4.2. Con el modelo de la tarea f , es posible aplicar un algoritmo de búsqueda de polı́tica, el cual iterativamente evalúa la polı́tica sobre el modelo de la tarea hasta encontrar una polı́tica adecuada (lı́neas 6 a 9 de algoritmo 4.2). Con la polı́tica obtenida, se interactúa nuevamente con el ambiente para obtener más tuplas, hasta que la tarea se aprenda. La sı́ntesis de muestras (algoritmo 4.3) se usa para poder generar tuplas que sean similares a la tarea objetivo. La idea general del algoritmo es usar los procesos gaussianos para aproximar un modelo de las diferencias entre las tareas origen y objetivo, y con tal diferencia 66 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA Algoritmo 4.2. SST (Transferencia de muestras sintéticas) Entrada: X̃source , Ỹsource , πsource 1: π̃ ← πsource 2: Interactuar con el ambiente, aplicando π̃ para obtener muestras de la forma x̃target , ỹtarget . 3: repetir 4: X̃τ , Ỹτ ← Sintetiza (X̃source , Ỹsource , X̃target , Ỹtarget ). 5: Usar X̃τ ∪ X̃target , Ỹτ ∪ Ỹtarget para aprender el modelo de la tarea f (un GP fv por cada variable v del vector de estado) 6: repetir 7: Evaluar la polı́tica π̃ sobre f para obtener V π̃ 8: Mejorar π̃ {Se usa algoritmo de búsqueda de polı́tica, e.g. PILCO} 9: 10: 11: hasta convergencia Interactuar con el ambiente, aplicando π̃ para obtener más muestras. hasta tarea aprendida 4.2. SST (SYNTHETIC SAMPLES TRANSFER) 67 poder transformar tuplas selectas de la tarea origen. Las tuplas de la tarea origen se filtran, para desechar las tuplas que no son útiles en la tarea objetivo (lı́nea 3 del algoritmo 4.3). Para tal filtrado en esta tesis se propone un filtro simple y también es posible usar filtros como el de Lazaric (detallados en la sección 4.2.3). Se parte de aprender un GP para la función de transición de la tarea origen y un GP para la función de transición de la tarea objetivo, usando las muestras disponibles en cada caso. Se aprenden dos modelos de la función de transición, fsource y ftarget y una tercera función fτ que hace las veces de aproximador para la diferencia entre los dos primeros modelos (lı́neas 1 y 2 del algoritmo 4.3). Las muestras recolectadas durante la interacción con el ambiente servirán como muestras durante el aprendizaje del proceso gaussiano de las funciones fsource y ftarget , mientras que una tercera función latente fτ se aprenderá de las diferencias entre las funciones aprendidas evaluadas en los puntos seleccionados por el filtro (lı́neas 4 a 8 del algoritmo 4.3). Finalmente el algoritmo de sı́ntesis de muestras regresará las muestras sintéticas, donde el vector de estado corresponderá a las tuplas filtradas, pero el estado al cual se transita (s0 ) corresponderá al resultado de la transformación, aplicando fτ (lı́neas 9 a 12 del algoritmo 4.3). 4.2.3. Proceso de filtrado El proceso de filtrado sirve para desechar las tuplas de la tarea origen que no son útiles para estimar el modelo de la tarea objetivo y mantiene aquellas tuplas que aportan información útil a la tarea objetivo. Para los primeros episodios del proceso de aprendizaje, cuando el agente aún no dispone de suficientes muestras en la tarea objetivo para construir un modelo, se usan las tuplas filtradas y transferidas. En este trabajo se consideran dos enfoques para filtrar: filtro simple y filtro de Lazaric. En el primero de ellos las muestras de la tarea origen que están muy cercanas a las muestras de la tarea objetivo son ignoradas y sólo se transfieren las muestras de la tarea origen que no están cercanas a las de la tarea objetivo. Para medir la distancia entre tuplas, en el filtro simple se consideran solamente las variables de estado origen y el vector de acciones, sin 68 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA Algoritmo 4.3. Sı́ntesis de muestras Entrada: X̃source , Ỹsource , X̃target , Ỹtarget , k ≤ m 1: Aprender el GP fsource , usando X̃source , Ỹsource 2: Aprender el GP ftarget , usando X̃target , Ỹtarget 3: X̃τ ← Filtrar (X̃source , Ỹsource , X̃target , Ỹtarget ) 4: para todo x̃ ∈ X̃τ hacer 5: yd = fsource (x̃) − ftarget (x̃) 6: Yd = Yd ∪ {yd } 7: fin para 8: Aprender el GP fτ , usando X̃τ ∪ X̃target , Ỹd ∪ Ỹtarget 9: para todo x̃ ∈ X̃τ hacer 10: yτ = fsource (x̃) + fτ (x̃) 11: Yτ = Yτ ∪ {yτ } 12: fin para 13: devolver X̃τ , Yτ 4.2. SST (SYNTHETIC SAMPLES TRANSFER) 69 tomar en cuenta el estado al que se transita o la recompensa obtenida. La distancia usada es la euclidiana. La idea es transferir información de la tarea origen hacia donde no se tiene información en la tarea objetivo. Si en la tarea origen existen m muestras y en la tarea objetivo existen n muestras (n << m), entonces se transfieren desde la tarea origen las m − n muestras más lejanas a las muestras de la tarea objetivo, con la finalidad de que reducir la incertidumbre en las zonas donde no se tiene información. Los detalles de este filtro se listan en el algoritmo 4.4. Algoritmo 4.4. Filtro simple Entrada: X̃source , X̃target , m , n 1: Sea d una matriz de m × n elementos 2: dij ← distancia(x̃source,i , x̃target,j ), ∀i = 1, . . . , m , ∀j = 1, . . . , n 3: Ordenar los renglones de d en orden ascendente. 4: X̃τ ← X̃source 5: repetir 6: i ← indice i en siguiente elemento dij 7: X̃τ ← X̃τ \ {x̃source,i } 8: hasta |X̃τ | = m − n 9: devolver X̃τ El segundo enfoque está basado en el algoritmo de transferencia de Lazaric, un filtro que fue originalmente propuesto para transferir entre tareas con estados continuos y acciones discretas. Se ha hecho una adaptación para aplicarlo a tareas con acciones continuas, tal como se muestra en el algoritmo 4.5. En el enfoque de Lazaric, las tareas consideradas originalmente tienen estados continuos, pero acciones discretas, en el algoritmo original las muestras son agrupadas de acuerdo a la acción tomada en cada muestra. En el tipo de tareas que se consideran en este trabajo las muestras no se pueden agrupar siguiendo la idea original, porque las acciones son continuas. En lugar de agrupar, las variables de acción son consideradas de la misma forma que las 70 CAPÍTULO 4. TRANSFERENCIA CUALITATIVA variables de estado dentro de la tupla, y se toman en cuenta para las métricas compliance y relevance, descritas en [Lazaric, 2008]. Algoritmo 4.5. Filtro de Lazaric 1: ∆k ← compliance({X̃source , Ỹsource }, {X̃target , Ỹtarget }) 2: para todo {x˜j , y˜j } ∈ {X̃source , Ỹsource } hacer ρj = relevance({x˜j , y˜j }, {X̃target , Ỹtarget }, ∆k ) 3: 4: fin para 5: X̃τ ← k∆k Tuplas tomadas de {X̃source , Ỹsource } en el porcentaje indicado por ρj La métrica task compliance mide la probabilidad de que la tarea origen S sea el modelo de donde se generan las muestras T̂hs,ai , esto se plantea en la Ecuación 4.2.1 (para un mayor detalle sobre esta métrica se puede consultar Lazaric et al. [2008]). Λcompl = 1 |Û | X P (S|T̂hs,ai ) (4.2.1) hs,ai∈Û donde Û contiene todos los pares estado-acción de las muestras de la tarea objetivo T̂ . La métrica compliance usa tanto las tuplas disponibles en la tarea origen como las de la tarea objetivo y regresa la probabilidad de que la tarea origen sea generadora de las tuplas de la tarea objetivo. Posteriormente, por cada una de las tuplas de la tarea origen, se calcula la métrica relevance, la cual usa la medida compliance previamente calculada. Finalmente, se toman de la tarea origen, aquellas tuplas cuya métrica relevance sea alta, y ρj indica el porcentaje de tuplas que se tomarán. 4.3. Resumen En este trabajo se ataca la problemática de aprendizaje por refuerzo en tareas con estados y acciones continuos. Las constribuciones principales en este trabajo son dos esquemas de transferencia de conocimiento para aprendizaje por refuerzo. El primero de ellos aprovecha la información cualitativa contenida en los hiper-parámetros de la función de transición de 4.3. RESUMEN 71 la tarea origen para ajustar la distribución a priori de las funciones de transición en la tarea objetivo. En segundo enfoque consiste en aprender una función de diferencia con la cual se hace una transformación sobre tuplas seleccionadas de la tarea origen, para ajustar la distribución a posteriori de las funciones de transición en la tarea objetivo. En el siguiente capı́tulo se presentan y discuten los experimentos realizados con los algoritmos propuestos sobre tareas relevantes para el área de aprendizaje por refuerzo. Capı́tulo 5 Experimentos En este capı́tulo se presentan los experimentos realizados para probar los dos algoritmos propuestos en esta tesis (QTL para transferencia de hiper-parametros y SST para sı́ntesis de tuplas), los cuales son aplicados sobre tareas relevantes para aprendizaje por refuerzo (péndulo invertido, auto en la montaña y cuadricóptero a helicóptero). Para la transferencia de conocimiento, lo que se busca principalmente es que el aprendizaje sea más rápido de lo que serı́a sin transferir conocimiento, mientras que la polı́tica final sea muy parecida que la aprendida sin transferencia. Ası́, con el objetivo de evaluar el funcionamiento de los algoritmos propuestos y compararlos con enfoques similares, se analizaron tres métricas claves: Desempeño final. Éste es un indicador de qué tan buena es la polı́tica final aprendida, se calcula como la recompensa acumulada promedio de los últimos 3 episodios. Recompensa total o área bajo la curva. Se mide la suma de recompensa acumulada por todos los episodios, con la cual se obtiene una idea de qué tan bien se desempeñó el agente durante todo el proceso de aprendizaje. Tiempo de convergencia. La tercera métrica es el tiempo de convergencia, con el cual se mide el tiempo en el que el agente alcanza la polı́tica final y se calcula como el número de episodios para alcanzar el 95 % del valor de desempeño final. 73 74 CAPÍTULO 5. EXPERIMENTOS En la sección 5.2 se describen las pruebas y los resultados correspondientes al algoritmo propuesto para transferencia de hiper-parametros (algoritmo QTL), mientras que en la sección 5.3 se describen los resultados de las pruebas con el algoritmo SST. 5.1. Descripción de las tareas Los resultados experimentales se muestran en tres diferentes tareas que son comúnmente usadas como pruebas de comparación entre algoritmos de aprendizaje por refuerzo y control. En todas las pruebas se repitió el procedimiento cinco veces, seleccionando aleatoriamente el estado inicial. 5.1.1. Péndulo invertido En esta tarea, un péndulo invertido debe ser balanceado y mantenido en posición vertical, como se muestra en la figura 5.1. El péndulo se encuentra fijo en un punto a un carro que se mueve a lo largo de un eje mientras una fuerza es aplicada. Este problema involucra la aplicación de acciones que temporalmente alejan el péndulo del estado objetivo y el agente tiene que aplicar dos diferentes criterios de control, uno para poner el péndulo en vertical y otro para balancearlo, por lo que no es una tarea trivial. En la formulación más común del problema, el objetivo es simplemente llevar el péndulo a la posición vertical, sin importar en qué posición esté el carro, y los estados y acciones son continuos. En nuestros experimentos, se restringe el problema a que el péndulo se mantenga en una posición vertical, pero además que el carro esté en una posición especı́fica. Además de ello, se hace con acciones continuas y estados continuos, lo cual es un escenario mucho más complejo que el original. En este escenario continuo, un estado x está formado por la posición del carro x, su velocidad ẋ, el ángulo θ del péndulo, y su velocidad angular θ̇. La función de recompensa se expresa como: 1 r(x) = exp(− bd2 ) 2 (5.1.1) 5.1. DESCRIPCIÓN DE LAS TAREAS 75 (a) Balanceo de péndulo (b) Estado objetivo Figura 5.1: La tarea de péndulo invertido consiste en balancear un péndulo que está acoplado en un punto a un carro que se desplaza a lo largo de un eje horizontal 76 CAPÍTULO 5. EXPERIMENTOS donde b es una constante escalar de la función de recompensa (para la serie de problemas probados, se fija en 0.25) y d es la distancia euclidiana entre el estado actual y el deseado, expresada como d (x, xtarget )2 = x2 + 2xl sin θ + 2l2 + 2l2 cos θ. La recompensa se mantiene cercana a cero si la distancia al péndulo al estado deseado es más grande que l = 0.6m. Se usan 8 hiper-parámetros para cada uno de los kernels Ki . Los hiper-parámetros corresponden a las escalas de longitud `21 , . . . , `2D para cada una de las D variables de estado, donde los ángulos son representados por los valores de las funciones seno y coseno del ángulo, con el objetivo de poder representar giros completos del péndulo. Hay un hiper-parámetro correspondiente a la escala de longitud del vector de acción `2F . Los últimos dos hiper-parámetros son la varianza de la señal α2 y el ruido σ2 . Por lo tanto se usan en total 32 variables libres (considerando un kernel para cada una de las cuatro variables de estado para este dominio). 5.1.2. Auto en la montaña El auto en la montaña es una tarea bien conocida en el área de aprendizaje por refuerzo. Consiste en un auto que comienza situado en el valle entre dos colinas y el agente debe aprender una estrategia para llevar el auto hasta la cima de la colina en el lado derecho. El auto no puede subir aplicando su máxima aceleración, ası́ que la estrategia general a aprender es ganar inercia subiendo y bajando de la colina que está a la izquierda, lo cual implica alejarse del objetivo antes de alcanzarlo. En la Figura 5.2 se muestra una ilustración de esta tarea. Este problema fue planteado originalmente por Sutton and Barto [1998] usando variables discretas para las acciones (izquierda, neutral, derecha), y es usado hasta la fecha como un problema de referencia y comparación en los trabajos actuales de aprendizaje por refuerzo [Rasmussen and Kuss, 2004, Ammar et al., 2012, Martı́n H et al., 2011, Hasselt, 2011]. En nuestras pruebas, el problema se formula usando espacios de estado y acción continuos. El estado del agente es un vector x = (x, ẋ), donde x es la posición en el eje horizontal y ẋ es la velocidad del auto en el plano horizontal. La acción a es una variable que corresponde a la fuerza aplicada al carro. El estado inicial es x0 = (−0.5, 0). El estado objetivo se plantea 5.1. DESCRIPCIÓN DE LAS TAREAS 77 Figura 5.2: La tarea del auto en la montaña consiste en un auto situado entre dos montañas, que tiene que llegar a la cima de la derecha. El auto no tiene suficiente potencia como para subir directamente y tiene que aprender a oscilar entre las montañas para ganar suficiente inercia y ası́ llegar a su objetivo. regularmente como x > 0.5, sin embargo, en estos experimentos decidimos considerar un estado objetivo más difı́cil, que consiste en detener el carro tan pronto alcanza la colina del lado derecho, ası́ que el estado objetivo es xtarget = (0.5, 0). La función de recompensa se expresa como se indica en la Eq. 5.1.1 donde b se fija con un valor de 0.25 y d = x. El agente recibe una recompensa nula en cada paso que no se alcanza el objetivo. Para este experimento, se considera la tarea origen tal como se planteó originalmente en [Sutton and Barto, 1998] con las siguientes ecuaciones de posición y velocidad: xt+1 = xt + ẋt+1 ∆t (5.1.2) ẋt+1 = ẋt + 0.001at − 0.0025 cos(3xt ) (5.1.3) donde at es la acción, en el rango [−1, 1], la cual es multiplicada por la constante 0.001 propuesta originalmente en [Sutton and Barto, 1998] para aumentar o disminuir la velocidad. El elemento 0.0025 cos(3xt ) se utiliza para disminuir la velocidad en función de la posición del carro, para simular la gravedad debida a la pendiente. Por simplicidad, en los cálculos se considera ∆t = 1. Para las tareas objetivo, la fuerza de la que el auto dispone se modifica en un 50 %, 150 % and 300 % con respecto a la tarea original. Se usan 5 hiper-parámetros para cada uno de los 2 kernels Ki . Los hiper-parámetros corresponden a las escalas de longitud `21 , . . . , `2D para cada una de las D variables de estado. 78 CAPÍTULO 5. EXPERIMENTOS Figura 5.3: La transferencia cuadricóptero - helicóptero consiste en aprender a controlar un cuadricóptero y transferirlo a un helicóptero, con diferente dinámica. Hay un hiper-parámetro correspondiente a la escala de longitud del vector de acción `2F . Los últimos dos hiper-parámetros son la varianza de la señal α2 y el ruido σ2 . Por lo tanto se usan en total 10 variables libres (considerando un kernel para cada una de las dos variables de estado para este dominio). 5.1.3. Cuadricóptero a helicóptero La tarea de controlar un vehı́culo de ala giratoria1 es el experimento más complejo e interesante que se aborda en este trabajo. El objetivo es despegar de una posición en tierra hacia una posición deseada en el espacio, especificada por coordenadas tridimensionales (xtarget , ytarget , ztarget ). El agente debe aprender a despegar, enfrentar el efecto suelo 2 , alcanzar una posición especı́fica y mantenerse estable en esa posición. 1 Los helicópteros y multicópteros son aeronaves que están en la categorı́a de ala giratoria. Pueden despegar verticalmente y hacer vuelo estacionario. 2 El efecto suelo es un efecto aerodinámico debido al aire que golpea el suelo cuando la aeronave está cercana a la superficie, lo cual hace difı́cil el despegue y control de la aeronave. 5.1. DESCRIPCIÓN DE LAS TAREAS 79 Para probar la transferencia, la tarea se aprende en un cuadricóptero y después se transfiere a un helicóptero, como se muestra en la figura 5.3. El objetivo de la prueba es transferir conocimiento entre tareas donde se usan dos tipo de vehı́culo diferentes, ya que aunque ambos son parecidos, tienen diferente dinámica. Cabe mencionar que en ambos casos las variables de estado y acción son las mismas y la difı́cultad es muy similar (el tiempo de aprendizaje promedio tabula rasa es de 24 episodios en ambos casos). En cuanto a la transferenica, ésta es la tarea más desafiante para el enfoque propuesto porque la tarea de estabilización de vuelo es una tarea de precisión. El control de las aeronaves es una tarea de precisión, y desde el punto de vista de RL, la dificultad viene también por el número de variables de estado y acción, ası́ como el número de episodios requeridos para aprender. Se debe hacer notar que aunque existen trabajos previos sobre RL para aeronaves, esos trabajos se centran en aprender maniobras a partir de varios ejemplos ejecutados por un experto [Abbeel et al., 2010]. Por el contrario, el trabajo que aquı́ se presenta, no requiere del vuelo previo realizado por un experto. Aún cuando ambas aeronaves tienen las mismas variables de estado y acción, no se comportan de la misma manera debido a su diferente aerodinámica. El cuadricóptero tiene cuatro propelas que generan la potencia para elevarlo, el cambio en la velocidad de las propelas induce un cambio en la altitud del cuadricóptero y también un cambio en su posición. En el cuadricóptero, la diferencia de torque generada por los motores es usada para cambiar el ángulo yaw. Por otro lado, el helicóptero tiene un rotor principal que lo hace elevarse y consigue fuerza transicional e inclinación cambiando el ángulo de las palas del rotor principal a medida que rotan alrededor del eje principal. El helicóptero también tiene un rotor de cola que compensa el torque generado por el rotor principal. Ası́ que para controlar el ángulo yaw el helicóptero cambia el ángulo de las palas en el rotor de cola. Tanto el cuadricóptero como helicóptero tienen un vector de estado con 12 variables, que comprenden su posición (x, y, z), orientación (roll φ, pitch θ, yaw ω), velocidad (ẋ, ẏ, ż) y velocidad angular (φ̇, θ̇, ω̇). En el experimento propuesto, se define la posición objetivo como [x, y, z] = [−1, −1, 1.5], comenzando en [x, y, z] = [0, 0, 0]. La función de recompensa sigue la 80 CAPÍTULO 5. EXPERIMENTOS Eq. 5.1.1, con = 0.25b y d evaluada como d (x, xtarget )2 = x2 + y 2 + z 2 . Se usan 17 hiper-parámetros para cada uno de los kernels Ki . Los hiper-parámetros corresponden a las escalas de longitud `21 , . . . , `2D para cada una de las D variables de estado. Hay un hiper-parámetro correspondiente a la escala de longitud del vector de acción `21 , . . . , `2F . Los últimos dos hiper-parámetros son la varianza de la señal α2 y el ruido σ2 . Para propósitos de simulación se usó el software V-REP [Robotics, 2013], que es un simulador de robótica, donde se corren la dinámica y el control del helicóptero y cuadricóptero. 5.2. Transferencia de hiper-parámetros Uno de los enfoques que se presenta en esta tesis, se centra en la transferencia de hiperparámetros y está basado en la transferencia y posterior acondicionamiento de los parámetros que representan una distribución de funciones. El objetivo es que partiendo de una distribución de las funciones de transición en la tarea origen, ésta se pueda usar para aproximar una distribución de funciones de transición que se ajustan a la tarea objetivo. En otras palabras, en esta primera parte de la solución presentada en esta tesis, se ataca el problema extrayendo caracterı́sticas de las funciones de transición de la tarea origen e incorporándolas gradualmente a la tarea objetivo, con la finalidad de que ésta se aprenda más rápido. Los experimentos aquı́ presentados, contrastan el desempeño de la transferencia cualitativa (QTL) comparándola con PILCO (tabula rasa) y con las transferencias simples de hiper-parámetros y polı́tica. Se llevaron a cabo experimentos con diferentes valores para γ. Con γ = 0, lo cual es equivalente a aprender con PILCO, se muestra cuánto más rápido se puede aprender transfiriendo conocimiento y sirve también para notar la presencia de transferencia negativa, en caso de existir. γ = 1 es un caso en el cual los hiper-parámetros se transfieren y se fijan durante toda la tarea objetivo, lo cual es equivalente a asumir que las tareas origen y objetivo tienen exactamente la misma distribución a priori. También se probó con un valor intermedio de γ = 0.5 y un valor de γ = 0.9 que asigna mucho peso a los valores de los hiper-parámetros de la tarea origen. Con esos valores, es posible observar el comportamiento de la transferen- 5.2. TRANSFERENCIA DE HIPER-PARÁMETROS 81 cia a distintas tasas. Las transferencias simples de hiper-parámetros y polı́tica consisten en transferir respectivamente una de ellas a la tarea objetivo. Para la actualización bayesiana, después del primer episodio, los hiper-parámetros son fusionados con los hiper-parámetros aprendidos por maximización de evidencia de las muestras, como lo indican las ecuaciones de 4.1.4 a 4.1.7. Los hiper-parámetros del kernel en la tarea origen fueron inicializados como se propone en [Deisenroth and Rasmussen, 2011]. El conjunto inicial de entrenamiento para la función de transición fue generado aplicando acciones tomadas uniformenente de [−umax , umax ]. 5.2.1. Péndulo invertido La tarea origen consiste en balancear un péndulo de masa 0.5 kg. mientras que las tareas objetivo corresponden a masas de 0.8 kg., 1.0 kg., 1.5 kg. y 2.0 kg. respectivamente. En la figura 5.5 y tabla 5.1 se muestra una comparación de las curvas de aprendizaje para las tareas objetivo, donde se grafican PILCO y QTL con diferentes valores de γ y se comparan con la actualización bayesiana. También se grafican las curvas de aprendizaje para la transferencia únicamente de la polı́tica y para la transferencia de hiper-parámetros, fijando su valor (sin regla de actualización). El eje horizontal muestra el número de episodios o de interacciones con el ambiente, mientras que el eje vertical muestra la recompensa total, que es calculada como la recompensa acumulada r(x) obtenida en cada paso del episodio. QTL con el enfoque bayesiano se desempeña mejor que los otros métodos en la mayorı́a de las tareas. Este experimento muestra que la transferencia de conocimiento que se propone en este trabajo puede reducir significativamente el tiempo empleado en el aprendizaje. Cuando la tarea objetivo es similar a la tarea origen (en este caso, masas similares), QTL muestra una clara mejora sobre el aprendizaje sin transferencia. Cuando la tarea objetivo es menos similar (mucho mayor masa), la mejora es mucho más notable. En las tareas de 1.5 kg y 2.0 kg. QTL converge a una polı́tica adecuada mucho más rápido que tabula rasa. El desempeño de la polı́tica aprendida es medido como el promedio de la recompensa acumulada en los últimos 82 CAPÍTULO 5. EXPERIMENTOS 45 40 Recompensa total 35 30 25 20 PILCO (γ = 0) Transferencia de hiper−parámetros QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 1) QTL−PILCO (Bayesiano) Transferencia de política 15 10 5 0 1 2 3 4 5 6 7 Episodios 8 9 10 11 12 1 2 3 4 5 6 7 Episodios 8 9 10 11 12 Desviación estándar 8 6 4 2 0 (a) Tarea objetivo: Masa del péndulo 0.8Kg 45 40 Recompensa total 35 30 25 PILCO (γ = 0) Transferencia de hiper−parámetros QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 1) QTL−PILCO (Bayesiano) Transferencia de política 20 15 10 5 0 2 4 6 8 10 12 8 10 12 Desviación estándar Episodios 6 4 2 0 2 4 6 Episodios (b) Tarea objetivo: Masa del péndulo 1.0Kg Figura 5.4: Curvas de aprendizaje para tareas con masa de 0.8Kg y 1.0Kg. 5.2. TRANSFERENCIA DE HIPER-PARÁMETROS 83 PILCO (γ = 0) Transferencia de hiper−parámetros QTL−PILCO 40 QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 1) 35 QTL−PILCO (Bayesiano) Transferencia de política Recompensa total 30 25 20 15 10 5 Desviación estándar 0 2 4 6 8 10 12 14 Episodios 16 18 20 22 24 2 4 6 8 10 12 14 Episodios 16 18 20 22 24 8 6 4 2 0 (a) Tarea objetivo: Masa del péndulo 1.5Kg 35 PILCO (γ = 0) Transferencia de hiper−parámetros 30 QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 1) Recompensa total 25 QTL−PILCO (Bayesiano) Transferencia de política 20 15 10 5 Desviación estándar 0 5 10 15 Episodios 20 25 5 10 15 Episodios 20 25 10 5 0 (b) Tarea objetivo: Masa del péndulo 2.0Kg Figura 5.5: Curvas de aprendizaje para tareas con masa de 1.5Kg y 2.0Kg 84 CAPÍTULO 5. EXPERIMENTOS tres episodios del proceso de aprendizaje. El método de transferencia propuesto tuvo el mejor desempeño en tres de las cuatro tareas, como se puede apreciar en la tabla 5.1. Aún en el cuarto caso, la polı́tica aprendida por transferencia resuelve la tarea de manera adecuada y obtiene un alto desempeño, cuya diferencia es menor a una unidad con respecto al aprendizaje de PILCO. Eso significa que las polı́ticas finales son muy similares o al menos obtienen casi las mismas recompensas acumuladas. Tanto QTL, con γ = 0.9 como el enfoque bayesiano, convergen más rápido que PILCO. El resultado más evidente es cuando la masa del péndulo es de 2.0 kg., donde QTL converge 13 episodios antes que el aprendizaje sin transferencia, como se puede ver en la tabla 5.1 y Fig. 5.5. El tiempo de convergencia se calcula como el número de episodios para alcanzar el 95 % del valor de desempeño. Para QTL con γ = 1 y la simple transferencia de polı́tica, el algoritmo no converge a una polı́tica después de 30 episodios. Los valores de los hiper-parámetros que se aprenden por maximización de evidencia (como lo hace PILCO) pueden cambiar drásticamente durante las primeras iteraciones del proceso de aprendizaje, debido al número reducido de muestras. Sin embargo, con el enfoque propuesto en este trabajo, la información de la tarea origen se fusiona gradualmente con los hiperparámetros aprendidos en la tarea objetivo, y eso estabiliza los valores de los hiper-parámetros durante los primeros episodios, como se ve en la figura 5.6. De esta manera, el proceso de aprendizaje se puede centrar más en el aprendizaje de la polı́tica que en el aprendizaje del modelo de la tarea (función de transición). La recompensa total es un indicador de qué tan bien el agente está resolviendo la tarea desde el principio hasta el final del proceso de aprendizaje. Lo que se busca en la mayorı́a de las tareas, es que el agente evite los errores (obteniendo altas recompensas) no sólo al terminar el aprendizaje, sino durante todo el proceso de aprendizaje. El agente no solamente deberı́a aprender cometiendo pocos errores sino también es deseable que al terminar el proceso tenga un alto desempeño. El procesamiento basado en inferencia bayesiana obtuvo una alta recompensa acumulada y un alto desempeño en la mayorı́a de las tareas, y es preferible al factor de olvido si no se tiene experiencia en la tarea. Pero, cuando se conoce la tarea, es 5.2. TRANSFERENCIA DE HIPER-PARÁMETROS 85 8 Valor de hiper−parámetro 6 4 2 0 −2 −4 −6 −8 2 4 6 8 10 12 14 Episodios (a) Apredizaje tabula rasa 8 Valor de hiper−parámetro 6 4 2 0 −2 −4 −6 −8 2 4 6 8 10 12 14 Episodios (b) Aprendizaje por transferencia QTL γ = 0.9 8 Valor de hiper−parámetro 6 4 2 0 −2 −4 −6 −8 2 4 6 8 10 12 14 Episodios (c) Aprendizaje por transferencia QTL bayesiano Figura 5.6: Convergencia del valor de los hiper-parámetros para la tarea de péndulo invertido, transfiriendo desde 0.5 kg. a 0.8 kg. En esta gráfica se pueden observar cómo los valores de los hiper-parámetros se estabilizan más rápido cuando se usa QTL con factor de olvido (b) y QTL bayesiano (c) que cuando se aprende tabula rasa (a), lo cual permite que el aprendizaje se centre en la búsqueda de la polı́tica y no los valores de los hiper-parámetros. 86 CAPÍTULO 5. EXPERIMENTOS Tabla 5.1: Desempeño final, recompensa acumulada y tiempo de convergencia para transferencia en tareas de péndulo invertido. El tiempo de convergencia es medido en el número de episodios que toma alcanzar el 95 % del desempeño. El desempeño final es medido promediando los últimos tres episodios (NC significa que no hubo convergencia y la polı́tica no se aprendió). Enfoque 0.8 kg. 1.0 kg. 1.5 kg. 2.0 kg. PILCO (γ = 0) 36.95/228.47/9 35.53/206.09/10 33.32/218.63/22 29.71/204.41/25 37.08/236.59/9 33.04/185.99/11 32.98/260.33/22 29.66/240.98/25 37.55/287.44/7 34.97/236.20/9 32.84/589.57/9 29.79/527.65/12 37.20/240.86/9 34.50/217.40/10 32.78/415.95/20 29.90/366.68/21 37.06/246.41/9 34.59/212.92/10 NC/146.44/Desconocido NC/117.63/Desconocido 37.57/272.91/8 35.66/236.43/9 32.68/602.55/10 29.97/539.79/12 35.77/214.35/10 32.81/156.76/11 NC/173.90/Desconocido NC/150.64/Desconocido Transferencia de Hiper-parámetros QTL γ = 0.9 QTL γ = 0.5 QTL γ =1 QTL Bayesiano Transferencia de polı́tica posible aprovechar el parámetro γ para decidir con qué tasa se va a transferir. Por ejemplo, cuando se tiene la experiencia para reconocer que dos tareas no se comportan igual o se sabe que la función de transición no tiene las mismas caracterı́sticas cualitativas (por ejemplo cuando la tarea objetivo tiene mucho más ruido que la origen), entonces es preferible ajustar γ en un valor muy bajo, para transferir muy poca información. 5.2. TRANSFERENCIA DE HIPER-PARÁMETROS 5.2.2. 87 Auto en la montaña La transferencia en aprendizaje por refuerzo no siempre da resultados favorables. En este experimento se muestra un caso en el que la transferencia no ofrece mejores resultados que el aprendizaje desde cero. Los resultados en la figura 5.7 muestran una mejora en los casos en los que se transfiere hacia tareas donde el auto tiene 50 % y 150 % de potencia, rescpectivamente. Sin embargo, para la tarea donde el auto tiene suficiente potencia para ascender directamente (300 %) sin tener que oscilar para aumetar su inercia, el resultado no es favorable. En tal caso se tiene transferencia negativa, ya que la curva de aprendizaje es peor comparada con tabula rasa. Esto se debe a que la función de transición (y en general a toda la distribución de funciones de transición) no son similares entre las tareas origen y objetivo. La transferencia negativa es un fenómeno que puede presentarse cuando se hace transferencia. Existen algunas herramientas que podrı́an ayudar a predecir cuando la transferencia será negativa, usando sólo la información disponible, como se vio con las métricas task compliance y task relevance de la Sección 4.2.3. Aplicando esta métrica a las tres tareas (ver tabla 5.2) se puede observar que la última tarea es la menos similar. La métrica task compliance puede usarse cuando se tienen muestras disponibles tanto de la tarea origen como objetivo para determinar si la transferencia podrı́a llegar a ser negativa, ya que un bajo valor de Λcompl significa que las distribuciones de las funciones de transición no son tan similares. Sin embargo, no es fácil definir un umbral, ya que aún cuando los valores altos indicarı́an alta similitud y los bajos poca similitud entre dos tareas, el éxito de la transferencia depende también de otros factores, como la estrategia de exploración, si las tuplas obtenidas son cercanas a la solución, la calidad del algoritmo de búsqueda de polı́tica entre otras. En este trabajo se asume que inicialmente no se tienen tuplas de la tarea objetivo, por lo que las primeras tuplas disponibles se generan después del primer episodio. 88 CAPÍTULO 5. EXPERIMENTOS 6 Recompensa total 5 4 3 2 PILCO (γ = 0) QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 0.1) QTL−PILCO (Bayesiano) 1 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10 Episodios Desviación estándar 3 2 1 0 1 2 3 4 5 Episodios (a) 50 % de potencia en motor 30 Recompensa total 25 20 15 10 PILCO (γ = 0) QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 0.1) QTL−PILCO (Bayesiano) 5 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10 Desviación estándar Episodios 10 5 0 1 2 3 4 5 Episodios (b) 150 % de potencia en motor Figura 5.7: Auto en la montaña. Las curvas de aprendizaje para la tarea objetivo, con 50 %, 150 % and 300 % de la potencia de motor en la tarea original. (c) Ilustra una tarea donde la transferencia no mejora el aprendizaje, en tal caso la medición de diferencia entre tareas ayuda a saber si es mejor aprender desde cero que transfiriendo. 5.2. TRANSFERENCIA DE HIPER-PARÁMETROS 89 35 30 Recompensa total 25 20 15 PILCO (γ = 0) QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 0.1) QTL−PILCO (Bayesiano) 10 5 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10 Desviación estándar Episodios 10 5 0 1 2 3 4 5 Episodios (a) 300 % de potencia en motor Figura 5.7: (Continuación) Tabla 5.2: Métrica task compliance en las tres tareas objetivo para el problema del auto en la montaña. Potencia Task compliance 50 % 0.64 150 % 0.76 300 % 0.34 90 CAPÍTULO 5. EXPERIMENTOS 5.2.3. Cuadricóptero a helicóptero Este experimento es el que involucra más variables y donde la tarea a realizarse es más complicada. El aprendizaje inicial se hace en un cuadricóptero y se transfiere a un helicóptero, como se describe en la sección 5.1.3. Aún cuando la transferencia de helicóptero a cuadricóptero también es posible, el objetivo del experimento es simplemente mostrar que el método es útil para la transferencia de aprendizaje entre vehı́culos similares y por limitaciones de tiempo se decidió considerar como experimentos futuros la transferencia desde helicóptero hacia cuadricóptero, ası́ como otras aeronaves que comparten las mismas variables de acción y estado. En los experimentos realizados, tanto PILCO como el algoritmo propuesto aprenden una mejor polı́tica final que el autopiloto del simulador V-REP, que es uno de los simuladores más utilizados para probar tareas de robótica. En ambos casos también, el agente aprende a compensar la inercia del helicóptero inclinando la aeronave antes de que el helicóptero alcance la posición objetivo, en contraste con el autopiloto, que tiende a pasarse de la posición objetivo y luego regresar. El enfoque propuesto converge a una polı́tica correcta en 19 episodios, mientras que PILCO lo hace en 24 episodios, lo cual es una reducción de tiempo del 20.8 %. Los detalles de las curvas de aprendizaje se muestran en la Figura 5.8 y en la Tabla 5.3. La transferencia en este escenario, con alto grado de dificultad, muestra empı́ricamente que el enfoque propuesto es útil en problemas reales con alta dimensionalidad y donde la función de transición es muy sensible a variaciones pequeñas en las acciones (un pequeño cambio en una variable de control puede generar un gran cambio de estado). En resumen, los resultados obtenidos de los experimentos son los siguientes: Transferir información sobre las propiedades generales de la función de transición de estado (en la forma de hiper-parámetros) y la fusión gradual geométrica o bayesiana puede reducir significativamente los tiempos de convergencia del algoritmo de aprendizaje en la tarea objetivo. La incorporación gradual de los hiper-parámetros desde la tarea origen provee valores más estables para los hiper-parámetros de la tarea objetivo desde los primeros episodios, 5.2. TRANSFERENCIA DE HIPER-PARÁMETROS 91 Tabla 5.3: Métricas para transferencia en la tarea cuadricóptero - helicóptero. El tiempo de convergencia es medido en el número de episodios que toma alcanzar el 95 % del desempeño final. El desempeño es el total de recompensa acumulada promedio de los últimos tres episodios. Enfoque Tiempo de convergencia Desempeño Recompensa acumulada PILCO (γ = 0) 24 132.5 1890.4 QTL (γ = 0.1) 21 130.61 2096.8 QTL (γ = 0.5) 22 130.95 2123.9 QTL (γ = 0.9) 21 131.53 2153.5 QTL bayesiano 19 131.99 2225.4 140 120 Recompensa total 100 80 60 V−REP Autopiloto (Referencia) PILCO (γ = 0) QTL−PILCO (γ = 0.9) QTL−PILCO (γ = 0.5) QTL−PILCO (γ = 0.1) QTL−PILCO (Bayesiano) 40 20 Desviación estándar 0 5 10 15 Episodios 20 25 30 5 10 15 Episodios 20 25 30 20 15 10 5 0 Figura 5.8: Curvas de aprendizaje para la tarea de helicóptero. Aprendizaje con PILCO y con transferencia desde la tarea de cuadricóptero. Se muestra la recompensa adquirida con V-REP como referencia. 92 CAPÍTULO 5. EXPERIMENTOS lo cual permite que el proceso de aprendizaje se centre en aprender la polı́tica y no tanto en el modelo. Esto en general acelera el aprendizaje, como se muestra en la figura 5.6. Este enfoque es útil para varias tareas, incluyendo aquellas con muchas variables en los vectores de estado y acción. En casi todas las pruebas, el enfoque bayesiano genera mejores resultados que usar factor de olvido. Por otro lado, el método de factor de olvido permite ajustar de manera manual cuánto peso se da a la información disponible de la tarea origen. 5.3. Sı́ntesis de tuplas En esta sección se muestran los experimentos realizados para evaluar el funcionamiento del algoritmo SST, con el cual se sintetizan muestras para ajustar la función de transición estados de la tarea objetivo. Para realizar estos experimentos se utilizaron las mismas tareas descritas en la sección anterior, las cuales son el péndulo invertido, el auto en la montaña y cuadricóptero a helicóptero. Para evaluar el funcionamiento del algoritmo propuesto basado en sı́ntesis de tuplas también se consideraron las mismas métricas que en la sección anterior (desempeño final, recompensa total y el tiempo de convergencia). Los algoritmos que se comparan en esta sección se listan a continuación. Algoritmos del estado del arte: PILCO. Algoritmo del estado del arte que se toma como referencia tabula rasa. Transferencia de todo el conjunto de tuplas adquirido en la tarea origen. Transferencia de un conjunto filtrado de tuplas utilizando el algoritmo propuesto por Lazaric et al. [2008], el cual fue adaptado para manejar acciones continuas (Filtro de Lazaric). Combinación de algoritmos de transformación y filtrado de tuplas (tanto propuestos como del estado del arte): 5.3. SÍNTESIS DE TUPLAS 93 Transferencia de todas las muestras transformadas utilizando el algoritmo propuesto en esta tesis (SST). Transferencia de un conjunto filtrado de tuplas utilizando el algoritmo propuesto en esta tesis y el algoritmo de transformación de tuplas propuesto en esta tesis (Filtro Simple + SST). Transferencia de un conjunto filtrado de tuplas utilizando el algoritmo propuesto por Lazaric y el algoritmo de transformación de tuplas propuesto en esta tesis (Filtro de Lazaric + SST). Estos experimentos permiten ver cuál es el desempeño de la transformación propuesta (SST) comparando la simple transformación de las tuplas y los resultados de combinarla con diferentes métodos de filtrado. También se compara con otros métodos en el estado del arte de transferencia, como el filtro de Lazaric. 5.3.1. Péndulo invertido Se probaron los algoritmos mencionados en la sección anterior con la tarea del péndulo invertido, la cual se describe en la sección 5.1.1 de esta tesis. La tarea origen consiste en balancear un péndulo con una masa de 0.5 kg, mientras que en las tareas objetivo las masas corresponden a 0.25 kg (0.5x, donde x es el peso del péndulo de la tarea original), 1 kg (2x), 1.5 kg (3x) y 2 kg (4x), respectivamente. En esta prueba se decidió agregar la tarea de 0.25 kg. con el objetivo de probar el comportamiento de la transferencia hacia tareas donde la masa del péndulo fuera inferior a la tarea original, repitiendo la prueba también para PILCO y QTL bayesiano. En las figuras 5.9 y 5.10 se muestra el comportamiento del aprendizaje para las tareas con los distintos valores de masa evaluados. En estas figuras se ilustra la recompensa total obtenida por episodio para cada uno de los algoritmos, los cuales se evalúan mediante las tres métricas descritas anteriormente y mostradas en las siguientes tablas. 94 CAPÍTULO 5. EXPERIMENTOS 35 30 Recompensa total 25 20 PILCO Transferencia de todas las tuplas SST todas las tuplas Filtro simple Filtro de Lazaric Filtro de Lazaric + SST Filtro simple + SST 15 10 5 Desviación estándar 0 1 2 3 4 5 6 7 Episodios 8 9 10 11 12 1 2 3 4 5 6 7 Episodios 8 9 10 11 12 6 4 2 0 (a) Masa 0.25 kg 40 35 Recompensa total 30 25 PILCO Transferencia de todas las tuplas SST todas las tuplas Filtro simple Filtro de Lazaric Filtro de Lazaric + SST Filtro simple + SST 20 15 10 5 0 2 4 6 8 10 12 8 10 12 Episodios Desviación estándar 10 5 0 2 4 6 Episodios (b) Masa 1.0 kg Figura 5.9: Curvas de aprendizaje para tareas con masas incrementadas en 0.5x y 2x con respecto a la masa original (0.5 kg.) 5.3. SÍNTESIS DE TUPLAS 95 PILCO Transferencia de todas las tuplas 40 SST todas las tuplas Filtro simple 35 Filtro de Lazaric Filtro de Lazaric + SST Recompensa total 30 Filtro simple + SST 25 20 15 10 5 Desviación estándar 0 2 4 6 8 10 12 14 Episodios 16 18 20 22 24 2 4 6 8 10 12 14 Episodios 16 18 20 22 24 8 6 4 2 0 (a) Masa 1.5 kg PILCO 35 Transferencia de todas las tuplas SST todas las tuplas Filtro simple 30 Filtro de Lazaric Filtro de Lazaric + SST Filtro simple + SST Recompensa total 25 20 15 10 5 0 5 10 15 Episodios 20 25 5 10 15 Episodios 20 25 Desviación estándar 10 5 0 (b) Masa 2.0 kg Figura 5.10: Curvas de aprendizaje para tareas con masas incrementadas en 3x y 4x con respecto a la masa original (0.5 kg.) 96 CAPÍTULO 5. EXPERIMENTOS En la tabla 5.4 se muestran los resultados de la recompensa acumulada obtenida por los algoritmos listados anteriormente para cada tarea. A partir de esta tabla se pueden listar las siguientes observaciones sobre los algoritmos evaluados. Haciendo transferencia de todas las tuplas de una tarea a otra, sin transformar ni filtrar las tuplas, se obtiene la recompensa acumulada más baja en comparación con todos los algoritmos listados en la tabla 5.4. Esto se debe a que las tareas origen y objetivo no son idénticas y se está transfiriendo mucha información que no concuerda con el modelo de la tarea objetivo. En otras palabras, se está forzando a la tarea objetivo a aprender un modelo erróneo, por lo que la transferencia es negativa. Utilizando el enfoque de sı́ntesis de tuplas propuesto en esta tesis (SST), aplicado sobre todas las tuplas de la tarea origen, se obtienen mejores resultados que con el algoritmo de PILCO y con la transferencia de todas las tuplas sin transformar ni filtrar. Esto significa que sintetizando tuplas (SST) se está aprendiendo más rápido que el aprendizaje tabula rasa. Sin embargo, no se mejoran los resultados que se obtienen utilizando el filtro de muestras de Lazaric. El filtrado de tuplas propuesto por Lazaric no supera los resultados obtenidos al agregar la transformación de tuplas (SST). Eso demuestra que la transformación de tuplas es útil independientemente de qué tan complejo sea el filtrado. Se realizaron las siguientes pruebas, que comparan la combinación del algoritmo de filtrado de tuplas de Lazaric con el algoritmo de transformación propuesto en esta tesis (SST). Se hicieron pruebas con el filtro de Lazaric (adaptado para tareas continuas) para seleccionar tuplas de la tarea origen y después transformarlas con el algoritmo propuesto en este trabajo (SST). Con esta combinación de transformación y filtrado de tuplas se obtienen los mejores resultados en 3 de 4 pruebas (346.35/5 para 0.5x, 383.37/6 para 2x y 616.58/14 para 4x). Se experimentó con la combinación del algoritmo de transformación propuesto en este trabajo (SST) con el algoritmo de filtrado simple propuesto también en este trabajo, 5.3. SÍNTESIS DE TUPLAS 97 Tabla 5.4: Recompensa total en la transferencia para la tarea de péndulo invertido. Algoritmo evaluado 0.5x 2x 3x 4x. PILCO (sin transferencia) 216.00 206.10 218.63 204.42 QTL (bayesiano) 267.56 236.43 602.55 539.79 Transferencia de todas las tuplas 42.10 48.16 100.25 88.46 Filtro de Lazaric 336.70 359.73 560.69 605.71 Sı́ntesis de tuplas 200.58 217.43 256.90 237.00 Filtro simple 296.41 342.51 541.38 564.21 Filtro de Lazaric + SST 346.35 383.37 613.58 616.58 Filtro simple + SST 344.99 380.94 641.18 613.44 con lo que se obtienen mejores resultados que utilizando los algoritmos de PILCO, filtro de tuplas de Lazaric, transferencia de todas las tuplas o los filtros aplicados por separado. En general, utilizando la combinación de algoritmos de transformación (SST) y filtrado de tuplas (Filtro de Lazaric + SST y filtro simple + SST) se obtienen las curvas que crecen más rápido. En la tabla 5.5 se muestran los resultados del desempeño final obtenidos con los algoritmos evaluados. El desempeño final no varı́a significativamente, en general el desempeño final es el mismo entre todos los algoritmos. El único caso que tiene una diferencia marcada es cuando se transfieren todas las tuplas, porque en ese caso se está introduciendo información errónea al agente en la tarea objetivo. En la Tabla 5.6 se muestran los resultados con respecto al tiempo de convergencia de los algoritmos evaluados. A partir de estos resultados se puede observar que las combinaciones de transformación y filtrado de tuplas (Filtro de Lazaric + SST y Filtro simple + SST) obtienen los valores más altos de recompensa acumulada, tienen muy buenos tiempos de convergencia, mientras que son competitivos en el desempeño final. 98 CAPÍTULO 5. EXPERIMENTOS Tabla 5.5: Desempeño final en la transferencia en la tarea de péndulo invertido. Algoritmo evaluado 0.5x 2x 3x 4x. PILCO (sin transferencia) 33.10 35.54 33.33 29.72 QTL (bayesiano) 33.62 35.66 32.68 29.97 Transferencia de todas las tuplas 5.36 4.61 5.87 3.75 Filtro de Lazaric 33.00 33.61 32.07 29.36 Sı́ntesis de tuplas 32.01 34.61 31.58 29.81 Filtro simple 33.23 34.06 31.95 28.66 Filtro de Lazaric + SST 33.06 34.00 31.19 29.19 Filtro simple + SST 33.15 33.45 31.79 28.85 Tabla 5.6: Tiempo de convergencia en la transferencia en la tarea de péndulo invertido. Todos los algoritmos convergen, excepto cuando se transfieren todas las tuplas, indicado como NC (no convergencia). Algoritmo evaluado 0.5x 2x 3x 4x. PILCO (sin transferencia) 8 10 22 25 QTL (bayesiano) 8 9 10 12 Transferencia de todas las tuplas NC NC NC NC Filtro de Lazaric 6 7 15 13 Sı́ntesis de tuplas 10 10 14 25 Filtro simple 7 8 15 15 Filtro de Lazaric + SST 5 6 13 14 Filtro simple + SST 6 5 21 14 5.3. SÍNTESIS DE TUPLAS 99 Tabla 5.7: Desempeño final para la transferencia en la tarea del auto en la montaña. 5.3.2. Algoritmo 50 % 150 % 300 % PILCO (sin transferencia) 3.01 21.94 32.60 QTL (bayesiano) 5.55 23.64 25.31 Transferencia de todas las tuplas 2.54 5.22 6.87 Filtro de Lazaric 5.23 20.47 27.64 Sı́ntesis de tuplas 5.31 24.74 30.41 Filtro simple 4.32 24.32 30.23 Filtro de Lazaric + SST 5.84 24.23 32.34 Filtro simple + SST 5.30 25.13 32.19 Auto en la montaña En esta sección se muestran los resultados obtenidos para la tarea del auto en la montaña, la cual se describe con mayor detalle en la sección 5.1.2 de esta tesis. Para estas pruebas se considera la misma tarea origen que se especifica en [Sutton and Barto, 1998]. Como tareas objetivo, la fuerza de la que el auto dispone se modifica en 50 %, 150 % y 300 % con respecto a la tarea original. En la figura 5.11 se muestran las curvas de aprendizaje para las pruebas de transferencia con el algoritmo SST. En la tabla 5.7 se puede apreciar el desempeño final obtenido por los algoritmos probados para cada tarea con los diferentes valores de fuerza en el auto. De los datos obtenidos se hacen las siguientes conclusiones. Se puede observar que en general los algoritmos obtienen un desempeño final mejor al que se obtiene al aprender desde cero (PILCO), salvo el caso donde se incrementa la potencia del automovil a 300 %. El único caso que queda muy por debajo es cuando se transfieren todas las tuplas, ya que al transferir todas las muestras, se obliga al agente a aprender un modelo que no corresponde a la tarea objetivo. 100 CAPÍTULO 5. EXPERIMENTOS 6 Recompensa total 5 4 3 PILCO (γ = 0) QTL−PILCO (Bayesiano) 2 Transferencia de todas las tuplas Filtro de Lazaric Síntesis de tuplas 1 Filtro simple Filtro de Lazaric + SST Filtro simple + SST 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10 Desviación estándar Episodios 3 2 1 0 1 2 3 4 5 Episodios (a) 50 % de potencia en motor 30 Recompensa total 25 20 PILCO (γ = 0) QTL−PILCO (Bayesiano) 15 Transferencia de todas las tuplas Filtro de Lazaric Síntesis de tuplas 10 Filtro simple Filtro de Lazaric + SST Filtro simple + SST 5 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10 Desviación estándar Episodios 10 5 0 1 2 3 4 5 Episodios (b) 150 % de potencia en motor Figura 5.11: Auto en la montaña. Las curvas de aprendizaje para la tarea objetivo, con 50 %, 150 % and 300 % de la potencia de motor en la tarea original. 5.3. SÍNTESIS DE TUPLAS 101 35 30 Recompensa total 25 PILCO (γ = 0) QTL−PILCO (Bayesiano) Transferencia de todas las tuplas Filtro de Lazaric Síntesis de tuplas Filtro simple Filtro de Lazaric + SST Filtro simple + SST 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 6 7 8 9 10 Desviación estándar Episodios 10 5 0 1 2 3 4 5 Episodios (a) 300 % de potencia en motor Figura 5.11: (Continuación) La combinación de algoritmos de transformación y filtrado de tuplas (Filtro de Lazaric + SST y Filtro Simple + SST) obtiene valores altos de desempeño final, similares al aprendizaje tabula rasa. En el auto con el 50 % de potencia, la sı́ntesis de muestras permite que al final se aprenda una mejor polı́tica que la aprendida sin transferencia. En ese caso, la transferencia de información realmente beneficia al agente, porque la búsqueda de la solución se simplifica considerablemente y por lo tanto se aprende más rápido y una mejor solución. Para 300 %, si bien no se obtiene un alto valor de desempeño, ya no se presenta transferencia negativa, como es el caso con QTL. En la tabla 5.8 se muestran los resultados del área bajo la curva de los algoritmos evaluados para la tarea del auto en la montaña. A partir de esta tabla se puede observar un comportamiento similar al que se observó en la métrica de desempeño final, en el cual utilizando la combinación de algoritmos de transformación y filtrado de tuplas (Filtro de Lazaric + SST y filtro simple + SST) se obtienen los valores más altos de recompensa. En la tabla 5.9 se muestran los tiempos de convergencia de los algoritmos evaluados. Se 102 CAPÍTULO 5. EXPERIMENTOS Tabla 5.8: Recompensa total para la transferencia en la tarea del auto en la montaña. Algoritmo 50 % 150 % 300 % PILCO (sin transferencia) 26.39 173.72 265.48 QTL (bayesiano) 51.21 222.60 211.60 Transferencia de todas las tuplas 17.56 48.19 64.05 Filtro de Lazaric 46.78 191.28 247.32 Sı́ntesis de tuplas 50.57 232.47 245.73 Filtro simple 41.76 194.22 230.09 Filtro de Lazaric + SST 54.41 235.47 279.39 Filtro simple + SST 49.53 237.75 271.61 muestra el número de episodios requeridos para alcanzar el 95 % del valor de desempeño. En esta tarea, los enfoques que combinan la sı́ntesis de tuplas con el filtrado son los que obtuvieron en general mejores resultados, convergiendo en un menor tiempo. Un caso especial fue la convergencia rápida obtenida con el algoritmo QTL para la tarea donde el auto tiene una potencia de 150 %. En esa tarea en especı́fico, la transferencia de hiper-parámetros ayuda a una más rápida convergencia que la sı́ntesis de tuplas, sin embargo, la sı́ntesis de muestras acumula una mayor recompensa, en general. 5.3.3. Cuadricóptero a helicóptero En esta sección se muestran los resultados obtenidos para la tarea de controlar un vehı́culo de ala giratoria, el cual es descrito a detalle en la sección 5.1.3 de esta tesis. Este experimento es el más complejo e interesante que se aborda en esta tesis, cuya dificultad radica en el hecho de que la tarea de estabilización de vuelo requiere mucha precisión y además, se maneja un alto número de variables de estado y acción. En la figura 5.12 se muestran las curvas de aprendizaje para la tarea del helicóptero, obtenidas por cada algoritmo evaluado, ası́ como el valor de la recompensa obtenida por el 5.3. SÍNTESIS DE TUPLAS 103 Tabla 5.9: Tiempo de convergencia para la transferencia en la tarea del auto en la montaña. El tiempo de convergencia es medido como el número de episodios requeridos para alcanzar el 95 % del desempeño final. Algoritmo 50 % 150 % 300 % PILCO (sin transferencia) 4 7 7 QTL (bayesiano) 6 2 5 Transferencia de todas las tuplas NC NC NC Filtro de Lazaric 7 4 5 Sı́ntesis de tuplas 6 5 6 Filtro simple 6 6 7 Filtro de Lazaric + SST 4 3 5 Filtro simple + SST 4 4 6 algoritmo de control del simulador V-REP manejado como valor de referencia. En esta figura se grafica la recompensa acumulada por episodio, para cada uno de los algoritmos. En la tabla 5.10 se muestran los resultados de la recompensa total, desempeño final y tiempo de convergencia obtenidos por los algoritmos probados para la tarea del helicóptero. Se pueden hacer las siguientes observaciones sobre los algoritmos evaluados: El desempeño final es similar en todos los casos, y en todos ellos se supera al autopiloto del simulador V-REP. Es decir, comparado con el control del autopiloto, los algoritmos de aprendizaje por refuerzo aprenden un control que da una mayor recompensa acumulada al agente. El enfoque de sı́ntesis propuesto en esta tesis (SST), combinado con los algoritmos de filtrado obtiene mejores resultados que el aprendizaje tabula rasa. También obtiene mejores resultados que los algoritmos del estado del arte y QTL. El tiempo de convergencia se reduce significativamente combinando la sı́ntesis de tuplas 104 CAPÍTULO 5. EXPERIMENTOS Tabla 5.10: Desempeño final, recompensa acumulada y tiempo de convergencia para la tarea del helicóptero. Recompensa Desempeño Tiempo de total final convergencia V-REP Autopiloto (sólo referencia) - 126.79 - PILCO (sin transferencia) 1809.44 132.50 24 QTL (bayesiano) 2225.46 131.99 22 Transferencia de todas las tuplas 467.89 22.5 NC Filtro de Lazaric 2578.79 129.77 20 Sı́ntesis de tuplas 2811.15 131.33 18 Filtro simple 2388.77 128.69 22 Filtro de Lazaric + SST 3212.75 130.29 15 Filtro simple + SST 3169.64 131.39 17 Algoritmo 5.3. SÍNTESIS DE TUPLAS 105 Recompensa total 150 100 PILCO V−REP Autopiloto (Referencia) QTL−PILCO (Bayesiano) SST todas las tuplas Filtro de Lazaric Transferencia de todas las tuplas 50 Filtro simple Filtro de Lazaric + SST Filtro simple + SST 0 5 10 15 Episodios 20 25 30 5 10 15 Episodios 20 25 30 Desviación estándar 30 20 10 0 Figura 5.12: Curvas de aprendizaje para la tarea de control de helicóptero, transfiriendo conocimiento desde un cuadricóptero. Se muestra la recompensa adquirida con V-REP como referencia. con algún algoritmo de filtrado, en particular el algoritmo SST usado junto al filtro de Lazaric obtiene los mejores resultados. 5.3.4. Resumen de experimentos Los experimentos realizados en las secciones 5.3.1, 5.3.2 y 5.3.3 sirvieron para evaluar el aprendizaje con diferentes métodos de transferencia y compararlos con el aprendizaje tabula rasa (PILCO). A partir de tales experimentos, se pueden obtener las siguientes conclusiones. Aunque con la transferencia no se incrementa el desempeño final significativamente comparado con el aprendizaje tabula rasa, tampoco se reduce. Esto es un indicador de que la polı́tica obtenida con el aprendizaje por transferencia es una polı́tica similar a la aprendida desde cero, pero en menor tiempo, lo cual implica que se cometen menos errores al aprender la tarea. 106 CAPÍTULO 5. EXPERIMENTOS PILCO es un algoritmo del estado del arte en aprendizaje por refuerzo para tareas continuas, mucho más rápido que algoritmos similares en tiempo de convergencia. La propuesta QTL supera a PILCO, transfiriendo muy poca información, en forma de hiper-parámetros. QTL es un enfoque muy eficiente, ya que transfiriendo muy poca información desde la tarea origen, e integrándola gradualmente a la tarea objetivo, logra abstraer las propiedades cualitativas de la tarea objetivo. Estas propiedades sirven para definir una distribución a priori en la tarea objetivo, que ayuda a aprender más rápido la tarea. Para QTL se probaron dos enfoques de integración de información transferida. El factor de olvido permite controlar la tasa a la que se integra la información transferida, mientras que el enfoque bayesiano integra la información tomando en cuenta la confianza en los datos de la tarea objetivo. El enfoque bayesiano obtuvo en general mejores resultados que el factor de olvido. Transferir las muestras selectivamente, usando algún algoritmo de filtrado acelera el aprendizaje. La transferencia de todas las muestras disponibles en la tarea origen sin ninguna modificación, hace que el agente aprenda un modelo erróneo en la tarea objetivo, pero al mismo tiempo es un indicador de la diferencia entre tareas. La sı́ntesis de tuplas (SST), basada en la transformación de tuplas filtradas desde la tarea origen es la que ofrece un aprendizaje más rápido y con mayor recompensa total. En los experimentos realizados con las tres tareas se obtuvieron mejores resultados (en cuanto a la recompensa acumulada y el desempeño final) utilizando la combinación de algoritmos de transformación y filtrado de tuplas del Filtro de Lazaric + Sı́ntesis y el Filtro Simple + Sı́ntesis. La selección de muestras candidatas en la tarea objetivo es un paso importante previo a la sı́ntesis (SST), ya que transferir y transformar todas las muestras agrega tanta información que el modelo de la tarea no se puede aprender en la tarea objetivo. Sin 5.3. SÍNTESIS DE TUPLAS 107 embargo, en las comparaciones entre el filtro simple propuesto y un filtro más elaborado (filtro de Lazaric), aún cuando el filtro más complejo obtiene mejores resultados, se puede apreciar que el tipo de filtrado no hace mucha diferencia. El filtro de Lazaric es un algoritmo del estado del arte en transferencia. Transfiere tuplas seleccionándolas desde la tarea origen con base en dos métricas. El algoritmo SST, propuesto en este trabajo, aprende más rápido que Lazaric, QTL y PILCO. Capı́tulo 6 Conclusiones La transferencia de conocimiento en aprendizaje por refuerzo se enfoca en el desarrollo de métodos para reutilizar la información obtenida de una tarea de origen, con el objetivo de mejorar el proceso de aprendizaje en una tarea relacionada. En este trabajo de tesis se presentaron dos nuevos enfoques para la transferencia de conocimiento entre tareas dentro del aprendizaje por refuerzo, los cuales son aplicables a situaciones reales en las que se tienen espacios de estado y acción continuos. En el análisis del estado del arte, no se encontró trabajo relacionado en el área de aprendizaje por refuerzo (RL) que incorpore transferencia de conocimiento (TL), en tareas con estados y acciones continuas, siendo importante ya que muchas aplicaciones reales se encuentran bajo estas condiciones. En este punto radica la contribución principal de este trabajo de tesis. En el primero de los enfoques propuestos en esta tesis, se presenta un algoritmo (QTL) en el cual las funciones de la transición y las polı́ticas son aproximadas por procesos Gaussianos. Este nuevo enfoque se basa en la idea de transferir información acerca de los hiper-parámetros de la función de transición de estado de la tarea de origen, lo que representa conocimiento cualitativo (como propiedades de suavidad, la varianza y el ruido de la distribución de la función de transición) sobre el tipo de función de transición que la tarea destino podrı́a tener. Se proponen dos variantes para transferir conocimiento cualitativo a la tarea de destino. 109 110 CAPÍTULO 6. CONCLUSIONES La primera variante incorpora gradualmente el valor de los hiper-parámetros aprendidos en la tarea origen. El segundo utiliza un enfoque bayesiano y considera la incertidumbre en el valor de los hiper-parámetros aprendidos. Con estos nuevos enfoques se restringe el espacio de búsqueda en la tarea objetivo y por lo tanto se acelera el proceso de aprendizaje. El segundo enfoque propuesto en esta tesis, consiste en un algoritmo para sintetizar tuplas (SST), el cual se centra en generar muestras para ajustar la función de transición de estados en la tarea objetivo. Lo que se hace es filtrar las muestras más importantes de la tarea origen, que después son transformadas e insertadas en la tarea objetivo. La transformación se aprende de las diferencias entre las tuplas de la tarea origen y la tarea objetivo. Para evaluar el funcionamiento de los métodos propuestos, se seleccionaron algunas tareas relevantes dentro del estado del arte relacionado con aprendizaje por refuerzo, las cuales son: el péndulo invertido, el auto en la montaña y la transferencia de conocimiento desde un cuadricóptero a un helicóptero. También, se seleccionaron algunos algoritmos relevantes del estado del arte para realizar comparaciones (PILCO y Filtro de Lazaric). Este último algoritmo fue adaptado para poder trabajar con estados y espacios continuos. Para comparar estos algoritmos, se usaron tres métricas, las cuales son: el desempeño final, recompensa acumulada (o área bajo la curva) y tiempo de convergencia. A partir de los experimentos realizados, se puede observar una mejora en el rendimiento general utilizando los dos enfoques propuestos en esta tesis (QTL y SST). 6.1. Contribuciones De este trabajo de tesis se desprenden las siguientes contribuciones principales: Se proponen dos formas de integrar la información cualitativa en la tarea objetivo, mediante factor de olvido y actualización bayesiana. El factor de olvido permite a un experto decidir cuán rápido se diluyen los parámetros transferidos, mientras que la actualización bayesiana responde a la certidumbre en los datos. La transferencia basada en conocimiento cualitativo (QTL) mejora el aprendizaje en la tarea objetivo, 6.2. TRABAJO FUTURO 111 aún comparado con algoritmos muy rápidos (PILCO) sin requerir mucha información de la tarea origen. El algoritmo SST ofrece un aprendizaje más rápido y con mayor recompensa total que los algoritmos del estado del arte de transferencia. 6.2. Trabajo futuro Las actividades que se pueden seguir de este trabajo de tesis son las siguientes: En relación con el algoritmo QTL, se plantea como trabajo futuro explorar estrategias para transferir conocimiento de varias tareas origen. Los procesos gaussianos y la transferencia de información podrı́a extenderse en el sentido de permitir transferencia entre tareas con diferentes variables de estado y acción. Se plantea como trabajo futuro, analizar y evaluar distintos algoritmos de filtrado de señales o métodos para suavizar funciones, con el objetivo de hacer la inferencia bayesiana más robusta. Se consideran como experimentos futuros interesantes la transferencia entre aeronaves de diferentes configuraciones, incluyendo tipo ala fija y multirrotores de distintos tamaños y pesos. 6.3. Publicaciones derivadas de este trabajo de tesis Esteban O. Garcı́a, Enrique Muñoz de Cote and Eduardo F. Morales. Qualitative Transfer for Reinforcement Learning with Continuous State and Action Spaces. Proceedings of the 18th Iberoamerican Congress in Pattern Recognition, CIARP 2013, volume 8258 of Lecture Notes in Computer Science, page 198-205. Springer, (2013). Esteban O. Garcı́a, Enrique Muñoz de Cote and Eduardo F. Morales. Transfer Learning for Continuous State and Action Spaces. Aceptado, por publicarse en la revista IJPRAI. Referencias Pieter Abbeel, Adam Coates, Morgan Quigley, and Andrew Y Ng. An application of reinforcement learning to aerobatic helicopter flight. Advances in neural information processing systems, 19:1, 2007. Pieter Abbeel, Adam Coates, Timothy Hunter, and Andrew Y. Ng. Autonomous autorotation of an RC helicopter. In Experimental Robotics, pages 385–394. Springer, 2009. Pieter Abbeel, Adam Coates, and Andrew Y. Ng. Autonomous Helicopter Aerobatics through Apprenticeship Learning. The International Journal of Robotics Research, June 2010. ISSN 0278-3649. HB Ammar, Karl Tuyls, and ME Taylor. Reinforcement learning transfer via sparse coding. In Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems- Volume 1, number Aamas, pages 383–390, 2012. David Barber. Bayesian Reasoning and Machine Learning. Cambridge University Press, New York, NY, USA, 2012. ISBN 0521518148, 9780521518147. D.P. Bertsekas and J.N. Tsitsiklis. Introduction to Probability. Athena Scientific books. Athena Scientific, 2002. ISBN 9781886529403. Edwin Bonilla, Kian Ming Chai, and Chris Williams. Multi-task gaussian process prediction. In J.C. Platt, D. Koller, Y. Singer, and S. Roweis, editors, Advances in Neural Information Processing Systems 20, pages 153–160. MIT Press, Cambridge, MA, 2008. 113 114 REFERENCIAS Ronen I. Brafman and Moshe Tennenholtz. R-max - a general polynomial time algorithm for near-optimal reinforcement learning. J. Mach. Learn. Res., 3:213–231, March 2003. ISSN 1532-4435. Adam Coates, Pieter Abbeel, and Andrew Y. Ng. Apprenticeship learning for helicopter control. Commun. ACM, 52(7):97–105, July 2009. ISSN 0001-0782. Marc P Deisenroth and Carl Edward Rasmussen. PILCO: A Model-Based and Data-Efficient Approach to Policy Search. In Lise Getoor and Tobias Scheffer, editors, ICML, ICML ’11, pages 465–472, 2011. Hado Van Hasselt. Insights in Reinforcement Learning Formal analysis and empirical evaluation of temporal-difference learning algorithms. 2011. ISBN 9789039354964. Nicholas Jong and Peter Stone. Model-based exploration in continuous state spaces. Abstraction, Reformulation, and Approximation, (July):258–272, 2007. Alessandro Lazaric. Knowledge transfer in reinforcement learning. Phd thesis, Politecnico di Milano, 2008. Alessandro Lazaric, Marcello Restelli, and Andrea Bonarini. Reinforcement learning in continuous action spaces through sequential monte carlo methods. In Advances in neural information processing systems. Citeseer, 2007. Alessandro Lazaric, Marcello Restelli, and Andrea Bonarini. Transfer of samples in batch reinforcement learning. Proceedings of the 25th international conference on Machine learning - ICML ’08, pages 544–551, 2008. Gayle Leen, Jaakko Peltonen, and Samuel Kaski. Focused multi-task learning using Gaussian processes. Machine Learning and Knowledge Discovery in Databases, pages 310–325, 2011. Gayle Leen, Jaakko Peltonen, and Samuel Kaski. Focused multi-task learning in a Gaussian process framework. Machine Learning, 89(1-2):157–182, June 2012. ISSN 0885-6125. doi: 10.1007/s10994-012-5302-y. REFERENCIAS 115 Michael G. Madden and Tom Howley. Transfer of Experience Between Reinforcement Learning Environments with Progressive Difficulty. Artificial Intelligence Review, 21(3/4): 375–398, June 2004. ISSN 0269-2821. José Antonio Martı́n H, Javier de Lope, and Darı́o Maravall. Robust high performance reinforcement learning through weighted k-nearest neighbors. Neurocomputing, 74(8):1251– 1259, March 2011. ISSN 09252312. Kevin P Murphy. Machine learning: a probabilistic perspective. Cambridge, MA, 2012. Andrew Y. Ng. Shaping and policy search in reinforcement learning. PhD thesis, 2003. Andrew Y. Ng, H Jin Kim, Michael I Jordan, and Shankar Sastry. Autonomous Helicopter Flight via Reinforcement Learning. In Sebastian Thrun, Saul Lawrence, and Bernhard S., editors, Advances in Neural Information Processing Systems 16, Cambridge, MA, 2004. MIT Press. Carl Edward Rasmussen and Christopher Williams. Gaussian Processes for Machine Learning. International Journal of Neural Systems, 14(2):69–106, 2006. CE Rasmussen and Malte Kuss. Gaussian Processes in Reinforcement Learning. Advances in Neural Information Processing Systems 16, 16, 2004. Coppelia Robotics. V-REP Pro Edu, Version 3.0.1, 2013. URL http://www. coppeliarobotics.com/. Gavin Rummery and Mahesan Niranjan. On-line q-learning using connectionist systems. Technical report, University of Cambridge, 1994. Alexander A Sherstov and Peter Stone. Improving Action Selection in MDP ’ s via Knowledge Transfer. In National Conference on Artificial Intelligence, 2005. Richard Sutton and A.G. Barto. Introduction to Reinforcement Learning. MIT Press, 1998. 116 REFERENCIAS Matthew E Taylor and Peter Stone. Transfer Learning for Reinforcement Learning Domains : A Survey. Journal of Machine Learning Research, 10:1633–1685, 2009. Matthew E Taylor, Nicholas K Jong, and Peter Stone. Transferring Instances for Model-Based Reinforcement Learning. Machine Learning, (September), 2008. Hado van Hasselt and Marco a. Wiering. Reinforcement Learning in Continuous Action Spaces. 2007 IEEE International Symposium on Approximate Dynamic Programming and Reinforcement Learning, (Adprl):272–279, April 2007. Christopher John Cornish Hellaby Watkins. Learning from Delayed Rewards. PhD thesis, King’s College, Cambridge, UK, May 1989.