Programación evolutiva y redes neuronales artificiales implementadas en un videojuego

Vacas Ranera, Carlos (2018). Programación evolutiva y redes neuronales artificiales implementadas en un videojuego. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Descripción

Título: Programación evolutiva y redes neuronales artificiales implementadas en un videojuego
Autor/es:
  • Vacas Ranera, Carlos
Director/es:
  • Talavera Muñoz, Edgar
Tipo de Documento: Proyecto Fin de Carrera/Grado
Grado: Grado en Ingeniería del Software
Fecha: 2018
Materias:
Escuela: E.T.S.I. de Sistemas Informáticos (UPM)
Departamento: Sistemas Informáticos
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img] PDF (Document Portable Format) - Acceso permitido solamente a usuarios en el campus de la UPM - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (1MB)
[img] Archivo comprimido ZIP (Anexos) - Acceso permitido solamente a usuarios en el campus de la UPM
Descargar (59MB)

Resumen

Este proyecto inicia con la idea de dotar a las IA de un juego en 2D con una inteligencia más compleja que comportamientos basados en persecución o en seguir rutas predefinidas. Por ello se ha procedido a investigar distintas formas de lograr unos Non Player Characters (NPCs) capaces de actuar de manera racional, que pudieran aprender y adaptarse al usuario. Después de contrastar diversas opciones como: redes neuronales, enjambres de partículas, agentes inteligentes, algoritmos genéticos, generación procedural de escenarios y/o historias se seleccionaron las siguientes tecnologías: Redes Neuronales Artificiales (ANN), para el procesamiento del entorno y la toma de decisiones. Algoritmos Genéticos, para la evolución y adaptación al medio de las ANN, ya que los métodos clásicos de entrenamiento para redes no son adecuados para este caso. Todo lo anterior representando el estado interno de agentes inteligentes, recibiendo datos de su entorno y tomando decisiones sobre sus acciones. Para el desarrollo se ha empleado una metodología basada en prototipos, la cual nos permitió evaluar el trabajo según se realizaba, probarlo y dirigirlo en la dirección correcta, mientras que se contaba con algo tangible para trabajar. La implementación se realizó en Unity ya que se trata de framework de desarrollo de videojuegos, adaptable y multiplataforma, que además dispone de muchas utilidades para videojuegos ya implementadas como pueden ser físicas, gráficos, colliders, animaciones, cámaras... Se ha desarrollado un sistema con entidades capaces relacionarse y tener descendencia, para que a lo largo de las generaciones se adapte y mejore su desempeño. Abstract: This project starts with the idea of providing the AI with a 2D game with a more complex intelligence than behaviors based on persecution or following predefined routes. Therefore, we have investigated different ways to achieve Non Player Characters capable of acting in a rational manner, that could learn and adapt to the user. After contrasting various options such as: neural networks, particle swarms, intelligent agents, genetic algorithms, procedural generation of scenarios and/or histories, the following technologies were selected: Artificial Neural Networks, for processing the environment and making decisions. And Genetic Algorithms, for the evolution and adaptation to the environment of the ANN, since the classic methods of training for networks are not suitable for this case. All the above representing the internal state of intelligent agents, receiving data from their environment and making decisions about their actions. For the development, a methodology based on prototypes was used, which allowed us to evaluate the work as it was done, test it and direct it in the right direction, while there was something tangible to work with. The implementation was done in Unity since it is a videogame development framework, adaptable and multiplatform compatible, which also has many utilities for video games already implemented, such as physics, graphics, colliders, animations, cameras ... A system has been developed with entities able to relate and have offspring, so that throughout the generations their performance is adapted and improved.

Más información

ID de Registro: 51927
Identificador DC: http://oa.upm.es/51927/
Identificador OAI: oai:oa.upm.es:51927
Depositado por: Biblioteca Universitaria Campus Sur
Depositado el: 13 Sep 2018 07:15
Ultima Modificación: 13 Sep 2018 07:15
  • GEO_UP4
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • InvestigaM
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM