以概率和統計的理論、方法為基礎的一種計算方法,將所求解的問題同一定的概率模型相聯繫,用電子電腦實現統計類比或抽樣,以獲得問題的近似解,故又稱統計模擬法或統計試驗法。

  蒙特卡羅是摩納哥的一個城市,以賭博聞名於世界。蒙特卡羅法借用這一城市的名稱是為瞭象徵性地表明該方法的概率統計的特點。

  蒙特卡羅法作為一種計算方法,是由S.M.烏拉姆和J.馮·諾伊曼在20世紀40年代中葉為研製核武器的需要要而首先提出來的。在此之前,該方法的基本思想實際上早已被統計學傢所采用瞭。例如,早在17世紀,人們就知道瞭依頻數來決定概率的方法。

  20世紀40年代中葉,出現瞭電子計算機,使得用數學方法模擬大量的試驗成為可能。另外,隨著科學技術的不斷發展,出現瞭越來越多的復雜而困難的問題,用通常的解析方法或數值方法都很難加以解決。蒙特卡羅法就是在這些情況下,作為一種可行的而且是不可缺少的計算方法被提出和迅速發展起來的。

  基本原理 考慮一個射擊運動員的射擊成績G。令x表示彈著點到靶心的距離,g(x)表示得分,而f(x)表示該運動員的彈著點的分佈密度,則

另一方面,如果該運動員進行瞭實彈射擊,彈著點依次為 X 1X 2,…, X N,則平均得分為

很明顯, Ĝ NG的一個近似估計。蒙特卡羅法正是用 Ĝ N作為 G的近似估計。

  假設x不是一維空間的點,而是一個S維空間的點(x1x2,…,xs),則上述積分變為

蒙特卡羅法計算此積分是用

作為 G的近似估計,式中( X 1nX 2n,…, X sn)是由 f( x 1x 2,…, x s)中抽取的第 n個樣本點。同上述一維積分比較,相同點是,都以某隨機變量的 N個獨立抽樣值的算術平均作為近似估計;不同點僅僅是,決定隨機量的樣本點不同,一個是一維空間的點,另一個是 S維空間的點。由上式可見,決定近似估計 Ĝ N好壞的僅僅是隨機變量 g( x)或 g( x 1x 2,…, x s)的分佈情況,而與它們是由怎樣的樣本點對應過來的無關。換言之,如果隨機變量 g( x)和 g( x 1x 2,…, x s)具有相同分佈,在不計抽樣,不計計算 g( x)和 g( x 1x 2,…, x s)的差別的情況下, S維情況與一維情況無任何差異。這是其他計算方法所不具有的、一個非常重要的性質。

  蒙特卡羅法解題的一般過程是,首先構成一個概率空間;然後在該概率空間中確定一個隨機變量g(x),其數學期望

正好等於所要求的值 G,其中 F( x)為 x的分佈函數;最後,以所確定的隨機變量的簡單子樣的算術平均值

作為 G的近似估計。由於其他原因,如確定數學期望為 G的隨機變量 g( x)有困難,或為其他目的,蒙特卡羅法有時也用 G的漸近無偏估計代替一般過程中的無偏估計 Ĝ N來作為 G的近似估計。

  收斂性、誤差和費用 蒙特卡羅法的近似估計ĜN依概率1收斂於G的充分必要條件是隨機變量g(x)滿足

如果隨機變量 g( x)滿足條件

式中1≤ r<2,則

亦即 Ĝ N依概率1收斂於 G的速度為 。總之,蒙特卡羅法的收斂性取決於所確定的隨機變量是否絕對可積,而蒙特卡羅法的收斂速度取決於該隨機變量是幾次絕對可積的。

  根據中心極限定理,隻要隨機變量g(x)具有有限的異於零的方差σ2,當N足夠大時便有蒙特卡羅法的誤差公式如下:

式中1- α為置信水平, x由置信水平所惟一確定。根據上述誤差公式,為滿足問題的誤差和置信水平的要求,子樣容量 N必須大於( x/ε) 2 σ 2,其中ε表示誤差。進一步假設每觀察一個樣本所需要的費用是 C,則蒙特卡羅法的費用是 。這一結果表明,在相同誤差和置信水平要求下,一個蒙特卡羅法的優劣完全取決於 σ 2 C的值的大小,它的值越小相應的方法越好,或者說,蒙特卡羅法的效率與 σ 2 C成反比。

  提高效率的方法 

  降低方差技巧 降低方差是提高蒙特卡羅法效率的重要途徑之一。考慮二重積分

式中 f( xy)為 xy的分佈密度函數, g( xy)的方差存在。蒙特卡羅法計算 E g的一般技巧是用 g= g( xy)作為所確定的隨機變量,其中 xy服從分佈 f( xy)。降低方差的具體辦法有:

  ① 統計估計技巧 用f(x) 和fx(y)分別表示分佈f(xy)的邊緣分佈和條件分佈。計算Eg的統計估計技巧是用y的統計估計量

作為所確定的隨機變量,其中 x服從分佈 f( x)。 g的方差恰好為兩個方差的和,它們分別是對隨機變量 x和隨機變量 y采用抽樣辦法而產生的。 g SE的方差正好等於前者,因此 g SE的方差一定比 g的方差小。統計估計技巧的一般原理是,對於問題中所出現的諸隨機變量,能夠確定其相應的統計估計量的,就不要再對它們采用隨機抽樣的辦法。

  ② 重要抽樣技巧 引入任意分佈密度函數f*(xy),則

的數學期望同樣為E g,其中 xy服從分佈 f *( xy)。當 f *( xy)~| g( xy)| f( xy)時, g IS的方差達到最小。在 g( xy)≥0時,方差等於零, g IS實際上變成瞭與其中出現的隨機變量無關的常數。重要抽樣技巧的一般原理是,盡量使所確定的隨機變量與問題中所出現的隨機變量關系不大。

  ③ 相關抽樣技巧 考慮一個新的、積分值已知的二重積分

可得知

的數學期望同樣為 E g,式中 xy服從分佈 f( xy), α為任意常數。當 為隨機變量 g( xy)和 g *( xy)的均方差 σ gλ g *之比時, g CS的方差 達到最小。此時的方差等於 g的方差1- ρ 2倍, ρ為隨機變量 g( xy)和 g *( xy)的相關系數。當 ρ=1時,方差變為零。相關抽樣技巧的一般原理是,尋找一個數學期望已知的且與原確定的隨機變量正相關的隨機變量,使相應的相關系數盡量接近1,然後用這兩個隨機變量的線性組合作為蒙特卡羅法最終所確定的隨機變量。

  降低方差的技巧還有對偶變數技巧、系統抽樣技巧和分層抽樣技巧等。對偶變數技巧的一般原理是,除瞭原確定的隨機變量外,尋找另一個(或多個)具有相同數學期望的隨機變量,使得它們之間盡量是對偶負相關的,然後用它們的線性組合作為蒙特卡羅法最終所確定的隨機變量。系統抽樣技巧的一般原理是,對問題中所出現的某些隨機變量按相應分佈所確定的比例進行抽樣,而不是進行隨機抽樣。分層抽樣技巧的一般原理是,對問題中所出現的某些隨機變量進行分層,盡量使所確定的隨機變量在各層中相對平穩,各層間的抽樣按相應分佈所確定的比例進行。

  其他途徑 為瞭提高蒙特卡羅法的效率,除瞭簡單地降低方差外,還有為降低費用設計的分裂和輪盤賭技巧,為逐步降低方差而設計的多極抽樣技巧,為改善收斂速度而設計的擬蒙特卡羅法,為計算條件期望而設計的條件蒙特卡羅法等等。分裂和輪盤賭技巧的一般原理是,將x的積分區域分為重要和非重要兩部分,對於抽樣確定的X,當它屬於重要區域時,對相應的Y進行多次抽樣;當它屬於非重要區域時,隻有在賭獲勝時才對相應的Y進行抽樣。多級抽樣技巧的一般原理是,在進行某一級抽樣計算的同時,根據它所提供的抽樣觀察值,設計更好的抽樣技巧,用新設計的抽樣技巧進行新的一級的抽樣計算,依次類推,最後用各級的結果的線性組合作為蒙特卡羅法的近似估計。擬蒙特卡羅法與一般蒙特卡羅法的最大區別是,前者不像後者那樣要求子樣g(X1),g(X2),…,g(Xn)是相互獨立的。用一致分佈點列替代由隨機數組成的點列的所謂數論方法,實際上就是一種擬蒙特卡羅法。條件蒙特卡羅法的一般原理是,首先將條件期望問題轉化成為非條件期望問題,然後用解非條件期望的一般方法來解決條件期望計算問題。由於條件蒙特卡羅法中引進瞭任意分佈密度函數,因此,可以選取合適的分佈密度函數來實現進一步降低方差的目的。

  優缺點 蒙特卡羅法的最大優點是,在方差存在的情況下,問題的維數不影響它的收斂速度,而隻影響它的方差;問題幾何形狀的復雜性對它的影響不大;它不象其他數值方法那樣對問題一定要進行離散化處理,而是常可以進行連續處理;它的程序結構簡單,所需計算機存貯單元比其他數值方法少,這對於高維問題差別尤其顯著。蒙特卡羅法的最大缺點是,對於維數少的問題它不如其他數值方法好;它的誤差是概率誤差,而不是一般意義下的誤差。

  應用 隨著電子計算機的迅速發展和科學技術問題日趨復雜,蒙特卡羅法的應用越來越廣泛,已經滲透到科學技術的各個領域。

  在一些典型數學問題方面的應用主要有:多重積分計算、線性代數方程組求解、矩陣求逆、常微分方程邊值問題求解、偏微分方程求解、非齊次線性積分方程求解、本征值計算和最優化計算等等。其中的多重積分計算、非齊次線性積分方程求解和齊次線性積分方程本征值計算等,不僅非常有代表性,而且有很大的實用價值,對於高維問題常比其他數值方法好。

  在一些實際問題方面的應用主要有,屏蔽計算、核臨界安全計算、反應堆物理計算、微擾計算、實驗核物理計算、高能物理計算、核物理計算、統計物理計算、真空技術、公用事業、信息論、系統模擬、可靠性計算和計算機科學等等。其中的屏蔽計算、核臨界安全計算、微擾計算、實驗核物理計算和統計物理計算等,不僅非常有代表性,而且應用得很廣泛,按蒙特卡羅法解決這些問題的能力講,已經超過瞭其他計算方法的水平。