Simulación de MonteCarlo para Juego de Dominó

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 17

REPORTE DE AVANCE FINAL

Análisis de estrategias eficientes para el juego de dominó

Integrantes
Jhon Alexander Hernández Caicedo – 2191919
Levir Heladio Hernández Suárez – 2201776
Alejandro Nuñez Herrera – 2191947

Simulación Digital

Escuela de Ingeniería de Sistemas e Informática


Universidad Industrial de Santander
6 de diciembre de 2023
Formulación del Problema
El juego de dominó es un juego de estrategia en el que los jugadores deben tomar
decisiones sobre qué fichas jugar en función de las condiciones del juego. El problema
radica en identificar la estrategia más efectiva para aumentar las probabilidades de
ganar. Las decisiones tácticas en cada turno y las variaciones en la estrategia de juego
han generado incertidumbre sobre cuál es la mejor aproximación para obtener la
victoria. Por lo tanto, se plantea la siguiente pregunta: ¿Cuál es la estrategia óptima
que maximiza las posibilidades de ganar en el juego de dominó?

Objetivo General
Identificar la estrategia más efectiva para ganar en el juego de dominó mediante un
estudio de simulación.

Objetivos Específicos
✓ Caracterizar el rendimiento de diversas estrategias de juego en el dominó a través
de simulaciones Monte Carlo.
✓ Evaluar la variabilidad en los resultados de cada estrategia y determinar la
consistencia de su desempeño.
✓ Comparar el impacto de las diferentes estrategias en el éxito a corto y largo plazo
en el juego de dominó.
✓ Proponer recomendaciones tácticas basadas en los resultados de la simulación
para mejorar la efectividad del juego.

Plan General del Proyecto


La realización de este proyecto se justifica por la necesidad de proporcionar a los
jugadores de dominó una guía sobre las estrategias más efectivas. La simulación se
presenta como una herramienta apropiada debido a la complejidad y la naturaleza
estocástica del juego. Su capacidad para simular millones de partidas de manera
eficiente permite realizar análisis estadísticos exhaustivos, proporcionando una visión
robusta del rendimiento de las estrategias en diferentes escenarios de juego. Durante
el desarrollo, se explorarán distintas alternativas de estrategias de juego, evaluando la
efectividad de cada una mediante comparaciones detalladas.
Cronograma de actividades
Conceptualización del Modelo
El juego del dominó encaja en la descripción de un proceso estocástico, ya que en
cada partida se tiene una combinación de fichas que puede ser diferente y puede
considerarse aleatoria. Además, cada interacción dentro del juego puesto en marcha
dependerá de la estrategia de juego de cada integrante, lo cual se comporta como una
sucesión de variables aleatorias tal y como se señaló en la descripción de un proceso
estocástico, por ello un enfoque de simulación basado en Monte Carlo es la mejor
opción.
Inicialmente nos concentramos en implementar la lógica relacionada con el juego.

Posteriormente implementamos clases auxiliares para la generación de números


aleatorios y la visualización de informes estadísticos.

En nuestro caso, requeríamos un generador de números aleatorios con distribución


uniforme discreta para distribuir las fichas iniciales desde el pozo hacia los jugadores.
Optamos por implementar el método de la transformada inversa para lograr este
propósito.
Método de la trasformada inversa
Podemos generar variables aleatorias usando la función acumulativa de una
distribución de probabilidad cualquiera
𝑔~𝑈(0,1)

𝐹𝑣 −1 (𝑔)
Distribución uniforme discreta

Adicionalmente, utilizamos este generador para facilitar la selección aleatoria de


opciones que los jugadores controlados por la CPU puedan realizar, ya sea al
enfrentarse a más de una opción disponible o al decidir el lado desde el cual lanzar
una ficha.
Recolección de Datos
Para obtener información, nos apoyamos en el artículo "Simulación de Monte Carlo
para el juego de dominó", ya que la disponibilidad de datos estadísticos sobre este
tema en la web es limitada. Este artículo compiló manualmente datos sobre las
estrategias más utilizadas, sirviendo como una fuente valiosa. No obstante, dado que
carecía de un código fuente detallado, nos dirigimos principalmente a las
descripciones de las estrategias implementadas. Contrastamos nuestros resultados
con los del artículo para garantizar la coherencia y la validez de nuestra
implementación. Implementamos con éxito 10 estrategias de juego, además de una
estrategia de tirar aleatoriamente, basándonos en las descripciones proporcionadas
en el artículo.

Prototipo Implementado
A continuación, se muestran animaciones de las secciones clave del simulador para
ilustrar cómo las estrategias influyen en el desarrollo del juego.

Enlace del código fuente:


https://drive.google.com/drive/folders/1U5gKP68yFAtBQz6jvYt7bwjymnmaL4Yn?usp
=sharing
Interfaz de juego manual
Resumen de final de partida
Recopilador de estadísticas de partidas
Diseño experimental
Para este proyecto se desarrolló la lógica desde cero para 10 estrategias de juego de
dominó. A continuación, se detallamos la naturaleza de cada estrategia, agrupándolas
en cuatro categorías:
Tiro aleatorio:

• Tirar ficha aleatoriamente: Consiste en seleccionar una ficha de forma aleatoria


de la mano del jugador según una función de distribución uniforme discreta. Esta
implementación no requiere atributos adicionales del jugador.

Tiro según acompañantes de fichas:


Esta estrategia implica que el jugador analice la cantidad de fichas en su mano que
pertenecen a cierto número de cara y selecciona la ficha según los criterios detallados
a continuación. Esta implementación requiere agregar un arreglo para cada cara y
compilar la información de las fichas que tiene el jugador. Si se usan variantes de
domino con más fichas la complejidad espacial puede empeorar considerablemente.

• Tirar ficha más acompañada: Selecciona la ficha más acompañada analizando


la suma de la cantidad de acompañantes de ambas caras de la ficha.
• Tirar ficha menos acompañada: Selecciona la ficha menos acompañada
analizando la suma de la cantidad de acompañantes de ambas caras de la ficha.

Tiro según peso de ficha:


Esta estrategia implica que el jugador analice la suma de ambas caras para cada una
de sus fichas y selecciona la ficha según los criterios detallados a continuación. Esta
implementación no requiere atributos adicionales del jugador ya que puede obtener
esta información directamente de las fichas.

• Tirar ficha más pesada: Selecciona la ficha más pesada analizando la suma de
ambas caras de la ficha.
• Tirar ficha menos pesada: Selecciona la ficha menos pesada analizando la suma
de ambas caras de la ficha.
Tiro contando fichas:
Esta estrategia implica que el jugador analice las fichas que aun no se han jugado (las
que tienen sus contrincantes y quedan en el pozo) y tomar estrategias según esta
información. Esta implementación requiere agregar un arreglo para almacenar los
puntos obtenibles por los demás jugadores en caso de que el jugador tire fichas con
ciertas caras específicas.

• Tirar fichas de forma defensiva: Selecciona las fichas que aseguren la menor
ganancia de los demás jugadores y sean las más pesadas para el jugador.
• Tirar fichas de forma adaptativa: Esta estrategia se ajusta dinámicamente al
estado de la partida. Cuando el jugador cuenta con más de 3 fichas, prioriza lanzar
las más pesadas. En la fase final, si el jugador acumula una cantidad reducida de
puntos, adoptará una estrategia defensiva con el objetivo de cerrar el juego de
manera expedita. Este enfoque adaptable busca optimizar la eficacia de la
estrategia en función de las condiciones cambiantes del juego.
Resultados de la simulación
A continuación, se presentan los índices de victoria para las distintas estrategias
implementadas, las cuales fueron evaluadas comparativamente con la estrategia de
tirar aleatoriamente, utilizada como métrica de referencia. Posteriormente, se llevaron
a cabo enfrentamientos entre las estrategias más destacadas.
Tabla de índice de victorias de la estrategia TIRAR_MENOS_PESADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MENOS_PESADA 131803 3,295%
J1 TIRAR_ALEATORIAMENTE 1347926 33,698%
J2 TIRAR_ALEATORIAMENTE 1264757 31,619%
J3 TIRAR_ALEATORIAMENTE 1255514 31,388%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia TIRAR_MENOS_PESADA_Y_MENOS_PESADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MENOS_ACOMPANADA_Y_MENOS_PESADA 168787 4,220%
J1 TIRAR_ALEATORIAMENTE 1307907 32,698%
J2 TIRAR_ALEATORIAMENTE 1264083 31,602%
J3 TIRAR_ALEATORIAMENTE 1259223 31,481%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia TIRAR_MENOS_ACOMPANADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MENOS_ACOMPANADA 223214 5,580%
J1 TIRAR_ALEATORIAMENTE 1293042 32,326%
J2 TIRAR_ALEATORIAMENTE 1247925 31,198%
J3 TIRAR_ALEATORIAMENTE 1235819 30,895%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia TIRAR_MENOS_PESADA_Y_MAS_PESADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MENOS_ACOMPANADA_Y_MAS_PESADA 284831 7,121%
J1 TIRAR_ALEATORIAMENTE 1273152 31,829%
J2 TIRAR_ALEATORIAMENTE 1226972 30,674%
J3 TIRAR_ALEATORIAMENTE 1215045 30,376%
Total de partidas 4000000
Tabla de índice de victorias de la estrategia TIRAR_MAS_PESADA_Y_MENOS_PESADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MAS_ACOMPANADA_Y_MENOS_PESADA 294343 7,359%
J1 TIRAR_ALEATORIAMENTE 1318903 32,973%
J2 TIRAR_ALEATORIAMENTE 1205695 30,142%
J3 TIRAR_ALEATORIAMENTE 1181059 29,526%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia TIRAR_MAS_ACOMPANADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MAS_ACOMPANADA 329829 8,246%
J1 TIRAR_ALEATORIAMENTE 1311466 32,787%
J2 TIRAR_ALEATORIAMENTE 1193834 29,846%
J3 TIRAR_ALEATORIAMENTE 1164871 29,122%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia TIRAR_MAS_ACOMPANADA_Y_MAS_PESADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MAS_ACOMPANADA_Y_MAS_PESADA 367807 9,195%
J1 TIRAR_ALEATORIAMENTE 1298653 32,466%
J2 TIRAR_ALEATORIAMENTE 1184982 29,625%
J3 TIRAR_ALEATORIAMENTE 1148558 28,714%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia TIRAR_MAS_PESADA

Jugador Estrategia Victorias Indice de victorias


J0 TIRAR_MAS_PESADA 480067 12,002%
J1 TIRAR_ALEATORIAMENTE 1231028 30,776%
J2 TIRAR_ALEATORIAMENTE 1161245 29,031%
J3 TIRAR_ALEATORIAMENTE 1127660 28,192%
Total de partidas 4000000
Tabla de índice de victorias de la estrategia CONTAR_FICHAS_DEFENSIVO

Jugador Estrategia Victorias Indice de victorias


J0 CONTAR_FICHAS_DEFENSIVO 499083 12,477%
J1 TIRAR_ALEATORIAMENTE 1239971 30,999%
J2 TIRAR_ALEATORIAMENTE 1168296 29,207%
J3 TIRAR_ALEATORIAMENTE 1092650 27,316%
Total de partidas 4000000

Tabla de índice de victorias de la estrategia CONTAR_FICHAS_ADAPTATIVO

Jugador Estrategia Victorias Indice de victorias


J0 CONTAR_FICHAS_ADAPTATIVO 497855 12,446%
J1 TIRAR_ALEATORIAMENTE 1239384 30,985%
J2 TIRAR_ALEATORIAMENTE 1169109 29,228%
J3 TIRAR_ALEATORIAMENTE 1093652 27,341%
Total de partidas 4000000

Al comparar el uso de una estrategia especifica, es evidente que


TIRAR_ALEATORIAMENTE tiene un mayor índice de victoria. Sin embargo, este índice
disminuye significativamente cuando más jugadores adoptan una estrategia
específica. Esto se ilustra a continuación para la estrategia TIRAR_MAS_PESADA.

Porcentaje de éxito de un solo jugador con estrategia TIRAR_MAS_PESADA


Porcentaje de éxito de dos jugadores con estrategia TIRAR_MAS_PESADA

Porcentaje de éxito de tres jugadores con estrategia TIRAR_MAS_PESADA

Porcentaje de éxito de diferentes estrategias cruzadas


A continuación, se presenta un gráfico resumen que ilustra los índices de victoria
asociados a cada estrategia.
Porcentaje de éxito de cada estrategia contra TIRAR_ALEATORIAMENTE

Posteriormente, se procedió a enfrentar las 4 mejores estrategias para determinar cuál


es la más efectiva en el juego de dominó.
Tabla de índice de victorias de diferentes estrategias enfrentadas
Jugador Estrategia Victorias Indice de victorias
J0 TIRAR_MAS_ACOMPANADA_Y_MAS_PESADA 1194605 29,865%
J1 TIRAR_MENOS_PESADA 319229 7,981%
J2 TIRAR_MAS_PESADA 2010410 50,260%
J3 TIRAR_MENOS_ACOMPANADA_Y_MENOS_PESADA 475756 11,894%
Total de partidas 4000000

Tabla de índice de victorias de las mejores estrategias enfrentadas


Jugador Estrategia Victorias Indice de victorias
J0 CONTAR_FICHAS_DEFENSIVO 1207464 30,187%
J1 TIRAR_MAS_PESADA 1136111 28,403%
J2 CONTAR_FICHAS_ADAPTATIVO 1080424 27,011%
J3 TIRAR_MAS_ACOMPANADA_Y_MAS_PESADA 576001 14,400%
Total de partidas 4000000
Análisis de los resultados
En términos generales, se observa que las estrategias más efectivas en el juego de
dominó están directamente asociadas a la elección de tirar fichas con mayor peso. En
contraste, las estrategias basadas en la consideración de la cantidad de
acompañantes de las fichas exhiben resultados menos favorables. A pesar del intento
de asegurar la disposición de fichas para turnos futuros, la alteración sustancial de las
caras externas del tablero por parte de los tres jugadores siguientes introduce un nivel
significativo de incertidumbre, impactando negativamente a las estrategias centradas
en la "ligereza" de las fichas.
En consecuencia, la eficacia de las estrategias que privilegian la colocación de fichas
más pesadas sin considerar otros factores es notoriamente alta. Este enfoque facilita
una conexión más efectiva con las fichas de los demás jugadores, propiciando la
creación de secuencias y conexiones estratégicas. Por el contrario, las estrategias que
optan por tirar fichas de menor peso tienden a desembocar en situaciones de empate,
y al no considerar las fichas en posesión del jugador con una estrategia adaptativa,
pueden resultar en desventajas autoinfligidas.
En comparación, las estrategias que incorporan la contabilización de fichas exhiben
una efectividad ligeramente superior en relación con la simple elección de tirar las
fichas más pesadas sin profundizar en consideraciones adicionales. Aunque la
disparidad en la efectividad no es considerable, es relevante señalar que contar fichas
en el dominó no alcanza la misma amplitud de efectividad que en juegos como el
blackjack. Esto se atribuye a la presencia de múltiples variables, como las fichas en
posesión del jugador siguiente, donde las suposiciones, aunque viables, no garantizan
certeza absoluta sobre qué fichas faltantes pertenecen a un jugador específico.
En términos de porcentajes de éxito, se observa que estrategias como
"TIRAR_MAS_PESADA," "CONTAR_FICHAS_ADAPTATIVO," y
"CONTAR_FICHAS_DEFENSIVO" presentan un rendimiento más competitivo,
destacándose como las estrategias más efectivas en la simulación realizada.
Específicamente, las tasas de victoria para estas estrategias fueron del 12.002%,
12.45%, y 12.48%, respectivamente, reflejando su capacidad para superar a otras
estrategias implementadas en el estudio.
Estos resultados subrayan la importancia de una elección cuidadosa de fichas y el
reconocimiento de las dinámicas cambiantes en el tablero durante el desarrollo del
juego. Estos aspectos emergen como factores cruciales que pueden potenciar o
limitar la efectividad de las estrategias empleadas.
Trabajo futuro
Luego de haber implementado con éxito 11 estrategias, hemos llegado a la conclusión
de que es crucial avanzar hacia estrategias más elaboradas. Una dirección
prometedora es incorporar lógicas más complejas, como la inclusión de criterios para
prever qué fichas es más probable que tenga un jugador, basándonos en las que ya ha
jugado. En nuestro intento anterior, probamos seleccionar fichas al azar que aún no
se habían jugado, pero los resultados no fueron nada alentadores. Por lo tanto, la clave
podría estar en agregar un criterio de adivinación más sofisticado, lo que podría
marcar la diferencia en la tasa de victorias del jugador en el siguiente turno. Explorar
esta vía más avanzada podría ofrecer una comprensión más afinada de cómo se
desarrolla el juego, permitiéndonos diseñar estrategias más astutas y efectivas en el
complejo mundo del dominó.

Referencias
MORENO MONTIEL, Benjamin et al. Simulación de Monte Carlo para el juego de
dominó. Comp. y Sist. [online]. 2020, vol.24, n.4 [citado 2023-11-21], pp.1369-1385.
Disponible en: <http://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=S1405-
55462020000401369&lng=es&nrm=iso>. Epub 11-Jun-2021. ISSN 2007-9737.
https://doi.org/10.13053/cys-24-4-3233.

Estrategia de dominó: cómo dominar el juego. (s/f). Coolmathgames.com.


Recuperado el 20 de noviembre de 2023, de
https://www.coolmathgames.com/es/blog/estrategia-de-domin%C3%B3-
c%C3%B3mo-dominar-el-juego

Naipe, D. (2020, 7 enero). 5 trucos que te convertirán en un experto en el dominó en


parejas -Don Naipe. http://donnaipe.com/blog/2020/01/07/5-trucos-que-te-
convertiran-en-un-experto-en-el-domino-en-parejas/

BEHAR, V. (2023, 3 octubre). Juega dominó como un profesional. BEHAR.


https://www.beharhome.com/blogs/news/tips-para-jugar-domino-como-un-
profesional

También podría gustarte