Créditos ECTS Créditos ECTS: 6
Horas ECTS Criterios/Memorias Trabajo del Alumno/a ECTS: 99 Horas de Tutorías: 3 Clase Expositiva: 24 Clase Interactiva: 24 Total: 150
Lenguas de uso Castellano, Gallego
Tipo: Materia Ordinaria Grado RD 1393/2007 - 822/2021
Centro Escuela Politécnica Superior de Ingeniería
Convocatoria: Segundo semestre
Docencia: Sin docencia (Extinguida)
Matrícula: No matriculable
El aprendizaje por refuerzo en el contexto de la robótica móvil tiene un enorme potencial dado que permite que los robots puedan aprender y adquirir políticas de control por sí mismos, mediante su propia interacción con el entorno en el que trabajan.
A través del aprendizaje por refuerzo se pueden resolver una amplia gama de tareas complejas de toma de decisiones con mínima intervención humana. El aprendizaje por refuerzo se centra en el aprendizaje dirigido a objetivos a partir de la interacción, aprender interactuando. En este caso a la máquina o robot no se les dice qué acciones realizar, sino que es algo que deben descubrir por sí mismos, mediante prueba y error, identificando qué acciones producen la mayor recompensa. Ese es en realidad su objetivo, maximizar la recompensa.
El aprendizaje por refuerzo ofrece a la robótica un marco y un conjunto de herramientas para el diseño de comportamientos sofisticados y difíciles de diseñar. El objetivo final es dotar a los robots de la capacidad de aprender, mejorar y adaptarse a partir de la exploración y el aprendizaje autónomo. Dotar a los robots de habilidades similares a las humanas para realizar habilidades motoras de una manera suave y natural es uno de los objetivos importantes de la robótica. Una forma prometedora de lograr esto es creando robots que puedan aprender nuevas habilidades por sí mismos, de manera similar a los humanos. Sin embargo, adquirir nuevas habilidades motoras no es sencillo e implica varias formas de aprendizaje. A través de las estrategias que se verán en esta materia el robot podrá aprender a resolver tareas que serían difíciles de programar de forma directa, o para las que es difícil obtener un buen proceso demostrativo o conjunto de ejemplos. Hablamos también de tareas o problemas de optimización que no tienen una formulación analítica directa o una solución de forma cerrada conocida. El robot podrá adaptarse a cambios en el hardware o en el entorno. También es posible que el robot pueda partir de una demostración "suficientemente buena" e irla perfeccionando de forma gradual. En esta asignatura se aprenderán estrategias capaces de dotar al robot con la capacidad de adaptarse dinámicamente a los cambios del propio hardware, fallas de sensores, o cambios en el propio entorno en el que se mueve el robot.
Los resultados del aprendizaje
------------------------------------
Conocer cómo lograr modelos y programas de control, capaces de adaptarse en tiempo real a partir de la actuación del robot en el entorno.
Entender en qué medida las estrategias de aprendizaje por interacción robot-entono permiten hacer frente a las limitaciones de la programación explícita.
Dominar las técnicas de aprendizaje por refuerzo y conocer el tipo de tareas para las que se emplean. También deberá ser capaz de manejar las implementaciones software de los algoritmos de aprendizaje, o programar alguno de ellas.
Saber cómo lograr el aprendizaje de controladores por demostración, utilizando técnicas para extraer la información relevante que acompaña la acción del demostrador, y crear un mapa sensor-motor que relaciona las entradas sensoriales con comandos motrices necesarios para imitar un comportamiento o una tarea.
Los contenidos generales de la materia conforme se recogen en la memoria verificada son:
Aprendizaje por refuerzo en el contexto de la robótica. Procesos de Markov. Políticas y funciones de Valor. Algoritmos para la búsqueda de políticas. Generalización y aproximación de funciones. Aprendizaje por refuerzo multi-objetivo y multi-agente. Aprendizaje por demostración e imitación
Estos contenidos se estructurarán en la siguiente secuencia de temas y prácticas:
1. Introducción: aprendizaje por refuerzo y sus elementos. Modelización de un problema. En qué se diferencia de otras estrategias. Objetivos y refuerzos.
(temporización: 2HP, 2HNP)
2. Procesos de decisión de Markov. Entornos deterministas y estocásticos. Políticas y funciones de valor. Ecuación de Bellman y Bellman óptima.
(temporización: 2HP, 2HNP)
3. Soluciones Tabulares: Programación Dinámica. Métodos de Monte Carlo. Diferencias Temporales. Trazas de Elegibilidad. Dilema exploración-explotación.
(temporización: 8HP, 8HNP)
4. Métodos de solución aproximados: Búsqueda de la política óptima a través de métodos basados en gradiente.
(temporización: 4HP, 4HNP)
5. Introducción al aprendizaje por refuerzo profundo. Deep Q-Networks
(temporización: 4HP, 4HNP)
6. Procesos de aprendizaje por demostración e imitación.
(temporización: 4HP, 4HNP)
Se trata de una asignatura con un importante componente práctica, a través de las prácticas los alumnos se ilustrarán de manera experimental los conceptos de los temas teóricos. A través de las prácticas el alumno pondrá en juego algunos de los principales algoritmos de aprendizaje descritos en la teoría para el aprendizaje de diferentes comportamientos en robots. Se emplearán las librerías adecuadas para este tipo de aprendizajes.
Los tres primeros temas ocuparán la primera mitad de las horas presenciales de teoría y prácticas (30 HP y 45 HNP) , mientras que los temas 4, 5 y 6 se explicarán en la segunda mitad de la asignatura (30 HP, 45 HNP).
Existen muchos tutoriales, artículos introductorios disponibles en Internet.
Bibliografía básica:
R.S. Sutton, A. G. Barto, “Reinforcement Learning: an introduction”. Second Edition. A Bradford Book. The MIT Press Cambridge, Massachusetts London, England
https://web.stanford.edu/class/psych209/Readings/SuttonBartoIPRLBook2nd…
J. Torres, “Introducción al aprendizaje por refuerzo profundo. Teoría y práctica en Python”. Watch this space book series. 2021
Bibliografía complementaria
Deep Reinforcement Learning with Python: with PyTorch, TensorFlow and OpenAI Gym. Nimish Sanghi, Apress,2021
Deep Reinforcement Learning Hands-On: Apply modern RL methods to practical problems of chatbots, robotics, discrete optimization, web automation, and more, 2nd edition. Maxim Lapan. Packt 2020
Tal y como se recoge en la memoria verificada del título. Las competencias que se cubren en esta materia son las siguientes:
Competencias básicas:
---------------------------
CB2: Que los estudiantes sepan aplicar sus conocimientos a su trabajo o vocación de una forma profesional y posean las competencias que suelen demostrarse por medio de la elaboración y defensa de argumentos y la resolución de problemas dentro de su área de estudio.
CB5: Que los estudiantes hayan desarrollado aquellas habilidades de aprendizaje necesarias para emprender estudios posteriores con un alto grado de autonomía.
Competencias Generales:
--------------------------------
CG1: Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
CG2: Capacidad de resolución de problemas en el campo de la ingeniería robótica con creatividad, iniciativa, metodología y razonamiento crítico.
Competencias específicas
------------------------------
CE15: Conocer las técnicas de inteligencia artificial utilizadas en robótica industrial y de servicios, saber cómo utilizarlas en aplicaciones robóticas fijas y móviles.
Competencias Transversales
----------------------------------
CT1: Capacidad de análisis y síntesis.
CT3: Capacidad de trabajo individual, con actitud autocrítica.
CT10: Utilización de información bibliográfica y de Internet.
CT11: Utilización de información complementaria y/o puntual en lengua inglesa.
CT12: Capacidad para resolver problemas mediante la aplicación integrada de sus conocimientos.
Las clases teóricas se desarrollarán en el aula de teoría, y en ellas el profesor dará a los alumnos las directrices necesarias para la resolución de los proyectos/prácticas que se plantearán durante las prácticas de la asignatura.
La docencia interactiva se llevará a cabo en las aulas de informática y laboratorios de robótica. En las clases prácticas estableceremos métodos de enseñanza activos o productivos basados en la enseñanza problémica que faciliten la adquisición de capacidades cognitivas y de tipo creador. En las prácticas se plantearán ejercicios a través de los cuales el alumno aprenderá a manejar diferentes algoritmos de aprendizaje basados en refuerzo, con los que se lograrán comportamientos adaptativos en robots. Será necesaria programación, manejo de plataformas y librerías específicas, así como alguna herramienta de simulación.
Asimismo, en las tutorías se atenderá al alumnado para discutir, comentar, aclarar o resolver cuestiones concretas en relación con sus tareas dentro de la asignatura. Estas tutorías serán podrán ser tanto presenciales como virtuales a través de la plataforma Ms Teams.
Curso Virtual: Esta materia dispondrá de un curso virtual desenvuelto sobre la plataforma de Campus virtual de la USC, usando además la herramienta colaborativa Ms Teams. En estas se le facilitará al alumnado todo el material necesario en formato digital, además de distintas herramientas de comunicación para el apoyo, tanto de la docencia virtual como de las tutorías, incluyendo videoconferencia, chat, correo electrónico, foros…
La evaluación se llevará a cabo de dos formas: (1) Evaluación continua, se podrá llevar a cabo a través de diferentes mecanismos: a) valoración de prácticas de laboratorio en las que se tendrán que aplicar los algoritmos de aprendizaje adaptivo. Es posible que los alumnos deban exponer el trabajo realizado y mostrar los resultados alcanzados. b) propuesta de trabajos en los que se planteen casos de uso de los algoritmos vistos en teoría, estos trabajos fomentarán la creatividad del alumno, motivación, puesta en práctica de conocimientos, permitirán profundizar en algunos de los contenidos de la materia, o explorar alternativas no cubiertas directamente en los contenidos impartidos por el profesor. c) realización de algún cuestionario en el que se evalúe la comprensión por parte del alumno de los aspectos vistos en clases. d) se puede proponer también la realización de trabajos voluntarios. (2) Por otra parte, habrá una última prueba final que podrá contener ejercicios teóricos y/o prácticos. La prueba final representará el 40% del total de la asignatura, mientras que el 60% restante lo representa la evaluación continua descrita en el punto 1.
Debido a este tipo de evaluación continua, la asistencia a prácticas será obligatoria salvo causa justificada. No será posible la superación de la materia salvo que se haya asistido como mínimo al 80% de las prácticas. La no asistencia a las mismas impedirá la superación de la materia tanto en la oportunidad ordinaria como en la de recuperación.
El alumno recibirá la calificación de "non presentado" cuando no haga el examen final y no entregue un conjunto mínimo de pruebas correspondientes a la evaluación continua (y que marque el profesor como imprescindibles)
Para los casos de realización fraudulenta de ejercicios o pruebas será de aplicación lo establecido en la “Normativa de avaliación do rendemento académico dos estudantes e de revisión das cualificacións”
Segunda oportunidad, dispensa de asistencia, repetidores
--------------------------------------------------------------------
Habrá un examen de segunda oportunidad. Los alumnos podrán entregar en fecha previa el examen de la segunda oportunidad, aquellas actividades que le plantee el profesor, correspondientes a aquellas prácticas que no hubiesen superado en la convocatoria anterior. Podrá haber examen práctico o una defensa de trabajos con el profesor en la oportunidad de julio (para poder aplicar evaluación continua), para aquellos alumnos que no hayan superen la asignatura en la convocatoria de febrero.
En el caso de que a alguna persona se le conceda dispensa de asistencia se le eximirá de la asistencia a clases de teoría, pero deberá realizar las prácticas de forma presencial. Se le aplicarán los mismos criterios de evaluación que al resto del alumnado.
Los alumnos repetidores serán evaluados con los mismos criterios que los no repetidores.
El alumno recibirá a cualificación de "non presentado" cuando no haga el examen final y no entregue un conjunto mínimo de pruebas correspondientes a la evaluación continua (y que marque el profesor como imprescindibles para esta segunda oportunidad)
Para los casos de realización fraudulenta de ejercicios o pruebas será de aplicación lo establecido en la “Normativa de avaliación do rendemento académico dos estudantes e de revisión das cualificacións”
Evaluación de competencias
----------------------------------
Evidentemente la realización de los diferentes ejercicios prácticos o la prueba final permitirá la evaluación de la competencia específica (CE15). La competencia básica CB2, o las generales CG1 y CG2, se aplicarán y evaluarán mediante las prácticas de la asignatura y trabajos voluntarios (el alumno tendrá que ser capaz de adquirir las destrezas adecuadas para el aprendizaje de nuevos métodos y tecnologías, así como la resolución de problemas con creatividad e iniciativa). De hecho esta creatividad, iniciativa y pensamiento crítico se valorará de forma muy especial en las prácticas realizadas, enfoque, profundización y calidad de las soluciones que el alumno plantee a los problemas propuestos. La capacidad de análisis y síntesis se pondrá (CT1) intervendrá en la presentación/entregas de los trabajos realizados y también se valorará. Las competencias transversales CT3,CT10, CT11, CT12 se valorará a través de los trabajos voluntarios y que vayan más allá de los contenidos explicados por el profesor directamente en clase. Es aquí también donde se pondrá en juego la competencia CB5. Se podrá dedicar puntuación para la valoración de estas competencias a través de los trabajos voluntarios realizados.
Clase expositivas Clases magistrales 2,4(ECTS) 24(HP) 24(HNP)
Clases interactivas Laboratorio y aulas de informática 2,4(ECTS) 24(HP) 48(HNP)
Tutoría en grupo 0,3(ECTS) 3(HP) 4(HNP)
Tutoría individualizada 0,4(ECTS) 4(HP) 7(HNP)
Evaluación y revisión 0,5(ECTS) 5(HP) 7(HNP)
Total 6,0(ECTS) 60(HP) 90(HNP)
HP=Horas Presenciales
HNP=Horas no presenciales