×
  • 登录

注册账号 |  忘记密码

社交账号登录
数学建模--运输问题doc

  数学建模--运输问题doc该【数学建模--运输问题 】是由【艾米】上传分享,文档一共【25】页,该文档可以免费在线阅读,需要了解更多关于【数学建模--运输问题 】的内容半岛,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。数学建模--运输问题

  本文主要研究的是货物运输的最短路径问题,利用图论中的Floyd算法、Kruskal算法,以及整数规划的方法建立相关问题的模型,通过matlab,lingo编程求解出最终结果。

  关于问题一,是一个两客户间最短路程的问题,因此本文利用Floyd算法对其进行分析。考虑到计算的方便性,首先,我们将两客户之间的距离输入到网络权矩阵中;然后,逐步分析出两客户间的最短距离;最后,利用Matlab软件对其进行编程求解,运行得到结果:----总路程为公里。

  关于问题二,运输公司分别要对个客户供货,必须访问每个客户,实际上是一个旅行商问题。首先,不考虑送货员返回提货点的情形,本文利用最小生成树问题中的Kruskal算法,结合题中所给的邻接矩阵,很快可以得到回路的最短路线:---------;然后利用问题一的Floyd算法编程,能求得从客户到客户(提货点)的最短路线是:-,路程为公里。即最短路线为:----------。但考虑到最小生成树法局限于顶点数较少的情形,不宜进一步推广,因此本文建立以路程最短为目标函数的整数规划模型;最后,利用LINGO软件对其进行编程求解,求解出的回路与Kruskal算法求出的回路一致。

  关于问题三,是在每个客户所需固定货物量的情况下,使得行程之和最短。这样只要找出两条尽可能短的回路,并保证每条线路客户总需求量在个单位以内即可。因此我们在问题二模型的基础上进行改进,以货车容量为限定条件,建立相应的规划模型并设计一个简单的寻路算法,对于模型求解出来的结果,本文利用Kruskal算法结合题中所给的邻接矩阵进行优化。得到优化结果为:第一辆车:-------,第二辆车:-----,总路程为公里。

  关于问题四,在问题一的基础上我们首先用Matlab软件编程确定提货点到每个客户点间的最短路线,然后结合一些限定条件建立一个目标模型,设计一个较好的解决方案进行求解可得到一种很理想的运输方案。根据matlab运行结果分析得出条最优路线分别为:--,---,--,--。最短总路线为公里,最小总费用为。

  关于问题一,是一个两客户间最短路程的问题,因此本文利用Floyd算法对其进行分析。考虑到计算的方便性,首先,我们将两客户之间的距离输入到网络权矩阵中;然后,逐步分析出两客户间的最短距离;最后,利用Matlab软件对其进行编程求解。

  关于问题二,运输公司分别要对个客户供货,必须访问每个客户,实际上是寻找一条最短的行车路线。首先,不考虑送货员返回提货点的情形,本文利用最小生成树问题中的Kruskal算法,结合题中所给的邻接矩阵,很快可以得到回路的最短路线:;然后利用问题一的Floyd算法和程序,能求得从客户到客户(提货点)的最短路线是:,路程为公里。但考虑到最小生成树法局限于顶点数较少的情形,不宜进一步推广,因此本文又根据路程最短建立以路程最短为目标函数的整数规划模型;最后,利用LINGO软件对其进行编程求解。

  关于问题三,是在每个客户所需固定货物量的情况下,使得行程之和最短。这样只要找出两条尽可能短的回路,并保证每条线路客户总需求量在个单位以内即可。因此我们在问题二模型的基础上进行改进,以货车容量为限定条件,建立相应的规划模型并设计一个简单的寻路算法,对于模型求解出来的结果,本文利用Kruskal算法结合题中所给的邻接矩阵进行优化。

  关于问题四,我们首先用Matlab软件编程确定提货点到每个客户点间的最短路线,然后结合一些限定条件建立一个目标模型,设计一个较好的解决方案进行求解可得到一种很理想的运输方案。

  在本文计算中,对Floyd算法进行编程(程序见附录),利用Matlab软件进行求解。运行结果如下:

  运输公司为这个客户配送货物问题实际上是寻找一条最短的行车路线。当不考虑送货员返回提货点的时候,本文利用最小生成树问题中的Kruskal算法结合题中所给的邻接矩阵,很快可以得到无回路的最短路线。

  利用最小生成树问题中的Kruskal算法结合题中所给的邻接矩阵,很快可以得到以下最小生成树:

  这两棵生成树不同之处就在于从客户到达客户的路径不一样,而实际路程经过计算后是一样的,路线的总行程为公里。利用问题一的Floyd算法和程序,能求得从客户到客户(提货点)的最短路线是,路程为公里。

  以最小生成树法解决此问题速度快,结果较精确,但是只适合数目较少时,不适宜推广,因此本文又根据路程最短建立整数规划模型。

  当访问客户i后必须要有一个即将访问的确切客户;访问客户j前必须要有一个刚刚访问过的确切客户。依次设立约束条件。

  用两辆容量为单位的小货车运货,在每个客户所需固定货物量的情况下,要使得行程之和最短。这样只要找出两条尽可能短的回路,并保证每条线路客户总需求量在个单位以内。此问与问题二有相似之处都要考虑回到提货点的情形,因此本文在模型的基础上进行改进,重新建立相应的整数线性规划模型。

  从起始点处,进行分析,用两辆小的货车配送货物,为了尽可能的减少两辆车的重复路线,到、的路程最短,让两辆车分开运货,先根据货物承载量的限制让其中的一辆车走完路程,再让另一辆车走剩余城市的最短路线,这样走出两条运货路线:

  第一辆车:,包含的客户有,,,,,从模型可解得,从回到的最短路线是,运货总量为单位,路程为公里。

  第一辆车:,包含的客户有,,,,,从模型可解得,从回到的最短路线是,运货总量为单位,路程为公里。

  题目要求我们运费最省,所以要考虑到需要的车最少,以及每辆车行驶的路程最短,而且还要保证送到每个客户手中。根据客户总需求量和货车的容量,所以,公司可派辆货车去送货。在此,我们假设:

  首先为了保证送到每个客户手里,所以必须走,那样就可以删除;然后考虑到货车的路程最短,所以要走,删除;最后,就只能走---路线。

相关推荐