|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2020-21
Diseño de agentes inteligentes basados en heurísticas y computación evolutiva para jugar a Othello |
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 de tablero Othello. Othello, al igual que las damas inicialmente y posteriormente el ajedrez ha sido un juego ampliamente modelado desde las matemáticas y la inteligencia artificial. No se trata por tanto en este proyecto de crear un "agente" que supere al estado del arte, si no, de un TFG metodológico que permita implementar distintos tipos de agentes, sobre todo heurísticos (ya que en Othello es fácil discernir ciertas combinaciones), pero también basados en aprendizaje automático (clasificación supervisada y refuerzo). Además se programará un entorno totalmente "jugable" y se realizará una evaluación experimental que permita comparar los distintos agentes desde varios puntos de vista: rendimiento en el juego, recursos necesarios, etc.
Metodología y Competencias
Metodología:
- Revisar el contexto del problema y la literatura disponible.
- Diseñar e implementar una aplicación que permita jugar partidas de Othello.
- Adquisición de conocimiento experto y representación del mismo en forma de un sistema basado en heurísticas.
- Estudio de paradigmas de aprendizaje automático que permitan abordar la adquisición de conocimiento útil para jugar a Othello.
- Implementación de los distntos agentes en el entorno seleccionado.
- Evaluación experimental mediante simulación y enfrentando el agente a los implementados en aplicaciones disponibles (modo competición).
- 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 ALEDO SÁNCHEZ, JUAN ÁNGEL GAMEZ MARTIN, JOSE ANTONIO | Alumno ROYO LÓPEZ, JOSÉ ÁNGEL
|
| |