伪随机数生成算法和比较.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第23卷第5期 湖 北 工 业 大 学 学 报 2008年 10月 V01.23NO.5 JournalofHubeiUniversityofTechnology 0ct.2008 [文章编号]1003—4684(2008)05—0065—05 伪随机数生成算法及 比较 郑 列 ,宋正义 (湖北工业大学理学院,湖北 武汉 430068) [摘 要]讨论了用数学方法快速产生随机数的方法.运用Monte-Carlo方法设计数学实验,理论分析和实验 结果表明:比较好的算法是同余法,而其中最好的算法是混合同余法和乘同余法. [关键词]Monte-Carlo方法;伪随机数;同余 [中图分类号]TP391 [文献标识码]:A 在计算机上用数学的方法产生随机数列是 目前 将一个 2s位十进制随机数平方后得到的一个 4位 通用的方法,它的特点是 占用的内存少 ,速度快. 数 ,去头截尾取 中间2 位数作为一个新 的随机数 , 用数学方法产生的随机数列是根据确定的算法 重复上述过程便得到一伪 随机数列.平方取中法的 推算出来的,严格说来并不是随机的,因此一般称用 递推公式 数学方法产生的随机数列为伪随机数列.不过只要 z计1一 -x /10] (mod10), (1) 用数学公式产生出来的伪随机数列通过统计检验符 产生伪随机数列 合一些统计要求 ,如均匀性、抽样的随机性等 ,也就 一 /lo 一 zlO一 . (2) 是说只要具有真正随机数列的一些统计特征 ,就可 平方取中法的优点为在计算机上易于实现 ,内 以把伪随机数列当作真正的随机数列使用 ]. 存 占用少,但仍存在对小数 目偏倚的现象,均匀性不 由于是用算法产生的,因而本质上是决定性的, 好 ,数列的长度和周期难以确定,对初始数据的依赖 再加上计算机字长有限,所 以无论用什么算法产生 很大. 的数列,在统计特征上都不可能完全与从均匀分布 对平方取中法进行改进 ,产生了乘积取中法 ,如 中抽样所得 的子样完全相同,因而只能要求尽可能 果要产生具有 1O进制 2s位 的伪随机数列 ,任取两 地近似. 个初始随机数z。, ,用递推公式 这种在计算机上用算法得到的统计性质上近似 Xn+2一 [计lz /10] (mod10), (3) 于[0,1]上均匀分布的数,一般就称为伪随机数,以 产生伪随机数列 区别于真正从[-o,1]上均匀分布 中抽样所得到的随 r =:=z 10一 . (4) 机数.为 了快速产生统计特征良好的伪随机数 ,数学 乘积取中法与平方取中法 比较,从产生的伪随 上一般采用递推公式 机数列长度及均匀性方面都有改善 ,但是数列长度 l— f(x ,z l,… ,z一^). 还是不够 ,而且对初始值的依赖性很大. 在给定一组初值 z。,一, 。,…,z一后 ,即可逐步 1.2 移位法 求出z ,z ,z。,… .在此基础上产生随机数. 电子计算机善于进行移位等逻辑运算 ,应用机 器的这个特点有一类产生伪 随机数列的方法 ,该方 1 伪随机数生成算法

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档