钢管订购和运输论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
承诺书
我们仔细阅读了全国大学生数学建模的竞赛规则()。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括、电子、网上咨询等)与本队以外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的, 如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们愿意承担由此引起的一切后果。
我们的参赛(报名)队号为:32
参赛组别(研究生或本科):本科
参赛队员:兰潇根、柳达强、汪锡平
钢管订购和运输
摘要:本文拟建立一个最合理的钢管运输与铺设方案模型。利用离散数学和数
据结构中图论相关知识,应用最短路径的floyd算法和灵敏度分析法建立一个以总费用为目标函数的非线性规划模型,对于钢管订购和运输的总费用,分为三部分:购买钢管费用,由钢厂运送到站点的费用以及由站点开始铺设的费用,对于由钢厂运送到站点的费用,用Floyd算法,求出铁路网和公路网的最短路径,然后转化为最少运输费用,之后利用Lingo软件编程,求解分析,解决问题。
关键词:Floyd算法,非线性规划,Lingo
一 问题重述
要铺设一条1521A A A →→→ 的输送天然气的主管道, 如题图一所示。经筛选后可以生产这种主管道钢管的钢厂有721,,S S S 。图中粗线表示铁路,单细线表示公路,双细线表示要铺设的管道(假设沿管道或者原来有公路,或者建有施工公路),圆圈表示火车站,每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。为方便计,1km 主管道钢管称为1单位钢管。
一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂i S 在指定期限能生产该钢管的最大数量为i s 个单位,钢管出厂销价1单位钢管为i p 万元,如下表:
公路运输费用为1单位钢管每公里0.1万元(不足整公里部分按整公里计算)。
钢管可由铁路、公路运往铺设地点(不只是运到点1521,,,A A A ,而是管道全线)。
(1)请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。
(2)请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
(3)如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情形给出一种解决办法,并对题图二按(1)的要求给出模型和结果。
二 问题分析
1.问题一
所有的钢管必须通过铁路运送到铺设线路上的站点1521A A A →→→ ,之后再通过公路运输向左或右铺设。因此,总的费用由三部分组成:
一部分为购买所有主管道钢管的总费用,一部分为由钢管厂运送到各个站点时的铁路运费和公路运费的总和,最后一部分为由站点向左右两边铺设时的运输费用。
对于从钢管厂到各个站点的最小运费,由于在铁路和公路上的运费计算方法不同,所以,可以先用Floyd 算法,求出钢管厂到铁路上任意结点的最小距离和路线,得到相应的单位钢管运费,同理再求出各个站点到公路上任意结点的最小距离和路线,得到相应的单位钢管运费,再将两运费求和求出最小值,于是就得到从某钢厂到某铺设地点运输单位钢管的最少运输费用。
2.问题二 题目中“哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大”可以理解为,当该模型达到最优解时,钢管销价或者产量上限变化一个单位时,对购运计划和总费用的影响的大小问题。可以利用Lingo 编程运行得到结果。
3.问题三
要铺设的管道是一个树形图,是题图一的一种延拓,通过观察可知,只有9、11、17站点的铺设方向有三个,其它站点的铺设方向只有左右,因此,可以沿用问题一里的思路,在问题一的基础上再增加一个变量middle (j ),用于表示向第三方向铺设的钢管数量。
三 模型的假设与符号说明
1、模型的假设
⑴.沿管道或者原来有公路或者建有施工公路。 ⑵ 钢管全部由这7个钢厂生产,一个钢厂如果承担制造这种钢管,至少需要生产500个单位。
⑶ 公路运输费用为1单位钢管每公里0.1万元(不足整公里部分按整公里计算)。
⑷ 由于公路运输费中,不足整公里部分按整公里计算,因此,从站点向左右两边运送钢管时,不应该是边运送边卸下钢管,这样也不符合实际,应当是走一个单位的公路,卸下一个单位的钢管。
2、符号说明
四模型的建立与求解
(一)、问题一的模型:
采用Floyd算法,用matlab编程可以求出单位钢管从i S运输到j A的最小运输费用,数据如下表:
目标函数为总费用W ,包括三个部分,购买所有主管道钢管的费用1W ,将钢管从钢厂运到各个站点的费用2W ,将钢管从站点运到铺设地点的费用3W W=1W +2W +3W
其中 ),(*7
115
11j i n p W i j i ∑∑===
),(*),(cos 7115
1
2j i n j i t W i j ∑∑===
()()⎥⎦⎤
⎢⎣⎡+++=∑=2)()(12)()(1*1.015
1
3j left j left j right j right W j 则目标函数: minW=
)
,(*)(7115
1
j i n i p i j ∑∑==+
)
,(*),(cos 7115
1
j i n j i t i j ∑∑==+
()()⎥⎦⎤
⎢⎣⎡+++∑=2)()(12)()(1*1.015
1j left j left j right j right j 约束条件:
1. 钢厂的钢管产量:)(*),()(*50015
1i c s j i n i c i j ≤≤∑=