|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2020-21
Estudio de la técnica de aprendizaje profundo combinado con refuerzo y su aplicación a la programación de un agente inteligente para jugar videojuegos retro. |
Tecnologías Específicas
Computación
Descripcion y Objetivos
Desde la irrupción de las técnicas de Aprendizaje Profundo (deep learning) su éxito en la aplicación de problemas de visión y procesamiento de señal sobre todo no han dejado de marcar hitos. La definición de redes neuronales con gran cantidad de capas (de ahí la profundidad) y el uso de capas específicas (convolución, pooling, etc.), ha permitido lograr resultados antes nuca vistos.
Los juegos no han sido ajenos a esta irrupción, más bien disrupción, tecnológica y programas como AlfaGo han marcado el hito de derrotar claramente al campeón mundial en ese momento. Además, la combinación del aprendizaje profundo con las técnicas de aprendizaje por refuerzo ha dado como resultado un nuevo paradigma conocido como "Deep Reinforcement Learning", cuyo uso en el dominio de los juegos ha revolucionado el panorama, permitiendo que agentes implementados usando está técnica aprendan a partir de 0, es decir, jugando contra sí mismos y sin integrar conocimiento a priori. Así, programas como AlfaZero (go y chess) han conseguido superar a sus predecesores, explorando líneas de juego no consideradas previamente por jugadores humanos.
En este TFG el objetivo es estudiar las técnicas de Deep-Q Learning, llamadas así por el uso del algoritmo Q-Learning para la fase de aprendizaje por refuerzo. Posteriormente se revisarán implementaciones actuales y se programará un agente para jugar vídeojuegos "retro" disponibles en la plataforma OpenAI Gym.
Metodología y Competencias
Metodología:
- Se estudiará la literatura actual y el software disponible en relación a los algoritmos de aprendizaje por refuerzo y aprendizaje profundo, así como su combinación.
- Se estudiará la plataforma OpenAI Gym, se seleccionará un subconjunto de juegos para probar los agentes implementados.
- Se diseñarán e implementarán en OpenAI Gym los agentes usando las librerías seleccionadas.
- Se realizará un estudio experimental y todo quedará documentado en la memoria del TFG.
Competencias:
Se trabajarán principalmente (en distinto grado) las siguientes competencias específicas de la tecnología de computación:
- Capacidad para evaluar la complejidad computacional de un problema, conocer estrategias algorítmicas que puedan conducir a su resolución y recomendar, desarrollar e implementar aquella que garantice el mejor rendimiento de acuerdo con los requisitos establecidos.
- Capacidad para conocer los fundamentos, paradigmas y técnicas propias de los sistemas
inteligentes y analizar, diseñar y construir sistemas, servicios y aplicaciones informáticas
que utilicen dichas técnicas en cualquier ámbito de aplicación.
- Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una
forma computable para la resolución de problemas mediante un sistema informático en
cualquier ámbito de aplicación, particularmente los relacionados con aspectos de
computación, percepción y actuación en ambientes entornos inteligentes.
- Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar e
implementar aplicaciones y sistemas que las utilicen, incluyendo las dedicadas a extracción
automática de información y conocimiento a partir de grandes volúmenes de datos.
Medios a utilizar
Ordenadores personales, compiladores y entornos de programación. Todo disponible en la ESIIAB.
Bibliografía
Libros y manuales de inteligencia artificial y aprendizaje automático. Libros y manuales de lenguajes de programación y librerías específicas de aprendizaje automático. Todo disponible en la ESIIAB y/o en internet.
Tutores GAMEZ MARTIN, JOSE ANTONIO PUERTA CALLEJON, JOSE MIGUEL | Alumno JÁTIVA JIMÉNEZ, MIGUEL-ENRIQUE
|
| |