一种组单方法和装置与流程

文档序号:33955112发布日期:2023-04-26 14:47阅读:52来源:国知局
一种组单方法和装置与流程

本发明涉及计算机,尤其涉及一种组单方法和装置。


背景技术:

1、小型标准仓库处理订单时需要在待拣货订单构成的订单池中将部分订单组合后,再交由拣货员拣货,以达到节约拣货时长、降低人力成本、调控仓库流量的目的。目前组单有四种方案:方案一为人工组单方式,即主要依靠人工经验进行组单,由专门的组单员根据订单池中订单数量及订单储位所在的区域,依照基本约束条件采用先进先组单的原则定时进行组合订单;方案二为单目标组单方式,即依照基本约束条件,单目标组单算法依靠如跨巷道数、储区数、储位数等单目标来评估计算;方案三为多目标优化组单方式,即依照基本约束条件,多目标优化组单算法将储区数、巷道数、储位数等多目标统筹考虑并依照仓库需求分配权重;方案四为以深度学习和机器学习为代表的组单组单方式,即依照基本约束条件,运用深度学习和机器学习模型对仓库内基于储位点间空间分布进行预估并聚类,计算最优集合单。

2、在实现本发明过程中,发明人发现现有技术中至少存在如下问题:

3、方案一组单效率较低,人力成本高,难以保证集合单效果最优且经常出现错集、漏集等现象;方案二的集合单质量较差,拣货员平均拣货时长较长;方案第三采用多类过程指标进行优化,各优化目标在权重分配时通常依照经验分配,与最终评估指标相关性存在偏差,导致集合单质量较差;方案四组单过程进行了理想简化,忽略了工业工程实际场景需求,需要借助求解器辅助运算,计算量极大且计算时间较长(分钟级甚至小时级),难以应对工业级算法需求(秒级甚至分钟级)。


技术实现思路

1、有鉴于此,本发明实施例提供一种组单方法和装置,能够提高集合单质量和组单效率,防止错集或漏集,减少计算量和计算时间,降低人力成本,满足工业级算法需求。

2、为实现上述目的,根据本发明实施例的一个方面,提供了一种组单方法。

3、一种组单方法,包括:基于订单的拣货行程时间,通过种子算法筛选出初始种子订单以及所述初始种子订单的后续订单,得到初始订单组合和所述初始订单组合的预估总拣货时长;所述初始种子订单的后续订单是在所述初始种子订单之后进行拣货的订单;以所述初始种子订单所在的层为初始层,通过预设的定序跳转的变邻域搜索算法,逐层搜索确定所述初始层后续各层的种子订单,其中:在每层搜索时定义所搜索的层为当前层,基于距上一层种子订单的拣货行程时间,对所述当前层的待搜索订单进行排序得到订单序列,并按照搜索规则在所述订单序列中多次搜索订单,在每次搜索时基于搜索到的订单,通过种子算法确定订单组合并得到对应的预估总拣货时长,将所述当前层搜索到的各订单中,所确定的订单组合的预估总拣货时长最优的订单作为所述当前层的种子订单;当完成所有层的搜索后,以最终确定出的预估总拣货时长最优的订单组合为集合单,并输出所述集合单和对应的预估总拣货时长。

4、可选地,所述基于订单的拣货行程时间,通过种子算法筛选出初始种子订单以及所述初始种子订单的后续订单,包括:选取距出发点的拣货行程时间最短的订单,作为所述初始种子订单;在选取所述初始种子订单的后续的每一订单时,对待选取的各订单排序,在满足订单组合限制条件的情况下,从待选的各订单构成的序列中,选出距上一次选取的订单的拣货行程时间最短的订单。

5、可选地,所述按照搜索规则在所述订单序列中多次搜索订单,在每次搜索时基于搜索到的订单,通过种子算法确定订单组合并得到对应的预估总拣货时长,包括:以所述订单序列中距上一层种子订单的拣货行程时间最短的订单,作为所述当前层的备选种子订单,以基于所述备选种子订单确定的订单组合的预估总拣货时长作为最优预估总拣货时长;按照初始邻域动作范围确定所述订单序列中的目标搜索订单,基于所述目标搜索订单,通过所述种子算法确定订单组合,并得到对应的预估总拣货时长;将基于所述目标搜索订单确定的订单组合的预估总拣货时长与基于所述备选种子订单确定的订单组合的预估总拣货时长比较;在基于所述目标搜索订单确定的订单组合的预估总拣货时长小于基于所述备选种子订单确定的订单组合的预估总拣货时长的情况下,作为将所述当前层的备选种子订单更新为所述目标搜索订单,以及将所述最优预估总拣货时长更新为基于所述目标搜索订单确定的订单组合的预估总拣货时长,然后跳转到所述按照初始邻域动作范围确定所述订单序列中的目标搜索订单的步骤,以确定新的目标搜索订单并进行下一次搜索。

6、可选地,还包括:在基于所述目标搜索订单确定的订单组合的预估总拣货时长大于或等于基于所述备选种子订单确定的订单组合的预估总拣货时长的情况下,判断当前是否达到所述当前层的搜索终止条件,若未达到,则改变当前的所述邻域动作范围,以新的所述邻域动作范围确定所述订单序列中的目标搜索订单,并跳转到所述基于所述目标搜索订单,通过所述种子算法确定订单组合,并得到对应的预估总拣货时长的步骤,以进行下一次搜索,其中,所述当前层的搜索终止条件为当前的所述邻域动作范围已达到邻域动作变化最大值或已搜索完所述订单序列的所有订单。

7、可选地,所述改变当前的所述邻域动作范围,以新的所述邻域动作范围确定所述订单序列中的目标搜索订单,包括:将当前的所述邻域动作范围自增预设值,得到新的所述邻域动作范围,根据新的所述邻域动作范围得到所述备选种子订单与所述目标搜索订单在所述订单序列中的距离,以确定所述目标搜索订单在所述订单序列中的位置。

8、可选地,所述判断当前是否达到所述当前层的搜索终止条件之后,还包括:如果当前已达到所述当前层的搜索终止条件,则以所述当前层最新的备选种子订单作为所述当前层的种子订单,然后继续搜索确定所述当前层的下一层的种子订单。

9、可选地,所述按照初始邻域动作范围确定所述订单序列中的目标搜索订单,包括:获取所述初始邻域动作范围,根据所述初始邻域动作范围得到所述备选种子订单与所述目标搜索订单在所述订单序列中的距离,以确定所述目标搜索订单在所述订单序列中的位置。

10、可选地,还包括:如果根据所述初始邻域动作范围,所述订单序列中不存在所述目标搜索订单,则以所述当前层最新的备选种子订单作为所述当前层的种子订单,然后继续搜索确定所述当前层的下一层的种子订单。

11、可选地,所述继续搜索确定所述当前层的下一层的种子订单之前,包括:确认所述当前层对应的层数小于预设的邻域层数,所述邻域层数是根据集合单允许的订单最大数量所设定的搜索层数上限。

12、可选地,所述基于所述目标搜索订单,通过所述种子算法确定订单组合,并得到对应的预估总拣货时长,包括:由所述当前层之前的各层种子订单、所述目标搜索订单,得到已确定的订单子集;选取所述目标搜索订单的后续订单,所述目标搜索订单的后续订单是在所述目标搜索订单之后进行拣货的订单;其中,在选取所述目标搜索订单后续的每一订单时,对剩余订单排序,在满足订单组合限制条件的情况下,从所述剩余订单的序列中,选出距上一次选取的订单的拣货行程时间最短的订单;由所述订单子集中的各订单、所述目标搜索订单的后续各订单,得到基于所述目标搜索订单确定的订单组合和对应的预估总拣货时长,该订单组合的预估总拣货时长为该订单组合中所有订单的拣货时长之和。

13、可选地,所述基于订单的拣货行程时间,通过种子算法筛选出初始种子订单以及所述初始种子订单的后续订单之前,包括:判断当前是否存在特殊储位订单,在存在所述特殊储位订单的情况下,基于所述特殊储位订单生成第一订单组合;所述得到初始订单组合和所述初始订单组合的预估总拣货时长,包括:选取距出发点的拣货行程时间最短的订单,作为所述初始种子订单,在满足订单组合限制条件的情况下,将所述初始种子订单加入所述第一订单组合;选取所述初始种子订单的后续订单,其中,在选取所述初始种子订单的后续的每一订单时,对待选取的各订单排序,在满足订单组合限制条件的情况下,从待选订单序列中选出距上一次选取的订单的拣货行程时间最短的订单,加入所述第一订单组合;根据最终的所述第一订单组合和对应的预估总拣货时长,得到所述初始订单组合和所述初始订单组合的预估总拣货时长。

14、可选地,所述订单组合限制条件包括:集合单允许的最大承载重量、最大承载体积、订单数量上限、品类、批次号、等级、cpu最大计算能力中的一种或多种。

15、根据本发明实施例的另一方面,提供了一种组单装置。

16、一种组单装置,包括:初始订单组合生成模块,用于基于订单的拣货行程时间,通过种子算法筛选出初始种子订单以及所述初始种子订单的后续订单,得到初始订单组合和所述初始订单组合的预估总拣货时长;所述初始种子订单的后续订单是在所述初始种子订单之后进行拣货的订单;组单模块,用于以所述初始种子订单所在的层为初始层,通过预设的定序跳转的变邻域搜索算法,逐层搜索确定所述初始层后续各层的种子订单,其中:在每层搜索时定义所搜索的层为当前层,基于距上一层种子订单的拣货行程时间,对所述当前层的待搜索订单进行排序得到订单序列,并按照搜索规则在所述订单序列中多次搜索订单,在每次搜索时基于搜索到的订单,通过种子算法确定订单组合并得到对应的预估总拣货时长,将所述当前层搜索到的各订单中,所确定的订单组合的预估总拣货时长最优的订单作为所述当前层的种子订单;当完成所有层的搜索后,以最终确定出的预估总拣货时长最优的订单组合为集合单,并输出所述集合单和对应的预估总拣货时长。

17、可选地,所述初始订单组合生成模块还用于:选取距出发点的拣货行程时间最短的订单,作为所述初始种子订单;在选取所述初始种子订单的后续的每一订单时,对待选取的各订单排序,在满足订单组合限制条件的情况下,从待选的各订单构成的序列中,选出距上一次选取的订单的拣货行程时间最短的订单。

18、可选地,所述组单模块还用于:以所述订单序列中距上一层种子订单的拣货行程时间最短的订单,作为所述当前层的备选种子订单,以基于所述备选种子订单确定的订单组合的预估总拣货时长作为最优预估总拣货时长;按照初始邻域动作范围确定所述订单序列中的目标搜索订单,基于所述目标搜索订单,通过所述种子算法确定订单组合,并得到对应的预估总拣货时长;将基于所述目标搜索订单确定的订单组合的预估总拣货时长与基于所述备选种子订单确定的订单组合的预估总拣货时长比较;在基于所述目标搜索订单确定的订单组合的预估总拣货时长小于基于所述备选种子订单确定的订单组合的预估总拣货时长的情况下,作为将所述当前层的备选种子订单更新为所述目标搜索订单,以及将所述最优预估总拣货时长更新为基于所述目标搜索订单确定的订单组合的预估总拣货时长,然后跳转到所述按照初始邻域动作范围确定所述订单序列中的目标搜索订单的步骤,以确定新的目标搜索订单并进行下一次搜索。

19、可选地,所述组单模块还用于:在基于所述目标搜索订单确定的订单组合的预估总拣货时长大于或等于基于所述备选种子订单确定的订单组合的预估总拣货时长的情况下,判断当前是否达到所述当前层的搜索终止条件,若未达到,则改变当前的所述邻域动作范围,以新的所述邻域动作范围确定所述订单序列中的目标搜索订单,并跳转到所述基于所述目标搜索订单,通过所述种子算法确定订单组合,并得到对应的预估总拣货时长的步骤,以进行下一次搜索,其中,所述当前层的搜索终止条件为当前的所述邻域动作范围已达到邻域动作变化最大值或已搜索完所述订单序列的所有订单。

20、可选地,所述组单模块还用于:将当前的所述邻域动作范围自增预设值,得到新的所述邻域动作范围,根据新的所述邻域动作范围得到所述备选种子订单与所述目标搜索订单在所述订单序列中的距离,以确定所述目标搜索订单在所述订单序列中的位置。

21、可选地,所述组单模块还用于:如果当前已达到所述当前层的搜索终止条件,则以所述当前层最新的备选种子订单作为所述当前层的种子订单,然后继续搜索确定所述当前层的下一层的种子订单。

22、可选地,所述组单模块还用于:获取所述初始邻域动作范围,根据所述初始邻域动作范围得到所述备选种子订单与所述目标搜索订单在所述订单序列中的距离,以确定所述目标搜索订单在所述订单序列中的位置。

23、可选地,所述组单模块还用于:如果根据所述初始邻域动作范围,所述订单序列中不存在所述目标搜索订单,则以所述当前层最新的备选种子订单作为所述当前层的种子订单,然后继续搜索确定所述当前层的下一层的种子订单。

24、可选地,所述组单模块还用于:确认所述当前层对应的层数小于预设的邻域层数,所述邻域层数是根据集合单允许的订单最大数量所设定的搜索层数上限。

25、可选地,所述组单模块还用于:由所述当前层之前的各层种子订单、所述目标搜索订单,得到已确定的订单子集;选取所述目标搜索订单的后续订单,所述目标搜索订单的后续订单是在所述目标搜索订单之后进行拣货的订单;其中,在选取所述目标搜索订单后续的每一订单时,对剩余订单排序,在满足订单组合限制条件的情况下,从所述剩余订单的序列中,选出距上一次选取的订单的拣货行程时间最短的订单;由所述订单子集中的各订单、所述目标搜索订单的后续各订单,得到基于所述目标搜索订单确定的订单组合和对应的预估总拣货时长,该订单组合的预估总拣货时长为该订单组合中所有订单的拣货时长之和。

26、可选地,所述初始订单组合生成模块还用于:判断当前是否存在特殊储位订单,在存在所述特殊储位订单的情况下,基于所述特殊储位订单生成第一订单组合;选取距出发点的拣货行程时间最短的订单,作为所述初始种子订单,在满足订单组合限制条件的情况下,将所述初始种子订单加入所述第一订单组合;选取所述初始种子订单的后续订单,其中,在选取所述初始种子订单的后续的每一订单时,对待选取的各订单排序,在满足订单组合限制条件的情况下,从待选订单序列中选出距上一次选取的订单的拣货行程时间最短的订单,加入所述第一订单组合;根据最终的所述第一订单组合和对应的预估总拣货时长,得到所述初始订单组合和所述初始订单组合的预估总拣货时长。

27、可选地,所述订单组合限制条件包括:集合单允许的最大承载重量、最大承载体积、订单数量上限、品类、批次号、等级、cpu最大计算能力中的一种或多种。

28、根据本发明实施例的又一方面,提供了一种电子设备。

29、一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现本发明实施例所提供的组单方法。

30、根据本发明实施例的又一方面,提供了一种计算机可读介质。

31、一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例所提供的组单方法。

32、上述发明中的一个实施例具有如下优点或有益效果:基于订单的拣货行程时间,通过种子算法筛选出初始种子订单以及初始种子订单的后续订单,得到初始订单组合和对应的预估总拣货时长,以初始种子订单层为初始层,通过预设的定序跳转的变邻域搜索(sr-vns)算法,逐层搜索确定初始层后续各层的种子订单,即确定集合单中的每层订单,具体在搜索确定集合单中的每层订单时,根据与上一层订单间的储位间行程时间进行升序排序,利用种子算法确定订单组合,并得出预估总拣货时长最优的订单组合,在搜索时首先在每一层中搜索,在本层搜索未得到一个比当前解更优的解的时候,则跳到下一个层继续进行搜索,同时保留当前层种子订单,若在下一个层搜索得到一个比当前解更优解的时候,则在当前邻域动作范围内重新搜索而不返回上一层邻域,继而极大节约了计算时间,当完成所有层的搜索后,以最终确定出的预估总拣货时长最优的订单组合为集合单,并输出集合单和对应的预估总拣货时长,通过本发明实施例得到的集合单将为后续拣货行程路径设计提供基础数据保障,能够提高集合单质量和组单效率,防止错集或漏集,减少计算量和计算时间,降低人力成本,满足工业级算法需求。

33、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1