Treffer: Creació del Joc Snake i Implementació d'una IA Bàsica

Title:
Creació del Joc Snake i Implementació d'una IA Bàsica
Contributors:
Antens, Coen Jacobus
Publication Year:
2024
Collection:
Universitat Autònoma de Barcelona: Dipòsit Digital de Documents de la UAB
Document Type:
Dissertation thesis
File Description:
application/pdf
Language:
Catalan; Valencian
Relation:
https://ddd.uab.cat/record/300047; urn:oai:ddd.uab.cat:300047
Rights:
open access ; Aquest document està subjecte a una llicència d'ús Creative Commons. Es permet la reproducció total o parcial, la distribució, i la comunicació pública de l'obra, sempre que no sigui amb finalitats comercials, i sempre que es reconegui l'autoria de l'obra original. No es permet la creació d'obres derivades. ; https://creativecommons.org/licenses/by-nc-nd/4.0/
Accession Number:
edsbas.F1E05AFB
Database:
BASE

Weitere Informationen

Aquest projecte presenta la implementació del joc Snake utilitzant Pygame i la integració d'una IA bàsica basada en Reinforcement Learning (RL) mitjançant Pytorch. Primerament, es va crear el joc Snake per a que el jugui una persona humana, amb el seu corresponent testing que va aconseguir un 99% de coverage. Posteriorment, es va desenvolupar un agent que aprèn a jugar al joc Snake utilitzant l'algorisme de Deep Q-Learning, el qual aprofita les xarxes neuronals profundes per avaluar les accions en diferents estats del joc. Durant l'entrenament, l'agent utilitza una política ε-greedy per explorar i explotar estratègies, millorant progressivament el seu rendiment. Els resultats mostren una millora en les puntuacions mitjanes i màximes al llarg de 10.000 episodis d'entrenament. Tot i això, l'agent té molt marge de millora i no està completament desenvolupat, fent que l'agent no reconegui bé les accions o faci el mateix moviment durant l'avaluació. Aquestes limitacions indiquen la necessitat d'ajustar els paràmetres d'entrenament i de continuar desenvolupant l'avaluador per garantir una millor adaptació i rendiment de l'agent. ; This project presents the implementation of the Snake game using Pygame and the integration of a basic AI based on Reinforcement Learning (RL) using PyTorch. Firstly, the Snake game was created for a human player, with its corresponding testing achieving 99% coverage. Subsequently, an agent was developed to learn to play the Snake game using the Deep QLearning algorithm, which leverages deep neural networks to evaluate actions in different game states. During training, the agent uses an ε-greedy policy to explore and exploit strategies, progressively improving its performance. The results show an improvement in average and maximum scores over 10,000 training episodes. However, the agent has a lot of room for improvement and is not fully developed, as it struggles to recognize actions correctly or performs the same movement during evaluation. These limitations indicate the need to adjust ...