排队系统的随机模拟法、旅馆仿真分析_第1页
排队系统的随机模拟法、旅馆仿真分析_第2页
排队系统的随机模拟法、旅馆仿真分析_第3页
排队系统的随机模拟法、旅馆仿真分析_第4页
排队系统的随机模拟法、旅馆仿真分析_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、运筹学课题实验报告指 导 老 师: 周亚平第二小组成员:张雷勇、布兵、肖相泽、 黎潇、哈西木江 实验一: 排队系统的随机模拟法思路描述:通过产生0-99之间的随机数,并指定概率值所落区域来模拟现实货车到达与卸货的现实场景。实现方法:C+实验;/源代码/排队系统的随机模拟法 By第二小组#include #include #include #include #include #include using namespace std;int main(cout<<"排队系统的随机模拟法,第二小组,代码:张雷勇"< long int N;float arr_N,

2、late_N,ave_arr_N,ave_late_N;arr_N=0.0;late_N=0.0;cout<<"请输入您准备模拟的天数:"< cin>>N;/即为需要模拟的天数int *RANDOM_1,*ARRIVAL,*NEED,*REAL,*LATE;RANDOM_1=new int N;/此处定义的是随机数数组ARRIVAL=new int N;/此处定义的是到达的车辆数数组NEED=new int N;/此处定义的是需要卸货的车辆数组REAL=new int N;/此处定义的实际卸货的车辆数数组LATE=new int N;/此处定义

3、的是推迟卸货车数double random(double,double;srand(unsigned(time(0;for(int icnt = 0; icnt != N+3; +icnt/加3的原因是为了模拟一个稳态过程中的任意点开始RANDOM_1icnt=int(random(0,99;if(RANDOM_1icnt>=0&&(RANDOM_1icnt<=22ARRIVALicnt=0;else if(RANDOM_1icnt>=23&&(RANDOM_1icnt<=52ARRIVALicnt=1;else if(RANDOM_1i

4、cnt>=53&&(RANDOM_1icnt<=82ARRIVALicnt=2;else if(RANDOM_1icnt>=83&&(RANDOM_1icnt<=92ARRIVALicnt=3;else if(RANDOM_1icnt>=93&&(RANDOM_1icnt<=97ARRIVALicnt=4;elseARRIVALicnt=5;NEED0=ARRIVAL0;if(NEED0>=2REAL0=2;LATE0=NEED0-REAL0;elseREAL0=NEED0;LATE0=0;for(int

5、 i = 1; i != N+3; +i/加3的原因是为了模拟一个稳态过程中的任意点开始NEEDi=ARRIVALi+LATEi-1;if(NEEDi<=2REALi=NEEDi;LATEi=0;elseREALi=2;LATEi=NEEDi-REALi;for(int t=3;t != N+3;+tarr_N=arr_N+ARRIVALt;late_N=late_N+LATEt;ave_arr_N=arr_N/N;ave_late_N=late_N/N;cout<<"货车每天的平均到达数为:"< cout< cout<<"

6、;平均每天的推迟卸载货车数为:"< cout< /cout << "No." << icnt+1 << ": " < /cout << "No." << icnt+1 << ": " < return 0;double random(double start, double end/产生随机数的函数return start+(end-start*rand(/(RAND_MAX + 1.0;运行结果截屏:从运行的

7、结果来看,如果经过一个很长时期的模拟实验,货车的每天平均达到数和平均每天推迟卸货的货车数是趋于稳定的。当模拟天数趋近于正无穷,我们可以推断这两个值均是一个常数。实验二:非线性插值法估计Wq*u实验思路:尝试用拉格朗日插值法来估计Wq*u实现方法:C+/源代码/二次拉格朗日差值法估计Wq*u By第二小组#include #include #include #include #include using namespace std;int main(cout<<"运筹学作业小课题之第一题,第二小组,代码:张雷勇"< int c,i,j;cout<<

8、;"请输入有多少服务台数!"< cin>>c;int d;d=c-1;cout< cout<<"请输入rou的值!"< float p;cin>>p;cout< float w105=0.1111,0.0101,0.0014,0.0002,0.0000,0.2500,0.0417,0.0103,0.0030,0.0010,0.4286,0.0989,0.0333,0.0132,0.0058,0.6667,0.1905,0.0784,0.0378,0.0199,1.0000,0.3333,0.15

9、79,0.0870,0.0521,1.5000,0.5625,0.2956,0.1794,0.1181,2.3333,0.9608,0.5470,0.3572,0.2519,4.0000,1.7778,1.0787,0.7455,0.5541,9.0000,4.2632,2.7235,1.9694,1.5250,19.0000,9.2564,6.0467,4.4571,3.5112;float x10=0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,0.95;double fx=0.0;double tmp;for(i=0;i<10;i+tmp=1.0;for(j

10、=0;j for(j=i+1;j<10;j+ tmp=tmp*(p-xj/(xi-xj;fx=fx+tmp*wid;if(p>=0.1&&(p<=0.95&&(c=1|(c=2|(c=3|(c=4|(c=5cout<<"经过系统精密运算,Wq*u的拉格朗日插值结果为:"< cout< elsecout<<"严重警告!"< cout<<"c的值或者rou的值不符合系统要求,请检查后重新输入!"< system("Pau

11、se"return 0;运行结果截屏:运行结果说明,在插值上面,拉格朗日的插值能够满足更高的精度要求。非线性插值的误差更小一些。实验三:旅馆仿真模拟主要思想:通过仿真的方法,对现实的旅馆排队情况进行模拟。在给定旅馆的房间数的情况下,计算出客人被拒绝的概率,以及房间空闲的数目平均数。实现方法:C+/源代码#include #include #include #include using namespace std;int main(cout<<"旅馆的仿真算法,第二小组,代码:张雷勇"< int lamt=6;/平均每天到达人数int u_1=2;

12、/平均逗留时间int crou=12;long int crou_n8;long int n_jiecheng8;double x48,x58;long int tmp=1;double Pc8,Ls8;for(int i=0;i<8;i+crou_ni=pow(crou,i+1;long int jiecheng(int m;n_jiechengi=jiecheng(i+1;x4i=crou_ni/n_jiechengi; cout<<" "<<"满员的概率"<<" "<<"每天客房平均占用数"< x50=1+x40;for(int j=1;j<8;j+for(int k=j;k>=0;k-tmp=tmp+x4k;x5j=tmp;tmp=1;/cout< 测试语句 for(int m=0;m<8;m+Pcm=float(x4m/x5m;Lsm=(1-Pcm*12;cout<<&q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论