多式联运在我国是指通过转运衔接两种以上的运输方式,从而将货物从出发点送到目的地的过程。多式联运对多种运输方式的集成,是将相互独立的不同运输方式通过一些科学的算法统筹计划,从而减少整个运输过程的时间与费用,减少中途转运时因为没有计划,产生的等待时间,使用户尽可能得到最好的运输路线,合理的运输成本与运输时间。多式联运同时也是一种以实现货物运输效益达到最优为目标的组织方式。各个分段的分段承运人和作为多式联运运营商的总承运人合作完成货物的运输与中转的过程。它将运输全过程看作一个整体,通过联合各种不同的运输方式,形成连续的、最优的、综合一体化运输体系。
目前主要的多式联运形式有四种,它们分别为 “公铁联运”、“海空联运”、“海陆联运”、“陆桥联运”。
多式联运路径优化问题可以描述为:某次物流作业经过由N 个城市组成的运输网络,需要将一批货品从起始地O 运送至目的地D,在网络中的两个城市之间都有K 种运输的方式可供选择,各种运输方式的运输时间、费用及运输承载量都不相同,每到一个城市都可以选择是否更换运输工具,一种运输方式转运为另一种运输方式时,需要支付该过程所产生的人员的劳务费用和并且占用一定的时间,因此问题就是怎么选择良好的运输路线与相应的运输方式,使得总物流费用最低。
多式联运模型相对而言比较简单,Reddy 以费用最小为目标,城市间运输的方式已确定,运输费用和运输距离成正比建立模型。模型为:
带时间窗的多式联运优化模型:
在上一节的模型中并未考虑时间因素,一是在目标上,这是大多数运输无论是否为多式联运,都应考虑的问题。一次运输作业,总会有它的限定时间,能否在规定的时间内将货物送达,非常关键。二是到达中间节点的时间,时间上的无缝衔接是多式联运的一大特点与优势,多式联运中,转运节点前一个运输的到达时间,与后一个运输的出发时间是否相互冲突,直接影响着运输的质量与总运输时间。
模型如下:
第三章第四节所描述的模型,若要用暴力算法求解,那么它的时间复杂度为𝑘𝑁 ∗ 𝐴𝑁 𝑁,当N 大于20 时就已经不是一般的计算机能很快算出的了。而对于经常在求最短路径的dijkstra算法,在复杂的多式联运中也具有较高的复杂度。因为dijkstra 算法往往在计算之前先对节点按照距离进行大致上的排序,但是在多式联运中,同样两个节点不同运输方式的距离可能不同,空运或水路运输的情况下,相邻的节点的判断并不好处理,例如A→B→C 通过水路运输距离比A→C 要长,但由于A,C 不是相邻节点所以无法选择这一方案。而且由于同样的距离不同运输方式所用的时间不同,模型中时间这一目标很难同时进行优化。所以由于模型的复杂度较大,使用智能算法进行运算。对于智能算法在路径优化上较常用到的是蚁群算法,遗传算法,模拟退火算法,粒子群算法。模拟退火算法与蚁群算法在对对多目标问题进行处理时有一定的局限性。粒子群算法虽然可以用来处理多目标问题,但它容易进入局部最优,无法得到更优解。因此本文选用遗传算法对多式联运模型进行求解,为了同时对模型的多个目标都进行处理,采用Pareto 适应度进行选择操作。
结果:
上述图像是文献中给出的结果,利用遗传算法完成。
参考文献:《遗传算法在多式联运路径优化的应用》
大家如果有多式联运方面的问题,欢迎联系,可以使用python编程,用遗传算法、NAGA2、NSGA3等智能优化算法解决多式联运问题。
联系微信:canglang12002
往期推荐: