Conceptos Avanzados en Inteligencia Computacional

Usted está aquí

Créditos
4
Tipos
Optativa
Requisitos
Esta asignatura no tiene requisitos, pero tiene capacidades previas
Departamento
CS
Mail
El objetivo de este curso es introducir y profundizar en el marco del aprendizaje por refuerzo, donde un agente aprende el comportamiento adecuado para resolver sus objetivos a partir de interacciones directas del agente con el entorno y sin conocimiento previo del mundo.

Específicamente, el curso iniciará introduciendo los conceptos más básicos de aprendizaje por refuerzo hasta alcanzar los algoritmos más modernos que son estado del arte. A continuación el curso profundizará en diferentes técnicas avanzadas que intentan ampliar el marco descrito a (1) un aprendizaje más eficiente a partir de técnicas de exploración y de modelización del entorno, (2) a un aprendizaje continuo del agente a diferentes tareas necesario para una Inteligencia Artificial General y (3) al aprendizaje automático de comportamientos en sistemas multi-agentes sea ya en entornos cooperativos o competitivos.

Al terminar, el estudiante conocerá el estado del arte en el aprendizaje por refuerzo y los dominios donde es adecuado aplicarlo, y habrá implementado diferentes algoritmos en los entornos de programación más actuales en el área.

Profesorado

Responsable

  • Mario Martín Muñoz ( )

Horas semanales

Teoría
1.8
Problemas
0
Laboratorio
0.9
Aprendizaje dirigido
0.3
Aprendizaje autónomo
5

Competencias

Competencias Técnicas Genéricas

Genéricas

  • CG3 - Capacidad para la modelización, cálculo, simulación, desarrollo e implantación en centros tecnológicos y de ingeniería de empresa, particularmente en tareas de investigación, desarrollo e innovación en todos los ámbitos relacionados con la Inteligencia Artificial.
  • CG4 - Capacidad para la dirección general, dirección técnica y dirección de proyectos de investigación, desarrollo e innovación, en empresas y centros tecnológicos, en el ámbito de la Inteligencia Artificial.

Competencias Técnicas de cada especialidad

Académicas

  • CEA3 - Capacidad de comprender los principios básicos de funcionamiento de las técnicas principales de Aprendizaje Automático, y saber utilizarlas en el entorno de un sistema o servicio inteligente.
  • CEA9 - Capacidad de comprender las técnicas avanzadas de Sistemas Multiagentes, y saber diseñar, implementar y aplicar estas técnicas en el desarrollo de aplicaciones, servicios o sistemas inteligentes.
  • CEA11 - Capacidad de comprender las técnicas avanzadas de Inteligencia Computacional, y saber diseñar, implementar y aplicar estas técnicas en el desarrollo de aplicaciones, servicios o sistemas inteligentes.

Profesionales

  • CEP2 - Capacidad de resolver los problemas de toma de decisiones de las diferentes organizaciones, integrando herramientas inteligentes.
  • CEP3 - Capacidad de aplicación de las técnicas de Inteligencia Artificial en entornos tecnológicos e industriales para la mejora de la calidad y la productividad.
  • CEP8 - Capacidad de respetar el entorno ambiental y diseñar y desarrollar sistemas inteligentes sostenibles.

Competencias Transversales

Trabajo en equipo

  • CT3 - Ser capaz de trabajar como miembro de un equipo interdisciplinar ya sea como un miembro mas, o realizando tareas de direccion con la finalidad de contribuir a desarrollar proyectos con pragmatismo y sentido de la responsabilidad, asumiendo compromisos teniendo en cuenta los recursos disponibles.

Objetivos

  1. Comprender la necesidad, los fundamentos y las particularidades del aprendizaje conductual y las diferencias que tiene con el aprendizaje automático supervisado y no supervisado.
    Competencias relacionadas: CEA3, CEA11, CG3, CG4,
  2. Conocer qué tipo de problemas se pueden modelizar como un problema de aprendizaje por refuerzo e identificar las técnicas que se pueden aplicar para resolverlas
    Competencias relacionadas: CEA3, CEA11, CEP2, CEP3,
  3. Comprender los algoritmos más importantes y el estado del arte en el área del aprendizaje por refuerzo.
    Competencias relacionadas: CEA3, CEA11, CG3, CG4,
  4. Saber formalizar computacionalmente un problema del mundo real como aprendizaje para reforzamiento y saber implementar en los entornos más actuales los algoritmos de aprendizaje que los resuelve
    Competencias relacionadas: CG4, CEP2, CEP3, CEP8, CT3,
  5. Conocer y entender las técnicas más avanzadas y recientes en el campo de los sistemas Multi-Agente para aprender a cooperar o competir.
    Competencias relacionadas: CEA9, CG4, CEP2, CEP3, CEP8, CT3,
  6. Comprender las dificultades e ineficiencias del enfoque de aprendizaje por refuerzo y proponer las técnicas y enfoques que podrían resolverlas.
    Competencias relacionadas: CEA11, CG3, CG4, CEP3, CEP8,

Contenidos

  1. Introducción: Aprendizaje del comportamiento en agentes y descripción de los principales elementos en el aprendizaje de refuerzo
    Intuición, motivación y definición del marco del aprendizaje pro refuerzo (RL). Elementos clave en RL.
  2. Encontrando políticas óptimas mediante la programación dinámica
    Como aprender un comportamiento con conocimiento completo del modelo del mundo: solución algebraica, evaluación iterada de políticas y evaluación iterada de valores.
  3. Introducción a los enfoques sin modelos del mundo.
    Algoritmos básicos para el aprendizaje por refuerzo: Monte-Carlo, Q-learning, Sarsa, TD (lambda). La necesidad de exploración. Diferencias entre los métodos On-policy y Off-policy
  4. Aproximación de funciones en el aprendizaje por refuerzo
    La necesidad de la aproximación de funciones y métodos incrementales en RL. El enfoque de Gradient Descent. RL con aproximación de función lineal. La tríada mortal para la aproximación de funciones en RL. Métodos por lotes y redes neuronales para la aproximación de funciones.
  5. Aprendizaje por refuerzo profundo (DRL)
    Revolución en RL introduciendo Deep Learning. Como tratar la mortal tríada con el algoritmo DQN. Aplicación de DQN el caso de los juegos Atari. Evoluciones del algoritmo DQN: Double DQN, Prioritized Experience Replay, aprendizaje en múltiples pasos y funciones de valor distribuidas. Rainbow: el algoritmo de última generación para un espacio de acción discreto.
  6. Temas avanzados: Aprendizaje por refuerzo basado en modelos (MBRL)
    Separar el aprendizaje de la política del aprendizaje de un modelo del mundo tiene algunos beneficios y algunos problemas. Eficiència de l'aprenentatge en EL per al·lucinació i imaginació.
  7. Métodos del gradiente en la política
    Qué hacer en espacios de acción continuos. Cómo las políticas probabilísticas permiten aplicar el método de gradiente directamente en la red de políticas. El algoritmo REINFORCE. Los algoritmos Actor-Critic. Algoritmos de última generación en espacios de acción continuos: DDPG, TD3 y SAC.
  8. Temas avanzados: Como tratar el problema del refuerzo esparso
    El problema de la recompensa esparsa. Introducción a técnicas avanzadas de exploración: curiosidad y empoderamiento en RL. Introducción al aprendizaje curricular para facilitar el aprendizaje del objetivo. RL jerárquico para aprender tareas complejas. El aprendizaje de las funciones de valor universales y Hindsight Experience Replay (HER).
  9. Temas avanzados: Hacia el aprendizaje continuo la vida en los agentes
    ¿Es RL un camino para obtener una Inteligencia Artificial General? Aprendizaje multitarea en RL, Transferencia de aprendizaje en RL y Meta-aprendizaje en RL. Enfoques de última generación.
  10. Aprendizaje por refuerzo en el marco de múltiples agentes
    Aprendizaje de comportamientos en un entorno donde actúan varios agentes. Aprendizaje de conductas cooperativas, Aprendizaje de conductas competitivas y casos mixtos. Algoritmos de última generación. El caso especial de los juegos: el caso AlfaGo y la extensión a Alfa-Zero.

Actividades

Actividad Acto evaluativo


Introducción, motivación y ejemplos de aplicaciones exitosas en RL

Desarrollo del tema correspondiente de la asignatura y ejercicios de laboratorio.
Objetivos: 1 2
Contenidos:
Teoría
1h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
1h

Definición del marco RL. Elementos clave en RL. Encontrar la política óptima mediante la iteración de valores y la iteración de políticas

Desarrollo del tema correspondiente de la asignatura y ejercicios de laboratorio
Objetivos: 1 2 3
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
1h
Aprendizaje dirigido
0h
Aprendizaje autónomo
6h

Introducción a los enfoques sin modelos. Monte-Carlo, Q-learning, Sarsa, TD (lambda)

Desarrollo del tema correspondiente de la asignatura
Objetivos: 1 2 3
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
1h
Aprendizaje dirigido
0h
Aprendizaje autónomo
4h

Aproximació de funcions en RL

Desarrollo del tema correspondiente de la asignatura
Objetivos: 3 6 4
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
1h
Aprendizaje dirigido
0h
Aprendizaje autónomo
2h

Aprendizaje por refuerzo profundo

Desarrollo del tema correspondiente de la asignatura
Objetivos: 3 6 4
Contenidos:
Teoría
3h
Problemas
0h
Laboratorio
1h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h

Métodos del gradiente en la política

Desarrollo del tema correspondiente de la asignatura y ejercicios de laboratorio
Objetivos: 3 6
Contenidos:
Teoría
3h
Problemas
0h
Laboratorio
0.5h
Aprendizaje dirigido
0h
Aprendizaje autónomo
9h


Examen final


Objetivos: 1 2 3 5 6 4
Semana: 15 (Fuera de horario lectivo)
Tipo: examen final
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
4h

Estudio del estado del arte en un trabajo de tema avanzado


Objetivos: 5 6 4
Semana: 11
Tipo: entrega
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h

Teoría
6h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h

Teoría
2h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
4h

Metodología docente

Las clases de teoría introducen todos los conocimientos, las técnicas y los conceptos necesarios que se ponen en práctica en las clases de laboratorio. Las clases de teoría serán mayoritariamente del tipo clase magistral, pero algunas de ellas pueden ser del tipo clase expositiva participativa, con participación de los estudiantes en la resolución de problemas o ejercicios.

Las clases de laboratorio tienen como objetivo que los estudiantes trabajen con herramientas de software que permiten aplicar las técnicas presentadas en teoría a problemas reales. Los estudiantes usarán estas herramientas para desarrollar su trabajo práctico de la asignatura, que constará de una parte de trabajo autónomo individual y una parte de trabajo en equipo de 2/3 personas. Una parte del tiempo de las clases de laboratorio se dedicará a la orientación y supervisión por parte del profesor de estos trabajos autónomos y cooperativos.

Método de evaluación

La nota (M) se calcula de la siguiente manera:

M = 0,20 * Prueba + 0,30 * Práctico + 0,5 * Teórico

dónde

* Quiz * se refiere a un Quiz con preguntas teóricas y conceptuales sobre la primera parte del curso
* Práctico * se refiere a la implementación de un algoritmo RL en un problema realizado en Python
* Teórico * se refiere a un estudio del estado del arte en un trabajo de tema avanzado a ser elegido por el alumno

Bibliografía

Básica:

Complementaria:

Web links

Capacidades previas

Conceptos básicos de Deep Learning.