港口系统仿真大作业_第1页
港口系统仿真大作业_第2页
港口系统仿真大作业_第3页
港口系统仿真大作业_第4页
港口系统仿真大作业_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

港口系统仿真课程设计交运172王星宇2017106111581.在计算机上利用线性同余法或乘同余法产生[0,1]区间独立均匀分布的随机数序列。(A)要求产生2组随机数序列,每组1000个。(B)计算每组随机数的均值,并且以0.1为间隔,(0,0.1),(0.1,0.2),(0.2,0.3),...画出随机数落在每个子区间内的频率分布曲线。解:(1)用a=9,c=7,m=2^15,x0=7生成一个1000行1列的矩阵,用循环语句生成1000个0到1之间的随机数,用mean函数求平均值并用histfit进行作图,如图1以及图2。图1图2(2)以下是第二组随机数的生成,流程与第一小组随机数相同,如图3和图4。图3图42.为模拟船舶的装卸过程,首先需要模拟船舶的到港过程,假设泊位充足,且船舶的到达服从每天平均3.6艘船的泊松分(A)以T1产生的第一组随机数为基础,按照上述分布特点产生1000艘船舶的到港时间间隔(以min为单位),并计算你所产生的这1000个到达时间间隔的平均值。(B)以100min为划分间隔,画出产生到达时间间隔在各区间的频率分布图解:首先将每天3.6艘船的单位进行转换,然后建立循环语句,因为船舶达港服从泊松到达过程且符合指数分布,所以到达间隔时间可以用R=1-e^(a*x),然后求出平均数并作图,如图5和图6。图5图63.为仿真船舶的装卸过程,需模拟船舶的装卸过程。为此,研究人员统计了200艘船舶的装卸所需时间,如下表所示:区间(小时)2~44~66~88~1010~11频数4050603020(A)根据该数据拟合出装卸服务时间这个随机变量的累积分布函数(B)以T1产生的第二组随机数为基础,按照上述统计规律模拟产生1000艘船舶的装卸服务时间(单位:min),并计算所产生的1000艘船舶装卸服务时间的平均值。(C)以100min为区间间隔,画出产生数据在各区间的频率分布图。解:可以套用累积分布函数得到函数tan(i)=(x(i+1)-x(i))/(y(i+1)-y(i))并利用switch语句生成装卸时间。如图7与图8。图7图8利用histfit作图可得出如下装卸时间的分布,如图9。图94.采用T2产生的1000个船舶到港时间间隔数据,T3产生的1000艘船舶装卸服务时间,假设只有1台桥吊,对1000艘船舶的装卸排队服务过程进行仿真:统计桥吊利用率、每艘船舶平均在港总时间、每艘船舶平均等待时间解:吊桥利用率=总服务时间/总时间平均在港时间=(总服务时间+总装卸时间)/船舶数量平均等待时间=总等待时间/船舶数量其中总的服务时间就是第一艘船开始到最后一艘船的结束,如图10,11,12,13。图10图11图12图135.假设有2台桥吊(桥吊A和桥吊B,在A和B均空闲时,选择让A服务),重复对1000艘船舶的装卸过程进行仿真,并统计相关统计量(桥吊利用率、每艘船舶平均在港总时间、每艘船舶平均等待时间)。解:根据题意,利用循环嵌套的语句进行解答比较合适,A与B同时空闲就选择A,A空闲B在忙就选择A,B空闲A在忙就选择B,如图14,15,16,17,18。本题全代码如下nextA=0nextB=0arrival=0sumstevedoreA=0sumstevedoreB=0sumawait=0sumstevedore=sum(stevedore)fori=1:1000ifarrival>=nextA&&arrival>=nextBnextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elseifarrival>=nextA&&arrival<nextBnextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elseifarrival<nextA&&arrival>=nextBnextB=arrival+stevedore(i)sumstevedoreB=sumstevedoreB+stevedore(i)elseifnextA<=nextBsumawait=sumawait+(nextA-arrival)nextA=nextA+(nextA-arrival)sumstevedoreA=sumstevedoreA+stevedore(i)elsesumawait=sumawait+(nextB-arrival)nextB=nextB+(nextB-arrival)sumstevedoreB=sumstevedoreB+stevedore(i)endendarrival=arrival+interval(i)endifnextA>=nextBzong=nextAelsezong=nextBend图14图15吊桥A利用率图16吊桥B利用率图17平均在港时间图18平均等待时间6.如果上述服务规则改为:如果A和B均空闲,则以0.6的概率选择B,重复上述仿真本题的思路与第五题大致相同,就是在判断语句有所改变,代码如下并如图19,20,21,22。nextA=0nextB=0arrival=0sumstevedoreA=0sumstevedoreB=0sumawait=0a=9;c=7;m=2^15;x0=9;B=zeros(1000,1);n=1;whilen<=1000n=n+1;x=rem((a*x0+c),m);x0=x;s=x/m;B(n-1,1)=s;endfori=1:1000ifarrival>=nextA&&arrival>=nextBprobability=B(i,1);ifprobability>=0.6nextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elsenextB=arrival+stevedore(i)sumstevedoreB=sumstevedoreB+stevedore(i)endelseifarrival<nextA&&arrival>=nextBnextB=arrival+stevedore(i)sumstevedoreB=sumstevedoreB+stevedore(i)elseifarrival>=nextA&&arrival<nextBnextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elseifnextA>nextBsumawait=sumawait+(nextB-arrival)nextB=nextB+(nextB-arrival)sumstevedoreB=sumstevedoreB+stevedore(i)elseifnextA<nextBsumawait=sumawait+(nextA-arrival)nextA=nextA+(nextA-arrival)sumstevedoreA=sumstevedoreA+stevedore(i)elseprobability2=rand(1,1)ifprobability2>=0.6sumawait=sumawait+(nextA-arrival)nextA=nextA+(nextA-arrival)sumstevedoreA=sumstevedoreA+stevedore(i)elsesumawait=sumawait+(nextB-arrival)nextB=nextB+(nextB-arrival)sumstevedoreB=sumstevedoreB+stevedore(i)endendendarrival=arrival+interval(i)endifnextA>=nextBzong=nextAelsezong=nextBend图19图20吊桥A利用率图21吊桥B利用率图22平均在港时间图23平均等待时间原代码:1.a=9;c=7;m=2^15;x0=7;B=zeros(1000,1);n=1;whilen<=1000n=n+1;x=rem((a*x0+c),m);x0=x;s=x/m;B(n-1,1)=s;endmean(B)histfit(B,10)a=11;c=0;m=2^15;x0=7;D=zeros(1000,1);n=1;whilen<=1000n=n+1;x=rem((a*x0+c),m);x0=x;s=x/m;D(n-1,1)=s;endmean(D)histfit(D,10)2.pingju=3.6jiange=3.6/1440interval=zeros(1000,1);n=1;whilen<=1000n=n+1;interval(n-1,1)=-log(1-B(n-1,1))/jiange;endmean(interval)histfit(interval,30)3.x=[2,4,6,8,10,11];y=[0,0.2,0.45,0.75,0.9,1];tan=zeros(5,1);fori=1:5tan(i)=(x(i+1)-x(i))./(y(i+1)-y(i));endstevedore=zeros(1000,1).*60;fori=1:1000switchceil(D(i)*100)casenum2cell(0:20)stevedore(i)=tan(1).*D(i)+x(1);casenum2cell(21:45)stevedore(i)=tan(2).*(D(i)-0.2)+x(2);casenum2cell(46:75)stevedore(i)=tan(3).*(D(i)-0.45)+x(3);casenum2cell(76:90)stevedore(i)=tan(4).*(D(i)-0.75)+x(4);casenum2cell(91,100)stevedore(i)=tan(5).*(D(i)-0.9)+x(5);endend4.nextwork=0;arrival=0;sumstevedore=sum(stevedore)sumawait=0;fori=1:1000ifnextwork>arrivalsumawait=sumawait+(nextwork-arrival)nextwork=arrival+(nextwork-arrival)elsenextwork=arrival+stevedore(i)endarrival=arrival+interval(i)end5.nextA=0nextB=0arrival=0sumstevedoreA=0sumstevedoreB=0sumawait=0sumstevedore=sum(stevedore)fori=1:1000ifarrival>=nextA&&arrival>=nextBnextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elseifarrival>=nextA&&arrival<nextBnextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elseifarrival<nextA&&arrival>=nextBnextB=arrival+stevedore(i)sumstevedoreB=sumstevedoreB+stevedore(i)elseifnextA<=nextBsumawait=sumawait+(nextA-arrival)nextA=nextA+(nextA-arrival)sumstevedoreA=sumstevedoreA+stevedore(i)elsesumawait=sumawait+(nextB-arrival)nextB=nextB+(nextB-arrival)sumstevedoreB=sumstevedoreB+stevedore(i)endendarrival=arrival+interval(i)endifnextA>=nextBzong=nextAelsezong=nextBend6.nextA=0nextB=0arrival=0sumstevedoreA=0sumstevedoreB=0sumawait=0a=9;c=7;m=2^15;x0=9;B=zeros(1000,1);n=1;whilen<=1000n=n+1;x=rem((a*x0+c),m);x0=x;s=x/m;B(n-1,1)=s;endfori=1:1000ifarrival>=nextA&&arrival>=nextBprobability=B(i,1);ifprobability>=0.6nextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elsenextB=arrival+stevedore(i)sumstevedoreB=sumstevedoreB+stevedore(i)endelseifarrival<nextA&&arrival>=nextBnextB=arrival+stevedore(i)sumstevedoreB=sumstevedoreB+stevedore(i)elseifarrival>=nextA&&arrival<nextBnextA=arrival+stevedore(i)sumstevedoreA=sumstevedoreA+stevedore(i)elseifnextA>nextB

温馨提示

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

评论

0/150

提交评论