伪随机生成之线性同余算法

定义:

伪随机数:通过某种数学公式或者算法产生的数值序列。虽然在数学意义上伪随机数是不随机的,但是如果能够通过统计检验,可以当成真随机数使用。

算法:

伪随机数产生最基础的思想是均匀分布(当然这不是唯一的思路)。一般来说,如今主流的编程语言中使用的随机数函数基本采用这种均匀分布思想,而其中最常用的算法就是”线性同余法”。伪随机数生成器如下:

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

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