Vous et moi décidons de jouer à un jeu où nous lançons à tour de rôle une pièce. Le premier joueur à retourner 10 têtes au total remporte la partie. Naturellement, il y a un débat sur qui devrait aller en premier.
Les simulations de ce jeu montrent que le joueur qui retourne en premier gagne 6% de plus que le joueur qui retourne en deuxième (le premier joueur gagne environ 53% du temps). Je suis intéressé par la modélisation analytique.
Ce n'est pas une variable aléatoire binomiale, car il n'y a pas de nombre fixe d'essais (retournez jusqu'à ce que quelqu'un obtienne 10 têtes). Comment puis-je modéliser cela? Est-ce la distribution binomiale négative?
Afin de pouvoir recréer mes résultats, voici mon code 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)