当前位置:首页 > 随机过程实验
实验名称:随机变量的仿真与实验
实验内容:用MATLAB分别产生服从(二项分布、泊松分布、正态分布、均匀分布、指数分布、瑞利分布)的随机变量,并分析他们的: 1、分布函数或概率密度函数 2、均值、方差 1、服从二项分布的随机变量 理论分析
如果随机变量X的分布律为
kkn?kpk?P{X?k}?Cnpq
0
其期望和方差分别为E(X) = np,D(X)=npq。随机变量X~B(20,0.4),可以通过matlab计算其期望和方差,绘制分布律和分布函数。程序如下:
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:20000 if j == R(i)
f(1,j) = f(1,j) + 1; end end
f(1,j) = f(1,j) / 20000; end
subplot(2,2,1); stem(f);
title('二项分布样本分布律 n=20 p=0.4'); xlabel('x'); ylabel('p');
for j = 1:21 %计算分布函数 for i = 1:j
F(1, j) = F(1, j) + f(1,i); end end
subplot(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)基本接近。分布律和分布函数如图2。与理论值接近。
图2 X~B(20,0.4) 样本分布律和分布函数
2、服从泊松分布的随机变量 理论分析
如果随机变量X的分布律为
pk?P{X?k}??kk!e??
λ>0, k=0,1,2,…n,则称X服从参数为λ的泊松分布,记为X~P(λ)。其期望和方差分别为E(X) =λ,D(X)= λ。观察参数λ对其分布律和分布函数的影响,令lamuda1=10、lamuda2=20、lamuda3=40可以通过matlab计算其期望和方差,绘制分布律和分布函数。程序如下:
lamuda1 = 10;lamuda2 = 20;lamuda3 = 40; [E,D] = poisstat(lamuda1); %计算期望和方差
f1 = poisspdf(0:1:100, lamuda1); %计算分布律 F1 = poisscdf(0:1:100, lamuda1); %计算分布函数 f2 = poisspdf(0:1:100, lamuda2); %计算分布律 F2 = poisscdf(0:1:100, lamuda2); %计算分布函数 f3 = poisspdf(0:1:100, lamuda3); %计算分布律 F3 = poisscdf(0:1:100, lamuda3); %计算分布函数
%绘制分布律
subplot(2,2,1); plot(0:1:100,f1,0:1:100,f2, '--',0:1:100, f3, ':'); title('泊松分布理论分布律');xlabel('x');ylabel('f');
%绘制分布函数
subplot(2,2,3); plot(0:1:100,F1,0:1:100,F2, '--',0:1:100, F3, ':'); title('泊松分布理论分布函数');xlabel('x');ylabel('F');
计算得E=10,D=10。分布律和分布函数如图3。
图3 泊松分布的分布律和分布函数
样本分析
利用matlab中poissrnd函数分别产生lamuda1=10,lamuda2=20,lamuda3=40的样本,每个样本点总数为20000。计算其均值和方差,计算分布律和分布函数,并与理论结果进行比较。程序如下:
lamuda1 = 10;lamuda2 = 20;lamuda3 = 40;
R1 = poissrnd(lamuda1,1,20000); %三组随机数产生 R2 = poissrnd(lamuda2,1,20000); R3 = poissrnd(lamuda3,1,20000);
共分享92篇相关文档