Simulation
概率的蒙特卡羅估計
我會很感激一些關於如何使用蒙特卡羅來估計概率的建議。
一般來說,我遇到的問題涉及運行實驗併計算輸出頻率(取決於隨機輸入),然後使用相對頻率來估計輸出的概率。但是,起始條件也是隨機生成的。
所以我反复這樣做:
- 根據設定的規則隨機生成起始條件,
- 隨機生成輸入,
- 記錄輸出。
我的問題是:
- 這是一個合理的方法嗎?
- 如何估計概率估計的誤差?
任何幫助表示讚賞;我是這種類型的新手!
我認為這是一個合理的方法。困難通常是如何選擇試驗次數(這會影響模擬時間)。
如果你進行試驗,其中給出一個“肯定”的結果,你可以估計概率陽性結果作為其相對頻率,
該估計量是無偏的並且具有均方誤差或方差,
如下從注意到是帶參數的二項式隨機變量,. 均方根 (RMS) 誤差或標準偏差只是其平方根。
為了評估 RMS 誤差值是否可接受,應將該值與真實值進行比較. 例如,RMS 為可能是可以接受的估計, 但不是為了(誤差將是真實值的十倍)。通常的方法是將誤差除以. 所以歸一化的 RMS 誤差是
這可以近似為為了小的。如您所見,要保持一定的標準化誤差,您需要模擬多次成反比. 但是未知的,所以很難知道哪個你需要。
一種解決方案是使用順序估計,其中不是預先固定的,而是根據一定的停止規則自適應選擇,以保證估計誤差不超過預定水平。一種標準的順序方法是 逆二項式採樣(也稱為負二項式蒙特卡羅),包括以下內容:繼續模擬,直到達到目標數取得積極成果。所以現在是固定的,試驗次數,, 成為隨機變量。
這種方法的好處是通過選擇目標您可以控制將要達到的歸一化錯誤級別,而與未知數無關. 也就是說,對每個對應於歸一化誤差的某個保證值。無論您將誤差定義為mean-square-error、mean-absolute-error還是置信區間,這都有效。以下論文中給出了每種情況下的程序描述(請耐心等待我的自我參考):
- 歸一化 RMS 誤差:http ://arxiv.org/abs/0809.4047 (或參見 IEEE Communications Letters,2009 年 11 月)
- 歸一化平均絕對誤差: http: //oa.upm.es/3222/(或參見 IEEE Transactions on Communications,2008 年 11 月)
- 標準化置信區間:http ://arxiv.org/abs/0809.2402 (或參見 Bernoulli Journal,2010 年 5 月)