La legge dei grandi numeri
Nel precedente esercizio hai visto che, a causa della natura stocastica delle simulazioni Monte Carlo, ogni risultato può essere molto diverso. In questo esercizio, farai leva sulla legge dei grandi numeri per simulare l’inflazione nel 2050 basandoti sulla media di un grande numero di simulazioni.
La funzione monte_carlo_inflation() che hai scritto nell’esercizio precedente è disponibile. Per promemoria, ecco il codice della funzione:
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)
I pacchetti numpy e random sono già stati importati per te.
Questo esercizio fa parte del corso
Simulazioni Monte Carlo in Python
Istruzioni dell'esercizio
- Calcola la media di 1.000 simulazioni in cui a ogni esecuzione viene scelto casualmente un seed tra 0 e 20.000.
- Calcola la media di 10.000 simulazioni in cui a ogni esecuzione viene scelto casualmente un seed tra 0 e 20.000.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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))