Desarrollo de un agente mediante Deep Q-Learning en un entorno de juegos de plataformas
Hoy en día cada vez es más frecuente la interacción entre las personas y los sistemas informáticos, por lo que las técnicas de aprendizaje máquina cada vez son más relevantes y necesarias en nuestras vidas ya que pueden tener aplicación en casi cualquier ámbito. Este proyecto de investigación consis...
| Autor: | |
|---|---|
| Tipo de recurso: | tesis de maestría |
| Fecha de publicación: | 2020 |
| País: | España |
| Institución: | Universitat Oberta de Catalunya (UOC) |
| Repositorio: | O2, repositorio institucional de la UOC |
| OAI Identifier: | oai:openaccess.uoc.edu:10609/119086 |
| Acceso en línea: | http://hdl.handle.net/10609/119086 |
| Access Level: | acceso abierto |
| Palabra clave: | deep learning redes neuronales aprendizaje por refuerzo aprendizaje profundo xarxes neuronals aprenentatge per reforç aprenentatge profund reinforcement learning neural networks Neural networks (Computer science) -- TFM Xarxes neuronals (Informàtica) -- TFM Redes neuronales (Informática) -- TFM |
| Sumario: | Hoy en día cada vez es más frecuente la interacción entre las personas y los sistemas informáticos, por lo que las técnicas de aprendizaje máquina cada vez son más relevantes y necesarias en nuestras vidas ya que pueden tener aplicación en casi cualquier ámbito. Este proyecto de investigación consiste en la aplicación de la técnica de aprendizaje por refuerzo profundo al juego de plataformas "Super Mario Bros". Concretamente, en el proyecto se desarrolla la implementación del algoritmo Q-Learning, uno de los algoritmos más famosos dentro de la técnica del aprendizaje por refuerzo. Además del aprendizaje por refuerzo, debido a la complejidad del problema, se han introducido redes neuronales convolucionales, desarrollando así lo que se conoce como aprendizaje por refuerzo profundo (DQN) Con el uso de este algoritmo se pretende lograr que el personaje del videojuego sea capaz de superar los niveles que se le planteen en base a la experiencia obtenida a lo largo de su exploración de dichos niveles. Para implementar este algoritmo se ha utilizado el lenguaje de programación Python, que es el más potente para el desarrollo de sistemas de iunteligencia artificial, con sus librerías TensorFlow y Keras para la implementación de las redes neuronales A lo largo de la memoria se expone tanto el análisis, diseño e implementación del sistema, como la presentación de los resultados obtenidos y su interpretación. Para finalizar el trabajo se describe la serie de conclusiones obtenidas junto con el planteamiento del posible trabajo futuro a modo de ampliación y mejora del mismo. |
|---|