华东交通大学数学建模
2012年第一次模拟训练题 所属学校:华东交通大学(ECJTU )
参赛队员:胡志远、周少华、蔡汉林、段亚光、
李斌、邱小秧、周邓副、孙燕青
指导老师:朱旭生(博士)
摘要:
本文的运输问题是一个比较复杂的问题,大多数问题都集中在最短路径的求解问题上,问题特点是随机性比较强。
根据不同建模类型
针对问题一 ,我们直接采用Dijkstra 算法(包括lingo 程序和手算验证),将问题转化为线性规划模型求解得出当运送员在给第二个客户卸货完成的时,若要他先给客户10送货,此时尽可能短的行使路线为:109832V V V V V →→→→,总行程85公里。
针对问题二,我们首先利用prim 算法求解得到一棵最小生成树:
121098436751V V V V V V V V V V V →→→→→→→→→→
再采用Dijkstra 算法求得客户2返回提货点的最短线路为12V V →故可得到一条理想的回路是:121098436751V V V V V V V V V V V →→→→→→→→→→ 后来考虑到模型的推广性,将问题看作是哈密顿回路的问题,建立相应的线性规划模型求解,最终找到一条满足条件的较理想的的货车送货的行车路线:
121098436751V V V V V V V V V V V →→→→→→→→→→。
针对问题三,我们首先直接利用问题二得一辆车的最优回路,以货车容量为限定条件,建立相应的规划模型并设计一个简单的寻路算法,最终可为公司确定合理的一号运输方案:两辆车全程总和为295公里(见正文);然后建立线性规划模型得出二号运输方案:两辆车全程总和为290公里(见正文);
针对问题四,
一、问题分析
对问题(一)的分析就是求指定两点间的最短路径问题,对此我们可以采用dijkstra算法可以很简单的算出答案,由此延伸一下我们可以推广到可找出第二个客户到任何一个客户的的最短路径,为此我们也将找出此类题目的一般lingo算法。
对问题(二)的分析,由提货点出发再返回到提货点,而且这条路径必须是相对而言最短的,显然这个问题是在模型中找出一条最短的哈密尔顿回路的问题,建立相应的线性规划模型就能最终找到一条满足条件的较理想的的结果对问题(三)的分析,这个问题主要是要把9个客户(1好客户为提货点)分成两个集合,然后依次构建出两个完整的最短的汉密尔顿回路。
对问题(四)的分析
关键字:Dijkstra算法, prim算法, 哈密顿回路
二、模型假设
1、任何两个客户之间的路径长度都是固定的,不存在临时出发状况例如绕道,改道的情况。
2、不考虑任何现实状况中的实际情况,一切按照题目的数据进行求解。
三、符号说明
c表示从第i个客户到第j个客户的路线距离
ij。