蒙特·卡羅方法

      蒙特·卡羅方法(Monte Carlo method),也稱統計模擬方法,是二十世紀四十年代中期因爲科學技術的發展和電子計算機的發明,而被提出的一種以機率統計理論爲指導的一類很是重要的數值計算方法。是指使用隨機數(或更常見的僞隨機數)來解決不少計算問題的方法。與它對應的是肯定性算法。蒙特·卡羅方法在金融工程學,宏觀經濟學,計算物理學(如粒子輸運計算、量子熱力學計算、空氣動力學計算)等領域應用普遍。算法

蒙特·卡羅方法提出

蒙特卡羅方法於20世紀40年代美國在 第二次世界大戰中研製 原子彈的「曼哈頓計劃」計劃的成員S.M.烏拉姆和J.馮·諾伊曼首先提出。數學家馮·諾伊曼用馳名世界的賭城—摩納哥的Monte Carlo—來命名這種方法,爲它蒙上了一層神祕色彩。在這以前,蒙特卡羅方法就已經存在。1777年,法國數學家布豐(Georges Louis Leclere de Buffon,1707—1788)提出用投針實驗的方法求圓周率π。這被認爲是蒙特卡羅方法的起源。

蒙特·卡羅方法基本思想

當所求解問題是某種隨機事件出現的機率,或者是某個隨機變量的指望值時,經過某種「實驗」的方法,以這種事件出現的頻率估計這一隨機事件的機率,或者獲得這個隨機變量的某些數字特徵,並將其做爲問題的解。
工做過程
蒙特卡羅方法的解題過程能夠歸結爲三個主要步驟:構造或描述機率過程;實現從已知機率分佈抽樣;創建各類估計量。
蒙特卡羅方法解題過程的三個主要步驟:
(1)構造或描述機率過程
對於自己就具備隨機性質的問題,如粒子輸運問題,主要是正確描述和模擬這個機率過 程,對於原本不是隨機性質的肯定性問題,好比計算定積分,就必須事先構造一我的爲的機率過程,它的某些參量正好是所要求問題的解。即要將不具備隨機性質的問題轉化爲 隨機性質的問題。
(2)實現從已知機率分佈抽樣
構造了機率模型之後,因爲各類機率模型均可以看做是由各類各樣的機率分佈構成的,所以產生已知機率分佈的隨機變量(或隨機向量),就成爲實現蒙特卡羅方法模擬實驗的基本手段,這也是蒙特卡羅方法被稱爲隨機抽樣的緣由。最簡單、最基本、最重要的一個 機率分佈是(0,1)上的均勻分佈(或稱矩形分佈)。 隨機數就是具備這種均勻分佈的隨機變量。 隨機數序列就是具備這種分佈的整體的一個簡單子樣,也就是一個具備這種分佈的相互獨立的隨機變數序列。產生 隨機數的問題,就是從這個分佈的抽樣問題。在計算機上,能夠用物理方法產生 隨機數,但價格昂貴,不能重複,使用不便。另外一種方法是用 數學 遞推公式產生。這樣產生的序列,與真正的 隨機數序列不一樣,因此稱爲僞隨機數,或僞隨機數序列。不過,通過多種 統計檢驗代表,它與真正的 隨機數,或隨機數序列具備相近的性質,所以可把它做爲真正的隨機數來使用。由已知分佈隨機抽樣有各類方法,與從(0,1)上均勻分佈抽樣不一樣,這些方法都是藉助於隨機序列來實現的,也就是說,都是以產生隨機數爲前提的。因而可知,隨機數是咱們實現 蒙特卡羅模擬的基本工具。
(3)創建各類估計量
通常說來,構造了機率模型並能從中抽樣後,即實現模擬實驗後,咱們就要肯定一個隨機變量,做爲所要求的問題的解,咱們稱它爲無偏估計。創建各類 估計量,至關於對 模擬實驗的結果進行考察和登記,從中獲得問題的解。
數學應用:
一般蒙特·卡羅方法經過構造符合必定規則的隨機數來解決數學上的各類問題。對於那些因爲計算過於複雜而難以獲得 解析解或者根本沒有解析解的問題,蒙特·卡羅方法是一種有效的求出 數值解的方法。通常蒙特·卡羅方法在數學中最多見的應用就是蒙特·卡羅積分。

蒙特·卡羅方法應用領域

蒙特卡羅方法在 金融工程學宏觀經濟學,生物醫學,計算物理學(如粒子輸運計算、量子熱力學計算、空氣動力學計算、核工程)等領域應用普遍。
 

蒙特·卡羅方法工做過程

在解決實際問題的時候應用蒙特·卡羅方法主要有兩部分工做:
1. 用蒙特·卡羅方法模擬某一過程時,須要產生某一律率分佈的 隨機變量
2. 用 統計方法把模型的數字特徵估計出來,從而獲得實際問題的數值解。
 

蒙特·卡羅方法分子模擬計算

使用蒙特·卡羅方法進行分子模擬計算是按照如下步驟進行的:
1. 使用隨機數發生器產生一個隨機的分子構型。
2. 對此分子構型的其中粒子座標作無規則的改變,產生一個新的分子構型。
3. 計算新的分子構型的能量。
4. 比較新的分子構型於改變前的分子構型的能量變化,判斷是否接受該構型。
若新的分子構型能量低於原分子構型的能量,則接受新的構型,使用這個構型重複再作下一次迭代。 若新的分子構型 能量高於原分子構型的能量,則計算玻爾茲曼因子,併產生一個 隨機數。若這個隨機數大於所計算出的玻爾茲曼因子,則放棄這個構型,從新計算。 若這個隨機數小於所計算出的玻爾茲曼因子,則接受這個構型,使用這個構型重複再作下一次迭代。
5. 如此進行 迭代計算,直至最後搜索出低於所給 能量條件的分子構型結束。
 

蒙特·卡羅方法項目管理

項目管理中蒙特·卡羅模擬方法的通常步驟是:
1.對每一項活動,輸入最小、最大和最可能估計數據,併爲其選擇一種合適的先驗分佈模型;
2.計算機根據上述輸入,利用給定的某種規則,快速實施充分大量的 隨機抽樣
3.對 隨機抽樣的數據進行必要的數學計算,求出結果
4.對求出的結果進行 統計學處理,求出最小值、最大值以及數學指望值和單位 標準誤差
5.根據求出的統計學處理數據,讓計算機自動生成機率分佈曲線和累積機率曲線(一般是基於 正態分佈的機率累積 S曲線)
6.依據累積機率曲線進行項目 風險分析

蒙特·卡羅方法力學

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

蒙特·卡羅方法發展運用

從理論上來講,蒙特卡羅方法須要大量的實驗。實驗次數越多,所獲得的結果才越精確。
 
從表中數據能夠看到,一直到公元20世紀初期,儘管實驗次數數以千計,利用蒙特卡羅方法所獲得的圓周率π值,仍是達不到公元5世紀祖沖之的推算精度。這多是傳統 蒙特卡羅方法長期得不到推廣的主要緣由。
計算機技術的發展,使得蒙特卡羅方法在最近10年獲得快速的普及。現代的 蒙特卡羅方法,已經沒必要親自動手作實驗,而是藉助計算機的高速運轉能力,使得本來費時費力的實驗過程,變成了快速和垂手可得的事情。它不但用於解決許多複雜的科學方面的問題,也被 項目管理人員常用。
藉助計算機技術,蒙特卡羅方法實現了兩大優勢:
一是簡單,省卻了繁複的數學推導和演算過程,使得通常人也可以理解和掌握
二是快速。簡單和快速,是 蒙特卡羅方法在現代 項目管理中得到應用的技術基礎。
蒙特卡羅方法有很強的適應性,問題的幾何形狀的複雜性對它的影響不大。該方法的收斂性是指 機率意義下的收斂,所以問題 維數的增長不會影響它的收斂速度,並且 存貯單元也很省,這些是用該方法處理大型複雜問題時的優點。所以,隨着電子計算機的發展和科學技術問題的日趨複雜, 蒙特卡羅方法的應用也愈來愈普遍。它不只較好地解決了多重積分計算、 微分方程求解、 積分方程求解、特徵值計算和非線性方程組求解等高難度和複雜的數學計算問題,並且在統計物理、 核物理、真空技術、 系統科學信息科學、公用事業、地質、醫學, 可靠性及計算機科學等普遍的領域都獲得成功的應用。
相關文章
相關標籤/搜索