统计计算课程设计.docx
《统计计算课程设计.docx》由会员分享,可在线阅读,更多相关《统计计算课程设计.docx(15页珍藏版)》请在冰豆网上搜索。
统计计算课程设计
《统计计算》
课程设计报告
学院
专业
姓名
学号
评语:
分数
二○一四年五月
2014统计计算课程设计题型
题型一:
若产生总体
,其中未知,请设计一个随机模拟实验,要求从该总体产生一个容量为100的样本,考虑置信水平分别取0.95和0.5时,对上述过程重复1000次,统计有多少个区间包含均值5,要求画出置信水平分别取0.95和0.5时均值的置信区间图,并给出实验总结。
问题分析:
实验要求在置信水平分别取0.95和0.5的情况下,从总体
中产生一个容量为100的样本,由于未知,在分析中先暂且把它设置为
。
由于方差未知,估计正态总体均值的置信区间时使用公式
。
如果均值5在置信区间内,那么符合条件的区间数加1。
该过程重复1000次,统计最终符合条件的区间的频数为多少,对应的频率为多少。
SAS结果:
图1输出结果:
符合条件的区间数累加结果以及频率
图2置信水平取0.95时均值的置信区间图
图3置信水平分别取0.5时均值的置信区间图
由于对SAS作图操作的了解程度有限,尚未能掌握画出标准的置信区间图的方法。
图2、图3中,横轴表示置信区间的编号,纵轴表示总体均数;星号表示的是该编号的置信区间上限,点表示的是该编号的置信区间下限;中间是总体均值等于5的参考线,方便观察对比得出结论。
结论:
在置信水平取
时,如果从同一总体中重复抽取1000份样本含量相同(本实验样本容量为100)的独立样本,每份样本分别计算1个置信区间,在这1000个置信区间中将大约有
个置信区间覆盖总体均数,大约有
个置信区间并不覆盖总体均数。
所以,对于某一次估计的置信区间,我们平时总是宣称这个区间覆盖了总体均数,但不一定是真的覆盖了总体均数,于是,我们补充一句:
置信度为
。
题型二:
在实际观察中,已知腐蚀深度与腐蚀时间有线性关系,设给定腐蚀时间X时腐蚀深度Y的总体均数E(Y|X)与X的关系满足方程E(Y|X)=70+0.6X,且腐蚀时间
,腐蚀深度
。
现随机抽取该总体20对腐蚀深度与腐蚀时间的关系,构成一份样本,做一次回归分析;重复抽取相同样本量的10份样本,分别进行回归,得到10条直线,观察它们的图形,得出结论。
要求:
(1)给出随机样本表;
(2)10条回归重叠图形;(3)实验结论。
问题分析:
实验要求从总体
,
中随机抽取20对和的关系。
然后根据这20对样本做一次回归分析。
该过程重复10次,并画出这10条回归直线,观察并得出相应结论。
SAS结果:
图4随机样本表
图510条回归直线重叠图形
结论:
观察图5可以发现,10条回归直线的趋势大致相同,但是具体每条直线的截距和斜率都存在着差异。
同时可以比较10个模型的回归结果和样本的来源
(截距为70,斜率为0.6),相差也很大而且不稳定。
综上所述,这10个回归模型的拟合效果并不理想,造成这一现象的主要原因是样本量不够大。
在一元线性回归中,有
。
显然越大,
越小。
所以,要想使
的估计值
更稳定,在收集数据时,样本量应尽可能大一些,样本量大小时,估计量的稳定性肯定不会太好。
题型三:
设有一个由两个服务台串联组成的服务机构(双服务太串联排队系统)。
顾客在第一个服务台接受服务后进入第二个服务台,服务完毕后离开。
假定顾客达到第一个服务台的时间间隔是均值为1分钟的指数分布,顾客在第一个和第二个服务台的服务时间分别是均值为0.7分和0.9分的指数分布。
请模拟这种双服务台串联排队系统(分别模拟600分和1000分的系统);并估计出顾客在两个服务台的平均逗留时间和排队中的顾客平均数。
问题分析:
首先引入几个记号:
顾客到达第一个服务台的时刻
顾客到达第二个服务台的时刻
顾客在第一个服务台的服务时间
顾客在第二个服务台的服务时间
顾客在第一个服务台的等待时间
顾客在第二个服务台的等待时间
在第一个服务台排队的顾客数
在第二个服务台排队的顾客数
顾客离开第一个服务台的时刻
顾客离开第二个服务台的时刻
模拟时钟从
分开始,产生指数分布
随机数,比如得
;在第一个服务台的服务时间
,产生随机数比如得
;在第二个服务台的服务时间
,产生随机数比如得
。
分时,第一个顾客到达第一个服务台,记为
,因没有人排队,马上接受服务,即
,此时
;第一个顾客在第一个服务台接受服务时间为1分,计算
分;接着进入第二个服务台,记
;因没有人排队,马上接受服务,即
,此时
;第一个顾客在第二个服务台接受服务时间为0.2分,计算
分,即第一个顾客于开门后1.5分离开(即
分时离开)。
……
分时,第六个顾客到达第一个服务台,记为
,而根据前面的计算,
,即
;此时在第一个服务台的排队中,第四个和第五个顾客仍在(因为
,
,都大于
,即第六个顾客到达时他们都还没走),所以
;第六个顾客在第一个服务台接受服务时间为0.3分,计算
分;接着进入第二个服务台,记
;而根据前面的计算,
,即
;此时在第二个服务台的排队中,第四个和第五个顾客仍在(因为
,
,都大于
,即第六个顾客到达时他们都还没走),所以
;第六个顾客在第二个服务台接受服务时间为2.0分,计算
分,即第六个顾客于开门后6.2分离开(即
分时离开)。
……
一直按这个过程循环直至模拟时钟的时间到达600或者1000分。
表1、表2列出模拟600分系统试验的部分结果。
表1模拟过程(输入过程)
顾客序号
输入过程
到达间隔
在第一个服务台的服务时间
在第二个服务台的服务时间
1
0.3
1.0
0.2
2
0.9
0.6
0.4
3
0.3
0.3
0.3
4
0.4
0.3
1.5
5
0.1
0.1
0.1
6
0.4
0.3
2.0
表2模拟过程(输出结果)
顾
客
序
号
模拟试验过程的输出结果
第一个服务台
第二个服务台
到达
时刻
服务
时间
等待
时间
离开
时刻
排队的
顾客数
到达
时刻
服务
时间
等待
时间
离开
时刻
排队的
顾客数
1
0.3
1.0
0.0
1.3
0
1.3
0.2
0.0
1.5
0
2
1.2
0.6
0.1
1.9
1
1.9
0.4
0.0
2.3
0
3
1.5
0.3
0.4
2.2
1
2.2
0.3
0.1
2.6
1
4
1.9
0.3
0.3
2.5
1
2.5
1.5
0.1
4.1
1
5
2.0
0.1
0.5
2.6
2
2.6
0.1
1.5
4.2
1
6
2.4
0.3
0.2
2.9
2
2.9
2.0
1.3
6.2
2
思路框图:
下面以模拟600分系统为例,画出流程图。
SAS结果:
图6顾客在两个服务台的平均逗留时间和排队中的顾客平均数的估计结果
结论:
在模拟600分的系统中,顾客在第一个服务台的平均逗留时间为2.59分,排队中的顾客平均数为2人;在第二个服务台的平均逗留时间为6.43分,排队中的顾客平均数为7人;平均每个顾客在服务机构逗留的总时间为9.02分。
在模拟1000分的系统中,顾客在第一个服务台的平均逗留时间为2.15分,排队中的顾客平均数为2人;在第二个服务台的平均逗留时间为6.05分,排队中的顾客平均数为6人;平均每个顾客在服务机构逗留的总时间为8.20分。
程序:
题型一:
dataex1;
arrayx(100)x1-x100;/*定义数列的元素*/
doalpha=0.95,0.5;/*置信水平取0.95、0.5时各执行程序一次*/
t=tinv(1-(1-alpha)/2,99);/*计算
*/
sigma=1;/*设置方差*/
m=0;/*初始化符合条件的区间数*/
doj=1to1000;/*重复1000次实验*/
doi=1to100;/*每次实验产生100个样本*/
r=rannor(32789);
x(i)=5+r*1;/*产生服从
,
正态分布的随机数*/
ifi=100thendo;/*当输出第100个样本时*/
mean=mean(ofx1-x100);/*计算均值*/
s=std(ofx1-x100);/*计算标准差*/
delta=t*s/sqrt(100);/*计算
*/
lcl=mean-delta;/*计算置信区间下限*/
ucl=mean+delta;/*计算置信区间上限/
iflcl<5&&5output;
end;
end;
end;
end;
datam(keep=m);/*创建一个只包含符合条件的区间数累加结果的数据集*/
setex1;
keepmj;
ifj=1000thenoutput;
datap;/*创建一个只包含符合条件的区间数累加结果以及频率的数据集*/
setm;
p=m/1000;output;
procprintdata=p;/*输出结果*/
run;
dataa;/*创建一个只包含alpha=0.95时置信区间上下限的数据集*/
setex1;
ifalpha=0.95thenoutput;
datab;/*创建一个只包含alpha=0.5时置信区间上下限的数据集*/
setex1;
ifalpha=0.5thenoutput;
procgplotdata=a;/*画alpha=0.95时的置信区间图*/
symbol1c=bluev=stari=none;
symbol2c=redv=doti=none;
plotlcl*j=1ucl*j=2/overlayvref=5;
run;
procgplotdata=b;/*画alpha=0.5时的置信区间图*/
symbol1c=bluev=stari=none;
symbol2c=redv=doti=none;
plotlcl*j=1ucl*j=2/overlayvref=5;
run;
题型二:
dataex2;
seed=32789;
arrayx(10)x1-x10;/*定义数列的元素*/
arrayy(10)y1-y10;/*定义数列的元素*/
doi=1to20;/*每次实验产生20个样本*/
dok=1to10;/*取十份样本*/
x(k)=170+rannor(seed)*2;/*产生服从
,
正态分布的随机数*/
y(k)=70+0.6*x(k)+rannor(seed)*2;/*产生服从
,
正态分布的随机数*/
end;
output;
end;
procprintdata=ex2;/*输出随机样本表*/
run;
procregdata=ex2;/*对10份样本分别进行回归,并输出拟合值*/
modely1=x1;
outputout=out1p=xp1;
modely2=x2;
outputout=out2p=xp2;
modely3=x3;
outputout=out3p=xp3;
modely4=x4;
outputout=out4p=xp4;
modely5=x5;
outputout=out5p=xp5;