1、 数学建模实验报告班级:姓名:学号:钢管订购和运输摘要本文针对钢管订购和运输的一般特点和要求,建立了两个遵循题目要求的非线性规划模型。在给定钢管需求量,运输方式及价格,厂家生产量上下线,运输路线图等条件下,非线性规划模型和图论的最短路算法,从而得到最优的钢管订购运输方案,使成本达到最小。对于问题,我们选取了钢管订购和运输的总费用最小作为模型的目标函数,用 floyd 算法分别求出铁路最短路矩阵和公路最短路矩阵,利用费用转化公式,得到两个矩阵的最小费用,将两者综合求得总体最小运输费用矩阵 C(i,j)。然后用 lingo 求解得到最优的钢管订购运输方案。对问题模型的求解得到最优钢管订购运输方案为
2、:总费用=1278632 万元每家厂家的生产量:S1 S2 S3 S4 S5 S6 S7800.0000 800.0000 1000.000 0 1297.428 1273.572 0关键词: floyd 算法 非线性规划模型 总体最小运输费用矩阵 一、问题重述要铺设一条输送天然气的主管道。经筛选后可以生产这种主管道钢管的钢厂有七家。图中粗线表示铁路,单细线表示公路,双细线表示要铺设的管道(假设沿管道或者原来有公路,或者建有施工公路),圆圈表示火车站,每段铁路、公路和管道旁的阿拉伯数字表示里程(单位 km)。为方便计,1km 主管道钢管称为 1 单位钢管。一个钢厂如果承担制造这种钢管,至少需要
3、生产 500 个单位。每个钢厂在指定期限内能生产该钢管的最大数量和钢管出厂销售 1 单位钢管价格均已给出。1000km 以上每增加 1 至 100km运价增加 5 万元。公路运输费用为 1 单位钢管每公里 0.1 万元(不足整公里部分按整公里计算)。钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。1 单位钢管的铁路运价如下表:里程(km) 300 301350 351400 401450 451500运价(万元) 20 23 26 29 32里程(km) 501600 601700 701800 801900 9011000运价(万元) 37 44 50 55 60问题:请制定一
4、个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。二、基本符号说明与基本假设2.1 基本符号说明:厂家 i 的实际生产量 :厂家 i 的单位钢管销价iXiPa:单位距离公路的钢管运费,a=0.1 :线段 i 的里程iDQ:单位距离铁路钢管运费 :卸货节点jAb:最小生产量,b=500 :厂家 i 的最大生产量is:从厂家 i 运往卸点 j 的钢管量 从厂家 i 运往卸点 j 的最小运输费ijYijC用:从卸点 往左运的钢管量 :从卸点 往右运的钢管量jtjAjwjA:从卸点 往第三方向运的钢管量lj j:生产厂家 i 是否生产,im, 厂 家 已 生 产, 厂 家 未 生 产10miN
5、:表示该线段是否被占用, 线 段 已 占 用线 段 未 占 用,1N2.2 基本假设1) 假设沿管道或者原来有公路,或者建有施工公路。2) 所有钢管由七个产地供应。3) 钢管在运输过程中不考虑途中运输磨损,即运输的钢管都可用。4) 运输过程中不考虑铁路,公路转换时的搬运费用。5) 题目所给数据可靠性高。三、问题分析该问题属于运输类求最短路的问题,题目中给出了七个钢管生产厂,十五个钢管铺设节点以及五十四条可直接连通路线。我们希望找到一种方案,使从七个钢管厂中的某几个进行钢管生产,然后从该厂开始运输,选取运输路线和十五个节点中的一部分,使在满足题目铺设要求的前提下,取得最小的运输购买费用。由于题目
6、中说明:钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。因此,当钢管运输到节点后,仍然需要考虑节点到全线的运输方法,我们采用从节点向两个方向运输的方式。在两次路线选择中分别取最小费用路线,然后将两者结合起来,求的最终路线和订购方案。因此,我们建立零一规划模型,对问题进行求解。四模型的建立4.1 模型准备由于本题中所给的路线比较多,又分为三种,一种是铁路,一种是公路,还有一种是需要铺设的管道线。因此,为了方便叙述和运算,我们对问题中每一段路进行标号,标号内容如下:1. 线段 i=1,2,14: , , , 编号; A213145A2. 线段 i=15,16,31:其他公路线段编号;
7、 3. 线段 i=32,33,54:铁路编号。同时,对问题一所给图中的每一个节点进行标号,标号如图所示:第一部分:模型的建立4.2 约束条件的确定在对钢管订购和运输问题的若干要素进行统一规定后,下面来分析题目中已知的或隐含的可能约束条件:(1).生产厂家个数限制题目中共有能生产钢管的厂家七家,得生产厂家个数限制:71iim(2). 每个厂家的生产量限制由题目可知,钢厂 i 如果承担制造这种钢管,至少需要生产 500 个单位,同时,每个钢厂在指定期限内能生产该钢管的最大数量和钢管出厂销售 1 单位钢管价格均可由题目中的表查出。因此,得到钢管生产量限制:iiibmXs(3). 产销平衡限制为了节约
8、成本,提高钢管利用率,每个厂家所生产的钢管数量应该全部用于铺设管线。因此,得到每个厂家的钢管产销平衡限制: 15ijiYX(4).管道铺设限制对于每个卸点来说:该点向左铺设的管道长+临近另一点向右铺设的管道长=两点间距离用 表示对点 j 来讲,该点到下一卸点的距离,jd 1jj jwtd注意到问题所给出的图中,在 和 两点处, 无需向左运输, 无需A151A15向右运输,因此对这两处做单独限制:,150w1t为了保证钢管的充分利用,我们要求运到节点 的钢管全部用完,则得到约j束条件: 71ijjYwt(5).非负性限制为了保证模型的解符合实际,具有实际意义,要求从厂家 i 运往卸点 j 的钢管
9、量 ,从卸点 往左运的钢管量和从卸点 往右运的钢管量均大于零。jAjA, ,0Yijwj0tj4.3 目标函数的确定由题目可知,该问题主要目标是取得运输费用和订购费用总和最小,因此,我们决定将钢管的订购成本和运输成本作为两个目标函数,对其中的运输成本根据题目要求进行进一步的细化,通过约束条件对目标函数的限制,进行求解,以期得到较为满意的结果。(1).钢管的订购费用函数本题中钢管的订购费用主要由各厂家钢管的销售价来决定,而厂家销售额又是取决于厂家 i 的实际生产量和厂家 i 的单位钢管运价。因此,我们得到问题一中的钢管的订购费用函数: 71iipx(2).钢管的运输费用函数本题目中对于钢管的运输
10、费用函数的建立有一定的难度,由于题目中要求钢管的运输不只是运到点,而是管道全线,而在选定路线时,我们并不知道每次将钢管运到管道铺设全线的哪一个地方,因此,为了模型建立的方便,我们将该函数分为两个部分:a.由钢管生产厂运到钢管铺设节点;b.由铺设节点从左右两个方向向铺设线路运输。a.由钢管生产厂运到钢管铺设节点问题中共有七个钢管生产厂家,十五个管道铺设节点,我们用 N 表示该线段是否被占用,用零一规划进行区分, ,若线段占用,则 N=1,否则10NN=0,D 表示线段里程数。由此推的: 为钢管运输中的公路花费,315iiaD为钢管运输中的铁路花费。对两个表达式再次进行处理,应用图论中5432ii
11、QN的最短路原理,将铁路最短路矩阵和公路最短路矩阵,统一成总最小费用矩阵。我们用 表示从厂家 i 运往卸点 j 的最小运输费用,用 表示从厂家 i 运往Cij Yij卸点 j 的钢管量,将 进行转化,则该部分的运输费用函数3154532iiiiaDNQ为: 715ijijYCb.由铺设节点从左右两个方向向铺设线路运输进行完第一部运输过程后,我们将钢管运到了各个节点,下面考虑第二部运输过程节点运输。对于每个卸点,我们令它可以向左右两个方向进行运输,其中,设从卸点向左调运的钢管量为 ,则向右调运的钢管量为 ,不妨先考虑向左调运的jAjt jw情况。考虑一个节点向左调运时的情况,可能会出现多种调运需
12、求,如需要调运 1 个单位钢管,2 个单位钢管,3 个单位钢管 个单位钢管,由于一单位jt钢管等同于运距一公里,则调运总距离为 1+2+3+ = ,单位距离jt(1)2j公路运费为 a,则一个节点向左调运的总运费表示为:a 。再考虑向右()jt调运的情况,与向左调运类似,从一个卸点 开始向右铺设的费用同理可表jA示为:a 。则十五个节点向左的总运费为:(1)2jwa152jjt向右的总运费为:a152jjw所以钢管的运输费用函数可表示为:a +a +152jjt152jjw715ijijYC综合以上两点,又由于我们的目的是要求总费用成本最低,因此得到问题一的目标函数为:= +a +a +zmi
13、n71iipx152jjt152jjw715ijijYC4.4 规划模型综上所述,我们得到一个非线性规划模型,如下:= +a +a +zmin71iipx152jjt152jjw715ijijYCS.T0,01,757157twYmtdXYsbjjijjiijjjijijiiiiior五模型的求解第一部分:问题中模型的求解5.1 总体最小运输费用矩阵的求解在求解模型之前,先对总体最小运输费用矩阵进行确定,把线段的选择具体到各 S 点到各 A 点的路线的选择。1.用 floyd 算法分别求出铁路最短路矩阵 T 和公路最短路矩阵 R2.用费用转化公式获得铁路最小费用矩阵 T2 和公路最小费用矩阵
14、R23.将两者综合,取值 min=T2(i,j),R2(i,j),求得总体最小运输费用矩阵 C(i,j)总体最小运输费用矩阵 C(i,j)如下所示:A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15S1 170.7160.3140.298.63820.53.121.264.292 96 106121.2128 142S2 215.7205.3190.2171.611195.58671.2114.2142 146 156171.2178 192S3230.7220.3200.2181.6121105.59686.248.282 86 96111.2118 132S4260.
15、7250.3235.2216.6156140.5131116.284.262 51 61 76.2 83 97S5255.7245.3225.2206.6146130.5121111.279.257 33 51 71.2 73 87S6265.7255.3235.2216.6156140.5131121.284.262 51 45 26.2 11 28S7275.7265.3245.2226.6166150.5141131.299.276 66 56 38.2 26 25.2 模型求解从上表可看出,从各 S 点到各 A 点共有 7*15=105 条路线,从中选择路线组合形成最优方案,用 lin
16、go 求解得最优方案。问题一的模型求解结果:综上所述,问题一的钢管订购及运输的最优方案为:总费用=1278632 万元每家厂家的生产量:S1 S2 S3 S4 S5 S6 S7800.0000 800.0000 1000.000 0 1297.428 1273.572 0从每个厂家到每个卸点运送的钢铁管数量:Y( 1, 4) 150.7632Y( 1, 5) 183.7368Y( 1, 6) 200Y( 1, 7) 265.5Y( 2, 2) 179Y( 2, 3) 107.0599Y( 2, 4) 0Y( 2, 5) 213.9401Y( 2, 8) 300Y( 3, 3) 79.00735Y( 3, 4) 157.0827Y( 3, 5) 99.90992Y( 3, 9) 664Y( 5, 3) 321.9327Y( 5, 4) 160.154Y( 5, 5) 117.9132Y( 5, 10) 282.4275Y( 5, 11) 415Y( 6, 10) 68.57246Y( 6, 12) 86Y( 6, 13) 333Y( 6, 14) 621Y( 6, 15) 165六.参考文献1 姜启源, 数学模型(第三版) ,高等教育出版社,2003 年 8 月。