Hukum Bilangan Besar
Pada latihan sebelumnya, Anda mempelajari bahwa karena sifat stokastik dari simulasi Monte Carlo, setiap hasil simulasi bisa sangat berbeda. Pada latihan ini, Anda akan memanfaatkan Hukum Bilangan Besar untuk mensimulasikan inflasi pada tahun 2050 berdasarkan rata-rata dari sejumlah besar simulasi.
Fungsi monte_carlo_inflation() yang Anda tulis pada latihan sebelumnya tersedia untuk digunakan. Sebagai pengingat, berikut adalah kode fungsinya:
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)
Paket numpy dan random telah diimpor untuk Anda.
Latihan ini adalah bagian dari kursus
Simulasi Monte Carlo di Python
Petunjuk latihan
- Hitung rata-rata dari 1.000 simulasi, dengan seed antara 0 dan 20.000 yang dipilih secara acak setiap kali.
- Hitung rata-rata dari 10.000 simulasi, dengan seed antara 0 dan 20.000 yang dipilih secara acak setiap kali.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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))