Задача про дні народження
Тепер використаємо моделювання, щоб розв'язати відому задачу з теорії ймовірностей — задачу про дні народження. На перший погляд усе просто: скількох людей потрібно зібрати в кімнаті, щоб імовірність того, що двоє з них мають спільний день народження, була щонайменше 50%?
Якщо маємо 366 людей і 365-денний рік, ми на 100% впевнені, що принаймні двоє матимуть однаковий день народження. Але нам потрібно лише 50%. Моделювання пропонує елегантний спосіб розв'язати цю задачу.
Після виконання цієї вправи ви почнете розуміти, як формулювати задачі в термінах симуляцій.
Ця вправа є частиною курсу
Статистичне моделювання в Python
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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