2012随机过程模拟与实验
2011-2012学年第二学期应用随机过程试卷及参考答案

({ X
2
+ Y 2 ≤ 1}
);
3、 (4 分,选做一题) (1)设 X , Y 独立同 U [0,1] 分布,试基于微元 法由条件密度求 E ( X X < Y ) ; (2)设 ( X , Y ) ~U ( D ) , D : 0 ≤ y ≤ x ≤ 1 ,
2 试由条件数学期望的直观方法求 E (Y X ) 、 E ⎡ Y −X) ⎣(
-域,定义 E ( X C ) 如下: (1)_______________ ; (2) _____________________________________________ ; 2、设 { N ( t ) , t ≥ 0} 是强度为 λ 的 Poisson 过程,则 N ( t ) 具有_____、 _____增量,且 ∀t > 0 , h > 0 充分小,有: P ({ N ( t + h ) − N ( t ) = 0}) =
4
四、应用分析题(共 12 分)
得分
设股价遵循几何布朗运动 dS ( t ) = μ S ( t ) dt + σ S ( t ) dW ( t ) ,利率为 常数 r 。定义风险的市场价格为:Θ =
⎧
μ −r 以及状态价格密度过程 σ
2⎞ 为: ζ ( t ) = exp ⎨−ΘW ( t ) − ⎛ ⎜ r + Θ ⎟ t ⎬ ;a)证明: 2
1 + (λ − μ ) c⎤ 1 1− ⎡ ⎦e E ( X X + Y = c) = ⋅ ⎣ − λ −μ c λ−μ 1− e ( )
−( λ − μ ) c
。
x
(2)令 X ~f X ( x ) ,即有: f X ( x ) = ∫−∞ f ( x, y ) dy = ∫0 1 dy, 0 ≤ x ≤ 1 ,即:
随机过程实验报告全

随机过程实验报告学院:专业:学号:姓名:一、实验目的通过随机过程的模拟实验,熟悉随机过程编码规律以及各种随机过程的实现方法,通过理论与实际相结合的方式,加深对随机过程的理解。
二、实验内容(1)熟悉Matlab工作环境,会计算Markov链的n步转移概率矩阵和Markov链的平稳分布。
(2)用Matlab产生服从各种常用分布的随机数,会调用matlab自带的一些常用分布的分布律或概率密度。
(3)模拟随机游走。
(4)模拟Brown运动的样本轨道的模拟。
(5)Markov过程的模拟。
三、实验原理及实验程序n步转移概率矩阵根据Matlab的矩阵运算原理编程,Pn = P ^n。
已知随机游动的转移概率矩阵为:P =0.5000 0.5000 00 0.5000 0.50000.5000 0 0.5000求三步转移概率矩阵p3及当初始分布为P{x0 = 1} = p{x0 = 2} = 0, P{x0 = 3} = 1 时经三步转移后处于状态3的概率。
代码及结果如下:P = [0.5 0.5 0; 0 0.5 0.5; 0.5 0 0.5] %一步转移概率矩阵P3 = P ^3 %三步转移概率矩阵P3_3 = P3(3,3) %三步转移后处于状态的概率1、两点分布x=0:1;y=binopdf(x,1,0.55);plot(x,y,'r*');title('两点分布');2、二项分布N=1000;p=0.3;k=0:N;pdf=binopdf(k,N,p);plot(k,pdf,'b*');title('二项分布');xlabel('k');ylabel('pdf');gridon;boxon3、泊松分布x=0:100;y=poisspdf(x,50);plot(x,y,'g.');title('泊松分布')4、几何分布x=0:100;y=geopdf(x,0.2);plot(x,y,'r*');title('几何分布');xlabel('x');ylabel('y');5、泊松过程仿真5.1 % simulate 10 timesclear;m=10; lamda=1; x=[];for i=1:ms=exprnd(lamda,'seed',1);x=[x,exprnd(lamda)];t1=cumsum(x);end[x',t1']5.2%输入:N=[];for t=0:0.1:(t1(m)+1)if t<t1(1)N=[N,0];elseif t<t1(2)N=[N,1];elseif t<t1(3)N=[N,2];elseif t<t1(4)N=[N,3];elseif t<t1(5)N=[N,4];elseif t<t1(6)N=[N,5];elseif t<t1(7)N=[N,6];elseif t<t1(8)N=[N,7];elseif t<t1(9)N=[N,8];elseif t<t1(10)N=[N,9];elseN=[N,10];endendplot(0:0.1:(t1(m)+1),N,'r-') 5.3% simulate 100 timesclear;m=100; lamda=1; x=[];for i=1:ms= rand('seed');x=[x,exprnd(lamda)];t1=cumsum(x);end[x',t1']N=[];for t=0:0.1:(t1(m)+1)if t<t1(1)N=[N,0];endfor i=1:(m-1)if t>=t1(i) & t<t1(i+1)N=[N,i];endendif t>t1(m)N=[N,m];endendplot(0:0.1:(t1(m)+1),N,'r-')6、泊松过程function I=possion(lambda,m,n)for j=1:mX=poissrnd(lambda,[1,n]); %参数为lambda的possion 过程N(1)=0;for i=2:nN(i)=N(i-1)+X(i-1);endt=1:n;plot(t,N)grid onhold onend7、布朗运动7.1一维布朗运动程序:function [t,w]=br1(t0,tf,h)t=t0:h:tf;t=t';x=randn(size(t));w(1)=0;for k=1:length(t)-1w(k+1)=w(k)+x(k);endw=sqrt(h)*w;w=w(:);end调用t0=1;tf=10;h=0.01;[t,w]=br1(t0,tf,h);figure;plot(t,w,'*');xlabel('t');ylabel('w');title('一维Brown运动模拟图'); 7.2二维布朗运动:function [x,y,m,n]=br2(x0,xf,y0,yf,h)x=x0:h:xf;y=y0:h:yf;a=randn(size(x));b=randn(size(y));m(1)=0;n(1)=0;for k=1:length(x)-1m(k+1)=m(k)+a(k);n(k+1)=n(k)+b(k);endm=sqrt(h)*m;n=sqrt(h)*n;end调用x0=0;xf=10;h=0.01;y0=0;yf=10;[x,y,m,n]=br2(x0,xf,y0,yf,h);figure;plot(m,n);xlabel('m');ylabel('n');title('二维Brown运动模拟图');7.3三维布朗运动:npoints =1000;dt = 1;bm = cumsum([zeros(1, 3); dt^0.5*randn(npoints-1, 3)]);figure(1);plot3(bm(:, 1), bm(:, 2), bm(:, 3), 'k');pcol = (bm-repmat(min(bm), npoints, 1))./ ...repmat(max(bm)-min(bm), npoints, 1);hold on;scatter3(bm(:, 1), bm(:, 2), bm(:, 3), ...10, pcol, 'filled');grid on;hold off;8、马尔科夫链离散服务系统中的缓冲动力学m=200;p=0.2;N=zeros(1,m); %初始化缓冲区A=geornd(1-p,1,m); %生成到达序列模型, for n=2:mN(n)=N(n-1)+A(n)-(N(n-1)+A(n)>=1);endstairs((0:m-1),N);9、随机数游走9.1 100步随机游走n = 100; %选取步数。
随机过程实验

实验名称:随机变量的仿真与实验实验内容:用MATLAB 分别产生服从(二项分布、泊松分布、正态分布、均匀分布、指数分布、瑞利分布)的随机变量,并分析他们的:1、分布函数或概率密度函数2、均值、方差1、服从二项分布的随机变量理论分析如果随机变量X 的分布律为k n k k n k q p C k X P p -===}{0<p<1, q=1-p, k=0,1,2,…n,则称X 服从参数为n ,p 的二项分布,记为X~B(n ,p)。
其期望和方差分别为E(X) = np ,D(X)=npq 。
随机变量X~B(20,0.4),可以通过matla b 计算其期望和方差,绘制分布律和分布函数。
程序如下:n = 20;p = 0.4;[E,D] = binostat(n ,p); %计算期望和方差f = binopdf(1:21, n, p); %计算分布律F = binocdf(1:21, n, p); %计算分布函数subplot(2,2,1); stem(f); %绘制分布律title('二项分布理论分布律 n=20 p=0.4');xlabel('x');ylabel('p');subplot(2,2,3); stem(F); %绘制分布函数title('二项分布理论分布函数 n=20 p=0.4');xlabel('x');ylabel('f');计算得结果E(X) = 8,D(X) = 4.800,分布律和分布函数如图1。
图1 X~B(20,0.4)的分布律和分布函数样本分析利用matlab中binornd函数产生一个X~B(20,0.4)的样本,样本点总数为20000。
计算其均值和方差,计算分布律和分布函数,并与理论结果进行比较。
程序如下:n = 20;p = 0.4;R = binornd(n,p,1,20000);e = mean(R); %期望d = var(R); %方差f = zeros (1,21);F = zeros (1,21);for j = 1:21 %计算统计分布律for i=1:20000if j == R(i)f(1,j) = f(1,j) + 1;endendf(1,j) = f(1,j) / 20000;endsubplot(2,2,1);stem(f);title('二项分布样本分布律 n=20 p=0.4');xlabel('x');ylabel('p');for j = 1:21 %计算分布函数for i = 1:jF(1, j) = F(1, j) + f(1,i);endendsubplot(2,2,3);stem(F);title('二项分布样本分布函数 n=20 p=0.4');xlabel('x');ylabel('f');计算结果为e=8.0218,d=4.7760,与理论值(E(X)=8,D(X)=4.8)基本接近。
生活中的泊松过程和马尔科夫过程

概率密度为: ������������������ (������) = ������������ −������������ ������ ≥ 0 0 ������ < 0
等待时间������ ������ 表示第 n 个顾客的到达时间符合参数为 n 与λ 的 Γ分布,概率密度为: ������������������ ������ = ������������ 0
−λ t
(������������)������−1 ������ ≥ 0 ������ − 1 ! ������ < 0
同时,一个窗口的排队人数均值有波动,是非其次泊松过程。又 有总金额是复合泊松过程。
二、 生活中的马尔科夫过程 马尔科夫过程中最显著的性质是无后效性, 即现在的选择只于当 前的状态有关, 而与之后的状态无关。 这与学生选课的情况有些相似。 在不考虑课程冲突等其他因素时, 学生对于同一门的若干老师的选择, 开始对老师的状态了解来源于师兄师姐的经验。 当上过一次或两次课 后,学生会对老师的状态有新的认识,会根据新的状态做出保持或者 改变的选择。 假设一门课有 3 位可供学生选择的教师, 在第一次选课时 300 名 学生均匀分布,即每名老师门下有 100 名学生。假设的一步转移概率 矩阵如下所示: 0.95 0.05 0 0.05 0.9 0.05 0.1 0.05 0.85 那么说明在第二轮选课时, 第一个老师有 95 人会仍然选他的课, 但有 5 人会转到第二位老师的门下。第二个老师会有 90 人仍在,5 人转去第一个老师那里,另外 5 人转到第三个老师那里。第三个老师 有 85 人保持原来的选择,但有 10 人转到第一个老师课上,5 人转到 第三个老师课上。 这样在第二轮选课过后, 第一个老师课上有 110 人, 第二个老师课上有 100 人,第三个老师课上有 90 人。
随机变量与随机过程模拟资料

A
A发生 A不发生 数学处理 判断:u<=p 抽样
给定p 取随机数u
构造模型 B=“U<=p”
u<=p否?
u
N
U
Y A发生 A不发生
二、离散型随机变量的模拟 两点分布随机变量的模拟 设随机变量X有两点分布:P(X=1)=p, P(X=0)=q,其中p+q=1。对X进行模拟的目的是 希望得知在一次实验中X究竟取0与1中的哪一 个值。 构造模型?
i
i 1
二、离散型随机变量的模拟
由于P(Ai)=P(Bi),故知Bi保持了Ai的概率特性, 因此在一次实验中若事件Bi发生了,则可以很自然地 认为Ai事件也就发生了。至于要判断是哪个事件Bi发 生,可通过如下数学处理来进行:
(1)将[0,1]区间划分成若干小区间,各小区间 的分界点坐标依次为L0,L1,...,Ln, 使 L p , 于是小区间Ai=(Li-1,Li)之长度即为pi
建立与U(0,1)分布的关系?
二、离散型随机变量的模拟 两点分布随机变量的模拟 若构造模型
1, A发生 X 0, A不发生
给定p 取随机数u N
其中P(A)=p,则易 知P(X=1)=P(A)=p, P(X=0)=P( A )=1-p=q。 利用对事件A的模拟可得 一次实验中之结果信息: 若A发生,则认为X取1, 若A不发生,则认为X取0。
随机变量与随机过程模拟
主要内容
一.统计实验法与伪随机数 二.离散型随机变量的模拟 三.连续型随机变量的模拟 四.随机过程模拟
一、统计实验法与伪随机数
如何求解? 随机事件概率的计算 随机变量分布函数的求得 数量化 解 析 法 物理 实验 法 逻辑性
随机事件 随机变量分布函数
几个典型随机过程的模拟及应用

Y
1. 随机面积的计算
○
X
某实际问题(譬如大楼的倒塌)可抽象为:试将一把 筷子先垂直放置于桌子上;放手后,筷子纷纷倒下, 求这些筷子倒下后所张成的面积的分布。 为解题的方便,先做如下几个假设: ①将筷子垂直放置于图中的格子点上。 ②所谓“随机倒下”是指筷子的底端不动,而顶端落下 后,筷子与X轴的夹角~U[0,2π]。 ③假设各筷子是相对独立地随机倒下,而这些筷子所张 成的面积是指包含这些筷子端点的最小凸多边形的面 积。
输入过程 顾客 序号 到达间 隔 E[10] 1 2 3 4 5 6 10 13 8 11 7 15 服务时 间 U[10, 15] 11 13 14 12 15 10
模拟过程的输出结果
到达时 刻服务时 间Fra bibliotek等待时 间
离开时 刻
10 23 31 42 49 64
11 13 14 12 15 10
0 0 5 8 13 13
2. 随机游动(一维)
一维随机游动 一质点从直线上的某一点出发,每次以概率 p 左移一 步,以概率 q = 1 - p 右移一步。直到碰到某边界点而 停止游动,这样的边界点称为吸收壁。 模拟方法如下:
-2
―1
0
1
2
3
2. 随机游动(Cont)
1.取[0,1]均匀分布上的随机数 ,若 <p,则取r1 =-1; 表示质心左移1步,否则r1 =1,表示质心右移1步; 2.依次取随机数 ,分别与p比较得到每次的随机 游动ri 3.令Sn ri , 则Sn 表示经n步后质心离开出发点的步数。
1. 随机面积的计算(Cont)
由 ~U[0,2 ],假定底端位置为(x1 , y1 ), 筷子长度为l , 则顶端在 1 x1 cos 随机倒下后的位置(u1 , v1 )满足 1 y1 sin 这样,除了原来的m个底端外,又产生了m个顶端,共 2m个点,坐标(si , ti ),1 i 2m. 问题变成:决定上面2m个点所张成的凸边形的面积即为所求。
几个典型随机过程的模拟及应用

2. 随机游动(Cont)
模拟方法: 产生随机数 ~ U [0,, 1] 若0 p1 , 左移一步; 若p1 p1 p2 , 右移一步; 若p1 p2 p1 p2 p3 , 上移一步; 若p1 p2 p3 p1 p2 p3 p4 1, 下移一步; 同样根据吸收壁位置,计算质点每次移动后的位置, 如果到达过吸收壁,则被吸收。
Y
P2 P1 P0
0
X
1. 随机面积的计算(Cont)
算法如下: 1.决定最左边的点P0; 2.求P 1,使得 P 0P 1与Y 轴的夹角最小; 3.求P2,使得 P 1P 2与 P 0P 1的夹角最小;求P 3 ,使得 P2 P3与P 1P 2的夹角最小; 直到Pk 与P0重合为止。在此过程中逐步求出P0 P 1P 2, P0 P2 P3 ...的面积,将其相加,即可得到这2m个点所 张成的凸边形的面积。 重复n次,可以得到这随机面积的统计规律。
几个典型随机过程的模拟及应用
Outline
1. 2. 3. 随机面积的计算 随机游动 单服务台排队服务系统
Y
1. 随机面积的计算
○
X
某实际问题(譬如大楼的倒塌)可抽象为:试将一把 筷子先垂直放置于桌子上;放手后,筷子纷纷倒下, 求这些筷子倒下后所张成的面积的分布。 为解题的方便,先做如下几个假设: ①将筷子垂直放置于图中的格子点上。 ②所谓“随机倒下”是指筷子的底端不动,而顶端落下 后,筷子与X轴的夹角~U[0,2π]。 ③假设各筷子是相对独立地随机倒下,而这些筷子所张 成的面积是指包含这些筷子端点的最小凸多边形的面 积。
即第1个顾客在开门后21分离开(即T=21分离开)。第2个 顾客是T=23分=(10+13)分到达的,由于第一个顾客已被 服务完毕离开了,因此也不必等待,D2 =0分,服务时间 S2 13分,所以第2个顾客于C2 (23 13 0) 36分离开。 第3个顾客到达时间是X 3 31分 ( 10 13 8)分,由于 T 31分的时候,第2个顾客正在接受服务,鼓第3个顾 客先要排队,等待时间D3 (36 31) 5分。第2位离开 后第3位接受服务,服务时间S3 14分,第3位离开时刻 C3 (31 14 5) 50分;第4位到达时刻X 4 42分 (10 13 8 11)分;其等待时间D4 (50 42) 8分, 服务时间为S4 12分,离开时刻C4 62分 (42 12 8)分,....,模拟实验的部分结果见下表:
2012年随机过程试卷答案

故 3,1, 是非常返且非周期, 因此, I 可分解为
I = K + J = {1, 3} ∪ {0, 2, 4}.
……………15 分
……………18 分
转移状态图如下:
北方工业大学试卷
第5页
共 10 页
五、 (20 分)
设随机过程X (t ) = A cos(ωt + Θ), 其中A是服从瑞利分布的随机变量,其概率密度为
为常返态.
……………10 分
北方工业大学试卷
第3页
共 10 页
又因为
(1) (2) μ0 = f 00 + 2 f 00 =
3 1 < ∞, 并且 p00 = > 0, 易得 d1 = d 0 = 1, 所以状态 1,0 均为非周期、 2 2
正常返.
3
……………13 分 ……………15 分
由π = π P 和 ∑π i = 1,
n=0,1,2,3,…}是两个状态的马氏链, 这说明 n 个中继站具有无记忆性, 所以 { X(n),
状态空间为 I ={0,1}, ……………5 分
而其一步转移概率矩阵为
北方工业大学试卷
第8页
共 10 页
⎛ p 1− p ⎞ ⎛ p P=⎜ ⎟=⎜ p ⎠ ⎝q ⎝1 − p
q⎞ ⎟. p⎠
……………8 分
(2) P( X (0) = 1) p11 (2) (2) + P( X (0) = 1) p11 P( X (0) = 0) p01
=
1 {β [1 − ( p − q ) 2 ] + α [1 + ( p − q) 2 ]} 2 α + α ( p − q)2 = , 1 + (α − β )( p − q ) 2 进一步,由
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随机过程模拟与实验1. 随机过程模拟与实验介绍2. 随机数产生原理3. 实验平台介绍4. 实验内容安排随机过程模拟与实验1. 随机过程模拟与实验介绍随机模拟的基本方法又称为蒙特卡罗(Monte Carlo)方法。
是Velleman与Von Neumann等人在20世纪40年代为研制核武器提出来的,已大量地运用于计算机仿真试验。
随机模拟的典型步骤:(1)根据问题构建模拟系统(2)仿真系统中各种分布的随机变量(3)运行模拟系统,进行统计测量(4)分析数据,输出结果主要工具:基本工具:C、C++等编程模拟、matlab;网络模拟:OPNET Modeler、NS2:大型网络仿真CASSAP:数字信号处理;SPW:电子系统定义:如果一个实数列{u i } 与均匀分布的独立随机变量序列{U i } 的样本序列具有相同的统计特性,则称之为随机样本值,该数列中的各个数称为均匀分布随机数,简称随机数(Random Number)。
2. 随机数产生原理随机数的产生有三种方法:(1)将已有的随机数存表,需要时直接使用。
美国兰德公司在1950年曾将100万个在(0,1)区间内的实数存入计算机外存储器,以便在仿真过程中进行随机调用。
(2)将计算机连接到物理设备(如噪声源)上获得随机数流。
随机性和均匀性最好,但产生过程太复杂,未能得到推广。
(3)通过数学算法产生随机数(伪随机数)。
这种方法容易与计算机结合,因而得到广泛的应用。
2.1 伪随机数的算法伪随机数的产生:用户只需给定一个初始的随机数(种子值),调用该算法,即可按某个固定的公式计算出下一个“随机”数。
随后,以新产生出来的“随机”数作为种子,再计算出新的“随机”数。
重复调用该算法即可产生出一系列的“随机”数,以满足系统仿真的需要。
伪随机数本质上不是随机的。
但只要计算公式选择得当,通过比较严格地统计检验,仍然可以产生出一系列近似于U(0,1) 分布并且相对独立的随机数流,这种随机数流对于大多数仿真模型,是能满足需要的。
因此,仍然是目前广泛应用的工程方法。
(1)产生的随机数序列具有循环周期性。
可以证明,任何产生伪随机数的算法总会进入循环,这样为了保证随机数序列不产生重复的数据,就要求循环的周期足够长。
(2)算法过程具有再现性:在初始化时,如果赋予相同的种子值,将产生完全相同的随机数序列。
伪随机数发生器的特点:伪随机数是按照一定的计算公式产生的一列数,主要借助于如下的递推公式:u n=f(u n-1,u n-2,…,u n-k)该公式(或算法)也称为随机数发生器(RNG)。
常用的伪随机数的算法有:(1)平方取中法(Von Neumann 40年代发明);(2)乘法取中法;(3)线性同余法:简单、实用;……2.2 均匀分布的线性同余法线性同余法(1)设置y0,即设置种子(2)y n=ky n-1(mod N),u n=y n/N三组常见的参数(1)N=1010,k=7,周期≈5×107(2)(IBM随机数发生器)N=231,k=216+3,周期≈5×108(3)(ran0)N=231-1,k=75,周期≈2×109大部分计算机语言都提供了产生0-1间隔均匀分布随机数的标准函数或方法:C语言中的rand函数,VB中的randum函数,java语言中的Randnum类,Python 语言的random 模块。
由均匀分布的随机数可构造出任一分布F(x) 的随机数,最基本的方法是逆变换法:2.3 一般随机数的产生方法11()()()(),()()()[][()][()]()1()()(0,1)X F x F x U U F x U F x U X F U X F x F x P X x P F U x P u F x f u du du F x f u U U −−−∞−∞===≤=≤=≤===∫∫给定分布(假定它是严格单调的),假定由它的反函数对均匀随机变量进行变换,可得:则的分布函数正好是。
因为其中,是的均匀随机变量密度函数。
3. 实验平台介绍3.1 实验平台包含的源文件3.2 MyRand.cpp的函数3.3 randomDlg.cpp注意事项显示R x实验执行步骤1.选择执行的实验内容;2.在出现正确结果后,选择“保存”;3.选择结果保存的目录;4.输入保存结果的文件名,必须为*.bmp文件;5.选择“保存”。
12453StdAfx.cpp:VC工程自带文件,不能修改;random.cpp和random.h:工程主文件,不能修改; Scope.cpp和Scope.h :画图程序,不能修改; randomDlg.cpp和randomDlg.h:主界面程序,包括对各个按钮的动作的响应,还包括对各种随机变量的输入参数的设定;MyRand.cpp 和MyRand.h :各种分布的随机变量的产生程序,实验过程中主要完成MyRand.cpp中的函数即可。
3.1 实验平台包含的源文件3.2 MyRand.cpp的函数(1) unsigned int CMyRand::MyRand(unsigned int seed)函数功能:采用线性同余法,根据输入的种子数产生一个伪随机数,如果种子不变,则可以重复调用该函数产生一个伪随机序列;参数:seed作为调用函数的输入种子,同一个伪随机数序列可采用同一个seed;实现思路:利用CMyRand类中定义的全局变量:S, K, N, Y。
其中K和N为算法参数,S用于保存种子数,Y为产生的随机数;注意事项:Y的初值的计算。
(2)double CMyRand::AverageRandom(doublemin,double max)函数功能:产生一个在min~max范围内精度为4位小数的平均分布的随机数;参数:min和max代表该均匀随机变量的取值范围,精确到小数点后4位。
该参数在randomDlg.cpp中OnAverage( ) 和OnAverageStat( ) 函数中已经设置。
(3) double CMyRand::NormalRandom(double miu, double sigma, double min, double max)函数功能:产生均值为miu,方差为sigma的正态分布的随机数;参数:miu为均值,sigma为方差,min和max 为均匀分布随机变量的取值范围。
所有参数在randomDlg.cpp的OnNormal()和OnNormalStat()函数中设置;实现思路:利用中心极限定理,通过多个独立的均匀随机变量之和构成正态随机变量。
(4) double CMyRand::ExpRandom(double lambda, double min, double max)函数功能:产生参数为lambda的指数分布的随机数;参数:lambda为指数分布的参数,min和max 为均匀分布随机变量的取值范围,所有参数在randomDlg.cpp 的OnExp()和OnExpStat()函数中设置;实现思路:利用逆变换法。
(5)unsigned int CMyRand::PoisonRandom(double lambda, double min, double max)函数功能:产生参数为lambda的泊松分布的随机数;参数:lambda为泊松分布的参数,min和max 为均匀分布随机变量的取值范围,所有参数在randomDlg.cpp的OnPoison()和OnPoisonStat()函数中设置;实现思路:利用递归法。
(6)double CMyRand::Ex(void)函数功能:计算任意分布的随机过程的均值。
本函数在randomDlg.cpp的OnSelf()函数中调用。
(7)double* CMyRand::Rx(double lambda, int points) 函数功能:计算泊松过程的自相关序列;参数:lambda为泊松过程的参数,points为输入随机数序列的个数,所有参数在randomDlg.cpp的OnSelfStat()函数中设置;返回:函数返回一个动态分配的数组头指针,产生的Rx 序列保存于该数组中;注意:不要在本函数中释放该数组的内存。
3.3 randomDlg.cpp注意事项可以修改本程序中调用的MyRand.cpp中函数的输入参数,以观测参数变化后的效果。
但是,不要修改其他与MyRand.cpp无关的代码,以免出现错误!第一次:伪随机数、均匀随机变量和正态随机变量; 第二次:指数随机变量、泊松随机变量、均值和自相关。
4. 实验内容安排(1) 随机数的产生(2) 产生一个在min~max范围内精度为4位小数的平均分布的随机数已知随机变量密度函数为:(4) 泊松分布的随机数(3) 产生一个指数分布的随机数显示Rx实验执行步骤1.选择执行的实验内容;2.在出现正确结果后,选择“保存”;3.选择结果保存的目录;4.输入保存结果的文件名,必须为*.bmp文件;5.选择“保存”。
12453。