数学建模运输问题.doc

数学建模运输问题.doc

ID:48545230

大小:247.50 KB

页数:17页

时间:2020-01-27

数学建模运输问题.doc_第1页
数学建模运输问题.doc_第2页
数学建模运输问题.doc_第3页
数学建模运输问题.doc_第4页
数学建模运输问题.doc_第5页
资源描述:

《数学建模运输问题.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.word格式,华东交通大学数学建模2012年第一次模拟训练题所属学校:华东交通大学(ECJTU)参赛队员:胡志远、周少华、蔡汉林、段亚光、李斌、邱小秧、周邓副、孙燕青指导老师:朱旭生(博士)摘要:本文的运输问题是一个比较复杂的问题,大多数问题都集中在最短路径的求解问题上,问题特点是随机性比较强。根据不同建模类型针对问题一,我们直接采用Dijkstra算法(包括lingo程序和手算验证),将问题转化为线性规划模型求解得出当运送员在给第二个客户卸货完成的时,若要他先给客户10送货,此时尽可能短的行使路线为:,总行程85公里。针对问题二,我们首

2、先利用prim算法求解得到一棵最小生成树:再采用Dijkstra算法求得客户2返回提货点的最短线路为故可得到一条理想的回路是:后来考虑到模型的推广性,将问题看作是哈密顿回路的问题,建立相应的线性规划模型求解,最终找到一条满足条件的较理想的的货车送货的行车路线:。针对问题三,我们首先直接利用问题二得一辆车的最优回路,以货车容量为限定条件,建立相应的规划模型并设计一个简单的寻路算法,最终可为公司确定合理的一号运输方案:两辆车全程总和为295公里(见正文);然后建立线性规划模型得出二号运输方案:两辆车全程总和为290公里(见正文);针对问题四,,

3、专业.专注..word格式,一、问题分析对问题(一)的分析就是求指定两点间的最短路径问题,对此我们可以采用dijkstra算法可以很简单的算出答案,由此延伸一下我们可以推广到可找出第二个客户到任何一个客户的的最短路径,为此我们也将找出此类题目的一般lingo算法。对问题(二)的分析,由提货点出发再返回到提货点,而且这条路径必须是相对而言最短的,显然这个问题是在模型中找出一条最短的哈密尔顿回路的问题,建立相应的线性规划模型就能最终找到一条满足条件的较理想的的结果对问题(三)的分析,这个问题主要是要把9个客户(1好客户为提货点)分成两个集合,然

4、后依次构建出两个完整的最短的汉密尔顿回路。对问题(四)的分析关键字:Dijkstra算法,prim算法,哈密顿回路二、模型假设1、任何两个客户之间的路径长度都是固定的,不存在临时出发状况例如绕道,改道的情况。2、不考虑任何现实状况中的实际情况,一切按照题目的数据进行求解。三、符号说明表示从第i个客户到第j个客户的路线距离表示第i个客户到第j个客户的0-1变量(注:其他变量在模型中定义)四、模型的建立与求解问题一、模型一:直接求解:为了简化问题我们用dijistra算法直接求解,然后用表格法简化其操作步骤:12345678910,专业.专注.

5、.word格式,A5030*infi3550infi60infiInfiB504535*508055infi90C5045*50455590D505045*558590F50*50558590G50*558590H55*8590I65*90J85*由上表我们显然可以得到一条最短路径:2à3à8à9à10(且最短路径为85)同样从上表格中我们不但可以找出客户2到客户10的最短路径同样可以找出客户到其他任何客户位置的最短路径列表如下:2à1(最短路径为50)2à3(最短路径为30)2à3à4(最短路径为45)2à5(最短路径为35)2à6(最短

6、路径为50)2à5à7(最短路径为45)2à3à8(最短路径为552à3à8à9(最短路径为65)模型二:编写出lingo的算法求解:定义是由点出发至终点的最短路程,由最优化原理可得这是一个函数方程,用LINGO可以很方便的解决。model:data:n=10;enddatasets:points/1..n/:F;!10个客户点;roads(points,points)/1,22,32,52,62,83,43,63,73,83,10,专业.专注..word格式,4,54,64,74,84,94,105,65,75,85,106,76,86,

7、97,87,97,108,99,10/:D,P;endsetsdata:D=50303550601530502560453055204065601030552555353045601020;enddataF(n)=0;@for(points(i)

8、i#lt#n:F(i)=@min(roads(i,j):D(i,j)+F(j)););!显然,如果P(i,j)=1,则点i到点n的最短路径的第一步是i-->j,否则就不是。由此,我们就可方便的确定出最短路径;@for(roads(i,j):P(i,j)=@if(F(i)#eq#D(i,j)+F(j

9、),1,0));End摘入Lingo的部分显示结果:P(1,2)1.000000P(2,3)1.000000P(2,5)0.000000P(2,6)0.000000P(2,8)0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。