Il problema dei compleanni
Ora useremo una simulazione per risolvere un famoso rompicapo di probabilità: il problema dei compleanni. Sembra piuttosto semplice: Quante persone devono esserci in una stanza per avere almeno il 50% di probabilità che due di loro compiano gli anni lo stesso giorno?
Con 366 persone in un anno di 365 giorni, siamo sicuri al 100% che almeno due condividano la stessa data di compleanno, ma a noi basta essere sicuri al 50%. La simulazione ci offre un modo elegante per risolvere questo problema.
Completando questo esercizio, inizierai a capire come inquadrare i problemi all'interno di un framework di simulazione.
Questo esercizio fa parte del corso
Simulazione statistica in Python
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Draw a sample of birthdays & check if each birthday is unique
days = ____
people = 2
def birthday_sim(____):
sims, unique_birthdays = 2000, 0
for _ in range(sims):
draw = np.random.choice(days, size=____, replace=True)
if len(draw) == len(set(draw)):
unique_birthdays += 1
out = 1 - unique_birthdays / sims
return out