Sebuah model kuantitatif mengemulasi beberapa perilaku dunia dengan (a) merepresentasikan objek dengan beberapa sifat numeriknya dan (b) menggabungkan angka-angka itu dengan cara yang pasti untuk menghasilkan output numerik yang juga mewakili sifat-sifat yang menarik.
Dalam skema ini, tiga input numerik di sebelah kiri digabungkan untuk menghasilkan satu output numerik di sebelah kanan. Baris angka menunjukkan kemungkinan nilai input dan output; titik-titik menunjukkan nilai spesifik yang digunakan. Saat ini komputer digital biasanya melakukan perhitungan, tetapi mereka tidak penting: model telah dihitung dengan pensil-dan-kertas atau dengan membangun perangkat "analog" di kayu, logam, dan sirkuit elektronik.
Sebagai contoh, mungkin model sebelumnya merangkum tiga inputnya. R
kode untuk model ini mungkin terlihat seperti
inputs <- c(-1.3, 1.2, 0) # Specify inputs (three numbers)
output <- sum(inputs) # Run the model
print(output) # Display the output (a number)
Keluarannya hanya berupa angka,
-0.1
Kita tidak bisa mengenal dunia dengan sempurna: bahkan jika modelnya bekerja persis seperti dunia, informasi kita tidak sempurna dan hal-hal di dunia berbeda-beda. Simulasi (Stochastic) membantu kita memahami bagaimana ketidakpastian dan variasi dalam input model harus diterjemahkan ke dalam ketidakpastian dan variasi dalam output. Mereka melakukannya dengan memvariasikan input secara acak, menjalankan model untuk setiap variasi, dan merangkum output kolektif.
"Secara acak" tidak berarti sewenang-wenang. Pemodel harus menentukan (apakah secara sadar atau tidak, baik secara eksplisit atau implisit) frekuensi yang dimaksudkan dari semua input. Frekuensi output memberikan ringkasan hasil yang paling rinci.
Model yang sama, ditunjukkan dengan input acak dan output acak yang dihasilkan (dihitung).
Gambar tersebut menampilkan frekuensi dengan histogram untuk mewakili distribusi angka. The dimaksudkan frekuensi masukan ditampilkan untuk input di kiri, sedangkan dihitung frekuensi output, diperoleh dengan menjalankan model berkali-kali, ditampilkan di sebelah kanan.
Setiap rangkaian input ke model deterministik menghasilkan output numerik yang dapat diprediksi. Ketika model digunakan dalam simulasi stokastik, bagaimanapun, outputnya adalah distribusi (seperti yang abu-abu panjang ditunjukkan di sebelah kanan). Penyebaran distribusi output memberi tahu kita bagaimana output model dapat diharapkan bervariasi ketika inputnya bervariasi.
Contoh kode sebelumnya dapat dimodifikasi seperti ini untuk mengubahnya menjadi simulasi:
n <- 1e5 # Number of iterations
inputs <- rbind(rgamma(n, 3, 3) - 2,
runif(n, -2, 2),
rnorm(n, 0, 1/2))
output <- apply(inputs, 2, sum)
hist(output, freq=FALSE, col="Gray")
Keluarannya telah dirangkum dengan histogram dari semua angka yang dihasilkan oleh iterasi model dengan input acak ini:
Mengintip di belakang layar, kami dapat memeriksa beberapa dari banyak input acak yang diberikan kepada model ini:
rownames(inputs) <- c("First", "Second", "Third")
print(inputs[, 1:5], digits=2)
Output menunjukkan lima dari iterasi pertama, dengan satu kolom per iterasi:100,000
[,1] [,2] [,3] [,4] [,5]
First -1.62 -0.72 -1.11 -1.57 -1.25
Second 0.52 0.67 0.92 1.54 0.24
Third -0.39 1.45 0.74 -0.48 0.33
Dapat diperdebatkan, jawaban untuk pertanyaan kedua adalah bahwa simulasi dapat digunakan di mana-mana. Sebagai masalah praktis, biaya yang diharapkan untuk menjalankan simulasi harus lebih kecil dari manfaat yang mungkin. Apa manfaat dari memahami dan mengukur variabilitas? Ada dua area utama di mana ini penting:
Mencari kebenaran , seperti dalam sains dan hukum. Angka dengan sendirinya berguna, tetapi jauh lebih berguna untuk mengetahui seberapa akurat atau pasti angka itu.
Membuat keputusan, seperti dalam bisnis dan kehidupan sehari-hari. Keputusan menyeimbangkan risiko dan manfaat. Risiko tergantung pada kemungkinan hasil yang buruk. Simulasi stokastik membantu menilai kemungkinan itu.
Sistem komputasi telah menjadi cukup kuat untuk menjalankan model yang realistis dan kompleks berulang kali. Perangkat lunak telah berevolusi untuk mendukung menghasilkan dan merangkum nilai-nilai acak dengan cepat dan mudah (seperti R
contoh kedua tunjukkan). Kedua faktor ini telah digabungkan selama 20 tahun terakhir (dan lebih banyak lagi) ke titik di mana simulasi bersifat rutin. Yang tersisa adalah membantu orang (1) menentukan distribusi input yang sesuai dan (2) memahami distribusi output. Itulah domain pemikiran manusia, di mana komputer sejauh ini hanya sedikit membantu.