Monte Carlo analizi için gerekli simülasyon sayısı


10

Sorum Monte Carlo analiz yöntemi için gerekli sayıda simülasyon ile ilgili. Gördüğüm kadarıyla, izin verilen herhangi bir yüzde hatası için gerekli simülasyon sayısını (ör. 5) E

n={100zcstd(x)Eanlamına gelmek(x)}2,

burada sonuçta elde edilen örneklemenin standart sapmasıdır ve güven seviyesi katsayısıdır (örneğin% 95 için ). Bu şekilde, simülasyonunun sonuçta elde edilen ortalama ve standart sapmasının, % 95 güven seviyesinde gerçek ortalama ve standart sapmayı temsil ettiğini kontrol etmek mümkündür .std(x)zcn

Benim durumumda simulasyonu 7500 kez çalıştırıyorum ve 7500 simülasyondan 100 örneklemenin her biri için hareketli araçlar ve standart sapmalar hesaplıyorum. Elde ettiğim gerekli simülasyon sayısı her zaman 100'den azdır, ancak ortalama ve std'nin% hatası ortalamaya ve tüm sonuçların std'si her zaman% 5'ten az değildir. Çoğu durumda ortalama% hatası% 5'ten azdır, ancak std hatası% 30'a kadar çıkar.

Gerçek ortalama ve std bilmeden gerekli simülasyon sayısını belirlemenin en iyi yolu nedir (benim durumumda maruz kalan simülasyon sonucu normal olarak dağıtılır)?

Herhangi bir yardım için şimdiden teşekkürler.


Sonsuz sayıda yineleme çalıştırıldığında simülasyon sonuçlarının dağılımının nasıl görünebileceği hakkında bir fikir sahibi olabilmek için: N sayıda simülasyondan sonra ortaya çıkan ortalama ve varyansı kullanmak yerine, sonuçta ortaya çıkan dağıtımın uygun bir işlevini bulmaya karar verdim, ancak burada n, izin verilen% hatasını yerine getirmek zorundadır. Bu şekilde, örneğin% 97.5 ile ilişkili kümülatif dağıtım işlevi üzerinde daha doğru sonuçlar bulabileceğimi düşünüyorum. Çünkü 400 ve 7000 simülasyon sonuçlarını karşılaştırdığımda, her iki örnekleme için uygun dağılım fonksiyonları birbirine benziyor, sadece 2. eğri daha pürüzsüz. Ayrıca, MATLAB / Simulink'teki model doğrusal değildir, ancak üretilen girdi parametreleri normal dağıtılmış olsa da, sonuçta simülasyonların histogramı normal değildir, bu nedenle "genelleştirilmiş aşırı değer dağılımı" kullandım, MATLAB'da "gev" olarak adlandırılır. Ama yine de, bu yöntemden emin değilimolji, herhangi bir komut için şimdiden teşekkürler


simülasyonun sonuçları herhangi bir geçiş kriteri ile değerlendirildiğinde gördüğüm kadarıyla, herhangi bir güven seviyesi için gerekli simülasyon sayısını bulmak mümkündür, ancak benim durumumda, tüm sonucun ortalamasını ve varyansını belirli bir güvenle bulmak istiyorum herhangi bir sonlu yineleme ile seviye. Bu nedenle, herhangi bir n örneği için, ortalama aralığını tanımlamak için varyans kullanılır, ancak gerçekten de 0.975'in CPDF'sini temsil edebilecek herhangi bir değeri bulmak için varyansa ihtiyacım var. herhangi bir yorum için teşekkürler
maxwell

Yanıtlar:


4

Genellikle yakınsama çalışmasını yürütürüm ve gerekli simülasyon sayısını belirlerim, daha sonra bu sayıyı sonraki simülasyonlarda kullanırım. Hata, seçilen sayı tarafından önerilenden daha büyükse bir uyarı veririm.

Gerekli simülasyon sayısını belirlemenin tipik yolu, N yolları için simülasyonunun varyansını hesaplamaktır , o zaman standart hata , bkz. Peter Jackel tarafından yapılan "Maliye'de Monte Carlo Yöntemleri" nde MC'nin hata tahmini ile ilgili bölüm, ayrıca Sobol'un küçük kitabında "Belirli bir integralin değerlendirilmesi" bölümüσ^N-2σ^N-N-

Alternatif olarak, her simülasyon için hatayı hesaplayabilir ve belirli eşiğin veya maksimum yol sayısına ulaşıldığında durdurabilirsiniz, burada bu sayı yakınsama çalışmasıyla tekrar belirlenir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.