Tú y yo decidimos jugar un juego donde nos turnamos para lanzar una moneda. El primer jugador en voltear 10 cabezas en total gana el juego. Naturalmente, hay una discusión sobre quién debería ir primero.
Las simulaciones de este juego muestran que el jugador que voltea primero gana un 6% más que el jugador que voltea segundo (el primer jugador gana aproximadamente el 53% del tiempo). Estoy interesado en modelar esto analíticamente.
Esta no es una variable aleatoria binomial, ya que no hay un número fijo de ensayos (voltea hasta que alguien obtenga 10 caras). ¿Cómo puedo modelar esto? ¿Es la distribución binomial negativa?
Para poder recrear mis resultados, aquí está mi código de Python:
import numpy as np
from numba import jit
@jit
def sim(N):
P1_wins = 0
P2_wins = 0
for i in range(N):
P1_heads = 0
P2_heads = 0
while True:
P1_heads += np.random.randint(0,2)
if P1_heads == 10:
P1_wins+=1
break
P2_heads+= np.random.randint(0,2)
if P2_heads==10:
P2_wins+=1
break
return P1_wins/N, P2_wins/N
a,b = sim(1000000)
probability
python
binomial
negative-binomial
Demetri Pananos
fuente
fuente
Respuestas:
La distribución del número de colas antes de lograr cabezas es10 negativa binomial con parámetros y 1 / 2 . Deje f ser la función de probabilidad y G la función de supervivencia: para cada n ≥ 0 , f ( n ) es la oportunidad del jugador de n colas antes de 10 cabezas y G ( n ) es la oportunidad del jugador de n o más colas antes de 10 cabezas.10 1/2 f G n≥0 f(n) n 10 G(n) n 10
Debido a que los jugadores ruedan de manera independiente, la posibilidad de que el primer jugador gane tirando exactamente colas se obtiene multiplicando esa posibilidad por la posibilidad de que el segundo jugador lance n o más colas, igual a f ( n ) G ( n ) .n n f(n)G(n)
Al sumar todas las posibles , las posibilidades de ganar del primer jugador sonn
Eso es aproximadamente un más de la mitad del tiempo.3%
En general, reemplazando por cualquier entero positivo m , la respuesta se puede dar en términos de una función hipergeométrica: es igual a10 m
Cuando se usa una moneda sesgada con una probabilidad de caras, esto generaliza ap
Aquí hay una0.5325 −0.843
R
simulación de un millón de tales juegos. Informa una estimación de . Una prueba de hipótesis binomial para compararlo con el resultado teórico tiene una puntuación Z de - 0,843 , que es una diferencia insignificante.fuente
Podemos modelar el juego así:
La brecha en las tasas de ganancia es, por tanto,Pr(X=Y)=∑kPr(X=k,Y=k)=∑kPr(X=k)2.
Como sospechaba,X (e Y ) se distribuyen esencialmente de acuerdo con una distribución binomial negativa. Las anotaciones para esto varían, pero en la parametrización de Wikipedia , tenemos cabezas como un "fracaso" y colas como un "éxito"; necesitamos r=10 "fallas" (cabezas) antes de que se detenga el experimento, y la probabilidad de éxito p=12 . Entonces el número de "éxitos", que esX−10 , tienePr(X−10=k)=(k+9k)2−10−k,
y la probabilidad de colisión es
Pr(X=Y)=∑k=0∞(k+9k)22−2k−20,
que Mathematica nos dice útilmente es764995251162261467≈6.6% .
Por lo tanto, la tasa de ganancia del jugador B esPr(Y>X)≈46.7% , y la del jugador A es 6193804961162261467≈53.3% .
fuente
Chooseϵ and pk,l,0 wisely and run the iteration for a few steps and monitor the correction term.
fuente