猪肉货物配送问题_第1页
猪肉货物配送问题_第2页
猪肉货物配送问题_第3页
猪肉货物配送问题_第4页
猪肉货物配送问题_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2014第五届徐州工程学院校级数学建模联赛承 诺 书我们仔细阅读了徐州工程学院校级数学建模联赛的竞赛规则。我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与本队以外的任何人(包括指导教师)研究、讨论与赛题有关的问题。我们知道,抄袭别人的成果是违反竞赛规则的, 如果引用别人的成果或其它公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们愿意承担由此引起的一切后果。我们授权五一数学建模联赛赛组委会,可将我们的论文以任何形式进行公开展

2、示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。我们参赛选择的题号为(从A/B中选择一项填写): A 我们的参赛报名号为: 第3组 参赛组别(研究生或本科或专科): 本科 所属学校(请填写完整的全名) 徐州工程学院 参赛队员 (打印并签名) :1. 杜鹏 2. 张真齐 3. 吴韵楠 日期: 2014 年 4 月 19 日题目 货物配送问题 摘要本文对于多种情形下货物配送问题进行分析,构造算法、曲线拟合等模型,分析成本和距离、需求量等因素之间的关系。问题一要求设计生产和配送方案,使得运输成本最低。因为配送成本跟运输的货物重量有关,运输成本同时和运输距离相关,要使得运输成本达

3、到最小,就需要使从生产基地出发配送到销售连锁店的距离最短。题中给出了城镇的位置以及城镇间的道路,所以可以运用算法,建立有向图,求出任意两个城镇间的最短距离矩阵和最短距离的路径选择矩阵。经对比两个生产基地到销售连锁店的距离,对两个矩阵中数据进行筛选得出生产和配送方案。问题二要求分析近5年每个月154个城镇的鲜猪肉需求量,预测何时全省的猪肉需求达到峰值和达到峰值时需求排名前五的城镇和后五的城镇。综合考虑,选择把时间量度定位月,对5年60个月的数据运用做出散点图,运用拟合曲线,求出在2014年2月全省的猪肉需求量达到峰值。又因为全省的猪肉需求在达到峰值前都是增加的,可以判断大部分城镇的需求量都是增加

4、的,可能有的城镇需求增长快慢不一,且数据量较大,处理起来稍有难度。所以假设该省每个小镇需求量增长曲线同全省的增长曲线是同一类型,运用求出达到峰值时,排名前五的小镇为120、31、63、106、150,排名后五的小镇为143、30、74、84、102。问题三要求选择一些城镇增加销售连锁店,扩大全省的销售量,尽可能少的增加销售点。因为每增加一个销售连锁店对本城镇的销售量提高,对周围10公里的城镇销售量增加。得到增加一个销售连锁店的增加的销售量为:同时引入一个,表示是否增加销售连锁店。在综和考虑到销售能力、实际销售量的约束条件。又考虑总的销售量只有小于等于所有城镇的需求量才有意义,结合以上信息建立一

5、个流程图,应用编写程序,得到在6、32、56、58、69、76、111、113、115、117、124、135、136、138、139、140、147、149小镇增加销售连锁店,使得总的销售量达到最大值。关键词 算法 曲线拟合 流程图 一、问题重述1.1问题背景随着我国生产和流通企业的结构调整,经济的快速发展和市场竞争的加剧,货物配送业会受到越来越多的重视。配送方式是现代物流的一个核心内容,可以说是现代市场经济体制、现代科学技术和系统物流思想的综合产物。配送对于经济发展的意义,重要的是在于它是企业发展的一个战略手段。基于此需要我们从理论与实践相结合的角度,来加强对货物配送问题的研究。货物配送是

6、现代流通业的重要组成部分。现代物流技术的研究开发取得一定进展。一些货物配送企业在研究开发物流信息技术和物流配送管理技术上取得了许多成果,这对于推动我国现代物流发展发挥了积极作用。配送运输属于运输中的末端运输、支线运输,和一般运输形态主要区别在于:配送运输是较短距离、较小规模、额度较高的运输形式,一般使用汽车做运输工具。与干线运输的另一个区别是,配送运输的路线选择问题是一般干线运输所没有的,干线运输的干线是唯一的运输线,而配送运输由于配送用户多,一般城市交通路线又较复杂,如何组合成最佳路线,如何使配装和路线有效搭配等,是配送运输的特点,也是难度较大的工作。1.2问题重述某公司是一家肉类食品加工与

7、销售公司,主营:鲜猪肉。该公司在全省县级及以上城镇设立销售连锁店。全省县级及以上城镇地理位置及道路连接见数据文件:全省交通网络数据.xlsx研究以下问题:1、目前该公司现有2个生产基地、23家销售连锁店,生产基地设在120号和63号城镇,为23家连锁店提供鲜猪肉,连锁店的日销售量见附录1。若运输成本为0.45元/吨公里,请你为公司设计生产与配送方案,使运输成本最低。2、公司收集了近5年全省各城镇的鲜猪肉月度需求数据(文件:各城镇月度需求数据.txt)请你分析各城镇需求特征,并预测未来数年,何时全省鲜猪肉需求达到峰值,达到峰值时需求达到前5位和后5位的城镇是那些?3、通过广告宣传等手段,未来几年

8、公司在全省的市场占有率可增至3成左右(各城镇对公司产品每日需求预测数据见文件:公司未来各城镇每日需求预测数据.txt),为增加市场竞争力,决定增设销售连锁店,其中每增设一家连锁店,对于本城镇的供货能力可增加1.5成,对于十公里以内的城镇销售能力可增加0.8成,但是每增设一家销售店,增设的销售连锁店销售能力控制在每日20吨至40吨内,并且要求增设的销售连锁店的销售量必须达到销售能力的下限,如何在满足上述条件的情况下,尽可能少的增设销售点。请你为公司设计增设销售连锁店方案,使全省销售量达到最大。二、问题分析2.1对于问题一的分析问题一要求设计生产和配送方案,使得运输成本最低。题目中已知有两个生产基

9、地,需要把货物配送到23个分布在全省的销售连锁店中,为了不造成浪费,每一个生产基地的最小生产量必须等于该生产基地配送的销售连锁店的需求量总和。因此,现需要确定配送方案才能确定两个生产基地的生产量。配送方案的选择与运输成本直接挂钩,运输成本与运输距离和运输重量成正比的,因此我们需要综合考虑运输距离和运输成本。综合以上这些提出两种运输方案,第一种是每一个销售连锁店配送都是分立的,即送完该城镇后配送任务结束。第二种是一次运输几个城镇的货物,在配送完几个小镇后配送任务完成。无论哪种配送方案都需要考虑城镇与城镇间最短道路的问题,题中给出了城镇间道路数据,但是大部分城市之间没有直接相连的公路,而具体的配送

10、道路的选择需要这些数据,因此我们需要求出任意两城镇间的最短道路。可以运用算法和编程求解出任意两个城镇间的最短道路,选择需要的数据来实现最小成本和具体的运输配送方案。2.2对于问题二的分析问题二给出近5年每个月154个城镇的鲜猪肉需求量,要求我们分析这些数据,预测何时全省的猪肉需求达到峰值和达到峰值时需求排名前五的城镇和后五的城镇。该问题有两小问,第一个小问的对象是全省的猪肉需求量,可先求出5年每个月全省的猪肉需求量,因为问题要求预测未来数年何时全省猪肉需求量达到峰值,并没有明确给出时间量度是年还是月。倘若时间量度是年,面临数据稀少,可能导致预测出的结果与实际情况误差较大。因此本文选择把时间量度

11、定位月,对5年60个月的数据运用做出散点图,根据散点图判断选择拟合曲线,求出何时到达峰值。第二小问要求求出达到峰值的年份排名前五和后五的城镇。考虑到全省的猪肉需求在达到峰值前都是增加的,可以判断大部分城镇的需求量都是增加的,可能出现有的城镇需求增长较快,有的增长较慢,加上数据量较大,处理起来稍有难度。本文假设该省每个小镇需求量增长曲线同全省的增长曲线是同一类型,运用求出达到峰值时,排名前五和后五的小镇。2.3对于问题三的分析问题三给出了未来各城镇的每日需求量,而且问题一中的销售连锁店的销售量总和达不到城镇每日的需求量,同时为了增强市场竞争力,要求选择一些城镇增加销售连锁店,扩大全省的销售量,尽

12、可能少的增加销售点。并且给出了一些限制条件,可以看出,此问可以建立规划模型,来求满足所给的条件下,使得全省的销售量达到最大的销售连锁店的量。三、模型假设结合本题的实际,为了确保模型求解的准确性和合理性,我们排除了一些位置因素的干扰,提出以下几点假设:1、假设题目所给数据准确无误;2、配送过程中不考虑回程的费用;3、本城镇内部配送的路径为0;4、增加的销售量能够达到供给能力的上限。四、符号说明为了便于问题的求解,给出以下符号说明:无向图的邻接矩阵无向图残差平方和拟合程度指标判断矩阵城镇未来某日的需求量小镇供货能力矩阵某一个小镇增加销售连锁店后增加的销售量增加销售连锁店后增加的销售量总和原来23个

13、销售连锁店的销售量总和其他未出现的符号,在文章首次出现时会有说明。五、模型的建立与求解经过以上的分析和准备,我们将逐步建立以下数学模型,进一步阐述模型的实际建立过程。5.1模型的建立1、 算法:求最短路径问题的算法,可以算出任意两个节点之间最短距离的算法; 2、曲线拟合:用连续曲线近似地刻画或比拟平面上离散点组所表示的坐标之间的函数关系;3、赋权图:每条边都有一个非负实数对应的图。这个实数称为这条边的权。5.2问题一模型的建立与求解题目中给出了共154个城镇,23家销售连锁店,以及2个生产基地,现要求从2个生产基地每天配送鲜猪肉给23家销售连锁店,生产基地设在120号和63号城镇,23家销售连

14、锁店的分布图如图1:图1 销售连锁店分布图图一中方框里的信息依次是销售连锁店代号、所在城镇代号、该销售连锁店每天需求量(单位:吨),蓝线表示销售连锁店之间的直达公路,蓝线上的数字表示销售连锁店之间的距离(单位:公里)。观察该图,可以看出销售连锁店1和销售连锁店10所在的城镇为鲜猪肉的一个生产基地,销售连锁店3和销售连锁店18所在的城镇为鲜猪肉的另一个生产基地。因此,这四个销售连锁店的运输都是城镇内部的运输,本题不去考虑。剩余的销售连锁店需要由这两个生产基地中的任意一个配送鲜猪肉。从生产基地出发,考虑两种配给方式。方式一,从生产基地出发途经多个销售连锁店,出发时运载多个销售连锁店所需的货物。方式

15、二,生产基地向销售连锁店单独运输。根据这个销售连锁店对鲜猪肉的需求量配送货物。现根据一个简单的例子证明两种配送方案哪一种成本更低。选取图一中生产基地中的1号,加上9号销售连锁店和5号销售连锁店,它们两两间的距离分别为,销售连锁店的需求量分别为,方式一的配送成本为,方式二的配送成本为,所以方式一减去方式二的成本为: 在三条线段共线的情况下,方式一减去方式二的成本为0,即方式一和方式二的配送成本相等;根据三角形法则,恒成立,所以方式一减去方式二的成本大于0,即方式二的成本小于方式一的成本。从图1中可以看出,大部分销售连锁店所在的城镇与生产基地没有直接相连的公路,图1并没有标出所有的城镇,因此每个销

16、售连锁店实际都是可以到达的,只是相连的公路交错纵横,拥有很多种选择。问题一要求我们设计配送方案,使得运输成本最低。要使得运输成本最低,就要使得运输路径最短,可以运用算法,算出任意两个节点之间最短距离。这里给出全省城镇及道路分布图2:图2 全省城镇及道路分布图算法是计算赋权图中各对顶点之间最短路径,用算法每次以不同的顶点作为起点,计算从该点出发到其余顶点的最短路径,反复执行次这样的操作,就可以得到从每一个顶点到其他路径的最短路径。 先建立无向图,以各城镇为图的顶点,两个城镇间的直通公路为图相应两顶点间的边,得图。对的每一边,赋以一个实数,表示直通公路的长度,称为的权,得到赋权图。赋权图中指定的两

17、个顶点 间一定存在最小的轨,它的权叫做间的距离,记作 赋权图权的邻接矩阵: 来存放。表示到没有直接的边相连。表示到的边的长度。算法的思想是先把图中点集分为成两组:第一组为以求出最短路劲的顶点集合;第二组为其余未确定最短路径的点的集合,按最短路径长度的递增次序依次把第二组的顶点加入中。在加入的过程中,总保持从原点到中各顶点的最短路径长度不大于从原点到中的任何顶点的最短路径长度。此外,每个顶点对应一个距离,中的顶点的距离就是从到顶点的最短路径长度,中的顶点的距离,是从到顶点值包括中的顶点为中间顶点的当前最短路径长度。具体步骤1、初始时,只包含源点,的距离为0,包含除外的其他顶点,中顶点距离为边上的

18、权;2、从中选取一个距离最小的顶点,把加入中(该选定的距离就是到的最短路径长度);3、以为重新考虑的中间点,修改中各顶点的距离;若从源点到顶点的距离(经过顶点)比原来距离(不经过顶点)短,则修改顶点的距离值,修改后的距离值的顶点的距离加上边上的权;4、重复步骤第二步和第三步知道所有顶点都包含在中。运用编程算出每一个城镇到所有城镇的最短距离矩阵 和最短路线矩阵。在第一问中,两个生产基地分别在120号镇和63号镇。两个生产基地运送到各个销售连锁店的成本各部相同,显然选择成本最小的。因为最短距离矩阵包括了154个城镇到其他所有城镇的最短距离,因此,从矩阵中提取23个销售连锁店到两个生产基地的最短距离

19、,择优选择配送的基地。并得到具体的配送方案如下表:表1 路径选择表连锁店编号路径选择112012021201251311301063636321120125124133132141151421431622120123236364根据配送方案,从最短路线矩阵中提取出具体的路线安排和此方案的最小成本。结果如下表:表2 运输成本表连锁店编号销售量(公斤)最短距离(公里)运输成本(元)1287330023822363.71095.662295321733002114783103.64689.44955422180815.1141.57725952318407.316.05268根据配送方案,从最短路线

20、矩阵中提取出具体的路线安排和此方案的最小成本。结果如下表:表3 生产方案表生产基地生产量(吨3问题二模型的建立与求解首先,运用画出全省5年每个月的猪肉需求量散点图。根据点分布的特征决定采用哪种拟合方式。拟合常用的方法是线性最小二乘法,本文也采用线性最小二乘法进行下面为线性最小二乘法的步骤:令其中是选定的一组线性无关函数,是待定系数。拟合的准则是使与的距离的平方和最小,称为最小二乘准则。记为求使达到最小,可利用极值的必要条件得到关于的线性方程组记线性方程组可表示为当线性无关时,列满秩,可逆,线性方程组有唯一的解在根据散点图确定函数。运用编程求出拟合的曲线。

21、下面对所拟合出的曲线求它的趋线拟合程度指标先求出残差平方和 ,其中称为回归平方和,称为总平方和第二小问要求预测全省猪肉需求量达到峰值时的排名前五和排名后五的小镇,本题中共有154个小镇,数据量非常大处理起来较为繁琐,但是考虑到全省的猪肉需求量总体上市增加的,并且增加的曲线符合二次函数图形。为了方便处理数据,本文认为每一个小镇每月增长曲线也符合二次函数的,运用拟合所有数据,求出全省猪肉需求量达到峰值时每一个小镇的猪肉需求量,进行排名刷选出排名前五和后五的城镇。画出全省5年每个月的猪肉需求量散点图如下图3:图3 全省5年每月猪肉需求量散点图 图4 二次拟合图可以看出大致符合二次函数图象,因此拟合方

22、式选择为二次拟合。运用对散点图进行拟合,得到的拟合图如图4:求出的拟合曲线函数关系式为:由拟合图形可以看出5年来每月的猪肉需求量都是递增的,并且有函数关系式得出在2014年2月全省的猪肉需求量达到峰值。进行趋线拟合程度指标检验根据求出运用拟合全省154个城镇每个月的猪肉需求量数据,求出2014年每一个小镇的猪肉需求量,进行排名刷选出排名前五和后五的城镇。如下表4表4 前五后五城镇表前5城镇需求量(吨)后5城镇需求量(吨)1208660.7143118.5314645.330112.663382474106.91063569.48498150228410291.5从表中可以看出排名前五的小镇为1

23、20、31、63、106、150,排名后五的小镇为143、30、74、84、102。5.4问题三模型的建立与求解首先,根据第一问得到的最短距离矩阵,得到一个新的判断矩阵 其中, ,分别表示从城镇到城镇的最短距离小于等于10公里,表示从城镇到城镇的最短距离大于等于10公里。其中。考虑到全省154个城镇原来就有23个销售连锁店。拥有销售连锁店的小镇的原来供货能力就为小镇中所有销售连锁店日销售量的总和,大部分小镇原来并没有销售连锁店,这一部分小镇的原来供货能力就为,则可以生成一个小镇供货能力矩阵还需生成一个矩阵表示城镇原来没有销售连锁店,表示城镇原来所有销售连锁店的日销售量总和。 表示城镇 每日的猪

24、肉需求量;令 , 表示在该城镇增加一个销售连锁店, 表示该城镇不增加销售连锁店。原来23个销售连锁店的销售量总和为 ,增加销售连锁店后增加的销售量总和为 。全省的需求量总和为为。在某一城镇增加一个销售连锁店,本城镇的需求量可能也会因此增加,但增加销售连锁店对本城镇的供货能力可提高1.5成,即本城镇的销售量在原来基础上最大增加 ;同时也对周围10公里以内的城镇销售能力增加。令某一个小镇增加销售连锁店后增加的销售量为本问中原来就有23个销售连锁店,根据第一问中所给的日销售量,本文认为第一问中所给出的日销售量就是未来数年内该销售连锁店的日销售量。对比原来所有的销售连锁店日销售量总和,和未来数年各城镇

25、的日销售量总和,发现原有的销售量无法满足现有的需求量。本文要使得全省的销售量达到最大,即要求增加的连锁店的销售量加上原有销售连锁店的销售量达到全省各城镇日需求量的总和。为了便于建立模型,本文中,某一城镇原有的销售量等于其需求量。新增加的连锁店等级高于原有的连锁店。即周围十公里内的优先购买新增设的销售连锁店的产品。则目标函数为:限制条件1、增设的销售连锁店的销售能力控制在20吨到40吨内,得2、销售量大于销售能力的下限,得 可以看出,此问有两个目标函数,一个是要求全省的销售量达到最大。因此第二个是要求增设的销售连锁店最小。这两个约束变量看似相互矛盾,但其实目标函数是在满足约束条件的小镇的数量较多

26、,使得如果全部都增设会使得实际的理论销售量大于全省的需求量情况下为了避免不必要的费用,增设最少的销售连锁店达到要求。但若满足约束条件的小镇的数量少,全部增设销售连锁店都无法满足全省的需求量的时候,目标函数就舍弃,所有满足的小镇都增设,使得全省的猪肉销售量尽可能的大。综上,可得出下面的流程图:根据流程图,运用编写程序,实现程序图。得出最终的结果为如下表5:表5 增设销售连锁店的城镇城镇632565876111增加销售量3450.333619.873897.812269.023872.283003.28城镇113115117124135136增加销售量2784.992024.492558.7423

27、39.3332242298.03城镇138139140147148149增加销售量2420.733680.632747.123533.383582.482717.46增加的销售量为。六、模型评价与改进6.1模型优缺点分析6.1.1模型的优点1、Floyd算法容易理解,可以算出任意两个节点之间的最短距离,代码编写简单;2、曲线拟合可以使函数在某种准则下与所有数据点最为接近;3、易于处理大量数据。6.1.2模型的缺点1、Floyd算法时间复杂度比较高,不适合计算大量数据;2、问题二中,再对154个城镇每月需求拟合时没有考虑拟合的方式是否恰当。6.2模型改进问题一中可以应用算法,求出需要的数据,不必

28、把所有的城镇与城镇间最短路径求出来,提高运算效率。七、模型推广针对最短路径选择问题,可以应用算法,该模型可以应用到导航仪中,根据给出的起点和终点,结合周围的道路分布情况,计算出最短的路径,以图形的形式反馈给客户。也可广泛应用到物流行业中。八、参考文献1物流配送 2014年4月14日2Floyd算法 2014年4月16日3曲线拟合 2014年4月19日4百度文库,算法实现,7L8l22ov-BJcsylEQlumfjQ_0vYibQwskgy-omHMpCHL67SOIY18-HpbM-qY9hJqFmskiqSy,2014年4月16日附录表1 路径选择表连锁店编号路径选择11201202120

29、125131130106363634636515010315120125124133132141663651501076364658636667991201251241331321411514214316110120120111201191345404142353612636515010292827131201191345444334141201191345404142151201251311301069190284939416636666768693212311176366667686932418636319120123134149146145206366667686932122211201

30、25124133132141151421431622120123236364表2 运输成本表连锁店编号销售量(公斤)最短距离(公里)运输成本(元)1287330023822363.71095.66229532173300423947114.661235.5933595925861.72257.13169268481108.36413.55052271557019.09133.75408583875928.17491.3284635914744134.31891.1199881032517001111503151.19782.6123565129265135.1563.2656751345111

31、9.5424.260643149489110.58472.1821291512773170.17978.1116345166103108.36297.594486173251128.94188.632773182829500193965372.851299.924473206375168.95484.67531252114783103.64689.44955422180815.1141.57725952318407.316.05268表3 生产方案表生产基地生产量(吨)63163619120230208附录2.1.1 用作城镇散点图及城镇间道路连接图:clcclear allclose all

32、x,y=textread('E:22.txt');plot(x,y,'.') %作散点图hold onfor i=1:154c=num2str(i);c=' ',c;text(x(i),y(i),c)end %在点上标城镇序号m=textread('E:m.txt');n=textread('E:n.txt');for j=1:248p=m(j);q=n(j); line(x(p),x(q),y(p),y(q)end %连接有公路的两点d=1,10,11,16,22,24,27,31,34,36,42,62,63,

33、64,79,94,106,120,123,141,145;for i=1:21 plot(x(i),y(i),'r+')end %给21个零售点加红色标记2.1.2 19个连锁店生产基地的选择矩阵:clcclear allclose alln=154;A = zeros(n);x=textread('E:m.txt');y=textread('E:n.txt');z=textread('E:路程.txt');ind=(y-1).*n+x;A(ind)=z;%把矩阵中Ax,y替换为zB=A'+A;idx=find(B=0);

34、 % 找出矩阵中等于0的数B(idx)=inf; % 把等于0的数替换为infB(logical(eye(size(B)=0;%给对角线上数赋为0a=B;%a是邻接矩阵%start是起始点%terminal是终止点%D是最小权值表%path是最短路线表。D=a;n=size(D,1);path=zeros(n,n);for i=1:n for j=1:n if D(i,j)=inf path(i,j)=j; end endendfor k=1:n for i=1:n for j=1:n if D(i,k)+D(k,j)<D(i,j) D(i,j)=D(i,k)+D(k,j); path(

35、i,j)=path(i,k); end end endendxlswrite('E:最小权值表.xls',D)m=D(1,10,11,16,22,24,27,31,34,36,42,65,64,79,94,106,123,141,145,120);n=D(1,10,11,16,22,24,27,31,34,36,42,65,64,79,94,106,123,141,145,63);c=m-nfor i=1:19 if c(i)>0 disp('选63'); else disp('选120'); endend %输出19个零售店从63还是12

36、0运输的选择矩阵2.1.3 求解路径选择结果及最短距离大小:clcclear allclose alln=154;A = zeros(n);x=textread('E:m.txt');y=textread('E:n.txt');z=textread('E:路程.txt');ind=(y-1).*n+x;A(ind)=z;%把矩阵中Ax,y替换为zB=A'+A;idx=find(B=0); % 找出矩阵中等于0的数B(idx)=inf; % 把等于0的数替换为infB(logical(eye(size(B)=0;%给对角线上数赋为0a=B;

37、%a是邻接矩阵%start是起始点%terminal是终止点%D是最小权值表%path是最短路线表。D=a;n=size(D,1);path=zeros(n,n);for i=1:n for j=1:n if D(i,j)=inf path(i,j)=j; end endendfor k=1:n for i=1:n for j=1:n if D(i,k)+D(k,j)<D(i,j) D(i,j)=D(i,k)+D(k,j); path(i,j)=path(i,k); end end endendxlswrite('E:最小权值表.xls',D)m=D(1,10,11,16

38、,22,24,27,31,34,36,42,65,64,79,94,106,123,141,145,120);n=D(1,10,11,16,22,24,27,31,34,36,42,65,64,79,94,106,123,141,145,63);c=m-nfor i=1:19 if c(i)>0 disp('选63'); else disp('选120'); endend %输出19个零售店从63还是120运输的选择矩阵2.2.1 第二问对需求总和作散点图,二次拟合并求出最大值:clcclear allclose allx=1:60;y=textread(

39、'E:拟合数据.txt');p=polyfit(x,y,2)%对数据二次拟合xi=0:100;yi=polyval(p,xi);%求多项式值plot(xi,yi,x,y,'r*')%作散点图及拟合图,可看出100月之内取到峰值max(yi)%求峰值m=find(yi=max(yi)%求峰值对应的月份,由月份推出其所在年份2.2.2对各个城镇达到峰值月份时需求量的预测:clcclear allclose allm=textread('E:城镇需求数据.txt');for i=1:154 x=1:60; y=m(i,:); p=polyfit(x,y

40、,2);%对数据二次拟合 xj=74; yj=polyval(p,xj);%求多项式值 disp(yj);end %得出第74月各个城镇预测销售量2.2.3对预测需求量排序,求其前5和后5需求量及其所属城镇:clcclear allclose alla=textread('E:1.txt');b,index=sort(a(:),'descend')%将矩阵a数据从大到小排列,并列出其位置可找出前5和后52.3.1 导出0-1判断矩阵A:clcclear allclose alln=154;A = zeros(n);x=textread('E:m.txt');y=textread('E:n.txt');z=textread('E:路程.txt');ind=(y-1).*n+x;A(ind)=z;%把矩阵中Ax,y替换为zB=A'+A;idx=find(B=0); % 找出矩阵中等于0的数B(idx)=inf; % 把等于0的数替换为infB(logical(eye(size(B)=0;%给对角线上数赋为0a=B;%a是邻接矩阵%start是起始点%terminal是终止点%D是最小权值表%path是最短路线表。D=a;n=size(D,1);path=ze

温馨提示

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

评论

0/150

提交评论