蒙特卡洛模型之神奇的布丰投针实验
【問題的提出】
18世紀,法國數學家布豐(1707-1788)提出提出了一種計算圓周率的方法——隨機投針法,即蒲豐投針問題(又譯“布豐投針問題”)
(如圖)
【實驗步驟】
布豐的實驗步驟如下:
1) 取一張白紙,在上面畫上許多條間距為a的平行線。
2) 取一根長度為l(l≤a) 的針,隨機地向畫有平行直線的紙上擲n次,觀察針與直線相交的次數,記為m。
3)計算針與直線相交的概率.
18世紀,法國數學家布豐提出的“投針問題”,記載于布豐1777年出版的著作中:“在平面上畫有一組間距為a的平行線,將一根長度為l(l≤a)的針任意擲在這個平面上,求此針與平行線中任一條相交的概率。”
布豐本人證明了,這個概率是:
(其中π為圓周率)
由于它與π有關,于是人們想到利用投針試驗來估計圓周率的值。
布豐驚奇地發現:有利的扔出與不利的扔出兩者次數的比,是一個包含π的表示式.如果針的長度等于a/2,那么有利扔出的概率為1/π.扔的次數越多,由此能求出越為精確的π的值。
【蒙特卡洛法介紹】
蒙特卡羅法又稱統計模擬法,是一種以抽樣和隨機數的產生為基礎的隨機性方法,因此也稱為隨機抽樣法、計算機隨機模擬法等。蒙特卡羅方法的基本原理是通過數字模擬試驗,得到所要求解的出現某種事件的概率,作為問題的近似解。很久之前人們就已經開始使用蒙特卡羅方法來解決問題了,早在17世紀,發生事件的概率是用發生事件的頻率來決定的。在20世紀計算機的使用,使得這樣的實驗可以大量快速的進行模擬。近年來,隨著蒙特卡羅方法不僅被用于數學、物理、化學等領域,還應用于核科學與技術、機械工程、天文學和儀器科學與技術等。該法產生了不同的分支,有直接蒙特卡羅法,動力學蒙特卡羅法等
【本題思路】
由于蒙特卡羅法是基于概率論思想,因此可適用在布豐投針實驗中。經過次數足夠大的實驗,針與平行線相交的概率即為實驗中該現象發生的頻率。
那么如何與π相聯系呢?
(如圖)
注:圖片來自網絡
圖片中的解決思路即將為針與平行線的關系轉化為面積之比的關系,問題也隨之轉化為了求解概率問題。
【matlab求解思路】
可將針與平行線相交轉化為數學公式1即:
實驗重復次數可為n=1:10000(按自己需求)
判斷上式是否成立,若成立,則m=m+1(m為相交次數,初始可為0)
直至循環結束
則頻率(概率)為:
再根據公式1,將p帶入,得出π的近似值。
*****實際問題轉化為數學語言表述
【代碼部分(matlab)】
也可多次求解,求其平均值,提高準確率
代碼如下:
感悟:首先是知道了前輩們求解圓周率π的另一種方法,即基于多次試驗的統計結果,這給今后解決問題提供了一個思路。其次,通過投針試驗,大致了解了蒙特卡洛法的基本思路,其主要的思想便是在不知道問題的本質求解的方法時,可通過多次試驗,從實驗中的概率統計結果中找到問題的近似解。另外,在編程實現方面,雖然有一定的matlab基礎,但是對于具體的思路的實現仍較為困難,通過看建模視頻中提出的各個問題,跟上思路,積極思考,多看代碼多學習,我想一段時間后,編程解決問題的能力還是可以提高的,在此感謝清風大哥!
總結
以上是生活随笔為你收集整理的蒙特卡洛模型之神奇的布丰投针实验的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学计算机要学工图吗,工程图学及计算机绘图
- 下一篇: 从零开始设计一款APP之Android设