Bir niceliksel model, aynı zamanda ilgi özelliklerini temsil eden sayısal çıkış üretmek için kesin bir şekilde bu numaraları birleştirerek sayısal bazı özellikleri ve (b) ile nesneleri temsil dünyanın bazı davranış (a) taklit eder.
Bu şematikte, solda üç sayısal giriş, sağda bir sayısal çıktı üretmek için birleştirilir. Sayı satırları giriş ve çıkışların olası değerlerini gösterir; noktalar kullanımdaki belirli değerleri gösterir. Günümüzde dijital bilgisayarlar genellikle hesaplamaları yaparlar, ancak bunlar zorunlu değildir: modeller kalem ve kâğıtla veya ahşap, metal ve elektronik devrelerde "analog" cihazlar üretilerek hesaplanmıştır.
Örnek olarak, belki de önceki model üç girdisini toplamıştır. R
Bu model için kod benziyor olabilir
inputs <- c(-1.3, 1.2, 0) # Specify inputs (three numbers)
output <- sum(inputs) # Run the model
print(output) # Display the output (a number)
Çıkışı sadece bir sayıdır,
-0.1
Dünyayı tam olarak bilemiyoruz: Model tam olarak dünyanın yaptığı gibi işe yarasa bile, bilgilerimiz kusurlu ve dünyadaki şeyler değişiyor. (Stokastik) simülasyonları, model girdilerindeki bu gibi belirsizlik ve değişkenliğin çıktılardaki belirsizlik ve değişkenliğe nasıl dönmesi gerektiğini anlamamıza yardımcı olur. Bunu, girişleri rastgele değiştirerek, her bir varyasyon için modeli çalıştırarak ve kolektif çıktısını özetleyerek yaparlar.
"Rastgele", keyfi olarak demek değildir. Modelleyici, tüm girişlerin amaçlanan frekanslarını (bilerek veya bilmeyerek, açıkça veya dolaylı olarak olsun olmasın) belirlemelidir. Çıktıların frekansları, sonuçların en ayrıntılı özetini sağlar.
Aynı model, rastgele girdiler ve elde edilen (hesaplanan) rastgele çıktı ile gösterilmiştir.
Şekil, sayı dağılımlarını temsil etmek için histogramlarla frekansları görüntüler. Amaçlanan süre giriş frekansları, sol girişler için gösterilmiştir hesaplanmış modeli birçok kez çalıştırarak elde çıkış frekansı, doğru gösterilir.
Deterministik bir modele girilen her girdi seti tahmin edilebilir bir sayısal çıktı üretir. Model stokastik bir simülasyonda kullanıldığında , çıktı bir dağıtımdır (sağda gösterilen uzun gri olan gibi). Çıktı dağılımının yayılması bize model çıktılarının girdileri değiştiğinde nasıl değişmesi beklenebileceğini söyler.
Yukarıdaki kod örneği, simülasyona dönüştürmek için bu şekilde değiştirilebilir:
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")
Çıkışı, modeli bu rasgele girdilerle yineleyerek oluşturulan tüm sayıların bir histogramı ile özetlenmiştir:
Sahnelerin arkasına baktığımızda, bu modele aktarılan birçok rastgele girdiden bazılarını inceleyebiliriz:
rownames(inputs) <- c("First", "Second", "Third")
print(inputs[, 1:5], digits=2)
Çıktı, her yineleme için bir sütunla birlikte yinelemenin ilk beşini gösterir :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
Muhtemelen, ikinci sorunun cevabı simülasyonların her yerde kullanılabileceğidir . Pratik bir mesele olarak, simülasyonu çalıştırmanın beklenen maliyeti, muhtemel faydadan daha az olmalıdır. Değişkenliği anlama ve ölçmenin faydaları nelerdir? Bunun önemli olduğu iki ana alan vardır:
Bilim ve hukukta olduğu gibi gerçeği aramak. Bir sayı kendi başına yararlıdır, ancak bu sayının ne kadar kesin veya kesin olduğunu bilmek çok daha yararlıdır.
İş ve günlük yaşamda olduğu gibi kararlar vermek . Kararlar riskleri ve faydaları dengeler. Riskler, kötü sonuçların olasılığına bağlıdır. Stokastik simülasyonlar bu olasılığın değerlendirilmesine yardımcı olur.
Bilgi işlem sistemleri, gerçekçi ve karmaşık modelleri tekrar tekrar yürütecek kadar güçlü hale geldi. Yazılım, rastgele değerlerin hızlı ve kolay bir şekilde oluşturulmasını ve özetlenmesini desteklemek için geliştirilmiştir (ikinci R
örnekte gösterildiği gibi). Bu iki faktör, simülasyonun rutin olduğu noktaya son 20 yılda (ve daha fazlası) bir araya geldi. Geriye kalan, insanlara (1) girdilerin uygun dağılımlarını belirlemelerinde ve (2) çıktıların dağılımını anlamalarında yardımcı olmaktır. Bu, şu ana kadar bilgisayarların çok az yardım edildiği insan düşüncesinin alanı.