View
213
Download
0
Category
Preview:
DESCRIPTION
第七章 伪随机数生成. 本章研究如何通过( 0, 1)区间上均匀分布的随机数,获得其它各种分布的随机变量的方法。 随机变量是模拟模型的输入变量,而且是以随机变量的样本输入模型的。模拟模型输入分析: 1. 是否随机变量? 2. 分布是否已知? 3. 参数是否已知? 4. 伪随机数产生 假定随机变量的分布是已知的。 问题:要找出从已知分布中产生随机样本的方法。. 常用随机数产生的方法. 逆变换法,函数变换法,组合法,取舍法,近似法. 逆变换法. 定理: - PowerPoint PPT Presentation
Citation preview
本章研究如何通过( 0, 1)区间上均匀分布的随机数,获得其它各种分布的随机变量的方法。
随机变量是模拟模型的输入变量,而且是以随机变量
的样本输入模型的。模拟模型输入分析: 1. 是否随机变量? 2. 分布是否已知?
3. 参数是否已知?4. 伪随机数产生
假定随机变量的分布是已知的。 问题:要找出从已知分布中产生随机样本的方法。
逆变换法,函数变换法,组合法,取舍法,近似法
定理: 若 X 是任意分布的随机变量, 其 CDF 为 F(x) =P {X ≤x} , 则 Y = F (x) 是在( 0,1 )区间内的均匀分布的
随机变量,并且它与 X 的分布特征无关。证明:
Fig.
1 确定随机变量 X 的 CDF , F(x) ;2 产生( 0,1 )随机数 u ; 令 u = F(x)3 求反函数 X= F-1(u) 则在任意分布函数中进行模拟采样可以通过( 0,
1 )之间均匀分布的模拟采样来达到。
1 1ln(1 ) ln( )x u u
( )1
( )
/ ( ) ( )
0 else
1 ( )0
x v
x v
x ve x v
f x
e x vF xx v
1/[ ln(1 )]x
以正态分布为例
先产生多个 0-1 均匀分布,再利用中心极限定理
有哪些要求?
§6.1 随机数及其产生
1 )兰德公司:从随机数库中随机抽取( 50 年代) 美国兰德公司在 1950年曾将 100万个在( 0 , 1 )区间内的实数存入计算机外存储器,以便在仿真过程中进行随机调用。
由于效率太低,并且不能保证均匀分布的性质,这种方法不久即被淘汰。
如何产生随机数
2 )科学家建议将计算机连接到物理效应设备(如噪声源)上获得随机数流 .
这种方法的随机性和均匀性最好,但产生过程太复杂,也未能得到推广。
3 )通过数学算法由计算机产生随机数。这种方法具有简单易行,占用内存少,运行速度快的优点,因此得到广泛的应用。
种子 迭代 均匀性? 独立性? 范围?
§6.1 随机数及计算机产生伪随机数其产生
§6.1 随机数及其产生– 0~1间隔均匀分布随机数( 1 )随机数值是 0 到 1 的范围内的实数,包括 0 ,或
者包括或者不包括 1 。( 2 )在所定义的区间内,要具有均匀性。即将区间
[0,1] 分隔为 n 个等长的子区间,则在每一个子区间得到的观察值的个数的期望值应该等于 N / n ,
( 3 )在所定义的区间内,要具有独立性。即每个观察值落在某一子区间的概率和前一观察值无关。
( 1 )较长的循环周期( 2 )再现性( 3 )产生伪随机数的算法过程应尽可能简单,以便减少所占用的内存和提高仿真效率。
§6.1 随机数及其产生
1 ) . 平方取中法5.均匀分布随机数生成算法举例
2 ) . 乘法取中法
3 ) . Fibonacci 序列法4 ) . 线性同余法。
由冯 ·纽曼在 40 年代中期提出
利用这个方法产生的伪随机数序列的重复周期通常较短。
对于较长的伪随机数序列,利用这种方法可能无法通过随机性的统计检验。
生成一定数目的随机数之后,往后产生的数可能都为 0 。这种现象的出现称为“退化为零”。
例 利用“平方取中法”产生两位数的随机数序列,种子数取为 x0=44 。
例 设在产生四位数的随机数过程中,得到了一个xi 值为 4500 ,即
X0=7229 X0’=2938
R=21238802 X1=2388
R=17262852 X2=2628
R=06275664 X3=2756
…
例 取 x0 =1 , x1 =3 , m=8 ,求由上述递推公式可以得到不同的随机数。
线性同余法在 1951 年由菜默尔首先提出,目前大多数随机数发生器都采用这种方法
初始值 x0 称为种子,常数 a 称为乘子,常数 c 称为增量,而常数 m 称为模数。
1 ( ) modn nx ax c m
/n nR x m
例 设 a=5 , c=3 , m=16 ,取 x0=7 ,利用线性同余法产生随机数序列。
一般来讲,存在重复性。合理地选择 a,c,x0 和 m ,可以使重复周期充分长
m : 取值尽量大,为 (2k-1)最好, k 最大字位数• a 和 c 的选取:当且仅当下列条件满足重复周期为 m (这
是最好的情况)。◦ c 与 m 互质◦ (a-1) 是每个能整除m 的质数的倍数。◦ 如果m 能被 4 整除,则 (a-1)也能被 4 整除。
对于乘同余法,由于 c=0 ,无论怎样选择 m ,都无法满足 c 与 m 互质的条件,因而不可能得到满周期
若选择 m=2k,则所产生的随机数序列的周期p≤m/4=2k-2 ,即在 0 至 m-1 之间的整数
至多只有四分之一可能成为 xn 的值,而且这四分之一的整数在 0 至 m-1 之间是如何分布的尚难确定。这与种子数 x0 的选取有关。
Recommended