【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《钢管运输》,欢迎阅读!
肖幼霞 谢子绵 林少珍
钢管订购与运输的优化问题
摘要
本文根据问题的条件和要求,建立两个模型,两个模型均为单目标非线性规划模型,并通过求解这两个模型,解决问题。对于问题一和问题三,可采用整数的线性规划模型求解,对于问题二是在问题一的基础上,进行灵敏度分析来进行求解的。
针对问题一,经过材料分析与大量数据统筹,由于铁路运输费用函数是分段函数,不能直接应用现有的最短路算法来求解铁路和公路交通网中任意两点间最小费用路问题,所以先建立一个铁路费用虚网,然后结合公路以及运输管道,运用WinQSB软件的Network Modeling算法和excel得到一个基于运输线路的最低费用网。依据题意知,总费用共分为三部分,运输费用、订购费用和铺路费用,以此建立目标函数。该模型是以总费用为目标函数的非线性最优化的规划模型,运用lingo软件编写程序,运行可得第一个问题的最优解费用为1281354万元。
对于问题二,是建立在对问题一求出最优解后的分析,通过对模型1的灵敏度分析,改变单独改变钢厂钢管的销价与上限,通过对比最后得到的最少费用可以找出对购运计划和总费用的影响最大的钢厂。
对于问题三,问题三模型的建立原理和问题一的相同,利用Lingo 软件,求得最优解为1407149万元。
关键词:非线性规划 Win QSB软件 Network Modeling算法 lingo软件
1
肖幼霞 谢子绵 林少珍
附录
第一部分 问题重述··········································(3)
第二部分 问题分析··········································(5)
第三部分 模型的假设········································(6)
第四部分 符号说明··········································(7)
第五部分 模型的建立与求解··································(7)
1.问题1的模型···············································(8)
2.问题2的模型···············································(11)
3.问题3的模型···············································(13)
第六部分 对模型的评价······································(18)
第七部分 参考文献··········································(18)
第八部分 附录··············································(18)
2
肖幼霞 谢子绵 林少珍
一、问题重述
要铺设一条A1A2A15的输送天然气的主管道, 如图一所示(见下页)。经筛
选后可以生产这种主管道钢管的钢厂有S1,S2,S7。图中粗线表示铁路,单细线表示公路,双细线表示要铺设的管道(假设沿管道或者原来有公路,或者建有施工公路),圆圈表示火车站,每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
为方便计,1km主管道钢管称为1单位钢管。
一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂Si在指定期限内能生产该钢管的最大数量为si个单位,钢管出厂销价1单位钢管为pi万元,如下表:
i si
1 800 160
2 800 155
3 1000 155
4 2000 160
5 2000 155
6 2000 150
7 3000 160
pi
1单位钢管的铁路运价如下表:
里程(km) 运价(万元)
里程(km) 运价(万元)
501~600 37
601~700 44
701~800 50
801~900 55
901~1000
60
≤300 20
301~350 23
351~400 26
401~450 29
451~500 32
1000km以上每增加1至100km运价增加5万元。
公路运输费用为1单位钢管每公里0.1万元(不足整公里部分按整公里计算)。
钢管可由铁路、公路运往铺设地点(不只是运到点A1,A2,,A15,而是管道全线)。 (1)请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。 (2)请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
(3)如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情形给出一种解决办法,并对图二按(1)的要求给出模型和结果。
3
肖幼霞 谢子绵 林少珍
290
S3
S2
690
1200
720
202
1100
20
195
306
115
600
10
5 194 A5 606
10
31
201 A8A7S1 12
42
70
10
170 520
88
462
S5 10 220
S4
320
160
70
30
70
62
S6
110 420
30
S7 20
690
160 20
A15 500 A14
A13 210 A12
480 680
A9
300 A11 A10
450
8A6
205
3 104 A1
2 750 A4
A2 A3 301
图一
290
S3
S2
690
1200
720 A16
202
170 520 88 S4
A18 160 130
160
70 A20 100
30
260 S6 70
(A21)
320
A19
62
11420
3
S7 20
690
20
A15
190 462
500
A14
A17 70
10
S5 10 220
1100
20 195
306
1150
600
10
5 194
A6
A5 606
10
S1
12 31
42
A13 210 A12
201 A8
205
A7
300 A10 A9
680
480 A11
450
80
2 750 A4
A2
A3 301
图二
3
104 A1
4
肖幼霞 谢子绵 林少珍
二、问题分析
115
1100
20 S2
690
1200
170
S3
S4
⒃ 290
⒀
160
320
160
⒄30
S7 20
690
⒂
70
30 S6
20
⑾
88
70
⒁
⑿
10
62
S5 10 220 462
⑧
202
720
110 420
A15 500 A14
520
⑨
S1 12
42
⑩
70
A13
210 A12
④
306
⑥ 195
⑦
5 194 A5 606
10
480 680
31
201 A8A7
A9
300 A11 A10
② 450
⑤
600
10
8
③ 2 750 A4
A3 301
A6
205
①
图一
3
104 A1
A2
如上图所示,给图中的的各个接点标上序号。
针对第一个问题,首先,假设所有钢管必须运到主管道铺设路线上的节点
A1A2A15,然后才根据各个路段的需要适当地向左(Lj)或向右(Rj)铺设。由于一个钢厂如果承担制造这种钢管,至少需要生产500个单位且钢厂Si在指定期限内能生产该钢管的最大数量为si个单位,钢管出厂销价1单位钢管为
pi万元,因此必须求出从每个钢管厂S1,S2,S7运输到每个节点
A1A2A15的每个单位钢管的最小运输费用,然后结合钢管出厂销价1
单位钢管为pi万元可以得到向各厂订购钢管的费用。
5
肖幼霞 谢子绵 林少珍
对最小费用的求解,得先建立一个铁路虚网,然后连同公路的数据。结合excel将路网转化为费用网。再利用Win QSB中Network modeling分别找出S1~S7运到点A1~A15的最低费用路线,得到一个纵列为A1~A15,横行为S1~S7的表格。这样就可以得到从某钢厂到铺设点运输单位钢管的最少运输费用。
由于每个节点之间铺设的钢管数目Bj是固定的,故而Aj向右铺设的钢管数与Aj+1向左铺设的钢管数之和必为Bj,再而,节点Aj向左右两边运输的的钢管数之和是各个钢管厂S1,S2,S7运输到该节点的钢管数之和。
每个铺设点分别向L,R(左右)两个方向展开,通过Lingo编程求出最小铺设费用,运输费用+购买费用+铺设费用=总费用。
问题二,通过分别更改问题一里面钢厂钢管的销价以及钢厂钢管的产量的上限,再运行Lingo编程可得出此时对应的总费用,通过各个数据分析,可以找出钢厂钢管的销价的变化和产量的上限的变化对购运计划和总费用的影响最大的钢管厂。
问题三,相对比问题一而言问题三增加了6个节点,然后利用同问题一一样的方法找到从每个钢管厂S1,S2,S7运输到每个节点A1A2A15的每个单位钢管的最小运输费用、订购费和铺设费,进而可求出最少运输费用。
三、模型假设
①钢管在运输的过程中不受外界因素的影响,且铁路上任意两点可以直达,不需 要中途转车,即铁路上两点运费按路线总长计算。 ②不考虑其它外界因素对费用的影响
③假设沿管道或者原来有公路,或者建有施工公路,管道上面的运输价格按公路运输费用计算。
④公路运输费用中,不足整公里部分按整公里计算。 ⑤钢管可由铁路、公路运往铺设地点,不只是运到点线。
⑥所需钢管均由Si(i1,...,7) 钢厂提供。
⑦钢管在铺设时,先将钢管运到结点处,再由结点处向左右两方相邻结点铺设; ⑧假设运送的钢管路途中没有损耗。
6
A1,A2,,A15
,而是管道全
肖幼霞 谢子绵 林少珍
⑨假设钢管只能整数运输,不能分割运输的;
四、符号说明
Si
: 钢厂
SiSi
的最大生产能力;
的出厂钢管单位价格(单位: 万元) ;
pi
: 钢厂
d: 公路上一单位钢管的每公里运费(d = 0. 1 万元) ;
cij
bj
: 1 单位钢管从钢厂Si运到Aj的最小费用(单位: 万元) ; : 从
Aj
到
Si
Aj1
之间的距离(单位: 千米) ;
Aj
xij
: 钢厂运到的钢管数;
Lj: 运到Rj:运到
Aj
Aj
地的钢管向左铺设的数目; 地的钢管向右铺设的数目;
t:0、1变量,表示钢厂是否提供钢管
W : 所求钢管订购、运输的总费用(单位: 万元)
五、模型的建立与求解
第一部分:准备工作 1、数据处理
问题一:运用WinQSB软件中的Network Modeling算法求解出一单位钢管从
Si
运输到
Aj
的最小运输费用。具体数据如下表所示:
Si
表1:单位钢管从运输到
Aj
的最小运输费用(单位:万元)
7
肖幼霞 谢子绵 林少珍
A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15
S1 170.7160.3140.298.638.020.53.121.264.292.096.0106.0121.2128.0142.0S2215.7205.3190.2171.6111.095.586.071.2114.2142.0146.0156.0171.2178.0192.0S3230.7220.3200.2181.6121.0105.596.086.248.282.086.096.0111.2118.0132.0S4260.7250.3235.2216.6156.0140.5131.0116.284.262.051.061.076.283.097.0S5255.7245.3225.2206.6146.0130.5121.0111.279.257.033.051.071.273.087.0S6265.7255.3235.2216.6156.0140.5131.0121.284.262.051.045.026.211.028.0S7275.7265.3245.2226.6166.0150.5141.0131.299.277.066.056.038.226.02.0
第二部分:问题1的非线性规划模型
对表1的数据进行分析,我们得到一个非线性规划模型:
目标函数是总费用W , 它包含三项: 订购钢管的费用P订,运输钢管的费用Q运,铺设钢管的费用R铺,即
其中: xij(i1~7)(j1~15) , 订购钢管的费用 P订
j215
p
i17
7
ij
xij ,
运输钢管的费用 Q运
j2
15
c
i1
ij
xij
铺设费R可以如下来确定:
Aj
开始从左右两个方向铺设,向左(或向右)开始
铺设时,每运输1单位钢管的长度时就铺下1钢管,运输2单位的钢管长度时就铺下2个钢管,如此循环直至钢管铺完位置,最后铺下共(或)根钢管,这形成一个等差数列,故可计算得在铺设
d
(1Lj)Lj
2
,d
(1Rj)Rj
2
与钢管的费用分别为:
所以可得
目标函数为:
minW
i17
j1
15
cijxij
i1
7
j1
15
pixijd((1Lj)Lj/2(1Rj)Rj)/2)
j1
15
8
肖幼霞 谢子绵 林少珍
约束条件为: (1) 运到
Aj
的钢管整数限制:
xijN
(2) 变量非负性限制:(i1,...,7,j1,...,15)
500tixijsiti
j115
(3) 生产能力的限制: (4)
Aj
,(i1,...,7) (ti
0或1)
与
Aj1
之间的钢管数等于向两边运输的钢管数: biRiLi1(i1~7)
7
(5) 运到模型1:
minW
i17
Aj
的钢管刚好用完:xijRiLi(j1~15)
i1
j1
15
cijxij
i1
7
j1
15
pixij(L2jLjR2jRj)/2
j1
15
s.t
xijN
(i1,...,7,j1,...,15) biRiLi1(i1~7)
x
i1
7
ij
RiLi(j1~15)
d=0.1
由模型1编写Lingo程序(程序一),程序运行后得最小总费用W=1281354万元。 主管道钢管从s1到s7向的运输计划如下表所示:
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10
9
S1 0 0 0 251 85 200 266 0 0 0 S2 0 179 321 0 0 0 0 300 0 0 S3 0 0 148 120 69 0 0 0 664 0 S4 0 0 0 0 0 0 0 0 0 0 S5 0 0 40 98 463 0 0 0 0 263 S6 0 0 0 0 0 0 0 0 0 89 S7 0 0 0 0 0 0 0 0 0 0 总数 0 179 509 469 616 201 265 300 664 352
肖幼霞 谢子绵 林少珍
A11 A12 A13 A14 A15 总数 0 0 0 0 0 802 0 0 0 0 0 800 0 0 0 0 0 1001 0 0 0 0 0 0 415 0 0 0 0 1279 0 86 333 786 0 1294 0 415 0 86 0 333 0 786 0 0 0
主管道钢管从s1到s7的订购计划如下图所示
数量
S1 800
S2 800
S3 1000
S4 0
S5 1278
S6 1293
S7 0
主管道钢管从的s1到s7向A1到A15运输路线如下图所示(参照图一)
⒃ 290
S3
S2
690
1200
170 S4
⒄30
S7 20
⒀
160
320
160
690
⒂
70
30 S6
20
⑾
88
70
⒁
⑿
10
62
S5 10 220 462
⑧
202
720
110 420
A15 500 A14
520
⑨
S1 12
42
⑩
70
1100
20
⑥ 195 ④
31 306
⑦ 115
10 ⑤ 5
②
600
10 194 205 450 A68 ③ A5 606 ② 2 750 A4
3
A3
301 104
A2 A1
A13
210 A12
480 680
A9
300 A11 A10
201 A8A7
图一
S1→A4 S1→⑦→⑥→⑤→A5→A4 250.36 S1→A5 S1→⑦→⑥→⑤→A5 84.14 S1→A6 S1→⑦→⑥→A6 200 S1→A7 S1→A7- 265.5
10
肖幼霞 谢子绵 林少珍
S2→A2 S2→⑧→④→②→①→A2 179 S2→A3 S2→⑧→④→②→③→A3 321 S2→A8 S2→⑧→A8 300 S3→A3 S3→⑨→⑧→④→②→③→A3 147.26 S3→A4 S3→⑨→⑧→S1→⑦→⑥→⑤→A5→A4 119.75 S3→A5 S3→⑨→⑧→S1→⑦→⑥→⑤→A5 68.99 S3→A9 S3→⑨→A9 664
S5→A3 S5→⑿→⑾→⑩→⑨→⑧→④→②→③→A3 39.74
S5→A4 S5→⑿→⑾→⑩→⑨→⑧→S1→⑦→⑥→⑤→A5→A4 97.9 S5→A5 S5→⑿→⑾→⑩→⑨→⑧→S1→⑦→⑥→⑤→A5 462.36 S5→A10 S5→⑿→⑾→⑩→A10 262.77 S5→A11 S5→⑿→A11 415 S6→A10 S6→⒃→⒂→⒀→⑾→⑽→A10 88.23 S6→A12 S6→⒃→⒂→⒀→⒁→A12 86 S6→A13 S6→⒃→⒂→A13 333 S6→A14 S6→A14 786 问题2的模型
对模型1的灵敏度进行分析
(1)确定哪个钢厂的销价的变化对购运计划和总费用的影响最大
对模型1所用程序进行灵敏度分析,并每次让其中一个钢厂钢管的销价增加5万元,而其他钢厂的销价不变,每个钢厂销价的变化都是相同的,可得总费用的变化情况如下表:
S1 S2 S3 S4 S5 S6 S7 总费用 160 155 155 160 155 150 160 1281354 165 1285354 160 1285354 160 1286354
11
肖幼霞 谢子绵 林少珍
165 1281354 160 1286242 155 1287317 165 1281354
通过比较原费用与改变钢厂售价之后的费用可得下表
总费用 增加量
S1 1285354 4000
S2 1285354 4000
S3 1286354 5000
S4 1281314
0
S5 1286242 4888
S6 1287317 5963
S7 1281354
0
由表格可以发现:相对7家钢厂而言,钢厂S6的钢管销价的微小变动对购运计划和总费用的影响是最大。
(2)确定哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大
对模型1所用程序进行灵敏度分析,让7个钢厂中任一个钢管产量的上限增加100单位,其他钢厂钢管产量不变,每个钢厂钢管产量每次的变化都是相同的。比较总费用的变化情况,变化情况如下表:
1 2 3 4 5 6 7 总费用
800 800 1000 2000 2000 2000 3000 1281354 900 1271054 900 1277854 1100 1278854 2100 1281354 2100 1281354 2100 1281354 3100 1281354
通过比较原费用与改变钢厂钢管产量上限之后的费用可得下表
总费用 减少量
S1 1271054 10300
S2 1277854 3500
S3 1278854 2500
S4 1281354
0
S5 1281354
0
S6 1281354
0
S7 1281354
0
由表格可知,钢厂S1的钢管产量上限的变动对购运计划和总费用影响最大。
12
肖幼霞 谢子绵 林少珍
问题3的模型(如下图所示) ⒄
3 290
S7
⒃ S4 ⒀ A18 160 S3 320 ⒂ 20 70 A20 160 20 690 S2 100
30
⑾ 260 690 S6 70
130 (A21) A15 1200 170
11500 A19 720 ⑧ 520 88 190 ⒁ 62 A14 420 A16 ⑩ A17 462 ⑨ 202 S5 10 ⑿ A13
70 S1 1100 210 10 42 220 A12
20
12
480 A11 195 300 ④ ⑥ 31 306A9 A10 ⑦ 680
1150 10 201 A8⑤ 5 ② 600
10 A7 194 205 450
A6 80 ③
A5 ③ 606 图二 2 750 A4
3 A3
301 104 A2 A1
观察图一与图二可以发现,图二相对于图一增加了6个站点S16、S17、S18、S19、S20、S21以及6条要铺设的管道(A9——A16、A11——A17、A19——A17、A17——A18、A19——A20、A20——A21)。
由于要铺设的管道不是一条直线,而是一个树形图,因此,有些站点增加了铺路方向(如A9、A11、A17都有3个铺路方向,而其中A1、A16只有向右铺路方向,A15、A18、A21只有向左的铺路方向),也即是说将运送到Ai站点的钢管总数量不能只是简单地分为两个方向运输铺路,为此,我们增加了一些支路变量,在目变函数中增加相应铺设的费用。(lingo程序见附录之程序二) 1、 数据处理
由于铁路网没有改变,所以问题一求解过程所得的铁路最少费用网路可以直接使用,然后再在问题一中的winQSB程序中添加路线所增加的站点以及各站点之间的公路运输费用形成一个新的铁路公路费用网路,运行可得下表: 单位钢管从
A1
13
Si
运输到
Aj
的最小运输费用(单位:万元)
S3
215.7
230.7
S4
S5 S6 S7
260.7 255.7 265.7
275.7
S1
170.7
S2
肖幼霞 谢子绵 林少珍
A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 A16 A17 A18 A19 A20 A21 160.3 140.2 98.6 38 20.5 3.1 21.2 64.2 92 96 106 121.2 128 142 60 95 100 105 115 125 205.3 190.2 171.6 111 95.5 86 71.2 114.2 142 146 156 171.2 178 192 110 145 150 155 165 175 220.3 200.2 181.6 121 105.5 96 86.2 48.2 82 86 96 111.2 118 132 44 85 90 95 105 115 250.3 235.2 216.6 156 140.5 131 116.2 84.2 62 51 61 76.2 83 97 80 50 55 60 70 80 245.3 225.2 206.6 146 130.5 121 111.2 79.2 57 33 51 71.2 73 87 75 32 45 50 65 75 255.3 235.2 200.6 140 122.5 105.1 121.2 84.2 62 51 37 16.2 11 25 80 50 37 36 10 0 265.3 245.2 226.6 166 148.5 131.1 131.2 99.2 77 66 56 38.2 26 2 95 65 55 55 32 26
第二部分:问题3的非线性规划模型
对上表的数据进行分析,可得:
目标函数是总费用W , 它包含三项: 订购钢管的费用P订,运输钢管的费用Q运,铺设钢管的费用R铺,即
其中: xij(i1~7)(j1~21) , 订购钢管的费用 P订
j215
p
i17
7
ij
xij ,
运输钢管的费用 Q运
j2
15
c
i1
ij
xij
Aj
铺设费R也是成等差数列:当Aj有2个运输方向时,
开始从左右两个方向
铺设,向左(或向右)开始铺设时,每运输1单位钢管的长度时就铺下1钢管,运输2单位的钢管长度时就铺下2个钢管,如此循环直至钢管铺完位置,最后铺下共(或)根钢管,这形成一个等差数列,故可计算得在铺设与钢管的费
14
肖幼霞 谢子绵 林少珍
用分别为: d
(1Lj)Lj
2
,d
(1Rj)Rj
2
,当Aj有3个方向时,可以增加变量Mj
d
(1Mj)Mj
2
表示向第三个方向运输的钢管数,则铺设费用增加
所以可得
目标函数为:
minW
i17
(j=9、11、17)
j1
15
cijxij
i1
7
j1
15
pixijd((1Lj)Lj/2(1Rj)Rj)/2)d
j1
15
j9\11\17
((1M
j
)Mj)/2
约束条件为: (6) 运到
Aj
的钢管整数限制:
xijN
(7) 变量非负性限制:(i1,...,7,j1,...,21)
500tixijsiti
j115
(8) 生产能力的限制: (9)
Aj
,(i1,...,7) (ti
0或1)
与
Aj1
之间的钢管数等于向两边运输的钢管数: biRiLi1(i1~7) 的钢管刚好用完:xijRiLi(j1~21且j不为9、11、17)
i17
7
(10) 运到
Aj
当j=9、11、17时,xijRiLiMi
i1
模型1:
minW
i17
j1
15
cijxij
i1
7
j1
15
pixij(L2jLjR2jRj)/2
j1
15
s.t
xijN
(i1,...,7,j1,...,21) biRiLi1(i1~7)
xijRiLi(j1~21且j不为9、11、17)
i17
15
肖幼霞 谢子绵 林少珍
当j=9、11、17时,xijRiLiMi
i1
7
d=0.1
由模型1编写Lingo程序(程序一),程序运行后得最小总费用W=1281354万元。
主管道钢管从s1到s7向的运输计划如下表所示:
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 总数
S1 0 0 0 251 85 200 266 0 0 0 0 0 0 0 0 802
S2 0 179 321 0 0 0 0 300 0 0 0 0 0 0 0 800
S3 0 0 148 120 69 0 0 0 664 0 0 0 0 0 0 1001
S4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
S5 0 0 40 98 463 0 0 0 0 263 415 0 0 0 0 1279
S6 0 0 0 0 0 0 0 0 0 89 0 86 333 786 0 1294
S7 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0
总数 0 179 509 469 616 201 265 300 664 352 415 86 333 786 0
主管道钢管从s1到s7的订购计划如下图所示
数量
S1 800
S2 800
S3 1000
S4 0
S5 1278
S6 1293
S7 0
主管道钢管从的s1到s7向A1到A15运输路线如下图二所示 S1→A4 S1→⑦→⑥→⑤→A5→A4 98.6 S1→A6 S1→⑦→⑥→A6 20.5 S1→A7 S1→A7 3.1 S2→A2 S2→⑧→④→②→①→A2 205.3 S2→A3 S2→⑧→④→②→③→A3 190.2 S2→A8 S2→⑧→A8 71.2
16
肖幼霞 谢子绵 林少珍
S3 →A3 S3 →⑨→⑧→④→②→③→A3 200.2 S3 →A5 S3 →⑨→⑧→S1→⑦→⑥→⑤→A5 121 S3 →A9 S3 →⑨→A9 48.2
S5→A3 S5→⑿→⑩→⑨→A16→⑧→④→②→③→A3 225.2 S5→A9 S5→⑿→⑨→A16→A9 79.2 S5→A10 S5→⑿→⑩→⑨→A10 57 S5→A16 S5→A17→⑩→⑨→A16 75 S5→A17 S5→A17 32
S6→A4 S6→A20→A18→⑩→⑨→A16→⑧→S1→⑦→⑥→⑤→A5 →A4 S6→A5 S6→A20→A18→⑩→⑨→A16→⑧→S1→⑦→⑥→⑤→A5 S6→A6 S6→A20→A18→⑩→⑨→A16→⑧→S1→⑦→⑥→A6 S6→A7 S6→A20→A18→⑩→⑨→A16→⑧→S1→A7 S6→A12 S6→A20→A19→A12 S6→A13 S6→A20→A13 S6→A14 S6→A14 S6→A15 S6→⑾→⑿→A15 S6→A18 S6→A20→A18 S6→A20 S6→A20 S6→A21 S6→A21
17
216.6 156 140.5 128.1 37 16.2 11 25 37 10 0
肖幼霞 谢子绵 林少珍
六、对模型的评价
本模型经过合理的分析,数据输入以及编写lingo程序,把所有影响总费用的因素结合在一起,经过优化,找到的最好方案具有可信性。但是本模型在假设上过于理想化,实际生活中,运输过程物品发生损失之类的事情是比较常见的,影响不可忽视。在推广方面,此模型具有一般性,适用于运输线路非直线的,运输地点n个,火车站n个,钢厂n个,等等。
七、参考文献
⑪ 第8讲 《最短路问题》
⑫ 第四章 《数学规划模型》之“自来水运输问题” ⑬网络资源 《优化建模与LINGO/LINGO软件》
八,附录
程序一(求解最小总费用) model: sets:
workplace/1..7/:p,s,t; normdg/1..15/:l,r,b; link(workplace,normdg):c,x; endsets data: d=0.1;
s=800 800 1000 2000 2000 2000 3000;
b=104,301,750,606,194,205,201,680,480,300,220,210,420,500,0;
18
肖幼霞 谢子绵 林少珍
p=160,155,155,160,155,150,160;
c=170.7 160.3 140.2 98.6 38.0 20.5 3.1 21.2 64.2 92.0 96.0 106.0 121.2 128.0 142.0 215.7 205.3 190.2 171.6 111.0 95.5 86.0 71.2 114.2 142.0 146.0 156.0 171.2 178.0 192.0
230.7 220.3 200.2 181.6 121.0 105.5 96.0 86.2 48.2 82.0 86.0 96.0 111.2 118.0 132.0 260.7 250.3 235.2 216.6 156.0 140.5 131.0 116.2 84.2 62.0 51.0 61.0 76.2 83.0 97.0 255.7 245.3 225.2 206.6 146.0 130.5 121.0 111.2 79.2 57.0 33.0 51.0 71.2 73.0 87.0 265.7 255.3 235.2 216.6 156.0 140.5 131.0 121.2 84.2 62.0 51.0 45.0 26.2 11.0 25.0 275.7 265.3 245.2 226.6 166.0 150.5 141.0 131.2 99.2 77.0 66.0 56.0 38.2 26.0 2.0; end data
min=w;
w=@sum(link(i,j):(p(i)+c(i,j))*x(i,j))+d*@sum(normdg(j):(l(j)^2+l(j)+r(j)^2+r(j))/2);
@for(workplace(i):@sum(normdg(j):x(i,j))>=500*t(i); s(i)*t(i)>=@sum(normdg(j):x(i,j)); @bin(t(i)));
@for(normdg(j):@sum(workplace(i):x(i,j))=l(j)+r(j)); @for(normdg(j)|j#ne#15:b(j)=l(j)+r(j+1)); r(15)=0;l(1)=0; @gin(x(1,1));
19
肖幼霞 谢子绵 林少珍
@gin(x(1,2)); @gin(x(1,3)); @gin(x(1,4)); @gin(x(1,5)); @gin(x(1,6)); @gin(x(1,7)); @gin(x(1,8)); @gin(x(1,9)); @gin(x(1,10)); @gin(x(1,11)); @gin(x(1,12)); @gin(x(1,13)); @gin(x(1,14)); @gin(x(1,15));
@gin(x(2,1)); @gin(x(2,2)); @gin(x(2,3)); @gin(x(2,4)); @gin(x(2,5)); @gin(x(2,6)); @gin(x(2,7));
20
肖幼霞 谢子绵 林少珍
@gin(x(2,8)); @gin(x(2,9)); @gin(x(2,10)); @gin(x(2,11)); @gin(x(2,12)); @gin(x(2,13)); @gin(x(2,14)); @gin(x(2,15));
@gin(x(3,1)); @gin(x(3,2)); @gin(x(3,3)); @gin(x(3,4)); @gin(x(3,5)); @gin(x(3,6)); @gin(x(3,7)); @gin(x(3,8)); @gin(x(3,9)); @gin(x(3,10)); @gin(x(3,11)); @gin(x(3,12)); @gin(x(3,13));
21
肖幼霞 谢子绵 林少珍
@gin(x(3,14)); @gin(x(3,15));
@gin(x(4,1)); @gin(x(4,2)); @gin(x(4,3)); @gin(x(4,4)); @gin(x(4,5)); @gin(x(4,6)); @gin(x(4,7)); @gin(x(4,8)); @gin(x(4,9)); @gin(x(4,10)); @gin(x(4,11)); @gin(x(4,12)); @gin(x(4,13)); @gin(x(4,14)); @gin(x(4,15));
@gin(x(5,1)); @gin(x(5,2)); @gin(x(5,3));
22
肖幼霞 谢子绵 林少珍
@gin(x(5,4)); @gin(x(5,5)); @gin(x(5,6)); @gin(x(5,7)); @gin(x(5,8)); @gin(x(5,9)); @gin(x(5,10)); @gin(x(5,11)); @gin(x(5,12)); @gin(x(5,13)); @gin(x(5,14)); @gin(x(5,15));
@gin(x(6,1)); @gin(x(6,2)); @gin(x(6,3)); @gin(x(6,4)); @gin(x(6,5)); @gin(x(6,6)); @gin(x(6,7)); @gin(x(6,8)); @gin(x(6,9));
23
肖幼霞 谢子绵 林少珍
@gin(x(6,10)); @gin(x(6,11)); @gin(x(6,12)); @gin(x(6,13)); @gin(x(6,14)); @gin(x(6,15));
@gin(x(7,1)); @gin(x(7,2)); @gin(x(7,3)); @gin(x(7,4)); @gin(x(7,5)); @gin(x(7,6)); @gin(x(7,7)); @gin(x(7,8)); @gin(x(7,9)); @gin(x(7,10)); @gin(x(7,11)); @gin(x(7,12)); @gin(x(7,13)); @gin(x(7,14)); @gin(x(7,15));
24
肖幼霞 谢子绵 林少珍
@gin(l(1)); @gin(l(2)); @gin(l(3)); @gin(l(4)); @gin(l(5)); @gin(l(6)); @gin(l(7)); @gin(l(8)); @gin(l(9)); @gin(l(10)); @gin(l(11)); @gin(l(12)); @gin(l(13)); @gin(l(14)); @gin(l(15)); @gin(r(1)); @gin(r(2)); @gin(r(3)); @gin(r(4)); @gin(r(5)); @gin(r(6));
25
肖幼霞 谢子绵 林少珍
@gin(r(7)); @gin(r(8)); @gin(r(9)); @gin(r(10)); @gin(r(11)); @gin(r(12)); @gin(r(13)); @gin(r(14)); @gin(r(15));
@gin(@sum(link(i,j):x(i,j))); end 程序二: model: sets:
workplace/1..7/:p,s,t; normdg/1..21/:l,r,b; link(workplace,normdg):c,x; endsets data: d=0.1;
s=800 800 1000 2000 2000 2000 3000;
26
肖幼霞 谢子绵 林少珍
b=104,301,750,606,194,205,201,680,480,300,220,210,420,500,42,10,130,190,260,100,0; p=160,155,155,160,155,150,160;
c= 170.7 160.3 140.2 98.6 38 20.5 3.1 21.2 64.2 92 96 106 121.2 128 142 60 95 100 105 115 125
215.7 205.3 190.2 171.6 111 95.5 86 71.2 114.2 142 146 156 171.2 178 192 110 145 150 155 165 175
230.7 220.3 200.2 181.6 121 105.5 96 86.2 48.2 82 86 96 111.2 118 132 44 85 90 95 105 115
260.7 250.3 235.2 216.6 156 140.5 131 116.2 84.2 62 51 61 76.2 83 97 80 50 55 60 70 80
255.7 245.3 225.2 206.6 146 130.5 121 111.2 79.2 57 33 51 71.2 73 87 75 32 45 50 65 75
265.7 255.3 235.2 200.6 140 122.5 105.1 121.2 84.2 62 51 37 16.2 11 25 80 50 37 36 10 0
275.7 265.3 245.2 226.6 166 148.5 131.1 131.2 99.2 77 66 56 38.2 26 2 95 65 55 55 32 26; end data
min=w;
w=@sum(link(i,j):(p(i)+c(i,j))*x(i,j))+d*@sum(normdg(j):(l(j)^2+l(j)+r(j)^2+r(j))/2);
27
肖幼霞 谢子绵 林少珍
@for(workplace(i):@sum(normdg(j):x(i,j))>=500*t(i); s(i)*t(i)>=@sum(normdg(j):x(i,j)); @bin(t(i)));
@for(normdg(j):@sum(workplace(i):x(i,j))=l(j)+r(j));
@for(normdg(j)|j#ne#1 #and# j#ne#15 #and# j#ne#16 #and# j#ne#18 #and# j#ne#21 :b(j)=l(j)+r(j+1));
r(16)=0;r(1)=0; l(21)=0;l(15)=0; l(18)=0; @gin(x(1,1)); @gin(x(1,2)); @gin(x(1,3)); @gin(x(1,4)); @gin(x(1,5)); @gin(x(1,6)); @gin(x(1,7)); @gin(x(1,8)); @gin(x(1,9)); @gin(x(1,10)); @gin(x(1,11)); @gin(x(1,12)); @gin(x(1,13)); @gin(x(1,14)); @gin(x(1,15));
28
肖幼霞 谢子绵 林少珍
@gin(x(1,16)); @gin(x(1,17)); @gin(x(1,18)); @gin(x(1,19)); @gin(x(1,20)); @gin(x(1,21));
@gin(x(2,1)); @gin(x(2,2)); @gin(x(2,3)); @gin(x(2,4)); @gin(x(2,5)); @gin(x(2,6)); @gin(x(2,7)); @gin(x(2,8)); @gin(x(2,9)); @gin(x(2,10)); @gin(x(2,11)); @gin(x(2,12)); @gin(x(2,13)); @gin(x(2,14)); @gin(x(2,15));
29
肖幼霞 谢子绵 林少珍
@gin(x(2,16)); @gin(x(2,17)); @gin(x(2,18)); @gin(x(2,19)); @gin(x(2,20)); @gin(x(1,21));
@gin(x(3,1)); @gin(x(3,2)); @gin(x(3,3)); @gin(x(3,4)); @gin(x(3,5)); @gin(x(3,6)); @gin(x(3,7)); @gin(x(3,8)); @gin(x(3,9)); @gin(x(3,10)); @gin(x(3,11)); @gin(x(3,12)); @gin(x(3,13)); @gin(x(3,14)); @gin(x(3,15));
30
肖幼霞 谢子绵 林少珍
@gin(x(3,16)); @gin(x(3,17)); @gin(x(3,18)); @gin(x(3,19)); @gin(x(3,20)); @gin(x(3,21));
@gin(x(4,1)); @gin(x(4,2)); @gin(x(4,3)); @gin(x(4,4)); @gin(x(4,5)); @gin(x(4,6)); @gin(x(4,7)); @gin(x(4,8)); @gin(x(4,9)); @gin(x(4,10)); @gin(x(4,11)); @gin(x(4,12)); @gin(x(4,13)); @gin(x(4,14)); @gin(x(4,15));
31
肖幼霞 谢子绵 林少珍
@gin(x(4,16)); @gin(x(4,17)); @gin(x(4,18)); @gin(x(4,19)); @gin(x(4,20)); @gin(x(4,21));
@gin(x(5,1)); @gin(x(5,2)); @gin(x(5,3)); @gin(x(5,4)); @gin(x(5,5)); @gin(x(5,6)); @gin(x(5,7)); @gin(x(5,8)); @gin(x(5,9)); @gin(x(5,10)); @gin(x(5,11)); @gin(x(5,12)); @gin(x(5,13)); @gin(x(5,14)); @gin(x(5,15));
32
肖幼霞 谢子绵 林少珍
@gin(x(5,16)); @gin(x(5,17)); @gin(x(5,18)); @gin(x(5,19)); @gin(x(5,20)); @gin(x(5,21));
@gin(x(6,1)); @gin(x(6,2)); @gin(x(6,3)); @gin(x(6,4)); @gin(x(6,5)); @gin(x(6,6)); @gin(x(6,7)); @gin(x(6,8)); @gin(x(6,9)); @gin(x(6,10)); @gin(x(6,11)); @gin(x(6,12)); @gin(x(6,13)); @gin(x(6,14)); @gin(x(6,15));
33
肖幼霞 谢子绵 林少珍
@gin(x(6,16)); @gin(x(6,17)); @gin(x(6,18)); @gin(x(6,19)); @gin(x(6,20)); @gin(x(6,21));
@gin(x(7,1)); @gin(x(7,2)); @gin(x(7,3)); @gin(x(7,4)); @gin(x(7,5)); @gin(x(7,6)); @gin(x(7,7)); @gin(x(7,8)); @gin(x(7,9)); @gin(x(7,10)); @gin(x(7,11)); @gin(x(7,12)); @gin(x(7,13)); @gin(x(7,14)); @gin(x(7,15));
34
肖幼霞 谢子绵 林少珍
@gin(x(7,16)); @gin(x(7,17)); @gin(x(7,18)); @gin(x(7,19)); @gin(x(7,20)); @gin(x(7,21));
@gin(l(1)); @gin(l(2)); @gin(l(3)); @gin(l(4)); @gin(l(5)); @gin(l(6)); @gin(l(7)); @gin(l(8)); @gin(l(9)); @gin(l(10)); @gin(l(11)); @gin(l(12));
35
肖幼霞 谢子绵 林少珍
@gin(l(13)); @gin(l(14)); @gin(l(15)); @gin(r(16)); @gin(r(17)); @gin(r(18)); @gin(r(19)); @gin(r(20)); @gin(r(21));
@gin(r(1)); @gin(r(2)); @gin(r(3)); @gin(r(4)); @gin(r(5)); @gin(r(6)); @gin(r(7)); @gin(r(8)); @gin(r(9)); @gin(r(10)); @gin(r(11)); @gin(r(12));
36
肖幼霞 谢子绵 林少珍
@gin(r(13)); @gin(r(14)); @gin(r(15)); @gin(r(16)); @gin(r(17)); @gin(r(18)); @gin(r(19)); @gin(r(20)); @gin(r(21));
@gin(@sum(link(i,j):x(i,j))); end
37
本文来源:https://www.wddqxz.cn/253e937d74232f60ddccda38376baf1ffc4fe3d2.html