Entrenador de Dominó basado en Inteligencia Artificial

Luis Ángel Ramírez y Sebastián Manuel Sánchez
Estudiantes Escuela de Ingeniería en Computación y Telemática, Campus Santiago
PUCMM

El juego del Dominó

¿Qué dominicano no ha experimentado una partida de dominó? Desde una perspectiva sociológica, este juego engloba varios aspectos importantes, como elementos educativos, culturales y deportivos al evaluar la agudeza mental en distintos países. En este sentido, surgen los instintos competitivos y la necesidad de aprender a hacer las cosas de la manera correcta.

Por esta razón, la Pontificia Universidad Católica Madre y Maestra se une al movimiento tecnológico desarrollando un entrenador (COACH) de dominó con visión computacional e inteligencia artificial como parte de un proyecto de grado dentro de la carrera de Ciencias de la Computación. Este COACH busca entrenar a cualquier persona interesada en el juego, asegurando que todas las partes jueguen limpio, aun si se desconoce el proceder en el dominó, respetando las reglas, garantizando así la mejor experiencia para todos los jugadores.

En esta entrada de este blog de innovación se presentará la implementación de un entrenador de Dominó basado en la aplicación de visión computacional e inteligencia artificial. El sistema desarrollado muestra las distintas aplicaciones que pueden tener estas tendencias de los sistemas inteligentes en nuestra vida diaria.

Aplicando Tecnología al juego de Dominó

En el proyecto de Herrero, D.G., llamado «Reconocimiento de fichas de dominó mediante técnicas de visión artificial» se implementa la identificación de fichas de dominó por un sistema de forma automática a partir de imágenes tomadas por una cámara digital. Se implementó un algoritmo que recibe un archivo de imagen en el que aparecen fichas de dominó sobre un tapete color verde. El sistema es capaz de identificar cada una de las fichas tanto si se encuentran separadas como si están colocadas juntas unas a otras. Se implementaron técnicas para recuperar partes de la imagen perdidas debido a la iluminación. Para realizar la identificación, el algoritmo realiza en primer lugar una serie de filtrados de la imagen, para posteriormente segmentar la imagen y extraer los contornos de las fichas donde seguido eso se localiza dentro de ellos la línea intermedia de separación de las dos partes de que consta la ficha. Una vez que se ha localizada la línea de separación, se procede a la identificación de la ficha mediante el recuento de puntos existentes a cada lado de dicha separación.

Trabajos como éste pone en evidencia el interés en aplicar las últimas tendencias en técnicas de procesamiento de imágenes e inteligencia artificial al juego del Dominó. Tendencias como los modelos de aprendizaje profundo y los transformadores abren un abanico de oportunidades para impactar algo tan tradicional como lo ha sido el juego de Dominó.

Descripción del Sistema Propuesto

La aplicación se ejecuta de manera local en un dispositivo, preferiblemente una laptop, ya que se basa en un conjunto de librerías y algoritmos para la detección y reconocimiento de fichas, tanto del aprendiz como de las jugadas en la mesa y de la mano para el pase. De la misma manera, librerías para la recomendación de jugadas.

Se combinan varios tipos de tendencias para la creación del entrenador, de las que se pueden mencionar las siguientes:

  • Manipulación y reconocimiento de imágenes.
  • Aprendizaje profundo para la realización del modelo de detección de objetos basado en YOLOv8.
  • MEDIAPIPE para la captura y reconocimiento de los gestos realizados con las manos.
  • Entrenamiento de modelos grandes de lenguaje (LLM) a partir de reglas definidas del Dominó.

A nivel de interacción del usuario, será ejecutada una sola pantalla donde se observarán las jugadas en el lado superior izquierdo, la puntuación en el lado superior derecho, la zona delimitada donde se reconocerán las fichas y en la parte inferior el tablero. Esto se puede apreciar en la imagen ilustrativa mostrada debajo del sistema.

El COACH demuestra habilidades clave en el dominio del Dominó, como la evaluación estratégica de movimientos y una comprensión profunda de las reglas y dinámicas del juego. Estas habilidades le permiten desarrollar estrategias ganadoras y tomar decisiones informadas en el transcurso del juego, maximizando así las posibilidades de éxito.

Por otro lado, la visión computacional desempeña un papel crucial en el proyecto, utilizando la metodología YOLOv8 para la detección de fichas de dominó. Mediante el uso de funciones de pérdida y clasificadores de características, se busca mejorar la precisión y eficiencia del modelo YOLOv8 para aplicaciones prácticas en la detección de fichas de dominó. Además, se incorpora la librería MEDIAPIPE para detectar y reconocer gestos de mano en tiempo real, aprovechando su capacidad para ofrecer soluciones precisas y eficientes sin requerir un conocimiento profundo de los modelos internos. Debajo se muestra una imagen que evidencia la capacidad detección de fichas de Dominó del sistema propuesto.

En más del 69% de las ocasiones en que el aprendiz solicitó una sugerencia, acciones captadas y analizadas al momento de validar las habilidades del coach, estas recomendaciones contribuyeron a que el aprendiz o su equipo resulten ganadores de la ronda. Esto implica que en menos del 30% de los casos, las sugerencias del coach no resultaron beneficiosas para el aprendiz o su equipo, ya sea por perder la ronda o porque la ficha sugerida no era la más óptima en ese momento.

Resultados y Limitaciones

El modelo de aprendizaje automático demostró precisión en las sugerencias de jugadas de dominó, con 17 jugadas válidas de 25 analizadas. Se observó que las sugerencias más concisas tienden a ser más precisas. Todas las sugerencias válidas tuvieron un impacto positivo en el juego, destacando la capacidad estratégica del modelo.

En cuanto al modelo de Large Language Model (LLM) utilizado para sugerir jugadas de dominó, los datos muestran un porcentaje de efectividad alentador, con un 68%, lo que confirma que el LLM puede ser una herramienta útil para asistir a los jugadores en la toma de decisiones.

Además de estos resultados de aplicación, debemos también tomar en consideración el hecho de que el software se centra en un único participante, el «Aprendiz», en un juego de cuatro personas, excluyendo la competencia entre múltiples inteligencias artificiales. De igual forma, la capacidad de procesamiento limitada del hardware puede restringir el alcance y la fluidez de la simulación del proyecto, especialmente en términos de presentación y respuesta.

Conclusiones

Los resultados obtenidos de las pruebas de captura de imágenes y video para la
detección de fichas de dominó indican que el sistema de visión por computadora superó las expectativas iniciales, demostrando una efectividad significativa. La capacidad del sistema para identificar correctamente las fichas en una variedad de condiciones de iluminación, y en algunos casos sin luz, sugiere una robustez y flexibilidad notables. El modelo de lenguaje grande (LLM) fue capaz de distinguir reglas de Dominó a partir de un texto dado y secuencias de reglas sencillas. 

Referencias

Herrero, D.G. (2014) RECONOCIMIENTO DE FICHAS DE DOMINÓ MEDIANTE TÉCNICAS DE VISIÓN ARTIFICIAL. 

“Complete YOLO v8 Custom Object Detection Tutorial | Windows & Linux.” 

Custom Hand Gesture Recognition with Hand Landmarks Using Google’s Mediapipe + OpenCV in Python 

Talebi, Shawhin. “Fine-Tuning Large Language Models (LLMs) | W/ Example Code.”