НачатьНачать бесплатно

Задача о днях рождения

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