青岛大学计算机模拟.ppt
《青岛大学计算机模拟.ppt》由会员分享,可在线阅读,更多相关《青岛大学计算机模拟.ppt(19页珍藏版)》请在三一办公上搜索。
1、5.4 随机数与伪随机数,一、随机数与伪随机数 真随机数:不可预计性,不可重复 伪随机数:利用算法或公式产生的随机数。1.真随机数的发生源 晶体管噪声发生器、放射粒子计数器等2.伪随机数:例如0,1区间均匀分布的随机数,二、伪随机数产生方法1、平方取中法 从某个初始的2k位整数开始,求出这个数的平方,去头截尾取其中间2k位作为一个新的随机数,重复以上过程,则得到一列随机数。例1 已知种子x0=3187,利用平方取中法产生四位数的随机数序列。(3187)2=10156969 x1=1569(1569)2=02461761 x2=4617.,例2、已知x0=44,试 产生两位数的随机数序列。(44
2、)2=1936 x1=93(93)2=8649 x2=64(64)2=4096 x3=09(09)2=0081 x4=08(08)2=0064 x5=06(06)2=0036 x6=03(03)2=0009 x7=00(00)2=0000 x8=00例3、若利用平方取中法得到xi的一个中间值为4500,继续类推,则有以下结果:(4500)2=20250000 xi+1=2500(2500)2=06250000 xi+2=2500缺点:重复周期短;可能产生例外;较长的随机数序列可能无法通过统计性检验。,平方取中法的函数 r=pfqz(k,x0,n)其中,k:随机数种子位数的一半 x0:随机数种子
3、 n:产生的随机数个数 r:产生的随机数序列,function r=pfqz(k,x0,n)format long;r=zeros(n,1);x=zeros(n,1);x(1)=x0;r(1)=x(1)/(100k);for i=2:n x(i)=mod(x(i-1)2/(10k),100k);r(i)=x(i)/(100k);endformat short,2.线性同余法 若两整数A,B之差是m的整数倍,则称A和B按m同余。A-B=m*k 记为B=A mod m xn+1=(axn+c)mod m线性同余式(0 x m-1)例:设a=5,c=3,m=16,取x0=7,用线性同余法产生随机数序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 青岛大学 计算机 模拟
链接地址:https://www.31ppt.com/p-6133187.html