毕业论文

打赏
当前位置: 毕业论文 > 数学论文 >

随机数的产生及其应用(4)

时间:2023-01-01 21:13来源:毕业论文
线性同余发生器是当前应用比较多的一种随机数发生器,其简称为LCG(Linear Congruence Generator)或者也叫做LCG方法。于1951年由Lehmer提出,也被称作同余发生器

线性同余发生器是当前应用比较多的一种随机数发生器,其简称为LCG(Linear Congruence Generator)或者也叫做LCG方法。于1951年由Lehmer提出,也被称作同余发生器,因为它是利用的同余的算法来计算的,是目前使用的比较多的一种方法。文献综述

同余与线性同余法

有整数;为模并,若b-a为M的倍数,则有a,b同时除以M后所得余数相同。则称为a与b关于模M同余,记为。

同余具有以下性质:

① 对称性:若,则。

② 传递性:若,,则。

③ 若,则,。

④ 若,则,其中(M,C)表示M和C的最大公因子。

LCG方法的一般递推公式为

其中M为模数,a为乘数,c为增量,且Xn,M,a,c均为正整数(包括0)。       

显然由(1。1)式所得的满足:,从而,应用递推公式时式中参数a,c,X0,M的选取是均匀随机数产生的关键。

例3。5 取,利用(1。1)式得到数列为:6,9,0,7,6,9,0,7,。。。

易见,且从n=5开始到n=8,我们将得到与n=1到n=4完全相同的(及),顺序也完全相同,T=4称为数列的周期。

运用同余法产生的数列中重复数之间最短的循环长度称为该初值下LCG的周期,记为T,如果满足T=M,称为满周期。

例3。6   取,利用(1。1)式得到的数列为:21,41,13,1,5,25,61,49,53,9,45,33,37,57,29,17,21,。。。,数列的周期T=16<M。

例如   取,利用(1。1)式得到数列为:6,1,8,11,10,5,12,15,14,9,0,3,2,13,4,7,6,1,。。。,数列的周期Y=16=M,故称由以上参数决定的LCG具有满周期。

易知,只有适当选取参数及M,才能得到周期长并且均匀性,随机性好的数列。

混合同余法(混合式LCG)来.自^优+尔-论,文:网www.youerw.com +QQ752018766-

当(1。1)式中满足条件参数c>0,那么该LCG方法也被称为混合同余法,或者称为混合式LCG。如例3。6就是混合同余式发生器,但参数选取的不好,使得所产生数列的周期T<M,且随机性差,以下讨论如何选取,使得所得混合发生器为满周期。

    满周期混合式LCG中的选取准则

    定理1。1  如果下列三个条件都满足,由(1。1)式定义的LCG可达到满周期

      ① c与M互素(即可以同时整除c和M的正整数只有1);

      ② 对M的任一个素因子P,(即a-1应被P整除);

      ③ 如果4是M的因子,则。

定理(1。1)给出了混合式LCG取到满周期时应满足的条件。经常取,其中L是计算机中存放一个整数值的二进制位数(称为整数的尾数字长)。这种取法有两个优点:第一是可以通过适当选取参数,使周期变大甚至达到满周期;二是可以精简计算[6]。

随机数的产生及其应用(4):http://www.youerw.com/shuxue/lunwen_118578.html
------分隔线----------------------------
推荐内容