僞隨機生成之線性同餘算法

定義:

僞隨機數:通過某種數學公式或者算法產生的數值序列。雖然在數學意義上僞隨機數是不隨機的,但是如果能夠通過統計檢驗,可以當成真隨機數使用。

算法:

僞隨機數產生最基礎的思想是均勻分佈(當然這不是唯一的思路)。一般來說,如今主流的編程語言中使用的隨機數函數基本採用這種均勻分佈思想,而其中最常用的算法就是”線性同餘法”。僞隨機數生成器如下:

xn=(axn−1+b)mod(m)
其中,a,b,m都是生成器設定的常數,週期爲m。

高性能線性同餘算法參數取值:
(1)乘數a滿足a=4p+1;增量b滿足b=2q+1。其中p,q都是正整數。
(2)m值最好選的大一些,m值直接影響僞隨機數序列的週期長短。
(3)a 和b值越大,產生的僞隨機數越均勻。
(4)a和m互質,產生的隨機數效果較不互質好。

參考資料:
http://www.cnblogs.com/forget406/p/5294143.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章