实验2飞机票的预定策略问题1.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验2 飞机票的预定策略问题 问题 为某次航班发售机票,发售机票不能太多也不能太少,若太多,乘客不能按时登机,公司不仅要付给乘客一定的赔偿费,而且乘客还将怨声载道;若太少,公司也将受到一定的损失。现问:应如何确定发售机票数,使公司、乘客双方均较满意? 实验目的 培养学生根据实际问题建立数学模型。 训练学生使用计算机语言编程及数学软件解决一些数值计算。 预备知识 概率论。 基本假设:乘客之间彼此独立(意即都为单身汉)。 设相关量如表3.2.1,飞机容量N与g、f之间的关系为0.6Ng=f。于是该问题实际上变为:求m,使ES/f最大且P(j)不能太大(如P(5)=5%); 表3.2.1 N 飞机容量 g 机票价格 f 飞机费用(与乘客多少无关) b 乘客准时达到机场而未乘上飞机的赔偿费 PK K个乘客迟到的概率 p 每位乘客迟到的概率 m 发售机票数 ES 公司的平均利润 P(j) 超过j个乘客不能按时登机的概率(声誉指标) 实验内容与要求 建立平均利润ES的数学模型。 设N=300,b/g=0.1,p=0.03.取m=N+5,N+6,…,N+50/ 利用FORTRAN语言编程计算ES/f和p(5)并画出它们随m变化的关系图。 利用Mathmatica软件计算ES/f和p(5)并画出它们随m变化的关系图。 思考问题 请自己假设一组数据,再运行上述程序,分析结果的变化情况。 实验解答 实验2 飞机票的预定策略问题 问题分析与建立模型 设迟到的乘客数为k,则利润为: S= 于是平均利润为: ES= 计算过程 当N=300,b/g=0.1,p=0.03时,取m=305,306,…,350。 用FORTRAN语言编程计算ES/f,p(5)的值。 运行如下FORTRAN源程序: SUBROUTINE ZUHE(F,M,K) DOUBLE PRECISION F P=1 F=1 DO 10,I=K+1,M F=F*I/P P=P+I CONTINUE RETURN END DOUBLE PRECISION F,SUM1,ESF,T1,T2,SUM2 OPEN(2,FILE=‘1.DAT’,STATUS=‘NEW’) DO 10,M=305,350 SUM1=0 DO 20,K=0,M=301 CALL ZUHE(F,M,K) T1=(M-K-300)*F*((0.03)**K)*((0.97)**(M-K)) SUM1=SUM1+T1 CONTINUE ESF=(1.0/180.0)*(0.97*M-1.1*SUM1)-1 SUM2=0 DO 30,K=0,M-305 CALL ZUHE(F,M,K) T2=F*((0.03)**K)*((0.97)**(M-K)) SUM2=SUM2+T2 CONTINUE WRITE(2,3)M,ESF,SUM2 FORMAT(1X,‘M=’,I3,5X,‘ES/f=’,F12.6,5X,‘P(5)=’,D15.6) CONTINUE END 综上所知:ES/f在m=314时取得最大值0.663441且p(5)随m取值的增大而单调递增,又因为当m=309时p(5)=.442232D-01,m=310时p(5)=.952122D-01;所以为了使ES/f最大,且要满足条件p(5)=5%,我们取m=309。 利用mathmatica软件求出m的值,并画出ES/f,p(5)随m变化的关系图。 运行mathmatica源程序: In[1]:=(*N=300,b/g=0.1,p=0.03,p(5)=0.05*) ClearAll[]; Esf={};t1={0,0};t={0,0}; f1[x_,y_]:=Product[i,{i,y-x+1,y}]/Product[i,{i,1,x}]; f2[x_,y_]:=(1.1/180)(y-x-300)(0.03^x)(0.97^(y-x)); f3[y_]:=(y 0.97)/180-1; For[m=305,m351,m++, g2=0; For[k=0,km-298,k++ g1=f1[k,m]f2[k,m]; g2=g2+g1; ]; tt=f3[m]-g2; AppendTo[esf,{m,tt}]; If[t1[[2]]tt,t=t1=esf[[m-304]],t=t1] ]; Return[t]; ListPlot[esf,PlotJoined-True,AxesLabel-{“m”,”es/f”}] ClearAll[]; p5={};k={0,0};k1={0,0}; f

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档