cambiar a curso:   2016-17   2018-19


Grado en Ingeniería Informática


TRABAJOS FIN DE GRADO
curso: 2017-18

Estudio mediante técnicas de análisis de datos del ELO en jugadores de ajedrez


Tecnologías Específicas

Computación
 


Descripcion y Objetivos

Existen disponibles diferentes bases de datos online que recogen los resultados de enfrentamientos en torneos de ajedrez. También hay información disponible en la red sobre el ranking de cada jugador (ELO) en función del tiempo. Por otro lado se dispone de varios paquetes en R relativos a este problema:  ‘PlayerRatings’ y ‘elo’. Recientemente, se han lanzado dos retos relacionados con aprendizaje automático en la plataforma kaggle: uno de los intenta encontrar una medida mejor que el ELO para medir el ranking relativo de un individuo y otra que trata de predecir el ELO de un jugador en base a una única partida. Todo ésto da una idea tanto de la relevancia del problema, como de las múltiples fuentes y herramientas disponibles.

En este trabajo buscamos una forma de integrar datasets e implementaciones relacionadas con el ELO, de forma que se pueda, a partir de la información y modelos disponibles,  establecer curvas de rendimiento características. El modelado de dichas curvas, así como la caracterización del periodo de "máximo crecimiento" es una utilidad muy interesante, sobre todo de cara al entrenador de ajedrez. La idea es poder encontrar patrones en la evolución de un jugador, que lo puedan caracterizar, y ayudar a un posterior tratamiento de esa información con el fin de mejorar su rendimiento.

Este proyecto plantea el desarrollo de algunas herramientas basadas en estas ideas, y cuya implementación se realizará en R (http://www.r-project.org/), o bien (según el desarrollo del proyecto, en su 'adaptacoṕn pandas dentro de Python). Se trata de entornos software gratuitos que integra el cómputo estadístico con funciones y herramientas de visualización.

 


Metodología y Competencias

El desarrollo de este trabajo conlleva distintas tareas:

  1. Estudio del problema, para entender los principales elementos y la utilidad de las herramientas que se pretenden construir.
  2. Tratamiento de datos de entrada a varios niveles: búsqueda de bases de datos, selección, integración y pre-procesado de las mismas.
  3. Visualización de la curva de rendimiento y de otras componentes relacionadas. A partir de ello, estudio de los modelos que mejor se adaptan a esos datos.
  4. Aprendizaje y parametrización de dichos modelos aplicados a nuestro problema.
  5. Desarrollo de herramientas y funciones asociadas de utilidad para análisis, predicción, diagnóstico y/o actuación sobre el plan de entrenamiento de un jugador de ajedrez.

Este TFG permite completar las competencias específicas [CM1][CM4] y [CM5] de la Intensificación de Computación, es decir, se trabajarán principalmente (en distinto grado) las siguientes competencias específicas de la tecnología de computación:

  • Capacidad para tener un conocimiento profundo de los principios fundamentales y modelos de la computación y saberlos aplicar para interpretar, seleccionar, valorar, modelar, y crear nuevos conceptos, teorías, usos y desarrollos tecnológicos relacionados con la informática.
  • 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.
 


Medios a utilizar

  • Repositorios online de ajedrez, y quizás datasets de la  plataforma kaggle
  • Entorno R (software gratuito).
  • Pyhton 3.5, integrándolo dentro de iPython para su uso en libretas (Jupyter), uso de la librería pandas, y posiblemente también numpy y matplotlib.
  • Necesario un PC con conexión a Internet.
  • Es posible que se necesite usar algún programa como 'Chessbase light' para procesar las partidas
 


Bibliografía

  • The Rating of Chess Players, Past and Present. Arpad E. Elo, Ishi Press, 2008
  • https://www.kaggle.com/c/chess#description
  • https://www.kaggle.com/c/finding-elo
  • Fernando Pérez and Brian E. Granger. IPython: A System for Interactive Scientific Computing, Computing in Science & Engineering, 9, 21-29 (2007),
  • Wes McKinney. Data Structures for Statistical Computing in Python, Proceedings of the 9th Python in Science Conference, 51-56 (2010)
  • Ross Ihaka and Robert Gentleman. R: A Language for Data Analysis and Graphics, 1995.
 


Tutores


FLORES GALLEGO, MARIA JULIA
ALONSO MARTINEZ, MARIA TERESA
 

Alumno