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