Задача о днях рождения
Теперь воспользуемся симуляцией, чтобы решить известную задачу теории вероятностей — задачу о днях рождения. На первый взгляд она звучит просто: сколько людей должно находиться в комнате, чтобы вероятность совпадения дней рождения хотя бы у двух из них составила не менее 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