【国家级课程】中南大学数学建模lingomatlab优化建模数模培训全国赛论文货物运输问题.doc

【国家级课程】中南大学数学建模lingomatlab优化建模数模培训全国赛论文货物运输问题.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【国家级课程】中南大学数学建模lingomatlab优化建模数模培训全国赛论文货物运输问题

中南大学 2008年暑期数学建模培训,第一次训练题 我们参赛选择的题号是(从A/B/C/D中选择一项填写): B 我们的参赛报名号为(如果赛区设置报名号的话): 所属学校(请填写完整的全名): 中南大学 参赛队员 (打印并签名) :1. 钟 逸 2. 黄贵杰 3. 王树松 指导教师或指导教师组负责人 (打印并签名): 日期: 2008 年 8月 5 日 货物运输问题 摘要某运输公司为10个客户配送货物,从第i个客户到第j个客户的距离用下面矩阵中的位置上的数表示表示两个客户之间无直接的路线到达)。(见附表1) 需解决的问题: (1)运送员在给第二个客户卸货完成的时候,临时接到新的调度通知,让他先给客户10送货,已知送给客户10的货已在运送员的车上,给运送员设计一个到客户10的尽可能短的行使路线 。 (2)运输公司派了一辆大的货车为这10个客户配送货物,假定这辆货车一次能装满10个客户所需要的全部货物,给出货车从提货点出发给10个客户配送完货物后再回到提货点所行使的尽可能短的行使路线?对所设计的算法进行分析。 (3)因资源紧张,运输公司没有大货车可以使用,改用两辆小的货车配送货物。每辆小货车的容量为50个单位,每个客户所需要的货物量分别为8,13,6,9,7,15,10,5,12,9个单位,请问两辆小货车应该分别给那几个客户配送货物以及行使怎样的路线使它们从提货点出发最后回到提货点所行使的距离之和尽可能短?对所设计的算法进行分析。 (4)如果改用更小容量的车,每车容量为25个单位,但用车数量不限,每个客户所需要的货物量同第3问,并假设每出一辆车的出车费为100元,运货的价格为1元/公里(不考虑空车返回的费用),给出如何安排车辆能使得运输公司运货的总费用最省? 二、问题假设与符号说明 (一)问题假设 1、不考虑塞车现象; 2、不考虑运输车出现故障或事故对其运输量的影响; 3、附录1中矩阵的一项i到j的距离。 (二)符号说明 1、G=(N,E)表示一个有向图 2、V={}(i=1.2.3…..10)表示1、2、3…….10十个客户; 3、E={}(i、j=1.2.3…..10)表示第i个客户与第j个客户之间的边集:其中0表示从i不能直接到j; 4、W={ }(i=1.2.3….10)表示第i个客户所需要的货物量(点上权重).(第三、四问用到); 5、和分别表示自点1到点j和点k的最短有向路的长度,而表示弧(k,j)的长度, 6、T有向图中的部分点集 三、问题分析 (一)背景分析 随着经济的发展、交通网络的不断健全。运输行业得以快速发展,运输公司在满足客户要求与尽量减少成本(时间、金钱)之间面临更复杂决策。 某运输公司为10个客户配送货物,从第i个客户到第j个客户的距离用下面矩阵中的位置上的数表示表示两个客户之间无直接的路线到达)。(见附表1) (二)解题分析 第一问为最短路径问题,用Dijkstra算法可解,第二问类似旅游推销员问题、采用模拟退火算法解答 四、问题一建模 (一)问题提出 运送员在给第二个客户卸货完成的时候,临时接到新的调度通知,让他先给客户10送货,已知送给客户10的货已在运送员的车上,给运送员设计一个到客户10的尽可能短的行使路经 。 (二)问题分析 寻找给定起、终点v2、v10.的最短路径,道路长定义为各条边的权之和。考虑到可以用有向图求最短路径问题进行模型求解,在这里可以采用Dijkstra算法来求本题的最短行驶道路。 (三)建模(模型一)(为方便编程 将附表1的矩阵第一行第一列与第二行第二列交换。) 跟据Dijkstra算法: 最短有向路满足以下条件,可以写成: =0 ={+ },j=2,3,4,…,10 具体算法如下: 第一步(开始) 置u1=0,=,j= j=2,3,4,…,10,P{1},T={ j=2,3,4,…,10} 第二步(指出永久标号) 在T中寻找一点k,使得 =

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档