技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种基于改进粒子群算法的二维装箱车辆路径规划方法  >  正文

一种基于改进粒子群算法的二维装箱车辆路径规划方法

  • 国知局
  • 2024-08-19 14:26:07

本发明属于车辆路径规划及粒子群算法,具体涉及一种基于改进粒子群算法的二维装箱车辆路径规划方法。

背景技术:

1、近年来物流行业发展迅速已初具规模,为进一步提升物流效率,保障物流服务质量,传统物流行业亟需进一步信息化和智能化转型,以降低运输成本、提升效率。如何优化运输路线、设计合理的装载方案,实现在兼顾运输能力与效率的同时降低物流成本具有重要的现实指导意义。

2、在实际物流运输中,对于具有不同体积、需要装箱的物品配送而言,装箱和运输是两个相互制约、不可分割的过程,研究人员提出带二维装载约束的车辆路径问题(capacitated vehicle routing problem with two dimensional loadingconstraints,2l-cvrp)以优化物品配送路线和装箱效率。该问题是指在给定装载区域的二维平面上,按订单需求将一定数量的货物进行组合摆放,之后车辆需要按照一定的路径将这些货物运输到目的地。这里,一方面需要考虑货物的形状、大小、重量如何适配装载区域的布局和车辆的载重等因素,另一方面,还需要考虑货物装箱顺序与运输路径之间的耦合关系,在此基础上规划最优路径,进而提高物流效率,降低运输成本。对二维装载约束下车辆路径问题进行研究和优化,可以为物流运输行业提供更加科学、高效的运输方案,有助于提升整个物流运输系统的运作效率和服务质量。

3、针对2l-cvrp问题,国内外学者提出了许多精确或启发式的优化方法。wei等人设计了一种skyline装箱启发式贪婪算法求解2l-cvrp,该算法通过上界线(skyline)和坐标点(candidate position)的概念来描述装箱模式,能够快速给出一种可接受的装箱方案。iori等人于2007年使用分支定界算法求解了该问题的下界,同时检测装箱可行性。fuellerer等人使用一种蚁群算法求解该问题,在求解大规模算例中取得了一定的优势。

4、然而,采用上述启发式或精确算法交互的优化算法进行求解,存在难以保证最优性和时效性等不足,还有些算法仅将贪婪路径规划方法与skyline算法简单结合因此无法协同优化装箱和路径规划两个子问题难以求得满意解。此外,在实际物流运输过程中存在订单的货物需求量超出车辆装载限制的配送,此时必须考虑对订单进行拆分后装箱运输的情况,针对此类情况研究人员提出了货物可拆分的2l-cvrp问题,但相关研究还较为欠缺。

技术实现思路

1、有鉴于此,本发明提供了一种基于改进粒子群算法的二维装箱车辆路径规划方法,实现了基于实际货物订单属性的装箱及运输一体化规划。

2、本发明提供的一种基于改进粒子群算法的二维装箱车辆路径规划方法,包括以下步骤:

3、步骤1、对订单进行数据预处理,初始化调度货车数据及城市距离数据;根据是否可拼车将订单i分为可拼车订单集合sh1和不可拼车订单集合sh0;对于集合sh1中的订单执行步骤2,对于集合sh0中的订单执行步骤3;

4、步骤2、采用pso算法对订单编码形成有序序列,再将有序序列随机打乱ps次得到ps个随机排序序列作为粒子个体,由这些粒子个体组成第一代的粒子群种群,设置种群数量ps、最大迭代次数mg、个体学习概率α及群体学习概率β,执行步骤4;

5、步骤3、将订单划分到不需拆分订单的集合sp0和需拆分订单的集合sp1,对于集合sp1中的订单采用最少拆分原则确定所需货车的总数量,并计算订单剩余货物托数,再将由剩余货物托数形成的重组订单添加到集合sp0中,计算订单费用;对于集合sp0中的订单遍历匹配货车后,计算订单费用;集合sp0与集合sp1中所有订单的订单费用之和为集合sh0的总费用,同时得到集合sh0的运输方案,执行步骤7;

6、步骤4、计算第一代的粒子群种群中每个粒子个体的适应度,适应度的取值为粒子个体对应的订单序列的总费用的倒数;以粒子个体在第一代的粒子群种群中的排序序列位置作为其第一代最优位置以其在第一代的适应度作为第一代最优适应度值将第一代的粒子群种群中具有最高适应度值的个体在粒子群种群中的顺序作为群体的第一代最优位置该最高适应度值作为群体的第一代最优适应度值

7、步骤5、执行粒子群种群算法,根据第i个粒子个体当前第d代的位置计算其速度及其在下一代的位置

8、步骤6、若当前迭代次数未达到最大迭代次数则执行步骤5;否则,将当前粒子群种群中的群体最优解及最优解适应度值作为最终结果,并根据得到最优订单排序序列,根据得到最低成本,执行步骤7;

9、步骤7、合并输出可拼车与不可拼车订单的运输方案,计算所有订单的运输成本。

10、进一步地,所述步骤3中所述将订单划分到不需拆分订单的集合sp0和需拆分订单的集合sp1,采用以下公式判断第i个订单是否需要拆分:

11、

12、其中,ma为a车型的最大载重,ti为第i个订单的货物总质量,ni为第i个订单的总托数,na为a车最多可装下的第i个订单货物的托数;

13、na由以下公式计算:

14、na=max{[la/li]·[wa/wi],[la/wi]·[wa/li]}

15、其中,la为a车型装载区域长度,wa表示a车型装载区域宽度,li和wi分别表示第i单的货物长度和宽度,[ ]表示取整运算符。

16、进一步地,所述步骤3中所述对于集合sp0中的订单遍历匹配货车后,计算订单费用,包括:

17、假设第i单对应的货车车型为xi,按载重上限由小到大遍历车型直到xi满足下式即确定最合适的车型:

18、

19、其中,为xi车型的载重上限,ti为第i个订单的货物总质量,ni为第i个订单的总托数,为xi车最多可以装下第i单货物的托数;

20、记录当前的订单号oni与对应的车型xi,并计算单笔订单费用:

21、

22、所有不拼车且不需拆分的订单的费用和为:

23、

24、为车型xi对应的单公里成本,di为第i个订单始发地与目的地间的城市距离。

25、进一步地,所述步骤3中所述对于集合sp1中的订单采用最少拆分原则确定所需货车的总数量,并计算订单剩余货物托数,再将由剩余货物托数形成的重组订单添加到集合sp0中,计算订单费用,包括:

26、采用载重上限最大的货车循环装载直到订单的剩余货物状态更新为不需拆分,计算第i个订单需要循环装载的次数ai:

27、

28、其中,ni为第i个订单的总托数,为载重上限最大的货车最多能装入的第i个订单货物的托数;

29、此时,第i个订单剩余的货物托数n′i为:

30、

31、由货物托数n′i形成重组订单;将剩余货物对应的货车车型记为xi,当前订单号oni与对应的载重上限最大的货车的车型为ai,采用如下公式计算订单的费用:

32、

33、其中,为车型ai对应的单公里成本,为车型xi对应的单公里成本,di为第i个订单始发地与目的地间的城市距离。

34、进一步地,所述步骤4中所述计算第一代的粒子群种群中每个粒子个体的适应度,包括:

35、步骤5.1、顺序读入粒子个体,对于需要拆分的订单执行步骤5.4,对于不需拆分的订单执行步骤5.2;

36、步骤5.2、将在先订单操作中输出的待拼车车辆加入本次待拼车车队集合;

37、步骤5.3、确定订单为拼车模式或单独开新车模式;

38、步骤5.4、计算可拼车且不需拆分订单的总费用

39、步骤5.5、对于可拼车且需拆分的订单,循环用最大车型a装载,设第r单循环装载br次后,剩余货物状态更新为不需要拆分;再执行可拼车且不需要拆分的处理方式,得出剩余货物的装载方式,其中拼车模式的订单r′对应的成本最低的拼车车辆为yr’;单独开新车模式的订单r″所选合适的货车车型为xr”,则订单的费用为:

40、

41、其中,dr为第r个订单始发地与目的地间的城市距离,为车型ar对应的单公里成本,br第r单所需使用的a车数量,为车型xr”对应的单公里成本,dr″为第r″个订单始发地与目的地间的城市距离,为车型yr’对应的单公里成本,dr′为第r′个订单始发地与目的地间的城市距离;

42、步骤5.6、得出单个序列即所有可拼车的订单的总费用为:

43、

44、适应度值f为:

45、进一步地,所述步骤5.3中确定订单为拼车模式或单独开新车模式,包括:

46、步骤5.3.1、若待拼车车队集合中存在车辆,则从待拼车车队集合中选择一辆车执行步骤5.3.2;若待拼车车队集合中没有车辆,则执行步骤5.3.6;

47、步骤5.3.2、若货车的剩余载重大于当前订单总质量则执行步骤5.3.3,否则将该货车的单公里成本p设置为+∞,并执行步骤5.3.1;

48、步骤5.3.3、加入当前订单目的地后,若目的地数量不超过3个则执行步骤5.3.4;否则将该货车的单公里成本p设置为+∞,并执行步骤5.3.1;

49、步骤5.3.4、对订单中的每一托货物运用skyline装箱策略,判断是否可以将该单全部托数货物放入车内,若能够放入车内则将该货车保留在待拼车车队中,执行步骤5.3.1;否则将该货车的单公里成本p设置为+∞,执行步骤5.3.1;若待拼车车队集合中所有车辆已完成遍历,则执行步骤5.3.5;

50、步骤5.3.5、若第k′个订单搜索到的待拼车车队中存在z辆符合条件的货车,且每辆的车型为则选出成本最低的车进行拼车;否则若拼车车队中没有可用车辆则执行步骤5.3.6;

51、设第k′个订单的成本最低拼车车辆为yk’,则yk’满足:

52、

53、其中,dk’为车辆yk’的原目的地到订单k′的目的地的距离;同理为车辆的原目的地到订单k′目的地的距离;再将订单k′设为拼车模式;

54、则拼车模式下单笔订单费用为:

55、步骤5.3.6、该订单设置为单独开新车模式,将该订单作为不需拆分的订单处理,设第k″个订单选择的合适货车车型为xk”,则单独开新车模式的单笔订单费用为:并将货车xk”加入待拼车车队集合。

56、进一步地,所述步骤5中所述速度及位置的计算公式如下:

57、

58、其中,为第i个粒子个体的第d代最优解或最优位置,为第d代的全局最优解或最优位置,α为个体学习概率即向个体历史最优序列学习的概率,β为群体学习概率即向群体历史最优序列的学习概率,(α,β∈[0,1]);为基本交换序中的所有交换子以概率α保留得到的交换子序列,为基本交换序中的所有交换子以概率β保留得到的交换子序列。

59、有益效果:

60、本发明针对物流行业广泛存在的路径规划问题,考虑货物装箱及拆分后混装等实际场景,建立了基于改进粒子群算法的二维装箱约束下车辆路径规划算法,实现了根据订单的是否可拼车及是否可拆分等属性,确定装箱及运输方式,并计算运输成本,以优选出具有较低成本的最佳运输方案,以提升货物运输效率,降低物流运输成本。

本文地址:https://www.jishuxx.com/zhuanli/20240819/275180.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。