cambiar a curso:   2019-20   2021-22


Grado en Ingeniería Informática


TRABAJOS FIN DE GRADO
curso: 2020-21

Diseño de agentes inteligentes para jugar al juego de cartas "Presidente"


Tecnologías Específicas

Computación
 


Descripcion y Objetivos

Los juegos siempre han tenido mucho que ver con el desarrollo de las técnicas de inteligencia artificial y esta relación se mantiene en la actualidad, basta revisar la prensa de los últimos dos años para contrastar los avances acaecidos en el diseño de jugadores automáticos basados en técnicas de inteligencia artificial y aprendizaje automático para juegos de mesa como el ajedrez o Go, pero también en el mundo de los vídeojuegos.

En este TFG abordamos el juego del Presidente, un juego de baraja española muy jugado sobre todo en entornos universitarios. Al contrario de otros juegos en los que el jugador está obligado a realizar ciertas jugadas en función de sus cartas, en el presidente el jugador siempre tiene la opción de pasar, lo que incrementa enormemente la cantidad de jugadas posibles y, sobre todo, la incertidumbre sobre las cartas que posee.

Nuestro objetivo es desarrollar un juego totalmente funcional en el que el jugador o jugadores automáticos basen su "lógica" en técnicas de inteligencia artificial. En particular nos proponemos desarrollar al menos dos agentes diferentes, tres si el tiempo y la complejidad de los anteriores lo permite:

1.- Agente basado en reglas que capturen la experiencia de jugadores expertos y permitan al agente jugar con diferentes estrategias.

2.- Agente basado en técnicas de búsqueda con adversario (alfa-beta) y que incorporen técnicas de monte carlo para poder abordar jugadas en horizonte finito.

Si el tiempo lo permite podrán abordarse otros tipos de agente, p.e. basados en aprendizaje automático.

 

 


Metodología y Competencias

Metodología:

  1. Revisar el contexto del problema y la literatura disponible.
  2. Diseñar e implementar una aplicación que permita jugar partidas del Presidente.
  3. Adquisición de conocimiento experto y representación del mismo en forma de un sistema basado en reglas.
  4. Implementación de un agente basado en las reglas inferidas. Necesitará diseñar e implementar un pequeño motor de inferencia o usar una API adecuada.
  5. Diseño e implementación de un agente basado en técnicas de búsqueda con adversario.
  6. [opcional] Diseño e implementación de un agente basado en aprendizaje automático, probablemente basado en técnicas de aprendizaje por refuerzo.
  7. Evaluación experimental mediante simulación y enfrentando el agente a los implementados en aplicaciones disponibles para móvil (modo competición).
  8. Redacción de la memoria.

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 dato.
 


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
ALEDO SÁNCHEZ, JUAN ÁNGEL
 

Alumno


MANDZYAK -, MYKOLA