1、数学建模自来水运输与货物装运数学建模课堂作业第一题:自来水运输问题【问题分析】分配供水量是安排从三个水库向四个区送水的方案,目标是获利最多。而从题目给出的数据看,A,B,C三个水库的供水量160千吨,不超过四个区的基本生活用水量与额外用水量之和300千吨,因而总能全部卖出并获利,于是自来水公司每天的总收入是900*(50+60+50)=144000元,与送水方案无关。所以,要使利润最大,只需要使引水管理费最小即可。另外,送水方案自然要受三个水库的供应量和四个区的需求量的限制。【模型建立】很明显,决策变量为A,B,C三个水库(i=1,2,3),分别向甲、乙、丙、丁四个区(j=1,2,3,4),的
2、供水量。设水库i向j区的日供水量为Xij。由于C水库与丁区之间没有输水管道,即Xij=0,设水库i向j区的引水管理费为Cij因此只有11个决策变量。由上分析,问题的目标可以从获利最多转化为引水管理费最少。于是有:Min ;约束条件有两类:一类是水库的供水量限制,另一类是各区的需求量限制。由于供水量总能卖出并获利,水库的供应量限制可以表示为;考虑到各区的基本生活用水量与额外用水量,需求量限制可以表示为:;【模型求解】利用LINGO软件求解,程序为:model:!3供应点4居民区运输问题;sets: waters/w1.w3/: capacity; vendors/v1.v4/: demand1,
3、demand2; links(waters,vendors): cost, volume;endsets!目标函数; min=sum(links: cost*volume);!需求约束; for(vendors(J): sum(waters(I): volume(I,J)=demand1(J); for(vendors(J): sum(waters(I): volume(I,J)=demand2(J); !供应约束; for(waters(I): sum(vendors(J): volume(I,J) =capacity(I); !这里是数据;data: capacity=50 60 50;
4、demand1=30 70 10 10; demand2=80 140 30 50; cost=160 130 220 170 140 130 190 150 190 200 230 10000;enddataend得到结果为:Global optimal solution found. Objective value: Total solver iterations: 13 Variable Value Reduced Cost CAPACITY( W1) CAPACITY( W2) CAPACITY( W3) DEMAND1( V1) DEMAND1( V2) DEMAND1( V3) D
5、EMAND1( V4) DEMAND2( V1) DEMAND2( V2) DEMAND2( V3) DEMAND2( V4) COST( W1, V1) COST( W1, V2) COST( W1, V3) COST( W1, V4) COST( W2, V1) COST( W2, V2) COST( W2, V3) COST( W2, V4) COST( W3, V1) COST( W3, V2) COST( W3, V3) COST( W3, V4) VOLUME( W1, V1) VOLUME( W1, V2) VOLUME( W1, V3) VOLUME( W1, V4) VOLU
6、ME( W2, V1) VOLUME( W2, V2) VOLUME( W2, V3) VOLUME( W2, V4) VOLUME( W3, V1) VOLUME( W3, V2) VOLUME( W3, V3) VOLUME( W3, V4) Row Slack or Surplus Dual Price 1 2 3 4 5 6 7 8 9 10 11 12 送水方案是:A水库向一区供水50千吨,B水库向乙、丁区分别供水50,10千吨,C水库向甲、丙分别供水40,10千吨。引水管理费为24400元,利润为24400=47600元。讨论:如果A,B,C三个水库每天的最大供水量都提高一倍,则公
7、司总供水能力为320千吨,大于总需求量300千吨,水库供水量不能全部卖出,因而不能像前面那样,将获利最多转为引水管理费最少。此时我们首先需要计算A,B,C三个水库分别向甲、乙、丙、丁四个区供应每千吨水的净利润,即从收入900元中减去其他管理费450元,再减去引水管理费,得到表二。净利润(元/千吨)甲乙丙丁A290320230280B310320260300C2602502200/于是决策目标是:Max ,其中Cij表示第i个水库向第j个区供水的净利润.由于水库供水量不能全部卖出,所以上面约束应改为:;将上式构成的线性规划模型输入LINGO求解得到:model:!3供应点4居民区运输问题;set
8、s: waters/w1.w3/: capacity; vendors/v1.v4/: demand; links(waters,vendors): cost, volume;endsets!目标函数; max=sum(links: cost*volume);!需求约束; for(vendors(J): sum(waters(I): volume(I,J)=demand(J);!供应约束; for(waters(I): sum(vendors(J): volume(I,J)=capacity(I); !这里是数据;data: capacity=100 120 100; demand=80 14
9、0 30 50; cost=290 320 230 280 310 320 260 300 260 250 220 0;enddataend得到结果为:Global optimal solution found. Objective value: Total solver iterations: 6 Variable Value Reduced Cost CAPACITY( W1) CAPACITY( W2) CAPACITY( W3) DEMAND( V1) DEMAND( V2) DEMAND( V3) DEMAND( V4) COST( W1, V1) COST( W1, V2) COS
10、T( W1, V3) COST( W1, V4) COST( W2, V1) COST( W2, V2) COST( W2, V3) COST( W2, V4) COST( W3, V1) COST( W3, V2) COST( W3, V3) COST( W3, V4) VOLUME( W1, V1) VOLUME( W1, V2) VOLUME( W1, V3) VOLUME( W1, V4) VOLUME( W2, V1) VOLUME( W2, V2) VOLUME( W2, V3) VOLUME( W2, V4) VOLUME( W3, V1) VOLUME( W3, V2) VOL
11、UME( W3, V3) VOLUME( W3, V4) Row Slack or Surplus Dual Price 1 2 3 4 5 6 7 8 送水方案为:A水库向乙区供水100千吨,B水库向甲、乙、丁区分别供水30,40,50千吨,C水库向甲、丙、区分别供水50,30千吨。总利润为88700元。评注:本题考虑的是将某种物资从若干供应点运往一些需求点,在供需量约束条件下使总费用最小,或总利润最大,这类问题一般称为运输问题,是线性规划应用最广泛的领域之一。在标准的运输问题中,供需量通常是平衡的,即供应点的总供应量等于需求点的总需求量。本题中供需量不平衡,但这并不会引起本质的区别,一样可
12、以方便地建立线性规划模型求解。第二题 货机装运【问题分析】本题中,目标是使得在本次飞行中获利最大。货仓的重量限制、体积限制表中已给出。同时也已知了各货物的种类、重量、所占空间以及所获利润,由此可以表示出决策变量、目标函数以及约束条件,通过LINGO软件即可求出结果。【模型假设】问题中没有对货物装运提出其它要求,我们可做如下假设:1) 每种货物可以分割到任意小;2) 每种货物可以在一个或多个货舱中任意分布;3) 多种货物可以混装,并保证不留空隙。【模型建立】决策变量:用Xij表示第i种货物装入第j个货舱 重量(吨),货舱j=1,2,3分别表示前仓、中仓、后仓.Ci 表示第i种货物所得的利润(元/
13、吨),Di表示第i种货物所占的空间。决策目标是最大利润,即Max ;约束条件包括以下四个方面:1) 供装载的四种货物的总重量的约束,即;2)三个货舱的重量限制,即 ; ;;3)三个货舱的空间限制,即 ; ; ;4)三个货舱装入重量的平衡约束,即【模型求解】将以上模型输入LINGO中求解,程序为:model:sets:huowu/w1.w4/:product1,product2,profit;huocang/c1.c3/:limit1,limit2;links(huowu,huocang):c,x;endsetsdata:product1=18 15 23 12;product2=480 650
14、 580 390;profit=3100 3800 3500 2850;limit1=6800 8700 5300;limit2=10 16 8;enddata max=sum(links(i,j):profit(i)*x(i,j);for(huowu(i): sum(huocang(j):c(i,j)=1);for(huocang(j): sum(huowu(i):c(i,j)=4);for(huocang(j): sum(huowu(i):x(i,j)limit2(j);for(huocang(j): sum(huowu(i):product2(i)*x(i,j)=limit1(j);fo
15、r(huowu(i): sum(huocang(j):x(i,j)=product1(i);for(huocang(j)|j#lt#3: sum(huowu(i):x(i,j)/limit2(j)=sum(huowu(i):x(i,j+1)/limit2(j+1);运行结果为: Global optimal solution found. Objective value: Total solver iterations: 10 Variable Value Reduced Cost PRODUCT1( W1) PRODUCT1( W2) PRODUCT1( W3) PRODUCT1( W4)
16、PRODUCT2( W1) PRODUCT2( W2) PRODUCT2( W3) PRODUCT2( W4) PROFIT( W1) PROFIT( W2) PROFIT( W3) PROFIT( W4) LIMIT1( C1) LIMIT1( C2) LIMIT1( C3) LIMIT2( C1) LIMIT2( C2) LIMIT2( C3) C( W1, C1) C( W1, C2) C( W1, C3) C( W2, C1) C( W2, C2) C( W2, C3) C( W3, C1) C( W3, C2) C( W3, C3) C( W4, C1) C( W4, C2) C(
17、W4, C3) X( W1, C1) X( W1, C2) X( W1, C3) X( W2, C1) X( W2, C2) X( W2, C3) X( W3, C1) X( W3, C2) X( W3, C3) X( W4, C1) X( W4, C2) X( W4, C3) Row Slack or Surplus Dual Price 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 实际上不妨将所得到的最优解做四舍五入,结果为货物2装入前仓10吨,装入后仓5吨,货物3装入中仓13吨,装入后仓3吨,货物4装入中仓3吨。最大利润约1215
18、16元。若限制条件,每种货物只能放在一个货仓,该如何求解问题。【模型建立】决策变量:用Xij表示第i种货物装入第j个货舱 重量(吨),货舱j=1,2,3分别表示前仓、中仓、后仓.Ci 表示第i种货物所得的利润(元/吨),Di表示第i种货物所占的空间。决策目标是最大利润,即Max ;约束条件包括以下四个方面:2) 供装载的四种货物的总重量的约束,即;2)三个货舱的重量限制,即 ; ;;3)三个货舱的空间限制,即 ; ; ;4)三个货舱装入重量的平衡约束,即5)为了表示每种货物只能放在一个货仓,故引入0-1变量,=1表示第i种货物装入第j个货舱。=0则表示第i种货物未装入第j个货舱,则有:=0,1
19、【模型求解】将以上模型输入LINGO中求解,程序为:model:sets:huowu/w1.w4/:product1,product2,profit;huocang/c1.c3/:limit1,limit2;links(huowu,huocang):c,x;endsetsdata:product1=18 15 23 12;product2=480 650 580 390;profit=3100 3800 3500 2850;limit1=6800 8700 5300;limit2=10 16 8;enddata max=sum(links(i,j):profit(i)*x(i,j);for(l
20、inks:bin(c);for(huowu(i): sum(huocang(j):c(i,j)=1);for(huocang(j): sum(huowu(i):c(i,j)=4);for(huocang(j): sum(huowu(i):x(i,j)limit2(j);for(huocang(j): sum(huowu(i):product2(i)*x(i,j)=limit1(j);for(huowu(i): sum(huocang(j):x(i,j)=product1(i);for(links:x=c*x);for(huocang(j)|j#lt#3: sum(huowu(i):x(i,j)
21、/limit2(j)=sum(huowu(i):x(i,j+1)/limit2(j+1);end运行结果为:Local optimal solution found. Objective value: Extended solver steps: 0 Total solver iterations: 48 Variable Value Reduced Cost PRODUCT1( W1) PRODUCT1( W2) PRODUCT1( W3) PRODUCT1( W4) PRODUCT2( W1) PRODUCT2( W2) PRODUCT2( W3) PRODUCT2( W4) PROFIT
22、( W1) PROFIT( W2) PROFIT( W3) PROFIT( W4) LIMIT1( C1) LIMIT1( C2) LIMIT1( C3) LIMIT2( C1) LIMIT2( C2) LIMIT2( C3) C( W1, C1) C( W1, C2) C( W1, C3) C( W2, C1) C( W2, C2) C( W2, C3) C( W3, C1) C( W3, C2) C( W3, C3) C( W4, C1) C( W4, C2) C( W4, C3) X( W1, C1) X( W1, C2) X( W1, C3) X( W2, C1) X( W2, C2) X( W2, C3) X( W3, C1) X( W3, C2) X( W3, C3) X( W4, C1) X( W4, C2) X( W4, C3) Row Slack or Surplus Dual Price 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 结果分析:结果表示应放入货物一应放入中仓10吨,货物二应放入中仓6吨,货物三应放入后仓8吨,货物四应放入前仓10吨。由此可得最大利润为元。小组成员:李肖 098罗欢欢 125郭建志 049
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1