一、问题重述要铺设一条输送天然气的主管道。经筛选后可以生产这种主管道钢管的钢厂有七家。图中粗线表示铁路,单细线表示公路,双细线表示要铺设的管道(假设沿管道或者原来有公路,或者建有施工公路),圆圈表示火车站,每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。为方便计,1km主管道钢管称为1单位钢管。一个钢厂如果承担制造这种钢管,至少需要生产500个单位。每个钢厂在指定期限内能生产该钢管的最大数量和钢管出厂销售1单位钢管价格均已给出。1000km以上每增加1至100km运价增加5万元。公路运输费用为1单位钢管每公里0.1万元(不足整公里部分按整公里计算)。钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。1单位钢管的铁路运价如下表:里程(km)≤300301~350351~400401~450451~500运价(万元)2023262932里程(km)501~600601~700701~800801~900901~1000运价(万元)3744505560(1)请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。(2)请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。(3)如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情形给出一种解决办法,并对图二按(1)的要求给出模型和结果。二、基本符号说明与基本假设2.1基本符号说明iX:厂家i的实际生产量iP:厂家i的单位钢管销价a:单位距离公路的钢管运费,a=0.1iD:线段i的里程Q:单位距离铁路钢管运费jA:卸货节点b:最小生产量,b=500is:厂家i的最大生产量ijY:从厂家i运往卸点j的钢管量ijC:从厂家i运往卸点j的最小运输费用jt:从卸点jA往左运的钢管量jw:从卸点jA往右运的钢管量lj:从卸点jA往第三方向运的钢管量im:生产厂家i是否生产,,厂家已生产,厂家未生产10miN:表示该线段是否被占用,线段已占用线段未占用,,10N2.2基本假设1)假设沿管道或者原来有公路,或者建有施工公路。2)所有钢管由七个产地供应。3)钢管在运输过程中不考虑途中运输磨损,即运输的钢管都可用。4)运输过程中不考虑铁路,公路转换时的搬运费用。5)题目所给数据可靠性高。三、问题分析和基本思路3.1问题分析和建模思路该问题是一个比较明显的优化问题,其中主要包含两部分的优化选择:一个是运输路线的选择,另一个是产销地的选择。其中运输路线的选择是本题的关键,不妨将本题看作是一个运费最少的路线选择问题。由于运输问题中需要考虑单位运价,运输量,运输距离,运输方式等一些因素的影响,而其中运价已经在题目中间接地给出,运价和选择的运输方式以及运输距离,运输量有关。因此,我们需要考虑解决的因素就变为三个:运输方式,运输距离和运输量。因而在建立模型时没有必要考虑所有因素,只需抓住这三个关键因素,进行合理的假设和建模。建立模型对钢管的运输和订购问题进行定量安排,就是从当前实际的钢管产量和铺设情况出发,选择恰当的订购运输方案,提出合理的订购运输要求和假定,应用科学的方法,预测出该方案需要花费的总资金,使总资金尽量达到最小,降低钢管铺设的成本。(一)问题1的分析问题一属于运输类求最短路的问题,题目中给出了七个钢管生产厂,十五个钢管铺设节点以及五十四条可直接连通路线。我们希望找到一种方案,使从七个钢管厂中的某几个进行钢管生产,然后从该厂开始运输,选取运输路线和十五个节点中的一部分,使在满足题目铺设要求的前提下,取得最小的运输购买费用。由于题目中说明:钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。因此,当钢管运输到节点后,仍然需要考虑节点到全线的运输方法,我们采用从节点向两个方向运输的方式。在两次路线选择中分别取最小费用路线,然后将两者结合起来,求的最终路线和订购方案。因此,我们建立零一规划模型,对问题进行求解。(二)问题2的分析问题二是讨论钢厂钢管的销价的变化和钢厂钢管的产量的上限的变化对购运计划和总费用的影响,同时判别哪家钢厂在这两方面发生的变化对购运计划和总费用的影响最大,其实际上是对问题一中的模型进行灵敏度分析,使得钢管销售价和钢管生产上限在发生变化时,能够利用原有模型进行判断,是否需要对购运计划进行修改,以满足新情况下的最优。由此,我们通过对厂家i的单位钢管销价和厂家i的最大生产量的数值调整,利用lingo功能求的不同情况下的运输方案,对各方案结果进行比照,得出结论。(三)问题3的分析问题三是对问题一的扩展,将线性管道铺设改为树形管道铺设图。我们仍然采取问题一的建立模型的思路,对其中第一部分:由生产厂家运往铺设节点的线路选择模型保留,对第二部分:由节点向铺设全程运输模型进行改变,将从节点向两边运输改为在某些节点处向三个方向运输,以满足问题三的要求。仍然建立零一规划模型,对问题求解。同时,对问题三进行钢厂钢管的销价的变化和钢厂钢管的产量的上限的变化对购运计划和总费用的影响的灵敏度分析。四.模型的建立4.1模型准备由于本题中所给的路线比较多,又分为三种,一种是铁路,一种是公路,还有一种是需要铺设的管道线。因此,为了方便叙述和运算,我们对问题一中每一段路进行标号,标号内容如下:1.线段i=1,2,……,14:AA21,23AA,……,1415AA编号;2.线段i=15,16,……,31:其他公路线段编号;3.线段i=32,33,……,54:铁路编号。同时,对问题一所给图中的每一个节点进行标号,标号如图所示:对问题三中每一段路进行标号,标号内容如下:1.线段i=1,2,……,20:AA21,23AA,……,AA2120编号;2.线段i=15,16,……,29:其他公路线段编号;3.线段i=30,33,……,52:铁路编号。对问题三所给图中的每一个节点进行标号,由于问题三中节点数没有改变,因此标号仍如上图所示:第一部分:问题1模型的建立4.2约束条件的确定在对钢管订购和运输问题的若干要素进行统一规定后,下面来分析题目中已知的或隐含的可能约束条件:(1).生产厂家个数限制题目中共有能生产钢管的厂家七家,得生产厂家个数限制:717iim(2).每个厂家的生产量限制由题目可知,钢厂i如果承担制造这种钢管,至少需要生产500个单位,同时,每个钢厂在指定期限内能生产该钢管的最大数量和钢管出厂销售1单位钢管价格均可由题目中的表查出。因此,得到钢管生产量限制:iiiibmXsm(3).产销平衡限制为了节约成本,提高钢管利用率,每个厂家所生产的钢管数量应该全部用于铺设管线。因此,得到每个厂家的钢管产销平衡限制:151ijijYX(4).管道铺设限制对于每个卸点来说:该点向左铺设的管道长+临近另一点向右铺设的管道长=两点间距离用jd表示对点j来讲,该点到下一卸点的距离,1jjjwtd注意到问题一所给出的图中,在A1和A15两点处,A1无需向左运输,A15无需向右运输,因此对这两处做单独限制:150w,10t为了保证钢管的充分利用,我们要求运到节点jA的钢管全部用完,则得到约束条件:71ijjjiYwt(5).非负性限制为了保证模型的解符合实际,具有实际意义,要求从厂家i运往卸点j的钢管量,从卸点jA往左运的钢管量和从卸点jA往右运的钢管量均大于零。0Yij,0wj,0tj4.3目标函数的确定由题目可知,该问题主要目标是取得运输费用和订购费用总和最小,因此,我们决定将钢管的订购成本和运输成本作为两个目标函数,对其中的运输成本根据题目要求进行进一步的细化,通过约束条件对目标函数的限制,进行求解,以期得到较为满意的结果。(1).钢管的订购费用函数本题中钢管的订购费用主要由各厂家钢管的销售价来决定,而厂家销售额又是取决于厂家i的实际生产量和厂家i的单位钢管运价。因此,我们得到问题一中的钢管的订购费用函数:71iiipx(2).钢管的运输费用函数本题目中对于钢管的运输费用函数的建立有一定的难度,由于题目中要求钢管的运输不只是运到点,而是管道全线,而在选定路线时,我们并不知道每次将钢管运到管道铺设全线的哪一个地方,因此,为了模型建立的方便,我们将该函数分为两个部分:a.由钢管生产厂运到钢管铺设节点;b.由铺设节点从左右两个方向向铺设线路运输。a.由钢管生产厂运到钢管铺设节点问题一中共有七个钢管生产厂家,十五个管道铺设节点,我们用N表示该线段是否被占用,用零一规划进行区分,10N,若线段占用,则N=1,否则N=0,D表示线段里程数。由此推的:3115iiiaDN为钢管运输中的公路花费,5432iiiQDN为钢管运输中的铁路花费。对两个表达式再次进行处理,应用图论中的最短路原理,将铁路最短路矩阵和公路最短路矩阵,统一成总最小费用矩阵。我们用Cij表示从厂家i运往卸点j的最小运输费用,用Yij表示从厂家i运往卸点j的钢管量,将31541532iiiiiiaDNQDN进行转化,则该部分的运输费用函数为:71151ijijijYCb.由铺设节点从左右两个方向向铺设线路运输进行完第一部运输过程后,我们将钢管运到了各个节点,下面考虑第二部运输过程——节点运输。对于每个卸点,我们令它可以向左右两个方向进行运输,其中,设从卸点jA向左调运的钢管量为jt,则向右调运的钢管量为jw,不妨先考虑向左调运的情况。考虑一个节点向左调运时的情况,可能会出现多种调运需求,如需要调运1个单位钢管,2个单位钢管,3个单位钢管....jt个单位钢管,由于一单位钢管等同于运距一公里,则调运总距离为1+2+3+....+jt=(1)2jjtt,单位距离公路运费为a,则一个节点向左调运的总运费表示为:a(1)2jjtt。再考虑向右调运的情况,与向左调运类似,从一个卸点jA开始向右铺设的费用同理可表示为:a(1)2jjww。则十五个节点向左的总运费为:a15121jjjtt向右的总运费为:a15121jjjww所以钢管的运输费用函数可表示为:a15121jjjtt+a15121jjjww+71151ijijijYC综合以上两点,又由于我们的目的是要求总费用成本最低,因此得到问题一的目标函数为:zmin=71iiipx+a15121jjjtt+a15121jjjww+71151ijijijYC4.4规划模型综上所述,我们得到一个非线性规划模型,如下:zmin=71iiipx+a15121jjjtt+a15121jjjww+71151ijijijYCS.T0,0,0100,071157115171twYmtwtwYdtwXYmsXbmmjjijijjiijjjjijijiiiiiior第二部分:问题3模型的建立4.5约束条件的确定问题三与问题一非常类似,其主要区别在于问题三中将线性的管道铺设线变成了树形的铺设线路,多增加了几个节点。因此,我们仿照问题一中的思路,找出问题三的约束条件。在问题三的约束条件中,前三个条件与问题一的相同,没有改变,这里不再赘述,唯一有变化的是约束四。管道铺设限制:对于每个卸点(AAA17119,,除外)来说:该点向左铺设的管道长+临近另一点向右铺设的管道长=两点间距离用jd表示对点j来讲,该点到下一卸点的距离,1jjjwtd注意到问题三所给出的图中,在A1,A15,A21,A18处,A1,A18无需向左运输,A15,A21无需向右运输,因此对这四处做单独限制:015w,01t,018t,021w由图可知,在点AAA211816,,处,只能向一个方向运输,为了提高利用率,得到以下约束:42169tl,1301817wt,1901917tw,101711ll,