Universidad Complutense de Madrid
E-Prints Complutense

Generación automática de contenidos para videojuegos mediante técnicas evolutivas

Impacto

Downloads

Downloads per month over past year



Lapuente Jiménez, Samuel and Lázaro Sevilla, Álvaro (2017) Generación automática de contenidos para videojuegos mediante técnicas evolutivas. [Trabajo fin de Grado]

[img]
Preview
PDF
3MB


Abstract

La computación evolutiva es una rama de la IA que engloba un conjunto de técnicas que, a través de la simulación de procesos naturales bioinspirados, son utilizados para la resolución de problemas complejos de búsqueda y aprendizaje. Este trabajo presenta una serie de técnicas evolutivos aplicadas a la generación automática de contenidos en videojuegos. El objetivo de este Trabajo de Fin de Grado es automatizar procesos tediosos y repetitivos propios de un videojuego mediante el uso de estas técnicas y utilizarlas para crear un videojuego simple. Para ello hemos dividido el trabajo en dos bloques principales: un generador de mapas sobre los que se desarrollará el juego -formados por diferentes salas- y un generador de estrategias o Inteligencias Artificiales (IAs) para los enemigos contra los que se enfrenta el jugador en el videojuego.
Los mapas sobre los que se desarrolla el juego se generan utilizando un algoritmo evolutivo. La estructura de datos que se ha considerado utilizar para representar los mapas del videojuego es un grafo que representa el genotipo del individuo que haremos evolucionar. Las salas del mapa estarían representadas mediante los nodos del mismo, mientras que los pasillos que las unen serían las aristas. Por otra parte, la IA de los enemigos se obtendrá utilizando Programación Genética, técnica evolutiva que permite evolucionar programas o estrategias codificadas como expresiones. También se presenta un Framework de Programación Genética que permite experimentar con las técnicas de generación de IAs, permitiendo modificar y ajustar cualquiera de los parámetros involucrados en el proceso.

Resumen (otros idiomas)

Repositorio institucional Eprints Complutense Evolutionary computing is a branch of AI that includes a set of techniques that, through the simulation of natural processes and genetics, are used to solving complex problems of search and learning. These problems can be solved through EAs. The aim of this project is to automate tedious process involved in a videogame using evolutionary techniques and design a simple video game using them. For this purpose an automatic map generator is used and some AIs will be generated representing the enemies in the game. The maps will be generated through a GA. The data structure that has been considered to represent the video game maps is a graph. The rooms would be represented by the nodes, while the hallways that unite rooms would be the edges. On the other hand, the AI of the enemies, will be managed through genetic programming. This algorithm is in charge of the behaviour, both before and after of detecting the player. We have made a framework for genetic programming which allows to experiment and test different techniques for the AI generation, allowing to modify and adjust any parameter desired involved in the process.

Item Type:Trabajo fin de Grado
Additional Information:

Trabajo de Fin de Grado en ingeniería de Computadores e Ingeniería del Software (Universidad Complutense, Facultad de Informática, curso 2016/2017)

Directors:
DirectorsDirector email
Cervigón Ruckauer, Carlos
Uncontrolled Keywords:Algoritmo evolutivo, Algoritmo genético, Mazmorra, Inteligencia artificial, Grafo, Programación genética, Árbol, Selección, Mutación, Cruce
Palabras clave (otros idiomas):Evolutionary algorithm, Genetic algorithm, Dungeon, Artificial intelligence, Graph, Genetic programming, Tree, Selection, Mutation, Crossover
Subjects:Sciences > Computer science > Artificial intelligence
Título de Grado:Grado en ingeniería de Computadores e Ingeniería del Software
ID Code:44502
Deposited On:07 Sep 2017 08:53
Last Modified:07 Sep 2017 11:43

Origin of downloads

Repository Staff Only: item control page