随机数生成及各概率分布一.随机数生成及(0,1)均匀分布1.乘同余法生成随机数:乘同余法的迭代式如下:Xn+1=Lamda*Xn(mod M) Rn+1=Xn/M这里取X0=1,Lamda=7^5,M=2^31-1;利用乘同余法生成的300个(0,1)之间的随机数为(这里仅显示200个数据)0.0000 0.1315 0.7556 0.4587 0.5328 0.2190 0.0470 0.6789 0.6793 0.9347 0.3835 0.5194 0.8310 0.0346 0.0535 0.5297 0.6711 0.0077 0.3834 0.0668 0.4175 0.6868 0.5890 0.9304 0.8462 0.5269 0.0920 0.6539 0.4160 0.7012 0.9103 0.7622 0.2625 0.0475 0.7361 0.3282 0.6326 0.7564 0.9910 0.3653 0.2470 0.9826 0.7227 0.7534 0.6515 0.0727 0.6316 0.8847 0.2727 0.4364 0.7665 0.4777 0.2378 0.2749 0.3593 0.1665 0.4865 0.8977 0.9092 0.0606 0.9047 0.5045 0.5163 0.3190 0.9866 0.4940 0.2661 0.0907 0.9478 0.0737 0.5007 0.3841 0.2771 0.9138 0.5297 0.4644 0.9410 0.0501 0.7615 0.7702 0.8278 0.1254 0.0159 0.6885 0.8682 0.6295 0.7362 0.7254 0.9995 0.8886 0.2332 0.3063 0.3510 0.5133 0.5911 0.8460 0.4121 0.8415 0.2693 0.4154 0.5373 0.4679 0.2872 0.1783 0.1537 0.5717 0.8024 0.0331 0.5344 0.4985 0.9554 0.7483 0.5546 0.8907 0.6248 0.8420 0.1598 0.2128 0.7147 0.1304 0.0910 0.2746 0.0030 0.4143 0.0269 0.7098 0.9379 0.2399 0.1809 0.3175 0.8870 0.6521 0.1503 0.6813 0.3858 0.3877 0.4997 0.1475 0.5872 0.8456 0.5901 0.9554 0.5561 0.1482 0.9833 0.4088 0.1418 0.5649 0.2521 0.4885 0.4640 0.9611 0.1260 0.1998 0.3192 0.6293 0.1267 0.6513 0.6216 0.8031 0.2478 0.4764 0.3893 0.2033 0.0284 0.9017 0.4265 0.1420 0.9475 0.4103 0.1312 0.8856 0.0922 0.1622 0.0711 0.3653 0.2531 0.1351 0.7832 0.4553 0.3495 0.4523 0.8089 0.9317 0.6516 0.2152 0.6796 0.9089 0.2501 0.8609 0.4713 0.5060 0.6004 0.8176 0.7558 0.4622 0.9514 0.6327 0.4393 0.8247 2.(0,1)均匀分布数据的检验(1) 通过计算得均值为,二阶矩为,方差为(2) 均基本满足(0,1)均匀分布的均值,二阶矩为,方差为所以认为该随机序列基本上符合(0,1)均匀分布。
3) (0,1)均匀分布的随机序列 图1 用matlab产生的(0,1)均匀分布的随机序列(4) (0,1)均匀分布的各随机数数的直框图 图2 乘同余法生成的300随机数的分布情况分析:从图1,2可知产生的随机数基本符合(0,1)均匀分布二. 指数分布的随机数生成与检验(1)指数分布的分布函数,这里取,利用反函数法,可以求得: x=-2lnR;(2) 指数分布的随机序列 图3 用matlab产生的指数分布的随机序列(3) 参数为0.5的指数分布的各随机数的直框图 图4 用反函数法生成的300随机数的指数分布情况分析:可以看出,生成的随机量较好的符合了指数分布特征三. 正态分布的随机数生成与检验(1) Box-Muller法生成两个相互独立的正态分布(这里只弄了一个) 假设U1,U2均服从(0,1]区间上的均匀分布且相互独立,则由下式给出: Y1=其中Y1服从标准正态分布2) 标准正态分布的随机序列 图5 用matlab产生的标准正态分布的随机序列(3) 标准正态分布的各随机数的直框图 图6 用Box-Muller法生成的10000个随机数的标准正态分布情况分析:从上图看所生成的随机序列基本上符合标准正态分布的要求。
四. 泊松分布的随机数生成与检验(1)在泊松分布中,求出X取何值时,p(X=k)取最大值时,设为Pxmax. 其时,这样当于求解f(x)=lamda^k/k! 在k取何值时有最大值,虽然,这道题有一定的难度,但在程序中可以能过一个循环来得到取得f(x)取最大值时的整数自变量Xmax2)通过迭代,不断生成0-1区间上的随机数,当随机数
3) 关于连续的分布的随机变量的生成还感觉简单点,后边的离散的随机分布就不是那么理解了,所以没怎么有感觉对于离散的随机分布。