Asal komponen dan lisensi. Bagian “Eksperimen Monte Carlo” dan “Makna matematis” menerjemahkan serta mengadaptasi baris 758–832 dari
source/02-simulation.Rmdkarya Gordan Žitković pada komite2b35ad91a3689454ae6455e8ffc510a90760c0d. Donornya dilepas dengan CC0 1.0 Universal; terjemahan dan adaptasi bahasa Indonesia ini dilepas dengan CC BY 4.0. Bagian yang berlabel Tambahan asli merupakan materi baru dan juga dilepas dengan CC BY 4.0.
Eksperimen Monte Carlo
Gunakan metode Monte Carlo untuk menaksir nilai harapan peubah acak eksponensial berparameter \(\lambda=4\) dengan \(n=10\), \(n=1.000\), dan \(n=1.000.000\) simulasi. Bandingkan setiap taksiran dengan nilai eksak.
Untuk peubah acak eksponensial berparameter \(\lambda\), nilai harapannya adalah \(1/\lambda\). Karena itu, nilai eksak dalam
eksperimen ini adalah \(1/4=0{,}25\).
Potongan berikut hanya memakai R dasar. Tiga pemanggilan
set.seed mempertahankan benih deterministik sumber donor,
sedangkan baris terakhir mencetak tabel CSV kanonik ke keluaran
standar.
set.seed(12341)
x = rexp(10, rate=4)
err = 0.25 - mean(x)
estimate_10 = mean(x)
error_10 = err
set.seed(12342)
x = rexp(1000, rate=4)
err = 0.25 - mean(x)
estimate_1000 = mean(x)
error_1000 = err
set.seed(12342)
x = rexp(1000000, rate=4)
err = 0.25 - mean(x)
estimate_1000000 = mean(x)
error_1000000 = err
estimates = c(estimate_10, estimate_1000, estimate_1000000)
errors = c(error_10, error_1000, error_1000000)
results = data.frame(
n = c("10", "1000", "1000000"),
seed = c(12341L, 12342L, 12342L),
estimate = sprintf("%.12f", estimates),
exact_value = rep(sprintf("%.12f", 0.25), 3),
signed_error = sprintf("%.12f", errors),
absolute_error = sprintf("%.12f", abs(errors)),
stringsAsFactors = FALSE,
check.names = FALSE
)
write.csv(results, file="", row.names=FALSE, quote=FALSE)| n | benih | taksiran | nilai eksak | galat bertanda | galat mutlak |
|---|---|---|---|---|---|
| 10 | 12341 | 0.177976805338 | 0.250000000000 | 0.072023194662 | 0.072023194662 |
| 1000 | 12342 | 0.256464342623 | 0.250000000000 | -0.006464342623 | 0.006464342623 |
| 1000000 | 12342 | 0.250381011435 | 0.250000000000 | -0.000381011435 | 0.000381011435 |
Perintah mean menghitung rata-rata suatu vektor. Dalam
percobaan ini, rexp menghasilkan peubah-peubah acak
eksponensial yang disimpan dalam vektor x, lalu
mean(x) menghitung rata-rata sampelnya. Kolom
signed_error memakai konvensi sumber, yaitu \(0{,}25-\bar X_n\); kolom
absolute_error mengabaikan tandanya.
Makna matematis
Misalkan \(X_1,X_2,\ldots\) adalah peubah acak yang saling bebas dan berdistribusi sama, dengan nilai harapan yang ada. Hukum bilangan besar menyatakan
\[ \frac{1}{n}\bigl(X_1+X_2+\cdots+X_n\bigr) \longrightarrow \mathbb{E}[X_1] \quad\text{ketika }n\to\infty. \]
Monte Carlo memakai pernyataan ini dengan arah tujuan yang praktis: nilai \(\mathbb{E}[X_1]\) hendak dihitung, sedangkan pembangkit bilangan acak menyediakan sampel dari distribusi yang sama. Rata-rata sampel di ruas kiri kemudian dipakai untuk menaksir limit teoretis di ruas kanan. Dalam hasil khusus ini, galat mengecil ketika \(n\) bertambah; pola itu merupakan bukti empiris, bukan jaminan bahwa galat setiap realisasi harus menurun secara monoton. Metode yang sama berguna jauh melampaui contoh ini karena banyak kuantitas dapat dinyatakan sebagai nilai harapan suatu peubah acak.
Tambahan asli: dari simulasi ke konvergensi dalam peluang
Untuk \(\bar X_n=n^{-1}\sum_{i=1}^n X_i\) dan suatu \(\varepsilon>0\), kerjakan hal-hal berikut.
- Salin taksiran, galat bertanda, dan galat mutlak untuk \(n=10,1.000,1.000.000\) dari tabel hasil menjadi satu tabel ringkas.
- Hubungkan kejadian \(A_n=\{\lvert\bar X_n-1/4\rvert>\varepsilon\}\) dengan definisi konvergensi dalam peluang.
- Jelaskan mengapa tiga hasil simulasi tersebut mendukung intuisi konvergensi, tetapi tidak membuktikannya.
Petunjuk 1. Gunakan baris tabel CSV dengan nilai
n yang sama; jangan menghitung ulang dengan benih baru.
Petunjuk 2. \(\bar X_n\xrightarrow{P}1/4\) berarti \(\mathbb{P}(A_n)\to0\) untuk setiap \(\varepsilon>0\).
Petunjuk 3. Untuk \(X_i\sim\operatorname{Exp}(4)\), \(\operatorname{Var}(X_i)=1/16\). Terapkan ketaksamaan Chebyshev pada \(\bar X_n\) untuk memperoleh argumen yang berlaku bagi semua \(n\).
Jawaban ringkas. Tabel yang diminta adalah tiga baris hasil eksekusi di atas. Hubungan teoretisnya ialah \(\mathbb{P}(A_n)=\mathbb{P}(|\bar X_n-1/4|>\varepsilon)\to0\) untuk setiap \(\varepsilon>0\). Tiga realisasi hanya memberi pengamatan atas tiga rata-rata sampel; pengamatan itu tidak menetapkan peluang kejadian untuk semua \(n\).
Penyelesaian lengkap. Pertama, pindahkan tiga baris keluaran CSV ke tabel dengan kolom \(n\), taksiran, galat bertanda, dan galat mutlak. Karena \(X_i\sim\operatorname{Exp}(4)\),
\[ \mathbb{E}[X_i]=\frac14, \qquad \operatorname{Var}(X_i)=\frac1{16}, \qquad \operatorname{Var}(\bar X_n)=\frac1{16n}. \]
Untuk setiap \(\varepsilon>0\), ketaksamaan Chebyshev memberikan
\[ \mathbb{P}(A_n) =\mathbb{P}\!\left(\left|\bar X_n-\frac14\right|>\varepsilon\right) \leq \frac{1}{16n\varepsilon^2} \longrightarrow 0. \]
Jadi, \(\bar X_n\xrightarrow{P}1/4\). Ketaksamaan ini merupakan pembuktian karena membatasi peluang galat untuk setiap \(n\) dan setiap \(\varepsilon>0\). Sebaliknya, tiga baris simulasi hanya berasal dari tiga realisasi tertentu. Bahkan jika ketiga galat mutlaknya mengecil, hasil itu tetap tidak mengesampingkan realisasi lain yang galatnya lebih besar atau urutan galat yang tidak monoton.