聯系我們:0411-87584009

技術優享丨蒙特·卡羅方法的基本思想和分子模擬計算

 二維碼
發表時間:2022-08-30 12:56

蒙特·卡羅方法(Monte Carlo method),也稱統計模擬方法,是二十世紀四十年代中期由于科學技術的發展和電子計算機的發明,而被提出的一種以概率統計理論為指導的一類非常重要的數值計算方法。是指使用隨機數(或更常見的偽隨機數)來解決很多計算問題的方法。


基本思想

當所求解問題是某種隨機事件出現的概率,或者是某個隨機變量的期望值時,通過某種"實驗"的方法,以這種事件出現的頻率估計這一隨機事件的概率,或者得到這個隨機變量的某些數字特征,并將其作為問題的解。

工作過程

蒙特卡羅方法的解題過程可以歸結為三個主要步驟:構造或描述概率過程;實現從已知概率分布抽樣;建立各種估計量。

蒙特卡羅方法解題過程的三個主要步驟:

(1)構造或描述概率過程

對于本身就具有隨機性質的問題,如粒子輸運問題,主要是正確描述和模擬這個概率過 程,對于本來不是隨機性質的確定性問題,比如計算定積分,就必須事先構造一個人為的概率過程,它的某些參量正好是所要求問題的解。即要將不具有隨機性質的問題轉化為隨機性質的問題。

(2)實現從已知概率分布抽樣

構造了概率模型以后,由于各種概率模型都可以看作是由各種各樣的概率分布構成的,因此產生已知概率分布的隨機變量(或隨機向量),就成為實現蒙特卡羅方法模擬實驗的基本手段,這也是蒙特卡羅方法被稱為隨機抽樣的原因。最簡單、最基本、最重要的一個概率分布是(0,1)上的均勻分布(或稱矩形分布)。隨機數就是具有這種均勻分布的隨機變量。隨機數序列就是具有這種分布的總體的一個簡單子樣,也就是一個具有這種分布的相互獨立的隨機變數序列。產生隨機數的問題,就是從這個分布的抽樣問題。在計算機上,可以用物理方法產生隨機數,但價格昂貴,不能重復,使用不便。另一種方法是用數學遞推公式產生。這樣產生的序列,與真正的隨機數序列不同,所以稱為偽隨機數,或偽隨機數序列。不過,經過多種統計檢驗表明,它與真正的隨機數,或隨機數序列具有相近的性質,因此可把它作為真正的隨機數來使用。由已知分布隨機抽樣有各種方法,與從(0,1)上均勻分布抽樣不同,這些方法都是借助于隨機序列來實現的,也就是說,都是以產生隨機數為前提的。由此可見,隨機數是我們實現蒙特卡羅模擬的基本工具。

(3)建立各種估計量

一般說來,構造了概率模型并能從中抽樣后,即實現模擬實驗后,我們就要確定一個隨機變量,作為所要求的問題的解,我們稱它為無偏估計。建立各種估計量,相當于對模擬實驗的結果進行考察和登記,從中得到問題的解。

數學應用:

通常蒙特·卡羅方法通過構造符合一定規則的隨機數來解決數學上的各種問題。對于那些由于計算過于復雜而難以得到解析解或者根本沒有解析解的問題,蒙特·卡羅方法是一種有效的求出數值解的方法。一般蒙特·卡羅方法在數學中最常見的應用就是蒙特·卡羅積分。

工作過程

在解決實際問題的時候應用蒙特·卡羅方法主要有兩部分工作:

1. 用蒙特·卡羅方法模擬某一過程時,需要產生某一概率分布的隨機變量。

2. 用統計方法把模型的數字特征估計出來,從而得到實際問題的數值解。

折疊分子模擬計算

使用蒙特·卡羅方法進行分子模擬計算是按照以下步驟進行的:

1. 使用隨機數發生器產生一個隨機的分子構型。

2. 對此分子構型的其中粒子坐標做無規則的改變,產生一個新的分子構型。

3. 計算新的分子構型的能量。

4. 比較新的分子構型于改變前的分子構型的能量變化,判斷是否接受該構型。

若新的分子構型能量低于原分子構型的能量,則接受新的構型,使用這個構型重復再做下一次迭代。 若新的分子構型能量高于原分子構型的能量,則計算玻爾茲曼因子,并產生一個隨機數。若這個隨機數大于所計算出的玻爾茲曼因子,則放棄這個構型,重新計算。 若這個隨機數小于所計算出的玻爾茲曼因子,則接受這個構型,使用這個構型重復再做下一次迭代。

5. 如此進行迭代計算,直至最后搜索出低于所給能量條件的分子構型結束。

折疊項目管理

項目管理中蒙特·卡羅模擬方法的一般步驟是:

1.對每一項活動,輸入最小、最大和最可能估計數據,并為其選擇一種合適的先驗分布模型;

2.計算機根據上述輸入,利用給定的某種規則,快速實施充分大量的隨機抽樣

3.對隨機抽樣的數據進行必要的數學計算,求出結果

4.對求出的結果進行統計學處理,求出最小值、最大值以及數學期望值和單位標準偏差

5.根據求出的統計學處理數據,讓計算機自動生成概率分布曲線和累積概率曲線(通常是基于正態分布的概率累積S曲線)

6.依據累積概率曲線進行項目風險分析。

折疊力學

在力學中,蒙特卡羅方法多被用來求解稀薄氣體動力學問題,其中最為成功的是澳大利亞G.A.伯德等人發展的直接模擬統計試驗法。此法通過在計算機上追蹤幾千個或更多的模擬分子的運動、碰撞及其與壁面的相互作用,以模擬真實氣體的流動。它的基本假設與玻耳茲曼方程一致,但它是通過追蹤有限個分子的空間位置和速度來代替計算真實氣體中分布函數。模擬的相似條件是流動的克努曾數(Kn)相等,即數密度與碰撞截面之積保持常數。對每個分子分配以記錄其位置和速度的單元。在模擬過程中分別考慮分子的運動和碰撞,在此平均碰撞時間間隔內,分別計算分子無碰撞的運動和典型碰撞。若空間網格取得足夠小,其中任意兩個分子都可以互相碰撞。具體決定哪兩個剛體分子相撞,是隨機取一對分子,計算它們的相對速度,根據此值與最大相對速度的比值和隨機取樣比較的結果,來決定該對分子是否入選。碰撞后分子的速度根據特定分子模型的碰撞力學和隨機取樣決定。分子與壁面碰撞后的速度,則根據特定的反射模型和隨機取樣決定。對于運動分子的位置和速度的追蹤和求矩可以得出氣體的密度、溫度、速度等一些感興趣的宏觀參量。而對于分子與壁面間的動量和能量交換的記錄則給出阻力、舉力和熱交換系數等的數學期望值。

分享碧菲,掃描二維碼關注公眾號
留言提交


聯系我們



郵編:116600  

地址:遼寧省大連市開發區紅星工業園6-3   電話:0411-87584009

傳真電話:0411-87407009                            

公司網址:www.kenchoumae-daiichi.com

公司郵箱:yj@bfmem.com