日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[转]阮一峰:蒙特卡罗方法入门

發布時間:2025/7/25 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转]阮一峰:蒙特卡罗方法入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ametor

阮一峰:蒙特卡羅方法入門

發表于2016/4/24 10:26:54 ?84人閱讀

分類: 算法

作者:?阮一峰

日期:?2015年7月27日

本文通過五個例子,介紹蒙特卡羅方法(Monte Carlo Method)。

一、概述

蒙特卡羅方法是一種計算方法。原理是通過大量隨機樣本,去了解一個系統,進而得到所要計算的值。

它非常強大和靈活,又相當簡單易懂,很容易實現。對于許多問題來說,它往往是最簡單的計算方法,有時甚至是唯一可行的方法。

它誕生于上個世紀40年代美國的"曼哈頓計劃",名字來源于賭城蒙特卡羅,象征概率。

二、π的計算

第一個例子是,如何用蒙特卡羅方法計算圓周率π。

正方形內部有一個相切的圓,它們的面積之比是π/4。

現在,在這個正方形內部,隨機產生10000個點(即10000個坐標對 (x, y)),計算它們與中心點的距離,從而判斷是否落在圓的內部。

如果這些點均勻分布,那么圓內的點應該占到所有點的 π/4,因此將這個比值乘以4,就是π的值。通過R語言腳本隨機模擬30000個點,π的估算值與真實值相差0.07%。

三、積分的計算

上面的方法加以推廣,就可以計算任意一個積分的值。

比如,計算函數 y = x2?在 [0, 1] 區間的積分,就是求出下圖紅色部分的面積。

這個函數在 (1,1) 點的取值為1,所以整個紅色區域在一個面積為1的正方形里面。在該正方形內部,產生大量隨機點,可以計算出有多少點落在紅色區域(判斷條件 y < x2)。這個比重就是所要求的積分值。

用Matlab模擬100萬個隨機點,結果為0.3328。

四、交通堵塞

蒙特卡羅方法不僅可以用于計算,還可以用于模擬系統內部的隨機運動。下面的例子模擬單車道的交通堵塞。

根據 Nagel-Schreckenberg 模型,車輛的運動滿足以下規則。

  • 當前速度是 v 。
  • 如果前面沒車,它在下一秒的速度會提高到 v + 1 ,直到達到規定的最高限速。
  • 如果前面有車,距離為d,且 d < v,那么它在下一秒的速度會降低到 d - 1 。
  • 此外,司機還會以概率 p 隨機減速, 將下一秒的速度降低到 v - 1 。

在一條直線上,隨機產生100個點,代表道路上的100輛車,另取概率 p 為 0.3 。

上圖中,橫軸代表距離(從左到右),縱軸代表時間(從上到下),因此每一行就表示下一秒的道路情況。

可以看到,該模型會隨機產生交通擁堵(圖形上黑色聚集的部分)。這就證明了,單車道即使沒有任何原因,也會產生交通堵塞。

五、產品厚度

某產品由八個零件堆疊組成。也就是說,這八個零件的厚度總和,等于該產品的厚度。

已知該產品的厚度,必須控制在27mm以內,但是每個零件有一定的概率,厚度會超出誤差。請問有多大的概率,產品的厚度會超出27mm?

取100000個隨機樣本,每個樣本有8個值,對應8個零件各自的厚度。計算發現,產品的合格率為99.9979%,即百萬分之21的概率,厚度會超出27mm。

六、證券市場

證券市場有時交易活躍,有時交易冷清。下面是你對市場的預測。

  • 如果交易冷清,你會以平均價11元,賣出5萬股。
  • 如果交易活躍,你會以平均價8元,賣出10萬股。
  • 如果交易溫和,你會以平均價10元,賣出7.5萬股。

已知你的成本在每股5.5元到7.5元之間,平均是6.5元。請問接下來的交易,你的凈利潤會是多少?

取1000個隨機樣本,每個樣本有兩個數值:一個是證券的成本(5.5元到7.5元之間的均勻分布),另一個是當前市場狀態(冷清、活躍、溫和,各有三分之一可能)。

模擬計算得到,平均凈利潤為92, 427美元。

七,參考鏈接

  • Introduction To Monte Carlo Methods,by Alex Woods
  • Monte Carlo Simulation Tutorial
  • 蒙特卡羅(Monte Carlo)方法簡介,by 王曉勇
  • 蒙特卡羅(Monte Carlo)模擬的一個應用實例

(完)

轉載于:https://www.cnblogs.com/egoechog/articles/f4b20575-a93a-4a3e-8e42-5991ce10d16c.html

總結

以上是生活随笔為你收集整理的[转]阮一峰:蒙特卡罗方法入门的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。