Закон больших чисел
В предыдущем упражнении вы убедились, что из-за стохастической природы метода Монте-Карло результаты каждой симуляции могут существенно отличаться. В этом упражнении вы воспользуетесь законом больших чисел, чтобы смоделировать инфляцию в 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))