Adloun

Le paradoxe des anniversaires

Exercice supplémentaire · niveau 3 (difficile) · mathématiques (première), chapitre 10 — Probabilités conditionnelles et indépendance · Paradoxes et pièges du conditionnement

Énoncé

Le paradoxe des anniversaires. Dans un groupe de personnes ( jours équiprobables, indépendance), montrer que la probabilité que toutes aient des dates d'anniversaire distinctes vaut

Écrire un programme Python calculant , et déterminer le plus petit pour lequel la probabilité qu'au moins deux personnes partagent leur anniversaire dépasse .

Corrigé

1. La formule. Numérotons les personnes de à . La première peut être née n'importe quel jour ( possibilités) ; pour que la deuxième ait une date différente, il lui reste jours sur ; puis sur pour la troisième, et ainsi de suite. Les naissances étant indépendantes, la règle du produit donne

2. Le programme.


def proba_distincts(n):
    # Probabilite que n personnes aient des anniversaires deux a deux distincts
    p = 1.0
    for k in range(n):
        p = p * (365 - k) / 365
    return p

n = 1
while 1 - proba_distincts(n) <= 0.5:
    n = n + 1
print(n, 1 - proba_distincts(n))     # 23  0.5073

3. Le résultat. Dès , la probabilité qu'au moins deux personnes partagent leur anniversaire dépasse : elle vaut , contre pour .

Pourquoi c'est si peu ? L'intuition compare à ; mais ce qui compte, c'est le nombre de couples de personnes, — un nombre du même ordre que . On ne cherche pas quelqu'un qui partage votre anniversaire (il faudrait alors personnes pour atteindre une chance sur deux), mais deux personnes quelconques qui partagent le leur.

Prolongement : le même calcul, appelé « paradoxe des anniversaires », mesure en informatique le risque de collision d'une fonction de hachage.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.