導航:首頁 > 源碼編譯 > 計算機基於正態分布演算法

計算機基於正態分布演算法

發布時間:2023-06-12 18:55:28

A. 如何產生正態分布的隨機數

•最簡單的:rejection sampling,思路很簡單,也很容易實現,但效率較差
•較復雜的:inverse CDF,直接利用累積分布函數(CDF)的反函數生成隨機數,但計算中牽扯到比較復雜的誤差函數erf(非初等函數)
•更好的:Box-Muller演算法,在很長時間內都是生成正態分布隨機數的"標准"演算法。Box-Muller演算法的特點是效率高,並且計算過程比較簡單(只用到了初等函數)。參見:Box-Muller transform
•目前最好的(相較於其它實用演算法):ziggurat演算法,效率很高,很多現代的編程語言都使用了這一演算法。ziggurat並不是人名,其含義是「金字形神塔」,不是埃及那個金字塔,而是古代蘇美爾人建造的類金字塔結構的神壇:神壇由多層平台構成,每層平台都呈矩形、卵形或正方形,且自下而上面積逐漸減小。ziggurat演算法實際上是一種改進的、包含查表操作的rejection sampling。

B. 如何產生正態分布的隨機數

這個要看你的具體需求,有幾種方法可以推薦。


首先最簡單:rejection sampling,思維方式非常簡單,容易實現,但效率很差更復雜:逆提供,直接使用累積分布函數的逆函數(CDF)生成隨機數,但涉及更復雜的計算誤差函數的小塊土地(非初等函數)更好:盒子-穆勒演算法,生成在很長一段時間的正態分布隨機數的「標准」演算法。


所以不管是那種演算法,都需要你去花些功夫來了解一下,是不是適合自己,是不是適合去解決現在自己正在面臨的問題,畢竟別的經驗都只是一些參考。在自己的實踐中逐步去發現自己的問題,找到最適合自己的很重要

閱讀全文

與計算機基於正態分布演算法相關的資料

熱點內容
圖片找不到文件夾 瀏覽:199
看書免費app哪個最好 瀏覽:630
python伺服器怎麼安裝 瀏覽:382
程序員新技術 瀏覽:52
安卓如何在桌面上添加音樂 瀏覽:141
手機相冊加密連接電腦可以看到嗎 瀏覽:894
51單片機怎麼寫成函數 瀏覽:322
你幻想的安卓平板是什麼 瀏覽:36
面向對象的編譯方法 瀏覽:362
程序病毒編譯是指 瀏覽:489
pythonopencv安裝包 瀏覽:302
獸人的命令改了 瀏覽:731
雲伺服器屬於硬體還是軟體 瀏覽:144
圖片合並到一個文件夾 瀏覽:573
mysql執行cmd命令 瀏覽:70
有為財經源碼 瀏覽:344
駕照預約計時app是什麼軟體 瀏覽:223
非對稱加密怎麼計算 瀏覽:55
應用被加密該怎麼辦 瀏覽:716
程序員b2等級 瀏覽:236