蒙特卡羅方法實際上是一種廣泛的研究和分析方法,其共同特點是依賴于隨機數來研究問題,其基本前提是,雖然某些事物可能完全隨機,對小樣本沒有用處,在大樣本下,它們變得可預測,并可用于解決各種問題。 站在一堆書后面的女人在...
蒙特卡羅方法實際上是一種廣泛的研究和分析方法,其共同特點是依賴于隨機數來研究問題,其基本前提是,雖然某些事物可能完全隨機,對小樣本沒有用處,在大樣本下,它們變得可預測,并可用于解決各種問題。
![]()
站在一堆書后面的女人在一個經典的實驗中可以看到蒙特卡羅方法的一個簡單例子,用隨機投擲飛鏢來確定圓周率的近似值。讓我們取一個圓,把它切成四分之一。然后我們將其中一個四分之一放在一個正方形內。如果我們隨機向那個正方形投擲飛鏢,并對掉在廣場上的飛鏢打折扣,一些飛鏢會落在圓圈內,有些會落在外面。落在圓圈里的飛鏢和落在外面的飛鏢的比例大致相當于圓周率的四分之一。當然,如果我們只投兩三個飛鏢,投擲的隨機性會使我們得到的比率也相當隨機。這是蒙特卡羅方法的一個關鍵點:樣本量必須足夠大,以使結果能夠反映實際的賠率,并且不能有離群值對其產生顯著影響。在隨機投擲飛鏢的情況下,我們發現,在低千次投擲中,蒙特卡羅方法開始產生非常接近圓周率的結果。當我們達到高千次時,數值會變得越來越精確。當然,實際上,向一個正方形投擲數千個飛鏢有點困難。確保完全隨機地進行會更困難或者說不太可能,讓這更像是一個思維實驗,但是有了計算機,我們可以進行真正的隨機"拋投",我們可以很快進行數千次、數萬次甚至數百萬次的拋投正是在計算機的幫助下,蒙特卡羅方法才成為一種真正可行的計算方法。像這樣最早的思想實驗之一被稱為布馮針問題(Buffon's Needle Problem),它首先出現在18世紀晚期。它呈現出兩條平行的相同寬度的木條,放在地板上。然后假設我們把一根針放在地上,問針落在地上的概率有多大,以至于它穿過了兩條帶之間的一條線。這可以用來計算π,達到了令人印象深刻的程度。事實上,意大利數學家馬里奧·拉扎里尼(Mario Lazzarini)做了這個實驗,把針扔了3408次,得到的結果是3.1415929(355/113),這個答案非常接近π的實際值。當然,蒙特卡羅方法的使用遠遠超出了簡單計算π的范圍。它在許多無法計算精確結果的情況下非常有用,作為一種簡捷的回答。在20世紀40年代早期的核項目中,它最著名的是在洛斯阿拉莫斯使用的,正是這些科學家創造了"蒙特卡羅方法"一詞,用來描述它的隨機性,因為它類似于在蒙特卡羅進行的許多隨機性游戲。蒙特卡羅方法的各種形式可以在計算機設計、物理化學、核物理和粒子物理、全息科學、經濟學和許多其他學科。任何需要計算精確結果所需的能量的領域,例如數百萬原子的運動,都可以通過使用蒙特卡羅方法得到極大的幫助。