油井维护的设置调度与原油运输的网络设计

上传人:干*** 文档编号:159240259 上传时间:2022-10-08 格式:DOCX 页数:25 大小:44.05KB
收藏 版权申诉 举报 下载
油井维护的设置调度与原油运输的网络设计_第1页
第1页 / 共25页
油井维护的设置调度与原油运输的网络设计_第2页
第2页 / 共25页
油井维护的设置调度与原油运输的网络设计_第3页
第3页 / 共25页
资源描述:

《油井维护的设置调度与原油运输的网络设计》由会员分享,可在线阅读,更多相关《油井维护的设置调度与原油运输的网络设计(25页珍藏版)》请在装配图网上搜索。

1、2015年成都理工大学校内数学建模竞赛论文题目编号B队编号88参姓名学号专业赛张萌立计算机科学与技术队何理空间信息与数字技术员何龙六白住白匕拓心七士*_1 亠 | ij | m j 匕、一寸 3一 0一五年五月一十五日队编-号:88B题油井维护的设置调度与原油运输的网络设计摘要本文讨论了如何设置油田维护班、油田维护班与其管辖范围 内的油田采集点的关系以及维护班的调度、原油的运输以及其最 优解的问题。实质上是关于多目标的优化问题。根据题中所给的 条件和问题汲取相关的约束条件和目标函数,建立模型。对于问题一,是关于油田维护班的分配管辖范围问题,首先 在MATLAB环境下采用Floyd算法求出任意油

2、田维护班与采集点 之间的最短距离,从中提取92*20的矩阵,在引入0-1规划模型, 然后建立以总路程最小为目标函数,以各个维护班工作量均衡为 约束 条 件, 建立 优化 模 型 ,使用 Matlab 编 程实 现 区域的 自 动 划 分。对于问题二,是关于如何在 13 个采油点同时发生事故时 , 调度 20 个维护班维修,以一个采油点当 且仅当 与一个维护班相 匹配为约束条件,以维护班到达花费时间最小为目标函数,采用 Hungary 算法 ,建 立 相 关模型 , 并用 Matlab 编程 , 求 出最 优解 , 并画图。对 于 问 题三 ,如 何 设 计将部 分 现有 道 路 修建 为 高等

3、级 公 路 以 快速运输原油,实际上是一个关于路线选择的最优化模型。以原 油运输费用与修路费用之和达到最少为目 标函数,采用 Floyd 算 法并在两 点之 间根 据油的 可采储量 进行 平均加 权 ,再用 Matlab 编程,求 出路 线,设 计出 最优 路线方 案。 用原 油可采储量 的 10 倍为加权条件,求出路线,设计出另一个最优路线方案。对于问题四,如 何根据现有道路修建管道路线,使 修建管道 的费用最少,因为管道输油的成本可以忽略不计,实际上是只要 使得管道路线的总长度最小,就能达到成本最少的目标。以总长 度最 小 为目 标函 数, 采 用 Floyd 算 法, 用 Matlab

4、编程, 求 得 最 短路径,设计出原油运输方案。关键 字 : Floyd 算 法 Hungary 算 法 MATLAB 0-1 规 划 最短路径B题油井维护的设置调度与原油运输的网络设计一、问题重述试就某油田设置维护班组和原油运输的相关情况建立数学模型分析研究 下面问题:(1)附件1中的附图给出了某油田A区的交通道路和现有的20个维护班 组的设置情况示意图,相关的数据信息见附件2o维护班组每天的工作是 巡视其管辖范围内的采油井,请为20个维护班组合理分配管辖范围,使 各维护班组的工作量尽量均衡,且在其所管辖油井发生事故时能尽快到达(2)假设13个采油点同时发生漏油事故,需要调度20个维护班组实

5、现 快速维修,恢复生产。实际中一个班组最多维修一个采油点,一个采油点 也仅需一个班组维修,为了尽量减少漏油损失,请给出20个维护班组的 合理调度方案。(注:假设采油点的原油开采速度与可采储量成正比)(3)为了将各采油点的原油快速运输到0点(坐标原点),计划将部分现 有道路修建为高等级公路,作为原油的运输专线。假设公路修建及采油期 内的养护成本合计为1百万/公里,公路运输成本为百万/万吨公里,请 设计一个合理的公路运输网络,使得修路和运输成本最小。再假设经过勘 查,各采油点的可采储量增长了 10倍,请重新设计一个合理的公路运输 网络。(注:假设各采油点均可修建直线到达0点的公路)4)管道输油具有

6、建设成本高、输油成本低的特点。假设输油管道的修 建及采油期内的养护成本合计为1千万/公里,输油成本忽略不计,且管 道只能沿着现有道路修建。请对比公路运输分析修建输油管道的经济性, 设计一个合理的原油运输方案。再假设经过勘查,各采油点的可采储量增 长了 10倍,请重新设计一个合理的原油运输方案。(注:假设各采油点均 可修建直线到达0点的输油管道)二、问题分析因为油田维护班组的职能和人员配置基本相同,所以要考虑每个油田 维护班组工作量的均衡下能在最短时间内到达突发事件现场,主要考虑的 方向是各个维护班组管辖范围内采油点发生事故时赶往总的时间最短(最 短时间转化为最短路程)与均衡每个采油点的事故率这

7、两个因素,显然, 这是个双目标问题,为了求解方便,把双目标函数单一化,将各个维护班 组管辖范围内的采油点事故率均衡转化为约束条件建立模型,进而划分出 区域。其中,我们引入了 0-1规划模型,采用弗洛伊德算法求出图中任意 两个站点之间的最短距离,在根据所建立的模型划分出具体区域。具体做 法如下:)、首先,依据附录中92个节点的横纵坐标,使用MATLAB编程,进 而将每个节点标号、连线。如图2-1所示:图2-1 采油点之间的路线图)、再用dij =- Xj)2 + (y,-力)2公式算出两点之间的距离(如果有路),得出92*92的邻接矩阵,其中矩阵中的元素表示两两之间的距离,若不存在路,则用一个无

8、限大的数来代替,在 MATLAB 环境下利用弗洛伊德算法 求出 两两 之间 的最 短路 径和 最短 路程 ,然 后 从中抽取 92 个 节点 分别 到 20 个维 护班 组站 点的 最短 距离 。(程 序见 附录 3)、 引入 0-1 规 划变 量, 然后 以 92 个节 点 分别 到 20 个维 护班 组站 点的 最 短距 离。(程 序见 附录 4)、使用MATLAB编程,将区域划分的最终结果输出。)、 在根据工作量均衡度做管辖范围的 调整。)、 对 于 如 何 在 13 个 采 油 点 同 时 发 生 事 故 时 , 调 度 20 个 维 护 班 维 修 的 问 题, 我们考虑, 因为油田

9、一直在漏油, 为了将经济损失降低到最小, 当一 个维 护班 组附 近出 现两 个漏 油点 时, 维护 班 组如 何抉 择, 我们 引入 权, 其 大小就是维护班组到漏油点的距离 s 乘以漏油点的储油量, 这样才能在各 个维护班组到达漏油点时将损失降到最小。、 再用弗洛伊德算法进行计算时需要知道给定的矩阵, 我们这样构建, 取 出 20 个维护班组和 13 个采油点的坐标, 对两点之间的距离加权, 用 Qij 代替, 从而建立 20*13 的矩阵, 矩阵中的元素即是权 Qij 的大小(经济损 失最小就转化为了距离最小),建立模型后,用 matlab 编程,采用 Hungary 算法(程序见附录

10、2), 求出如何调度 20 个维护班组(程序见附录 5), 才 能使损失达到最小, 并将结果输出。)、 这一问是高等级公路的修建, 要求是公路修建与养护及原油运输资金 总和最小, 这和第二问相似的地方就是前者是资金损耗最小, 因此这一问 可以用第二问的方法, 只不过就是权值改变了, 此时权的大小就用总资金 )、但这只是两点之间的加权路径最短,我们要修建的是公路网络,这样, 可以循环求出 92 个采油点到原点的最短加权路径, 把 92 条加权路径综合 起来就是我们要求的公路网络, 这样就能保证把所有采油点的油送到原点 时公路修建以及原油运输的总费用最少。Fij来表示,)、 利用 matlab 编

11、 程( 程序 见附 录 6), 建立 93*92 的 矩 阵, 利用 Hungary 算法得到任意一点到 23 点的最小加权路径, 循环得到公路网络, 并用 matlab 将 得到的 公路网络 画出 来。)、当油田的储油量增加到 10 的时候(程序见附录 6),只是在建立模型时, 两点之间的权值改变, 此时, 矩阵中的元素用新得到的权值 Tij 来代替, 重复上述方法, 得到新的公路网络。)、 当用 管道输油时, 输油成本可以忽略不计, 管道修建费用就只与管道 的总长度有关了, 和第三问的算法相似, 经济费用最小就转化为了总路径 长度最小。)、将两点之间的路程作为权 Rij 赋值给两点之间的距

12、离,建立 93*92 的矩 阵, 利用 Hungary 算法得到任意一点到 23 点的最小加权路径, 循环得到 公路网络, 并用 matlab 编程(程序见附录 7) 将得到的公路网络画出来。 )、 当每个采油点的储油量增加到十倍时, 这对新路线的规划并没有任何 影响, 因为此时输油管道的修建总费用只与路线的路程有关, 与各个采油 点的储油量并不相关, 这样储油量对两点距离的权值无影响, 因此得到的 新的规划路线不变。三、符号说明符号描述(X, Y)第i节点坐标,单位mmD第i个节点到第j个节点的最短路径,单位 mmAi第i个油田维护班组的位置标号U第i个油田维护班组的管辖节点集W第i个油田维

13、护班组的工作量指标油田维护班组的平均工作量E油田维护班组工作量的均衡程度Cp第i个油田维护班组所覆盖的路口数量Cp第i个油田维护班组所覆盖的路口数量Qij第i个维护班组到第j个米油点的距离和米油点j的储油量的乘积Fij将第i个采油点的储油运到第j个采油点时,公路修建和原油运输的 总费用Tij将第i个采油点的储油运到第j个采油点时,公路修建和原油运输的 总费用RiJ原油从采油点i运到采油点j的最短路径的长度Gn每个采油点到第23个采油点的加权路径Kn每个采油点到第23个采油点的路径长度四、模型建立模型一的建立该题要求为各油田维护班组分配管辖范围,要求各个维护班组能以最 快的速度到达突发事件的地点

14、,所以我们要考虑路线问题,选择最优路线, 因此,我们建立了以最短路程为主要目标,以维护班组管辖范围内的事故 率均衡为限制条件的模型来划分区域。因此,建模如下(代码见附录4) 目标函数:9220Min (刀刀 dj ?Xij)i=1j=1约束条件:X. 1第弟弟弟弟弟第第弟弟弟 i 一 1.92 i 一 120Xj 一 0第第第第第第第第第第第第一 I, 92,J- I, 20Xjj一 120刀 Xij = 1j=1模型二的建立该题要求调度 20 个油田维护班组对发生漏油事故的 13 个采油点进行 紧急维修,且一个油田维护班组仅且只能维修一个采油点,当一个维护班 组附近发生多起漏油事故无法抉择时

15、,我们引入抉择机制, 根据假设采油点的原油开采速度与可采储量成正比,由此可根据维修班组 到采油点的距离计算采油点在漏油期间未采油的损失,为了让 13 个漏油 点的总损失到达最小,以此建立一个 20*13 的矩阵,矩阵中的每个元素我 们用权值来表示,权值的大小为距离与储油量的乘积,这样就转化为最优 路径 问题 ,因 此, 根据 Hungary 算法 ,建 立 模型 如下 (程 序见 附录 5): 目标函数:13 20MIN (刀刀 Qij)i=1 j=1Qij 表征第 j 个维护班组到第 i 个漏油点的加权距离模型三的建立要 求在 现有 部分 道 路的 基础 上修 建高 等级 公路 ,来 将各

16、个采油点 的 储油运到远点,而原点可以直接修通往任意一个采油点的公路,我们可以 将问题划分 92 个相同的小问题,就是每个采油点到采油点 23 的最短加权 路径,因为,23 是距离远点最近的点,而且原点与 23 点的直线距离最短。 然后再综合这 92 条最短加权路径,就能得到最优的公路线路 网。 而每个 采油点储油量增加到十倍后,只是权重发生变化,函数模型并不会改变,因此 ,根 据 Floyd 目标函数:算法,建立模型如下:92刀MIN第Gn第n=1Gn表征的是每个采油点到第23个采油点的加权路径模型四的建立要修建各采 油点到原点的 输油管道,权 重只与距离相关,和 第三问 类似,我们可以将问

17、题划分 92 个相同的 小问题,就是每个采油点 到采油 点 23 的 最短路径,因 为,23 是距离远点最近的 点,而 且原点 与 23 点的 直 线距离最短。然后再综合这 92 条最短路径,就能得到 最优的公路线路网。 而每个采油点 储油 量增加到 十倍后,只是权重发生变化,函数模型并不会 改变,因此,建立模型如下:目标函数92刀MIN第Ki第i=1Ki表征的是每个采油点到第23个采油点的路径长度。五、模型求解模型一的求解用matlab 求解(程序见附录)得出结果,各个维护班组对应管辖范 围内的采油点如表3-1所示:表3-1每个维护班组及其管辖范围内的采油点维护班组所管辖节点11676869

18、717374757678223940434470723354556566445760626364554950515253565859667730324748618833469931343545101011112627121225131321222324141415152829161636373817174142181880818283191977792020848586878889909192表3-2 油田维护班组到其管辖范围内的各采油点的距离维护班组油田维护班组到其管辖范围内的各米油点的距离102030405060708090100110120130140150160170180190200

19、在此,我们首先给出工作量指标的定义,工作量W =油田维护班组到各采油点的距离 之和。由定义,第i个交巡警服务平台的工作量为:Wi =刀 Djj?Ui则油田维护班组的平均工作量为:G 羊WiW=-20工作量均衡程度可用各维护班组与平均值的偏离程度,即维护班组工作量的方差2之和来表示:E(Wi W)。其中,E表示油田维护工作量的均衡程度。i可计算出上述划分方案中所有油田维护班组的工作总量为(单位)由 表3-1和表3-2中数据可知,维护点1、2、5、20工作量较大,而维护点 0、12管辖范围内的节点过少,只有它本身,说明此方案在工作量均衡性 方面存在很大问题。由表2中的结果可知,整个辖区的划分结果中

20、,始终有六个路口节点(28、 29、38、39、61、92 )到服务平台的距离较大。我们以维护点到采油点的总距离为均衡条件对表一种的结果进行调 整,调整的步骤如下:(1) 对维护点1、2、5、20中的所有采油点重新调整,先计算出它到 20个维护班组距离;(2) 对于距离较小的所有采油点,该节点优先划分到包含节点数最少 的那个维护点的管辖范围;(3) 如果距离较小的所有维护班组包含的节点数相等,则优先选择距 离最近的那个维护班组。经过调整后的划分结果如表3-3所示:表3-3 各个维护班组及其管辖范围内的采油点分布维护班组管辖区域内米油点116768697173742239404344707233

21、5455656644576062636455495051525356667730324748618833469931343545101011112627121225131321222324141415152829161636373817174142181880818283191977792020848586878889经过调整后,油田维护班组到其管辖范围内的各采油点的距离如表3-4所示:表3-4 调整后油田维护班组到其管辖范围内的各采油点的距维护班组维护班组到米油点的距离102030405060708090100110120130140150160170180190200可以看出虽然总工作量增

22、加了,变成了 但是各个维护点的工作均衡 程度改善了%因此最后结果如表3-5所示:表3-5 调整后各个维护班组及其管辖范围内的采油点分布维护班组管辖采油点1167686971737422394043447072335455656644576062636455495051525356667730324748618833469931343545101011112627121225131321222324141415152829161636373817174142181880818283191977792020848586878889模型二的求解根据Hungary算法,利用matlab 编程后得出的结

23、果,这是13*20的 矩阵,行从左到右分别表示漏油点1-13的序号,列从上到下分别表示维 护班组1-20的班组号,如果该漏油点选中某个维护班组就用1表示,未 选中就用0表示,way表示13个漏油点最终对应的维护班组号,结果如图 3-1所示:图3-1 20 个油田维护班组的调度图再根据序号为1-13的漏油点对应的采油点标号,对应得出20个维护 班组的最优调度方案如表3-6所示:表3-620维护班组最优调度方案采油点12141621222324282930384862维护班组号12141691113101587254调度方案可以从图3-2中可以看出:图3-2 20 个油田维护班组的调度方案直观图模

24、型三的求解1)根据Floyd算法,利用matlab编程后得出的结果如图3-3所示:图3-3 原始储油量高等级公路网络图2)可以得出公路网络的修建和维护,以及各将各采油点的储油运到远点的总费用为:*10A4 (百万)。3)当每个采油点的储油量增加到十倍时,新规划的公路网络如图3-4 所示:图3-4 储油量增加到十倍后的高等级公路网络图4)可以得出公路网络的修建和维护,以及各将各采油点的储油运到 原点的总费用为:*10八5 (百万5)为了更清楚的看出两次规划路线的不同之处,我们特地对一些不同之处做了放大处理,储油量没改变前的部分路线如图3-5所示:图3-5 原始储油量高等级公路网络的部分放大图6)

25、储油量增加到十倍以后的部分路线如图3-6所示:图3-6 储油量增加到十倍后的高等级公路网络图部分放大图模型四的求解1)对建立的模型,用matlab编程得到的结果如下原油运输管道路线如图3-7所示:图3-7 输油管道的网络分布图2)可以得出输油管道网络的修建和维护总费用为:*10A5 (百万),我们发现当储油量增加到十倍时,费用不变。3)而第三问中两个结果却相差甚大,油量增加后的公路网络修建费 用为*10A5 (百万),此时修建输油管道要比修建高等级公路的花费要少很 多。4)为了更清晰地分辨出和第三问的部分路线的些许不同之处, 我们 特地将部分管道线路做放大处理, 如图 3-3 所示:图 3-8

26、 输 油 管 道 的 网 络 分 布 部 分 放 大 图六、模型评价与推广本题的模型有效的解决了维护班组管辖范围的合理分配问题;采油点漏油以后维 护班组合理安排,以最小的漏油代价修复所有的采油点;可采储量变化时,专线公路 修建的经济最优公路运输网,以及输油管道修建的管道运输网设计方案。整个建模的 思路清晰,遵循可操作性原则,可比性原则,及科学性原则。该模型建立了在较为理 想的状态下维护班组的管辖范围,减少了维护班组的工作量,提高了工作效率,及在 理想的条件下维护班组的紧急调配方案。但该模型有一定的局限性,如没考虑到紧急 调配任务时公路的畅通程度,维护班组的人员和维修准备可行性等不定因素;也没有

27、 考虑到各个采油点的漏油率,公高等级公路和输油管道修建的地理条件等未知条件。本模型采用了大量的MATLAB件编程,虽然本题数据量大,种类多,但是本模型使用了 Floyd 算法和 Hungary 算法编程使得计算效率大大提高,节约了计算时间。本论文建立的模型应用范围比较广, 不仅对本题的维护范围分配有较强的实用性, 而且其他的分配问题也有一定的参考作用,兼顾了公平与效率的原则。在其余紧急分 配方案中可以用到本论文的模型二,可以实现损失的最小化。本论文的模型三和模型 四的运输网络方案对交通网络设计,物流配送网络设计,通信网络设计等具有一定的 参考性。七、参考文献1 胡桔州.Floyd最短路径算法在

28、配送中心选址中的应用J:湖南农业大学学报 . 自然科学版 , 30(4) ,2 姜启源.谢金星.叶俊.数学模型(第三版)M.北京:高等教育出版社,20033 (美)E 米涅卡.网络和图的最优化算法M.中国铁道出版社图书,20074 . , 20095 .6 . , 20027 李艳艳. 博士学位论文 . 大连:大连理工大学, 20098 苏金明.刘宏.刘波.MATLAB高级编程北京:电子工业出版社,2005八、附录附 录 1 :( Floyd 算 法 求 最 短 路 径 及 距 离 matlab 代 码 )function D,path = floyd( a )%UNTITLED2 Summa

29、ry of this function goes here% Detailed explanation goes heren=size(a,1);D=a;path=zeros(n,n);for i=1:nfor j=1:nif D(i,j)=inf path(i,j)=j;endendendfor k=1:nfor i=1:nfor j=1:nif D(i,k)+D(k,j) P_size; jj = 1; ii = ii+1; if ii P_size; exit_flag = 0;endif row = 0stepnum = 6; zflag = 0;Z_r = 0;Z_c = 0; el

30、seM(row,col) = 2;if sum(find(M(row,:)=1) = 0 r_cov(row) = 1;zcol = find(M(row,:)=1);c_cov(zcol) = 0; elsestepnum = 5; zflag = 0; Z_r = row; Z_c = col;endend endfunction M,r_cov,c_cov,stepnum = step5(M,Z_r,Z_c,r_cov,c_cov) zflag = 1;ii = 1;while zflagrindex = find(M(:,Z_c(ii)=1);if rindex 0ii = ii+1;

31、Z_r(ii,1) = rindex;Z_c(ii,1) = Z_c(ii-1);else zflag = 0;endif zflag = 1; cindex = find(M(Z_r(ii),:)=2);ii = ii+1;Z_r(ii,1) = Z_r(ii-1);Z_c(ii,1) = cindex;endendfor ii = 1:length(Z_r) if M(Z_r(ii),Z_c(ii) = 1M(Z_r(ii),Z_c(ii) = 0;elseM(Z_r(ii),Z_c(ii) = 1;endendr_cov = r_cov.*0;c_cov = c_cov.*0;M(M=2

32、) = 0; stepnum = 3; function P_cond,stepnum = step6(P_cond,r_cov,c_cov) a = find(r_cov = 0); b = find(c_cov = 0);minval = min(min(P_cond(a,b);P_cond(find(r_cov = 1),:) = P_cond(find(r_cov = 1),:) + minval; P_cond(:,find(c_cov = 0) = P_cond(:,find(c_cov = 0) - minval; stepnum = 4;function cnum = min_

33、line_cover(Edge) r_cov,c_cov,M,stepnum = step2(Edge); c_cov,stepnum = step3(M,length(Edge); M,r_cov,c_cov,Z_r,Z_c,stepnum = step4(Edge,r_cov,c_cov,M); cnum = length(Edge)-sum(r_cov)-sum(c_cov);附录 3( 92 个采 油点 分 布 图 matlab 代码 )clear all ;numA=xlsread(powerpointX);numB=xlsread(powerpointY);roadsA );roa

34、dsB );, markersize ,12)roadsA=xlsread( roadsB=xlsread( for a=1:1:92 x=numA(a,:); y=numB(a,:); plot(x,y, str=int2str(a); text(x+1,y,str); hold on;if a=1 | a=2 | a=3 | a=4 | a=5 | a=6 | a=7 | a=8 | a=9 | a=10 | a=11 | a=12 | a=13 | a=14 | a=15 | a=16 | a=17 | a=18 | a=19 | a=20plot(x,y, rs , markersiz

35、e ,12)endif a=12 |a=14 |a=16 |a=21 |a=22 |a=23 |a=24 |a=28 |a=29|a=30 |a=38 |a=48 |a=62plot(x,y, r* , markersize ,12) endendfor b=1:1:140x1=roadsA(b,:);y1=roadsB(b,:);x2=numA(x1,:);y2=numB(x1,:);x3=numA(y1,:);y3=numB(y1,:);eX=x2 x3;Y=y2 y3;plot(X,Y);hold on ;end附录 4( 问 题一求 20 个维 护 班 组的 管辖 范围 划 分 mat

36、lab 代码)clear all ;numA=xlsread(numB=xlsread(roadsA=xlsread( roadsB=xlsread(x=numA(:,1);y=numB(:,1);i=roadsA(:,1);j=roadsB(:,1);A=zeros(92,92);for k=1:140powerpointXpowerpointYroadsAroadsB););););a=i(k);b=j(k);A(a,b)=1;A(b,a)=1;endfor m=1:92for n=1:92if (A(m,n)=1)A(m, n)=sqrt(x(m)-x( n)F2+(y(m)-y( n)

37、f2);elseA(m,n)=inf;endendendD,path=floyd(A);T=zeros(72,3);for p=21:92min =inf;for q=1:20if minD(p,q) min=D(p,q); T(p-20,:)=p q min;endendendB=T(:,2);T(:,2)=T(:,1);T(:,1)=B;T=sortrows(T);T附录 5( 问 题二漏 油 点 与维 修组 最佳 匹 配 matlab 代码)oil=xlsread(oil );Oil=zeros(92,1);x=oil(:,1);for i=1:92for j=1:92if i=jD(i

38、,j)=0;endendendfor n=1:92if n=12 | n=14 | n=16 | n=21 | n=22 | n=23 | n=24 | n=28 |n=29 | n=30 | n=38 | n=48 | n=62b=x(n);a=D(:,n)*b;Oil=Oil a;endendOil(:,1)=;Oil=Oil(1:20,:);result=Hungarian(Oil);way=;for p=1:13for q=1:20if result(q,p)=1way=way q;endendendway附录 6( 问 题三修 路 费 与运 费之 和的 最 少 费用 matlab 代

39、 码 )原油可采量不变的路线修建代码clear all ;powerpointX);powerpointY);roadsA );roadsB );oil );numA=xlsread( numB=xlsread( roadsA=xlsread( roadsB=xlsread( oil=xlsread( Oi=oil(:,1); x=numA(:,1); y=numB(:,1); i=roadsA(:,1); j=roadsB(:,1);A=zeros(92,92); for k=1:140 a=i(k); b=j(k); A(a,b)=1; A(b,a)=1;endfor m=1:92for

40、n=1:92if (A(m,n)=1)A(m, n)=(sqrt(x(m)-x( n)F2+(y(m)-y( n)F2).*(1+.*(oil(m,:)+oil( n,:); elseA(m,n)=inf;endendendD,path=floyd(A);for r=1:92endfor a=1:1:92 x=numA(a,:); y=numB(a,:); plot(x,y,., markersize ,12);str=int2str(a);text(x+1,y,str); holdon;endplot(0,0,., markersize ,12);for i=1:92 point=path(

41、23,i);for j=1:100Lpoint=point; point=path(point,i);Npoint=point; x1=numA(Lpoint,:); y1=numB(Lpoint,:); x2=numA(Npoint,:); y2=numB(Npoint,:);X=x1 x2;Y=y1 y2; plot(X,Y); holdon;if point=i break ;endendendx=numA(23,:);y=numB(23,:);X=0 x;Y=0 y;plot(X,Y);sum=(sqrt(xA2+yA2).*(1+.*;for s=1:92if s=23sum=sum

42、-D(23,23); end sum=sum+D(23,s);endsum原油增加10 倍 可 采储量 路 线修 建 代 码clear all ;numA=xlsread(powerpointX);numB=xlsread(powerpointY);roadsA=xlsread(roadsA );roadsB=xlsread(roadsB );oil=xlsread(Oi=oil(:,1);x=numA(:,1);y=numB(:,1); i=roadsA(:,1); j=roadsB(:,1);A=zeros(92,92); for k=1:140oil);a=i(k);b=j(k);A(a

43、,b)=1;A(b,a)=1;endfor m=1:92for n=1:92 if (A(m,n)=1)A(m, n)=(sqrt(x(m)-x( n)F2+(y(m)-y( n)F2).*(1+.*(oil(m,:)+oil( n,:); elseA(m,n)=inf;endendendD,path=floyd(A);for r=1:92endfor a=1:1:92x=numA(a,:);y=numB(a,:);plot(x,y,., markersize ,12);str=int2str(a);text(x+1,y,str);hold on; end plot(0,0, . , mark

44、ersize ,12); for i=1:92point=path(23,i); for j=1:100 Lpoint=point; point=path(point,i);Npoint=point; x1=numA(Lpoint,:); y1=numB(Lpoint,:); x2=numA(Npoint,:); y2=numB(Npoint,:);X=x1 x2;Y=y1 y2; plot(X,Y);hold on;if point=ibreakendend endx=numA(23,:);y=numB(23,:);X=0 x;Y=0 y; plot(X,Y);sum=(sqrt(xA2+y

45、A2).*(1+.*12450);for s=1:92if s=23 sum=sum-D(23,23);endsum=sum+D(23,s);endsum附录 7( 问 题四管 道 路 线选 择总 路径 最 短 matlab 代码)clear all ;numA=xlsread(powerpointX);numB=xlsread(powerpointY);roadsA=xlsread(roadsA);roadsB=xlsread(oil=xlsread(roadsBoil ););Oi=oil(:,1);x=numA(:,1);y=numB(:,1);i=roadsA(:,1);j=roadsB(:,1);A=zeros(92,92);for k=1:140a=i(k);b=j(k);A(a,b)=1;A(b,a)=1;endfor m=1:92for n=1:92if (A(m,n)=1)A(m, n)=(sqrt(x(m)-x( n)f2+(y(m)-y( n)F2).*10; elseA(m,n)=inf;endendendD,path=floyd(A);for r=1:92

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!