Imagina que enfrentamos a dos jugadores automatizados (bots) entre sí, pero en lugar de movimientos reflexivos realizados por los jugadores, toman decisiones completamente aleatorias. Me doy cuenta de que este no es realmente el objetivo de jugar al ajedrez, pero sienta las bases para una pregunta teórica sobre el ajedrez.
¿Existe una ventaja inherente para el jugador que va primero o el jugador que ¿va segundo?
"Ventaja inherente" aquí significa que la probabilidad de que un jugador gane es mayor que la del otro, y que estas condiciones aleatorias no tienen en cuenta cómo jugarían los jugadores reales. Si existe tal ventaja, puede ser borrada por completo por cómo los humanos juegan al ajedrez entre sí. Quiero enfatizar que esta pregunta no pretende generalizar al juego humano o algorítmico.
Actualización
Obtuve los resultados de 1000000 juegos jugados aleatoriamente gracias a un pequeño ajuste al código de itub. He elaborado un diagrama básico para mostrar los resultados.
Pero si prefiere los números específicos, aquí está la impresión:
Counter ({'is_insufficient_material': 474230, 'can_claim_fifty_moves': 169123, 'can_claim_threefold_repetition': 149398, '1-0': 75868, '0-1': 75239, 'is_stalemate': 56142})
Como prometí en los comentarios de una de las respuestas, iba a calcular un intervalo de puntuación de Wilson con corrección de continuidad. Escribí la siguiente función en Python para lograr eso.
import numpy as npfrom scipy import statsdef wilson_cont (n1, n2, alpha = 0.05): '' 'Intervalo de puntuación de Wilson con corrección de continuidad. Se supone un intervalo de dos colas. Parámetros: n1 (int): recuento del resultado 1. n2 (int): recuento del resultado 2. alfa (flotante): Fuente: https://en.wikipedia.org/wiki/Binomial_proportion_confidence_interval '' 'tipo de aserción (n1) == int y tipo (n2) == int afirmar 0 < alpha < 1 z = stats.norm.ppf (1 - alpha / 2) n = n1 + n2
phat = n1 / n num1 = 2 * n * phat + z ** 2 num2 = z * np.sqrt (z ** 2 - 1 / n + 4 * n * phat * (1 - phat) + 4 * phat - 2) + 1 num3 = z * np.sqrt (z ** 2 + 1 / n + 4 * n * phat * (1 - phat) - 4 * phat - 2) + 1 denom = 2 * (n + z * * 2) return max (0, (num1 - num2) / denom), min (1, (num1 + num3) / denom)
Y llamar a esta función en el resultado cuenta donde blanco o negro, tenemos:
>>> print (wilson_cont (75868, 75239)) (0.4995569815292355, 0.5046054923932771)
Este resultado, confirmando algunos de los comentarios y respuestas a continuación, no es significativamente diferente del 50%. Como MaxW ha señalado en su respuesta, se ha realizado un cálculo similar en una muestra aún mayor que concluyó que había una diferencia estadísticamente significativa. Una preocupación que tengo con todos estos cálculos, los míos y otros, es que se vuelven más sensibles a las desviaciones a medida que aumenta el tamaño de la muestra. Esto significa que es difícil determinar si realmente hay una diferencia usando la prueba de hipótesis nula estándar cuando el tamaño de nuestra muestra se vuelve extremadamente grande, pero si no tomamos suficiente muestra, nuestra muestra no será lo suficientemente representativa. Lo que esto me ha iluminado es una forma de razonamiento condicional de que si hay una diferencia, entonces es extremadamente pequeña en términos de tamaño del efecto .
Mi agradecimiento a todos los que han mostrado interés en esta publicación y han contribuido con su razonamiento, investigación o código.