1、概率论与数理统计课程教案主讲教师_ 所在单位_授课班级_ 专业_ 撰写时间_教案编号24-0901教案内容概率统计数值实验学时2教学目标基本要求(1)掌握离散型随机变量和连续型随机变量各种常见分布随机数的生成算法,能借助Matlab软件产生各种分布的随机数函数;(2)能借助Matlab软件求解一些简单的应用概率问题的数值模拟解;(3)能借助Matlab软件完成有关随机变量的分布拟合和参数估计的求解。本内容可在实验室边讲边练;亦可在课堂上讲方法,课后学生自行练习,以平时作业处理,但不作考试要求。能力要求1. 培养能力要求:a) 掌握概率论和数理统计中的基本概念和性质并能够运用到复杂工程问题的适当
2、表述之中;b) 能够针对工程应用系统或过程的特点选择合适的概率分布来描述随机现象的统计规律性;教学重点常见分布随机数的生成算法;应用Matlab软件作简单概率问题的随机模拟思想与方法;应用Matlab软件求解随机变量分布参数及分布拟合检验的过程。教学难点常见分布随机数函数的生成思想。教学方法提问、讲授、启发、讨论、实验工具仪器多媒体教具、教材、教案、教学课件、考勤表、平时成绩登记表、Matlab软件教学安排考勤、复习相关知识点、新课内容概述、组织教学、布置作业、课后小结教学过程教学组织、具体教学内容及教学方法、手段、时间分配及其它说明备 注第一部分:古典概型实验(30分钟)内容介绍MATLAB
3、常用的及与随机数产生相关的函数实验1:计算超几何分布实验2:频率稳定性实验实验3:利用频率估计自然对数底e实验4:蒲丰投针实验,利用频率估计圆周率p实验5:生日悖论实验利用MATLAB 软件的图形可视功能将概率统计的内容用图形表示出来,以加深对概率的理解MATLAB常用的及与随机数产生相关的函数l factorial(n) :阶乘,n!,可通过阶乘来计算排列组合数l 1.rand(m,n):生成mn的随机矩阵,每个元素都在(0,1)间,生成方式为均匀分布。l 2.randn(m,n):生成mn的随机矩阵,每个元素都在(0,1)间,生成方式为正态分布l 3.randperm(m):生成一个1m的
4、随机整数排列l 4.perms(1:n):生成一个1n的全排列,共n!个l 5.取整函数系列:(1)fix(x):截尾法取整;(2)floor(x):退一法取整(不超过x的最大整数);向负方向舍入(3)ceil(x):进一法取整(= floor(x)+1); 向正方向舍入(4)round(x):四舍五入法取整。l 6.unique(a):合并a中相同的项l 7.prod(x):向量x的所有分量元素的积示例: rand(1) %生成一个(0,1)间的随机数 ans = 0.8147 rand(2,2) %生成一个22阶(0,1)间的随机数矩阵ans = 0.9134 0.0975 0.6324
5、0.2785 randperm(5) %生成一个15的随机整数排列ans = 4 1 5 2 3 a=1 2 4 2 3 3 2;unique(a)ans = 1 2 3 4实验 1:计算超几何分布的结果l 设有N件产品,其中D件次品,今从中任取n件l 问其中恰有k(kD)件次品的概率是多少?l (令N=10,D=3,n=4,k=2)解:编辑组合函数zuhe.m文件l function y=Com(n,r)l y=factorial(n)/(factorial(r)*factorial(n-r)计算如下:l N=10; D=3; n=4; k=2;l p=Com(3,2)*Com(10-3,4
6、-2)/Com(10,4)=0.3实验2 频率稳定性实验l 随机投掷均匀硬币,观察国徽朝上与国徽朝下的频率解l n= 3000;m=0; l for i=1:nl t=randperm(2); %生成一个12的随机整数排列l x=t-1; %生成一个01的随机整数排列l y=x(1); %取x排列的第一个值l if y=0;l m=m+1;l endl endl p1=m/nl p2=1-p1可见当n时,fnA=P(A)实验3 用频率估计自然对数el 某班有n个人,每人各有一支枪,这些枪外形一样。某次夜间紧急集合,若每人随机地取走一支枪,求没有一个人拿到自己枪的概率?解:记事件Ai为第i个人拿
7、到自已枪,事件Ai为第i个人没拿到自己枪,易知:l PAi=1n;PAi=n-1n,(i=1,2,n)l 又记 p0为没有一个人拿到自己枪的概率。p0=PA1A2An=1-P(i=1nAi)l 由乘法公式可知PAiAj=PAiPAjAi=1nn-11ijnPAiAjAk=PAkPAiAjAk=1nn-1(n-2)(1ijkn) PA1A2A3An=1n! 于是i=1nPAi=1,1ijnnPAiAj=Cn2nn-11ij m=40000;n=50;t=0;for j=1:m k=0; sui=randperm(n); for i=1:n if sui(i)=i k=k+1; else k=k;
8、 end end if k=0 t=t+1; else t=t; endende=m/te = 2.7313实验4:蒲丰(Buffon)投针实验,用频率估计p值l 在画有许多间距为d的等距平行线的白纸上,随机投掷一根长为l(ld)的均匀直针,求针与平行线相交的概率,并计算p的近似值解:设针与平行线的夹角为a(0ap),针的中心与最近直线的距离为x(0xd/2)。针与平行线相交的充要条件是x(l/2)sina ,这里x(0xd/2并且0ap。建立直角坐标系,上述条件在坐标系下将是曲线所围成的曲边梯形区域,总的区域即x和a所有可能取值构成的矩形区域,且所有可能取值是机会均等的,符合几何概型,则所求
9、概率为p=g的面积G的面积=0l2sindd2=2ldmn故可得p的近似计算公式 2nlmd ,其中n为随机试验次数,m为针与平行线相交的次数。解 l clear,clfl n=;l=0.5;m=0;d=1;l for i=1:nl x=(l/2)*sin(rand(1)*pi); y=rand(1)*d/2;l if x=yl m=m+1;l endl endl p1=m/nl pai=2*n*l/(m*d)实验5 生日悖论实验l 在100个人的团体中,不考虑年龄差异,研究是否有两个以上的人生日相同。假设每人的生日在一年365天中的任意一天是等可能的,那么随机找n个人(不超过365人)。l
10、(1)求这n个人生日各不相同的概率是多少?从而求这n个人中至少有两个人生日相同这一随机事件发生的概率是多少?l (2)近似计算在30名学生的一个班中至少有两个人生日相同的概率是多少解: (1)l clear,clfl for n=1:100l p0(n)=prod(365:-1:365-n+1)/365n;l p1(n)=1-p0(n);l endl p1=ones(1,100)-p0;l n=1:100;l plot(n,p0,n,p1,-)l xlabel(人数),ylabel(概率)l legend(生日各不相同的概率,至少两人生日相同的概率)l axis(0 100 -0.1 1.19
11、9),grid onp1(30)=0.7063, p1(60)= 0.9941(2) 在30名学生中至少两人生日相同的概率为70.63。下面进行计算机仿真。l 随机产生30个正整数,代表一个班30名学生的生日,然后观察是否有两人以上生日相同。当30个人中有两人生日相同时,输出“1”,否则输出“0”。如此重复观察100次,计算出这一事件发生的频率f100l clear,clfl n=0;l for m=1:100 %做100次随机试验l y=0;l x=1+fix(365*rand(1,30); %产生30个随机数l for i=1:29 %用二重循环寻找30个随机数 中是否有相同数l for
12、j=i+1:30l if x(i)=x(j)l y=1;break;l end l endl end l n=n+y; %累计有两人生日相同的试验次数l endl f=n/m %计算频率第二部分:随机变量及其分布(50分钟)内容介绍1. MATLAB中概率分布函数2. 二项分布实验3. 泊松分布实验4. 二项分布与泊松分布关系实验5. 连续型随机变量分布实验6. 随机变量的均值与方差7. 逆累积分布函数实验8. 中心极限定理实验1. MATLAB中概率分布函数MATLAB为常见自然概率分布提供了下列5类函数l 概率密度函数(pdf),求随机变量X在x点处的概率密度值l 累积分布函数(cdf),
13、求随机变量X在x点处的分布函数值l 逆累积分布函数(inv),求随机变量X在概率点a处的分布函数反函数值l 均值与方差计算函数(stat),求给定分布的随机变量X的数学期望E(X)和方差var(X)l 随机数生成函数(rnd),模拟生成指定分布的样本数据(调用格式:x=分布rnd(分布参数),如x=normrnd(0,1)常见的分布类型名如下具体函数的命名规则是:l 函数名分布类型名称+函数类型名称(pdf、cdf、inv、stat、rnd)例如,normpdf、normcdf、norminv、normstat和normrnd分别是正态分布的概率密度、累积分布、逆累积分布、数字特征和随机数生成
14、函数。关于这5类函数的语法,请详见有关书籍l 快捷的学习可借助MATLAB的系统帮助,通过指令doc获得具体函数的详细信息,语法是 doc 2. 二项分布实验已知Yb(20, 0.3)求Y分布率的值,并划出图形在Matlab中输入以下命令:l binopdf(10,20,0.2)l x=0:1:20; l y=binopdf(x,20,0.2)l plot(x,y,r.)结果:ans = 0.0020y =0.0115 0.0576 0.1369 0.2054 0.2182 0.1746 0.1091 0.0545 0.0222 0.0074 0.0020 0.0005 0.0001 0.00
15、00 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000已知Yb(20, 0.3)求Y分布函数的值,画出函数图像在Matlab中输入以下命令:l binocdf(10,20,0.2)l x=0:1:20; l y=binocdf(x,20,0.2)l ezplot(binocdf(t,20,0.3),0,20)结果:ans = 0.9994y = 0.0115 0.0692 0.2061 0.4114 0.6296 0.8042 0.9133 0.9679 0.9900 0.9974 0.9994 0.9999 1.0000 1.0000 1.00
16、00 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000到某服务机构办事总是要排队等待的。设等待时间T是服从指数分布的随机变量(单位:分钟),概率密度为ft=110e-t10 t0 0 t p=1-expcdf(15,10) %任一次离去的概率 p1=binopdf(2,10,p) %恰有两次离去的概率 q=binopdf(0:2,10,p);p2=sum(q) %最多有两次离去的概率 q=binopdf(0:1,10,p);p3=1-sum(q) %最少有两次离去的概率 q=binopdf(0:5,10,p);p4=1-sum(q) %离去的次数占多数的概率l
17、 p = 0.2231l p1 = 0.2972l p2 = 0.6073l p3 = 0.6899l p4 = 0.01123. 泊松分布实验假设电话交换台每小时接到的呼叫次数X服从参数l=3的泊松分布,求l (1) 每小时恰有4次呼叫的概率 l (2) 一小时内呼叫不超过5次的概率l (3) 画出分布律图像PX=4=44!e-=344!e-3PX5=k=05P(X=k=k=053kk!e-3在Matlab中输入以下命令:(1)p1= poisspdf(4,3)(2)p2= poisscdf(5,3)(3)x=0:1:20;y=poisspdf(x,3);plot(x,y)4. 二项分布与泊
18、松分布关系实验二项分布与泊松分布的关系例7:Xb(200,0.02),Y 服从参数为4的泊松分布,划出分布率图像l x=0:20;l y1=binopdf(x,200,0.02);l y2=poisspdf(x,4);l plot(x,y1,r.,x,y2,b.)泊松定理 l (用泊松分布来逼近二项分布的定理) 设0是一个常数,n是任意正整数,设npn,则对于任意固定的非负整数k,有limnnkpnk(1-pn)n-k=ke-k!例9 某种重大疾病的医疗险种,每份每年需交保险费100元,若在这一年中,投保人得了这种疾病,则每份可以得到索赔额10000元,假设该地区这种疾病的患病率为0.0002
19、,现该险种共有10000份保单,问:(1)保险公司亏本的概率是多少?(2)保险公司获利不少于80万元的概率是多少?解 设 X 表示这一年中发生索赔的份数,依题意, X 的统计规律可用二项分布 XB(10000,0.0002)来描述。由二项分布与泊松分布的近似计算关系有Cnkpk(1-p)n-knpkk!e-np (0np100=1-PX100=1-K=01002kk!e-2 当索赔份数不超过20份时,则保险公司获利就不少于80万元,其概率为p2=PX p=poisspdf(0:100,2);%计算101个泊松分布概率值或 p=binopdf(0:100,10000,0.0002); %按二项分
20、布计算 p1=1-sum(p) %求出保险公司亏本的概率 p1 = 0.0000 p=poisspdf(0:19,2);%计算出20个泊松分布概率值 或 p=binopdf(0:19,10000,0.0002); %按二项分布计算 p2=sum(p) %求出保险公司获利不少于80万元的概率 p2 = 1.00005. 连续型随机变量分布实验离散均匀分布的概率密度函数和累积分布函数 unidpdf(X,N) unidcdf(X,N)随机变量X在1到N上的N各自然数之间等可能取值在Matlab中输入以下命令:l x=1:1:10; y=unidpdf(x,10)结果:y = 0.1000 0.10
21、00 0.1000 0.1000 0.1000 0.1000 0.1000 0.1000 0.1000 0.1000在Matlab中输入以下命令:l x=0:1:10; y=unidcdf(x,10)结果:y = 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 1.0000连续均匀分布l 密度函数:f=unifpdf(x,a,b)l 分布函数:f=unifcdf(x,a,b)例: 画出均匀分布U(2,5)的概率密度函数和分布函数的图形.在Matlab中输入以下命令:l x=0:0.01:7; l y=unifpd
22、f(x,2,5); l z=unifcdf(x,2,5);l plot(x,y,x,z)(2) 指数分布l 密度函数:f=exppdf(x,q)l 分布函数:F=expcdf(x,q)例: 画出指数分布E(1)的概率密度函数和分布函数的图形. 求P(0X5) P(0X20).在Matlab中输入以下命令:l x=0:0.1:5; l y=exppdf(x,2); l z=expcdf(x,2);l plot(x,y,x,z)l result1=expcdf(5,2)-expcdf(0,2)l result2=expcdf(20,2)-expcdf(0,2)结果:result1 = 0.910
23、result2 = 0.24(3) 正态分布l 密度函数:f=normpdf(x,m,s)l 分布函数:F=normcdf(x,m,s)例: 画出正态分布N(1,4)的概率密度函数和分布函数的图形. 求P(1X clearmu1=2.5;mu2=3;sigma1=0.5;sigma2=0.6;x=(mu2-4*sigma2):0.01:(mu2+4*sigma2);y1=normpdf(x,mu1,sigma1); %考察均值的影响y2=normpdf(x,mu2,sigma1);y3=normpdf(x,mu1,sigma1); %考察方差的影响y4=normpdf(x,mu1,sigma2
24、);subplot(1,2,1) %考察结果的可视化plot(x,y1,-g,x,y2,-b)xlabel(fontsize1212,1=2 )legend(1,2)subplot(1,2,2)plot(x,y3,-g,x,y4,-b)xlabel(fontsize121=2,12 )legend(1,2)计算正态分布的累积概率值例,设XN(4,32), P3X3l 调用函数normcdf(x,)l 返回函数值Fx=-xf(t)dt解: p1=normcdf(6,4,3)-normcdf(3,4,3)l p1 = 0.3781 p2=1-normcdf(3,4,3)l p2 = 0.6306例
25、 正态分布参数和对变量x取值规律的约束3准则。解: clear,clf %(标准)正态分布密度曲线下的面积X=linspace(-5,5,100); Y=normpdf(X,0,1);yy=normpdf(-3,-2,-1,0,1,2,3,0,1);plot(X,Y,k-,0,0,0,yy(4),c-.)hold onplot(-2,-2,0,yy(2),m:,2,2,0,yy(6),m:,-2,-0.5,yy(6),yy(6),m:,0.5,2,yy(6),yy(6),m:)plot(-1,-1,0,yy(3),g:,1,1,0,yy(5),g:,-1,-0.5,yy(5), yy(5),g
26、:,0.5,1,yy(5),yy(5),g:)plot(-3,-3,0,yy(1),b:,3,3,0,yy(7),b:,-3,-0.5,yy(7),yy(7),b:,0.5,3,yy(7),yy(7),b:)hold offtext(-0.5,yy(6)+0.005,fontsize1495.44%)text(-0.5,yy(5)+0.005,fontsize1468.26%)text(-0.5,yy(7)+0.005,fontsize1499.74%)text(-3.2,-0.03,fontsize10-3)text(-2.2,-0.03,fontsize10-2)text(-1.2,-0.
27、03,fontsize10-)text(-0.05,-0.03,fontsize10)text(0.8,-0.03,fontsize10+)text(1.8,-0.03,fontsize10+2)text(2.8,-0.03,fontsize10+3)6. 随机变量的数学期望和方差对于任意的分布,可用Matlab中的函数和运算编程实现对于给定的分布,只需给出分布的参数,即可调用stat族函数,得出数学期望和方差,调用格式E,D=分布+stat(参数)例:求二项分布参数n=100,p=0.2的数学期望和方差:解:n=100; p=0.2; E,D=binostat(n,p);结果显示:E= 20
28、 D= 16例 绘制正态分布的密度函数、分布函数曲线,并求均值与方差解: clearmu=2.5;sigma=0.6;x=(mu-4*sigma):0.005:(mu+4*sigma);y=normpdf(x,mu,sigma);f=normcdf(x,mu,sigma);plot(x,y,-g,x,f,:b)M,V=normstat(mu,sigma)legend(pdf,cdf,-1) 从图中可以看出,正态密度曲线是关于x对称的钟形曲线(两侧在处各有一个拐点),正态累积分布曲线当x时F(x)0.5。M=2.5000V=0.36007. 逆累积分布函数逆累积分布函数就是返回给定概率条件下的自
29、变量的临界值,实际上是分布函数的逆函数。l icdf(Inverse Cumulative Distribution Function)即:在分布函数F(x)=p中已知p求其相对应的x的值l 调用:在分布函数名后加invl 如:X=norminv(p,mu,sgm)l 也有2)X=icdf(name,p,A1,A2,A3),其中name为相应的函数名,如normal;p为给定的概率值;l A1,A2,A3为相应的参数例、计算标准正态分布N(0,1)概率值0.1,0.3,0.5,0.7,0.9,所对应的x的值命令:y=0.1:0.2:0.9;x=norminv(y,0,1)结果:x=-1.281
30、6 -0.5244 0 0.5244 1.2816检验:y1=normcdf(x,0,1);y1=0.1000 0.3000 0.5000 0.7000 0.9000例、计算二项分布b(10,0.5)概率值0.1,0.3,0.5,0.7,0.9,所对应的x的值命令:p=0.1:0.2:0.9;x=binoinv(p,10,0.5)结果:x=3 4 5 6 7检验:y1=binocdf(x,10,0.5);结果:y1=0.1719 0.3770 0.6230 0.8281 0.9453在离散分布情形下,icdf 返回使cdf(x)p的第一个值x上例中,对p=0.1,对应cdf(x)0.1的第一个
31、值为3,故返回值为3B(10,0.5)的分布函数图像7.逆累积分布函数-上a分位点定义:上分位点:设随机变量X的分布函数为:F(x),如果实数x满足P(Xx)= ,则称x为上分位点例14、计算自由度为8的卡方分布的上分位点,其中=0.1,0.05,0.025命令:x=0.1,0.05,0.025;y=chi2inv(1-x,8)结果:y=13.3616 15.5073 17.5345例 标准正态分布分位数的概念图示。解 %分位数示意图(标准正态分布,=0.05)clear,clfdata=normrnd(0,1,300,1);xalpha1=norminv(0.05,0,1);xalpha2=
32、norminv(0.95,0,1);xalpha3=norminv(0.025,0,1);xalpha4=norminv(0.975,0,1);subplot(3,1,1)capaplot(data,-inf,xalpha1);axis(-3,3,0,0.45)subplot(3,1,2)capaplot(data,xalpha2,inf);axis(-3,3,0,0.45)subplot(3,1,3)capaplot(data,-inf,xalpha3);axis(-3,3,0,0.45)hold oncapaplot(data,xalpha4,inf);axis(-3,3,0,0.45)h
33、old offxalpha1 xalpha2 xalpha3 xalpha4xalpha1 = -1.6449xalpha2 = 1.6449xalpha3 = -1.9600 xalpha4 = 1.96008. 中心极限定理例1利用随机数样本验证中心极限定理l 独立同分布的随机变量的和的极限分布服从正态分布,通过产生容量为n的poiss分布和exp分布的样本,研究其和的渐近分布。 l 算法如下:l 产生容量为n的独立同分布的随机数样本,得其均值和标准差;l 将随机数样本和标准化;l 重复、;l 验证所得标准化的随机数样本和是否服从标准正态分布 clearn=2000;means=0;s=0
34、;y=;lamda=4;a=lamda;for i=1:n r=poissrnd(a,n,1);%可换成r=exprnd(a,n,1); means=mean(r);%计算样本均值 s=std(r);%计算样本标准差 y(i)=sqrt(n).*(means-a)./sqrt(s);endnormplot(y);%分布的正态性检验title(poiss分布,中心极限定理)棣莫弗-拉普拉斯定理的应用Galton钉板模型和二项分布l Galton钉板试验是由英国生物统计学家和人类学家Galton设计的。故而得名。l 通过模拟Calton钉板试验,观察和体会二项分布概率分布列的意义、形象地理解De
35、Moivre -Laplace中心极限定理。模拟Galton钉板试验的步骤: (1) 确定钉子的位置:将钉子的横、纵坐标存储在两个矩阵X和Y中。 (2) 在Galton钉板试验中,小球每碰到钉子下落时都具有两种可能性,设向右的概率为p,向左的概率为q1-p,这里p=0.5,表示向左向右的机会是相同的。模拟过程如下:首先产生一均匀随机数u,这只需调用随机数发生器指令rand(m,n)。rand(m,n)指令:用来产生mn个(0,1)区间中的随机数,并将这些随机数存于一个mn矩阵中,每次调用rand(m,n)的结果都会不同。如果想保持结果一致,可与rand(seed,s)配合使用,这里s是一个正整
36、数,例如 rand(seed,1),u=rand(1,6)l u = 0.5129 0.4605 0.3504 0.0950 0.4337 0.7092l 而且再次运行该指令时结果保持不变。除非重设种子seed的值,如 rand(seed,2),u=rand(1,6)l u = 0.0258 0.9210 0.7008 0.1901 0.8673 0.4185l 这样结果才会产生变化。将0,1区间分成两段,区间0,p)和p,1。如果随机数u属于0,p),让小球向右落下;若u属于p,1 ,让小球向左落下。将这一过程重复n次,并用直线连接小球落下时所经过的点,这样就模拟了小球从顶端随机地落人某一格
37、子的过程。 (3) 模拟小球堆积的形状。输入扔球次数m(例如m50、100、500等等),计算落在第i个格子的小球数在总球数m中所占的比例,这样当模拟结束时,就得到了频率用频率反映小球的堆积形状(4)用如下动画指令制作动画: movien(n):创建动画矩阵;制作动画矩阵数据; Getframe:拷贝动画矩阵; movie(Mat, m):播放动画矩阵m次。 M文件如下:解: clear,clf,m=100;n=5;y0=2;%设置参数ballnum=zeros(1,n+1);p=0.5;q=1-p;for i=n+1:-1:1 %创建钉子的坐标x,y x(i,1)=0.5*(n-i+1); y(i,1)=(n-i+1)+y0; for j=2:ix(i,j)=x(i,1)+(j-1)*1; y(i,j)=y(i,1); endendmm=moviein(m); %动画开始,模拟小球下落路径for i=1:m s=rand(1,n);