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

Закон больших чисел

В предыдущем упражнении вы убедились, что из-за стохастической природы метода Монте-Карло результаты каждой симуляции могут существенно отличаться. В этом упражнении вы воспользуетесь законом больших чисел, чтобы смоделировать инфляцию в 2050 году на основе среднего значения большого числа симуляций.

Функция monte_carlo_inflation(), написанная вами в предыдущем упражнении, доступна для использования. Напомним код функции:

def monte_carlo_inflation(year, seed):
    random.seed(seed)
    inflation_rate = 8.6
    yearly_increase = random.randint(1, 3)
    for i in range(year - 2022):
        inflation_rate = inflation_rate * ((100 + yearly_increase)/100)
    return(inflation_rate)

Пакеты numpy и random уже импортированы.

Это упражнение является частью курса

Симуляции Монте-Карло на Python

Посмотреть курс

Инструкции к упражнению

  • Вычислите среднее значение по 1 000 симуляций, в каждой из которых случайным образом выбирается зерно в диапазоне от 0 до 20 000.
  • Вычислите среднее значение по 10 000 симуляций, в каждой из которых случайным образом выбирается зерно в диапазоне от 0 до 20 000.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Calculate the average of 1,000 simulation results with a seed between 0 and 20000
rates_1 = []
for i in range(____):
    seed = random.randint(____, ____)
    rates_1.append(monte_carlo_inflation(2050, ____))
print(np.mean(rates_1))

# Calculate the average of 10,000 simulation results with a seed between 0 and 20000
rates_2 = []
for i in range(____):
    seed = random.randint(____, ____)
    rates_2.append(monte_carlo_inflation(2050, ____))
print(np.mean(rates_2))
Редактировать и запускать код