Harbi
I
stituteofTech
ology
实验报告
课程名称:院班姓学系:级:名:号:
随机信号分析电信学院1205201
指导教师:实验时间:
郑薇2014年11月
哈尔滨工业大学
f实验一
一、实验目的
各种分布随机数的产生
在很多系统仿真的过程中,需要产生不同分布的随机变量。利用计算机可以很方便地产生不同分布的随机变量,各种分布的随机变量的基础是均匀分布的随机变量。有了均匀分布的随机变量,就可以用函数变换等方法得到其他分布的随机变量。
二、实验内容
产生均匀分布的随机数、高斯分布的随机数和其它分布的随机数。
三、实验原理
1均匀分布随机数的产生原理产生伪随机数的一种实用方法是同余法,它利用同余运算递推产生伪随机数序列。最简单的方法是加同余法
y
1y
cmodM
x
1y
1M
为了保证产生的伪随机数能在01内均匀分布,需要M为正整数,此外常数c和初值y0亦为正整数。加同余法虽然简单,但产生的伪随机数效果不好。另一种同余法为乘同余法,它需要两次乘法才能产生一个01上均匀分布的随机数
y
1ay
modM
x
1y
1My
1M
式中,a为正整数。用加法和乘法完成递推运算的称为混合同余法,即
y
1ay
cmodM
x
1
用混合同余法产生的伪随机数具有较好的特性,一些程序库中都有成熟的程序供选择。常用的计算语言如Basic、C和Matlab都有产生均匀分布随机数的函数可以调用,只是用各种编程语言对应的函数产生的均匀分布随机数的范围不同,有的函数可能还需要提供种子或初始化。Matlab提供的函数ra
d可以产生一个在01区间分布的随机数,ra
d24则可以产生一个在01区间分布的随机数矩阵,矩阵为2行4列。Matlab提供的另一个产生随机数的函数是ra
domu
ifabNM,u
if表示均匀分布,a和b是均匀分布区间的上下界,N和M分别是矩阵的行和列。2随机变量的仿真根据随机变量函数变换的原理,如果能将两个分布之间的函数关系用显式表达,那么就可以利用一种分布的随机变量通过变换得到另一种分布的随机变量。
1
f若X是分布函数为Fx的随机变量,且分布函数Fx为严格单调升函数,令YFX,则Y必为在01上均匀分布的随机变量。反之,若Y是在01上均匀分布的随机变量,那么
1XFXY
1即是分布函数为FXx的随机变量。式中FX为FX的反函数。这样,欲求
某个分布的随机变量,先产生在01区间上的均匀分布随机数,再经上式变换,便可求得所需分布的随机数。3高斯分布随机数的仿真广泛应用r