长 春 工 业 大 学
课 程 设 计 报 告
课程设计名称 运筹课程设计
专 业 工商管理
班 级 110508班
学 生 姓 名 **
指 导 教 师 **
20**年12月20日
课 程 设 计 任 务 书
运筹学课程设计报告
组 别: 第十二组
设计人员: **
设计时间:20**.12.9~20**.12.20
1.设计进度
本课程设计时间分为两周:
第一周(20##年12月9日----20##年12月13日):建模阶段。此阶段各小组根据给出的题目完成模型的建立。主要环节包括 :
1.1 12月9日上午:发指导书;按组布置设计题目;说明进度安排。
1.2 12月9日下午至12月11日:各小组审题,查阅资料,进行建模前的必要准备(包括求解程序的编写与查找)。
1.312月12日至12月13日:各个小组进行建模,并根据题目及设计要求拟定设计提纲,指导教师审阅;同时阅读,理解求解程序,为上机求解做好准备。
第二周(20##年12月16日---12月20日):上机求解,结果分析及答辩。主要环节包括
1.1 12月16日至12月17日:上机调试程序
1.2 12月17日:完成计算机求解与结果分析。
1.3 12月18日:撰写设计报告。
1.4 12月19日至12月20日:设计答辩及成绩评定。
2.设计题目
十五题:设有一家商店,它的库房最多可存1000单位商品。已知该商店开业时有存货500单位,并预先知道该商品一月至四月的进价和售价如下表所示。问应怎样安排进货量和销售量使商店获利最大?并按要求分别完成下列分析:
(1)1月份的进货价在何范围内变化时最优购销策略不变?
(2)2月份的销售价在何范围内变化时最优购销策略不变?
(3)商店开业时有存货量为800单位时的最优购销策略?
(4)库房容量在何范围内变化时最优基不变?
某商店商品的进货价和销售价
3.建模过程
3.1变量设置:
设z为所获利润,即max z为最大获利。
3.2条件设置
根据题目要求有:最大获利 = 每月销售总额 — 每月进货总额,即目标函数:
max z = 12x5 +9x6 +13x7 +17 x8—(10x1 +9x2 +11x3 +15x4 )
约束条件:
(1)一月份的库房可存量约束:500+x1≤1000
(2)二月份的库房可存量约束:500+ x1- x5+ x2≤1000
(3)三月份的库房可存量约束:500+x1- x5+ x2- x6+ x3≤1000
(4)四月份的库房可存量约束:500+x1-x5+ x2- x6+ x3- x7+ x4≤1000
(5)一月份的销售量约束:500+ x1≥x5
(6)二月份的销售量约束:500+ x1+ x2≥x5+ x6
(7)三月份的销售量约束:500+ x1+ x2+ x3≥x5+ x6+ x7
(8)四月份的销售量约束:500+ x1+ x2+ x3 +x4≥x5+ x6+ x7+ x8
调整后得该问题的LP问题:
max z = -10x1-9x2-11x3-15x4 +12x5 +9x6 +13x7 +17x8
4.求解程序功能介绍
4.1 程序功能介绍
4.1.1 总体介绍
此问题求解过程,分别运用了C程序设计语言和LINDO数学建模软件进行分析,其中C语言程序表现了运筹学中单纯形法求最优解的方法,该程序运行过程中需要人工输入A b C,并确定初始基变量,程序自行迭代得出最优表,并指出最优解及最优值。LINDO是一种专门用于求解数学规划问题的软件包。由于LINDO知性速度很快、易于方便输入、求解和分析数学规划问题。因此在数学、科研和工业界得到广泛应用。LINDO 主要用于解线性规划、非线性规划、二次规划和整数规划等问题、也可以用于一些非线性和线性方程组的求解以及代数方程求根等。LINDO中包含了一种建模语言和许多常用的数学函数(包括大量概论函数),可供使用者建立规划问题时调用。
对于在用LINDO求解本题中,我们用到的是其中用于解决线性规划这部分的功能,下面就这部分我们重点介绍。
4.1.2 LINDO的常用基本语法
注意事项:
(1) 目标函数以“max”或“min”开头,max(或min)与目标函数表达式之间不能有“=”,其与各约束条件之间一定要有“Subject to (ST) ”分开。
(2) 变量名不能超过8个字符并且必须以英文字母开头。英文字母不区分大小写。(3) 变量与其系数间可以有空格,但不能有任何运算符如乘号“*”等。
(4) 要输入<=或>=约束,相应以<或>代替即可。
(5) 一般LINDO中不能接受“()”和逗号“,”例:400(X1+X2) 需写成400X1+400X2;10,000需写成10000。
(6) lindo软件已规定所有的决策变量均为非负数
4.2程序流程图
5.计算机运行结果
5.1.lingo运行结果如下
LP OPTIMUM FOUND AT STE
OBJECTIVE FUNCTION VALUE
1) 15000.00
VARIABLE VALUE REDUCED COST
X1 500.000000 0.000000
X2 1000.000000 0.000000
X3 0.000000 2.000000
X4 0.000000 2.000000
X5 1000.000000 0.000000
X6 0.000000 0.000000
X7 0.000000 0.000000
X8 1000.000000 0.000000
ROW SLACK OR SURPLUS DUAL PRICES
C2) 0.000000 2.000000
C3) 0.000000 0.000000
C4) 0.000000 4.000000
C5) 0.000000 4.000000
C6) 0.000000 3.000000
C7) 1000.000000 0.000000
C8) 1000.000000 0.000000
C9) 0.000000 17.000000
NO. ITERATIONS= 0
表1
5.2灵敏度分析
5.2.1 RANGES IN WHICH THE BASIS IS UNCHANGED: 当目标函数的变量系数在什么变化范围内时,最优基不变。
CURRENT COEF:初始目标函数的系数。
ALLOWABLE INCREASE:允许变量系数增加的范围。
ALLOWABLE DECREASE:允许变量系数减少的范围。
当目标函数的系数C在 [初始目标函数的系数-允许变量系数减少的范围,初始目函数的系数+允许变量系数增加的范围] 内变化时,最优基不变,最优解也不变,由于目标函数的系数发生改变了,所以最优值有可能改变。
RANGES IN WHICH THE BASIS IS UNCHANGED:
OBJ COEFFICIENT RANGES
VARIABLE CURRENT ALLOWABLE ALLOWABLE
COEF INCREASE DECREASE
X1 -10.000000 INFINITY 2.000000
X2 -9.000000 0.000000 2.000000
X3 -11.000000 2.000000 INFINITY
X4 -15.000000 2.000000 INFINITY
X5 12.000000 INFINITY 2.000000
X6 9.000000 0.000000 INFINITY
X7 13.000000 2.000000 4.000000
X8 17.000000 INFINITY 4.000000
表2
5.2.2 RIGHTHAND SIDE RANGES:约束条件右端项在什么范围内变化时,最优基不变:
CURRENT RHS:初始约束条件右端项的值;
ALLOWABLE INCREASE:允许b值增加的范围
ALLOWABLE DECREASE:允许b值减少的范围
当约束条件右端项的值在 [初始约束条件右端项的值-允许b值减少的范围,初始约束条件右端项的值+允许b值增加的范围] 内变化时最优基不变,最优解不变,最优值也可能不变。
RIGHTHAND SIDE RANGES
ROW CURRENT ALLOWABLE ALLOWABLE
RHS INCREASE DECREASE
C2 500.000000 INFINITY 500.000000
C3 500.000000 INFINITY 0.000000
C4 500.000000 0.000000 0.000000
C5 500.000000 0.000000 1000.000000
C6 500.000000 INFINITY 1000.000000
C7 500.000000 INFINITY 1000.000000
C8 500.000000 INFINITY 1000.000000
C9 500.000000 INFINITY 1000.000000
表3
5.3规定题目的分析过程及结果
5.3.1 1月份的进货价在什么范围内变化时最优购销策略不变?
该问题是求解x1的系数在什么范围内变化时最优购销策略不变,由灵敏度分析表可得当-2≤△C1≤0时,最优购销策略不变。
5.3.2 2月份的销售价在什么范围内变化时最优购销策略不变?
该问题是求解x6的系数在什么范围内变化时最优购销策略不变,由灵敏度分析表可得当△C6≤9时,最优购销策略不变。
5.3.3 商店开业时有存货量为800单位时的最优购销策略?
由LINDO求解可得,当存货量为800单位时的最优值maxz=18000
m-500的值不变,即库房容量的最优基不变。
5.4.4 库房容量在何范围内变化时最优基不变 ?
由于库房容量是b的变化范围,由灵敏度分析表(图3)可得,
0≤△b≤1000
6.创新内容
6.1 当3月份的进货价变为15时,方案是否重新调整?
由表2可知
当3月份的进货价[9,+∞]范围内变化时,最优解不变,所以,当加工费用变为15时,最优解需要重新调整。
6.2 求4月份销售价在什么范围内变化时,方案不需要改变?
由表2可知
工件3的数量在[0,21]范围内变化时,最优解不变。
6.3当1月份进货价每增加1单位时,最优获利如何变化?
由表1可知
当进价增加一个单位时,目标函数值增加2个单位,最优值增加2个单位。
7.课程设计总结
为期两周的课程设计就要结束了,在本阶段的实践中,让我学到了很多东西,也让我把课堂上很多运筹的知识重新温习一遍。通过这次课程设计,我学会如何把课堂上的运筹知识,应用于实践中,而且能够对本学期的运筹知识有个深入的,系统的认识。同时,我也了解了数学建模的一些思维过程,操作过程,实践过程。如何具体运用lingdo,lingo等软件,这对我来说也是一种突破。
运筹学在实际生活中的应用主要解决两类问题:一类是如何利用确定的资源去完成最大的任务,另一类是如何利用最少的资源来完成一个确定的任务。目的为了使成本资金达到最小,节约成本,增加经济效益。从表面现象难以做出准确的决策。这就需要用运筹学中的有关知识,通过对一个问题条件分析,建立模型,求解问题,提高对解进行分析与评价的综合运用能力。并利用lindo计算软件求解问题的操作掌握计算软件的基本操作方法,了解计算机在运筹学中的运用,提高自身分析问题、解决问题的能力。到最后求解出最优的研究路线,来得出问题的最优方案
最初的时候,看到题目,的确不知道从何下手。在建模过程中,约束条件考虑的不周全;在第三题的分析过程中,约束条件的右端项分析的不到位;上机操作过程中输入错误导致结果无法运行等等。在此过程中我们需要输入代码,进行操作,调试程序,然后输入一串串系数,其实是挺麻烦的一个过程。但是在老师的指导下,同伴们的合作下慢慢的进入了状态。在程序最终成功运行的时候,也的确很满足。期间我们上网查找类似案例,参考同学的模板,建模,题设就也就按部就班的确定下来,课程设计第一步就算完成。接着我们完成剩下的几项任务,编写程序,和同伴共同把几个题的题目确定下来,题目的设计思路,设计过程也就确定了。在这个过程中,虽然麻烦点,但是从中也把灵敏度分析这部分知识好好温习一下,建模的大致内容也有了了解。
虽然这个过程中,很多过程我都不明白,我也因此而灰心沮丧过,但是在大家的努力之下,我们把题目逐步攻破,我们也的确乐在其中,在最后完成题目的时候,真的感觉很有收获。这次的运筹课设不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。相信对于以后的工作,生活实践也有重要的帮助。
第二篇:运筹学课程设计报告(附代码)
《运筹学》课程设计报告
姓名:
班级:
学号:
一、问题描述
1、机型指派问题
机型指派优化设计是航空公司制定航班计划的重要内容,它要求在满足航班频率和时刻安排以及各机型飞机总数约束的条件下,将各机型飞机指派给相应的航班,使运行成本最小化。本课程设计要求建立机型指派问题的数学模型,应用优化软件Lindo/Lingo进行建模求解,给出决策建议,包括各机型执行的航班子集和相应的运行成本。
2、问题描述
已知某航空公司航班频率和时刻安排如《运筹学课程设计指导书》中表1所示,航班需求数据和运输距离如表2所示,其中,OrignA/P表示起飞机场,Dep.T.表示起飞时间,Dest.A/P表示目标机场,Dist表示轮挡距离,Demand表示航班需求量,Std Dev.表示需求的标准差。该航空公司的机队有两种机型:9架B737-800,座位数162;6架B757-200,座位数200。飞八个机场:A,B,I,J,L,M,O,S。
B737-800的CASM(座英里成本)是0.34元,B757-200是0.36元。 两种机型的 RASM(座英里收益)都是 1.2元。以成本最小为目标进行机型指派,在成本方面不仅考虑运行成本,还必须考虑旅客溢出成本,否则将偏向于选取小飞机,使航空公司损失许多旅客。
旅客溢出成本是指旅客需求大于航班可提供座位数时,旅客流失到其他航空公司造成的损失。旅客需求服从N(μ,σ)的正态分布。如果机票推销工作做得好,溢出旅客并不全部损失,有部分溢出旅客将该成本航空公司其他航班,这种现象叫做“再获得”(Recapture)。设有15%的溢出旅客被再获得。
将飞机指派到航班上去,并使飞机总成本最小。
二、分析建模
1.确定决策变量
经过对问题描述的分析得出,要解决飞机机型指派问题,我设定了两类变量:
(1)针对各条航线的机型,令B737-800和B757-200分别为机型1和机型2,设变量Xi,j.其中101≤i≤142,j=1或2。且对于变量Xi,j=0或1,当Xi,j=1,表示第i条航线由第j种飞机运营。例如,X101,1=1,则第101号航班由第1种机型飞行,且X101,2=0
(2)针对机场时间节点飞机流的变量,设变量Gm,j.表示对于第m个节点上第j种机型的数量,例如,GA1,1表示A机场第1个节点上第1种机型的数量。
2.目标函数
以飞机总成本最小为指派目标,而单个航班的飞机总成本包括两个部分:1.运输成本;2. 旅
客溢出成本;其中运输成本的表达式为:B737-800的架数*162*0.34*该航班的轮挡距离+ B757-200的架数*200*0.36*该航班的轮挡距离;旅客溢出成本的表达式为:航班旅客溢出的期望值*1.2*该航班的轮挡距离*0.85。详细计算公式如下:
(1)营运成本
B737-800 :C1= 101≤i≤142
B757-200 :C2= 101≤i≤142
CASM表示飞机座英里成本,S表示飞机座位数,Dist(i)表示第i条航线的轮挡距离
(2)旅客溢出成本
B737-800 :C1’=旅客溢出数期望值*机票价格
= 101≤i≤142
B757-200 : C2’=旅客溢出数期望值*机票价格
= 101≤i≤142
RASM表示飞机座英里收益
其中,对于两种机型的旅客溢出期望值
E(d)=
=e-(x2/2)dx
μ表示航班需求量的期望,σ表示需求的标准差, c表示飞机的座位数
(3)建立目标函数
Min C=C1+C2+C1’+C2’
2.时空网络建模及其约束条件
(1)节点飞机平衡条件
对于每种机型,在时空网络中各节点的飞机流必须保持平衡。如某机型有一定数量航班到达,一定数量航班出发,因此该节点后该机型留下飞机数=原有飞机数+到达飞机数-离开飞机数。下面会对各个机场的具体节点飞机流量状况进行解释说明。(已设定B737-800为机型1, B757-200为机型2)
如分析A机场的各机型飞机流量状况。根据节点平衡条件,节点A1的约束条件:GA1,1=GA6,1-X110,1 (或者为GA1,2=GA6,2-X110,2)。其中GA1,1代表该机场节点现存飞机数目,其中A代表机场,A1,1中前一个1代表机场A的第一个节点,第二个1代表机型1。
X110,1中代表飞入或飞出飞机架数,只能为0或1,110代表航班代号,1代表第一种机型。以下约束条件具有相似的意义,将不作详细阐述。并且只详尽列出节点A的约束条件,其他节点的情况可以同理写出。
对于机型1而言有如下约束条件
节点A2的约束条件:GA2,1=GA1,1+x131,1
节点A3的约束条件:GA3,1=GA2,1-x111,1
节点A4的约束条件:GA4,1=GA3,1+x132,1
节点A5的约束条件:GA5,1=GA4,1-x112,1
节点A6的约束条件:GA6,1=GA5,1+x133,1
对于机型2而言有如下约束条件
节点A2的约束条件:GA2,2=GA1,2+x131,2)
节点A3的约束条件:GA3,2=GA2,2+x111,2)
节点A4的约束条件:GA4,2=GA3,2+x132,2)
节点A5的约束条件:GA5,2=GA4,2+x112,2)
节点A6的约束条件:GA6,2=GA5,2+x133,2)
(2)飞机总数约束
每基地机场各机型过夜飞机数之和不超过该型飞机的总数
对于机型1,有如下的总数约束:
GA6,1+GB6,1+GI6,1+GJ40,1+GL6,1+GM6,1+GO6,1+GS6,1≤9
对于机型2,有如下的总数约束:
GA6,2+GB6,2+GI6,2+GJ40,2+GL6,2+GM6,2+GO6,2+GS6,2≤6
(3)对每条航线飞机数的限制
∑Xi,k=1 i代表航线,如101;k代表机型,只能是1和2。
具体表达如:X101,1+X101,2=1,并且X101,1和X101,2只能一个取0,一个取1
三.模型求解
Model:
sets:
flight/@OLE('data.xls','Flight_No')/:Dist,Demand,std_dev,Orign_AP,Dist_AP;
Airport/1..8/; !个机场;
airline/1..42/; !共42条航线;
Timenode/1..6/; !对于除基地J机场外的7个机场,每个均有6个节点;
Planetype/1,2/:seat,casm; !两种机型,座位数和座英里成本;
flight_assign(flight,Planetype):x; !由航线和机型组成的指派二维变量;
Airparking(Airport,airline,Planetype):G; !由机场,节点和机型组成的三维变量;
link/1..84/:flightno,flag; !以对各机场的时间线节点为序的集;
endsets
data:
Dist,Demand,std_dev,Orign_AP,Dist_AP=@OLE('D:\data1.xls'); !轮挡距离、航班需求量、需求标准差、起飞机场以及降落机场可从excel表格中直接读去数据;
flightno,flag=@ole('D:\data2.xls');
seat=162,200;
casm=0.34,0.36;
rasm=1.2;
Recapture=0.15;
enddata
!objective 目标函数;
min=@sum(flight_assign(i,j):x(i,j)*casm(j)*seat(j)*Dist(i)+x(i,j)*rasm*Dist(i)*std_dev(i)*(1-Recapture)*@psl(((seat(j)-Demand(i))/std_dev(i))));
!目标为成本最小,运输成本和旅客溢出成本;
!constraint 约束条件;
@for(flight_assign:@bin(x)); !对每条航线的机型,指派后只能为0或1;
@for(flight(i):@sum(Planetype(j):x(i,j))=1); !对每条航线,两种机型只能任选其一,故和为1;
!各机场的节点飞机流平衡条件如下:
对于第一机场(即A机场);
G(1,1,1)=G(1,6,1)-x(10,1);
G(1,1,2)=G(1,6,2)-x(10,2); !对两种机型过夜节点与第一个节点联系;
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(1,j,k)=G(1,j-1,k)+x(flightno(j)-100,k)*flag(j))); !按时间线上的节点顺序,建立平衡条件;
!对于第二机场(即B机场);
G(2,1,1)=G(2,6,1)-x(16,1);
G(2,1,2)=G(2,6,2)-x(16,2);
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(2,j,k)=G(2,j-1,k)+x(flightno(j+6)-100,k)*flag(j+6)));
!对于第三机场(即I机场);
G(3,1,1)=G(3,6,1)+x(40,1);
G(3,1,2)=G(3,6,2)+x(40,2);
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(3,j,k)=G(3,j-1,k)+x(flightno(j+12)-100,k)*flag(j+12)));
!对于第四机场(即J机场);
G(4,1,1)=G(4,42,1)-x(40,1);
G(4,1,2)=G(4,42,2)-x(40,2);
@for(planetype(k):@for(airline(j)|j#ge#2:G(4,j,k)=G(4,j-1,k)+x(flightno(j+18)-100,k)*flag(j+18)));
!对于第五机场(即L机场);
G(5,1,1)=G(5,6,1)-x(1,1);
G(5,1,2)=G(5,6,2)-x(1,2);
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(5,j,k)=G(5,j-1,k)+x(flightno(j+60)-100,k)*flag(j+60)));
!对于第六机场(即M机场);
G(6,1,1)=G(6,6,1)-x(13,1);
G(6,1,2)=G(6,6,2)-x(13,2);
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(6,j,k)=G(6,j-1,k)+x(flightno(j+66)-100,k)*flag(j+66)));
!对于第七机场(即O机场);
G(7,1,1)=G(7,6,1)-x(7,1);
G(7,1,2)=G(7,6,2)-x(7,2);
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(7,j,k)=G(7,j-1,k)+x(flightno(j+72)-100,k)*flag(j+72)));
!对于第八机场(即S机场);
G(8,1,1)=G(8,6,1)-x(4,1);
G(8,1,2)=G(8,6,2)-x(4,2);
@for(planetype(k):@for(Timenode(j)|j#ge#2:G(8,j,k)=G(8,j-1,k)+x(flightno(j+78)-100,k)*flag(j+78)));
!每种机型的飞机总数构成的过夜飞机约束条件如下:
第一种机型;
G(1,6,1)+G(2,6,1)+G(3,6,1)+G(4,42,1)+G(5,6,1)+G(6,6,1)+G(7,6,1)+G(8,6,1)<=9;
!第二种机型;
G(1,6,2)+G(2,6,2)+G(3,6,2)+G(4,42,2)+G(5,6,2)+G(6,6,2)+G(7,6,2)+G(8,6,2)<=6;
end
四.结果分析
1.对各条航线的机型指派结果:
Variable Value Variable Value
X( 101, 1) 1.000000 X( 101, 2) 0.000000
X( 102, 1) 1.000000 X( 102, 2) 0.000000 X( 103, 1) 1.000000 X( 103, 2) 0.000000
X( 104, 1) 1.000000 X( 104, 2) 0.000000
X( 105, 1) 1.000000 X( 105, 2) 0.000000
X( 106, 1) 1.000000 X( 106, 2) 0.000000
X( 107, 1) 1.000000 X( 107, 2) 0.000000
X( 108, 1) 1.000000 X( 108, 2) 0.000000
X( 109, 1) 1.000000 X( 109, 2) 0.000000
X( 110, 1) 0.000000 X( 110, 2) 1.000000
X( 111, 1) 0.000000 X( 111, 2) 1.000000
X( 112, 1) 1.000000 X( 112, 2) 0.000000
X( 113, 1) 0.000000 X( 113, 2) 1.000000
X( 114, 1) 0.000000 X( 114, 2) 1.000000
X( 115, 1) 1.000000 X( 115, 2) 0.000000
X( 116, 1) 1.000000 X( 116, 2) 0.000000
X( 117, 1) 0.000000 X( 117, 2) 1.000000
X( 118, 1) 1.000000 X( 118, 2) 0.000000
X( 119, 1) 1.000000 X( 119, 2) 0.000000
X( 120, 1) 1.000000 X( 120, 2) 0.000000
X( 121, 1) 1.000000 X( 121, 2) 0.000000
X( 122, 1) 1.000000 X( 122, 2) 0.000000
X( 123, 1) 1.000000 X( 123, 2) 0.000000
X( 124, 1) 1.000000 X( 124, 2) 0.000000
X( 125, 1) 1.000000 X( 125, 2) 0.000000
X( 126, 1) 1.000000 X( 126, 2) 0.000000
X( 127, 1) 1.000000 X( 127, 2) 0.000000
X( 128, 1) 1.000000 X( 128, 2) 0.000000
X( 129, 1) 1.000000 X( 129, 2) 0.000000
X( 130, 1) 1.000000 X( 130, 2) 0.000000
X( 131, 1) 0.000000 X( 131, 2) 1.000000
X( 132, 1) 1.000000 X( 132, 2) 0.000000
X( 133, 1) 0.000000 X( 133, 2) 1.000000
X( 134, 1) 1.000000 X( 134, 2) 0.000000
X( 135, 1) 0.000000 X( 135, 2) 1.000000
X( 136, 1) 0.000000 X( 136, 2) 1.000000
X( 137, 1) 0.000000 X( 137, 2) 1.000000
X( 138, 1) 1.000000 X( 138, 2) 0.000000
X( 139, 1) 1.000000 X( 139, 2) 0.000000
X( 140, 1) 1.000000 X( 140, 2) 0.000000
X( 141, 1) 1.000000 X( 141, 2) 0.000000
X( 142, 1) 1.000000 X( 142, 2) 0.000000
2.对约束条件的检验;
(1) 对飞机总数的约束:
对于机型1: G( 1, 6, 1) 0.000000 0.000000
G( 2, 6, 1) 1.000000 0.000000
G( 3, 6, 1) 0.000000 0.000000
G( 4, 42, 1) 3.000000 0.000000
G( 5, 6, 1) 2.000000 0.000000
G( 6, 6, 1) 0.000000 0.000000
G( 7, 6, 1) 1.000000 0.000000
G( 8, 6, 1) 2.000000 0.000000
飞机总数为:1+3+2+1+2=9,满足条件
对于机型2: G( 1, 6, 2) 1.000000 0.000000
G( 2, 6, 2) 0.000000 0.000000
G( 3, 6, 2) 0.000000 0.000000
G( 4, 42, 2) 2.000000 0.000000
G( 5, 6, 2) 0.000000 0.000000
G( 6, 6, 2) 2.000000 0.000000
G( 7, 6, 2) 0.000000 0.000000
G( 8, 6, 2) 0.000000 0.000000
飞机总数为:1+2+2=5,小于6 满足约束条件
(2) 对飞机流平衡分析
仅取机场A,第一种机型为例:
G( 1, 1, 1) 0.000000 X( 110, 1) 0.000000
G( 1, 2, 1) 0.000000 X( 131, 1) 0.000000
G( 1, 3, 1) 0.000000 X( 111, 1) 0.000000
G( 1, 4, 1) 1.000000 X( 132, 1) 1.000000
G( 1, 5, 1) 0.000000 X( 112, 1) 1.000000
G( 1, 6, 1) 0.000000 X( 133, 1) 0.000000
G(1,1,1)=G(1,6,1)-x(10,1); 0=0-0
G(1,2,1)=G(1,1,1)+x(31,1) 0=0+0
G(1,3,1)=G(1,2,1)-x(11,1) 0=0-0
G(1,4,1)=G(1,3,1)+x(32,1) 1=0+1
G(1,5,1)=G(1,4,1)-x(12,1) 0=1-1
G(1,6,1)=G(1,5,1)+x(33,1) 0=1-1
五.结论
1.飞机机型指派结果
用B737-800机型执行的航线为:
101,102,103,104,105,106,107,108,109,112,115,116,118,119,120,121,122,123,124,
125,126,127,128,129,130,132,134,138,139,140,141,142
用B757-200机型执行的航线为:
110,111,113,114,117,131,133,135,136,137
2.最小成本为: 3352823元
参考文献:
[1] 《运筹学》课程设计——指导书:南京航空航天东西,2010。