仓储排产方法及装置、存储介质、电子设备制造方法及图纸

技术编号:22418587 阅读:18 留言:0更新日期:2019-10-30 02:08
本公开是关于一种仓储排产方法及装置,属于仓储技术领域,该方法包括:获取多个排产模块分别根据获取的数据拼装得到的多个待排产数据;将包括重叠资源的所述待排产数据注册至同一个排产线程中,以及将不包括重叠资源的所述待排产数据注册至不同的排产线程中;利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果,并将已分配的排产资源存储至资源占用池中;根据所述排产结果生成排产任务,并调用所述资源占用池中所述排产任务对应的排产资源执行所述排产任务。该方法减少了系统的负担并提高了排产结果计算的成功率。

【技术实现步骤摘要】
仓储排产方法及装置、存储介质、电子设备
本公开涉及仓储
,具体而言,涉及一种仓储排产方法、仓储排产装置、计算机可读存储介质以及电子设备。
技术介绍
在仓储系统中,智能排产系统主要解决的问题可以包括:仓库各类排产资源之间的匹配关系。其中,排产资源可以包括:自动化设备(如AGV、shuttle等)、容器、商品、储位以及工作站等。进一步的,智能排产系统在排产各类任务时,会涉及到排产资源的征用问题,例如,出库、入库、盘点任务都会用到自动化设备和容器资源;多个同类任务之间也会有类似资源征用问题。在现有的处理资源征用问题时,可以有以下两种解决方案:一种是冲突回滚方案:在多个排产任务并行执行时,先排产的任务完成后对选定的排产资源进行加锁,后排产的任务如果也选择了相同排产的资源时,会导致加锁失败,此时触发数据回滚机制;无并发排产任务执行时,可并行执行任务加快处理效率,在发生并发冲突时回滚冲突数据以保证数据正确性。另一种是串行执行方案:串行执行的排产任务不会发生资源征用问题,可以根据优先周期性对各类型任务做优先级排序,先执行优先级高的任务,排产完成后依次下发排产结果,完成后再执行下一类任务;当完成一个周期的任务处理后,再执行下一个周期的任务处理。但是上述两种解决方案存在如下缺陷:对于冲突回滚方案来说,由于排产资源的匹配需要考虑的因素较多,包括库存匹配情况、路径成本、各类排产资源数量等,常常需要一定的计算时间;如果排产成功后,需要调用外围系统接口占用相应排产资源;如果排产资源占用发生冲突,回滚会十分麻烦,且会浪费计算资源,影响时效;而且,随着仓库规模的扩大以及业务类型的丰富,任务规模和各类资源数量也会增大,并发情况也会增多,频繁回滚会产生大量垃圾数据、浪费计算资源、可能造成系统的不稳定,对系统产生额外的负担;对于串行执行方案来说,该方案虽然基本不会触发回滚逻辑,在系统稳定性上有较高的保证,但是其执行效率相对较低,且随着仓库规模的扩大以及业务类型的丰富,每次执行周期的时间也会逐渐增大,会影响系统的执行效率和相应时间。因此,需要提供一种新的仓储排产方法及装置。需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
本公开的目的在于提供一种仓储排产方法、仓储排产装置、计算机可读存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的由于排产资源占用发生冲突导致回滚进而使得系统产生额外负担以及影响排产时效的问题。根据本公开的一个方面,提供一种仓储排产方法,包括:获取多个排产模块分别根据获取的数据拼装得到的多个待排产数据;将包括重叠资源的所述待排产数据注册至同一个排产线程中,以及将不包括重叠资源的所述待排产数据注册至不同的排产线程中;利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果,并将已分配的排产资源存储至资源占用池中;根据所述排产结果生成排产任务,并调用所述资源占用池中所述排产任务对应的排产资源执行所述排产任务。在本公开的一种示例性实施例中,所述仓储排产方法还包括:对所述资源占用池的资源进行管理,其包括:在所述排产模块获取数据时,根据所述排产模块获取的数据确定第一候选资源,并通过所述第一候选资源构建资源预占用池;在拼装得到所述待排产数据后,根据所述待排产数据从所述资源预占用池中确定第二候选资源,并通过所述第二候选资源构建资源占用池;在生成所述排产任务后,根据所述排产任务在所述资源占用池中确定目标资源作为所述排产任务对应的排产资源。在本公开的一种示例性实施例中,对所述资源占用池的资源进行管理还包括:在所述第一候选资源加入所述资源预占用池后,将该所述第一候选资源从所述资源预占用池中滤除;以及在所述第二候选资源被确定为所述目标资源后,将该所述第二候选资源从所述资源占用池中滤除。在本公开的一种示例性实施例中,利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果包括:如果同一个排产线程中包括多个待排产数据,则根据所述待排产数据的注册时间,启动所述排产线程依次为所述待排产数据分配排产资源以得到排产结果。在本公开的一种示例性实施例中,在利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果之后,所述仓储排产方法还包括:配置结果下发线程,并利用所述结果下发线程下发所述排产结果。在本公开的一种示例性实施例中,所述仓储排产方法还包括:判断所述排产结果是否下发成功;如果所述排产结果下发不成功,则利用异常回滚线程回滚下发失败的排产结果。在本公开的一种示例性实施例中,所述仓储排产方法还包括:判断所述异常回滚线程是否成功执行;如果所述异常回滚线程未成功执行,则查询该所述异常回滚线对应的未处理的异常回滚数据,并重新调用所述异常回滚线程处理所述未处理的异常回滚数据。在本公开的一种示例性实施例中,对所述资源占用池的资源进行管理还包括:将下发失败的排产结果对应的排产资源加入所述资源预占用池。在本公开的一种示例性实施例中,为所述待排产数据分配排产资源以得到排产结果包括:根据业务约束规则以及算法求解器为所述待排产数据分配排产资源以得到排产结果。根据本公开的一个方面,提供一种仓储排产装置,包括:待排产数据获取模块,用于获取多个排产模块分别根据获取的数据拼装得到的多个待排产数据;排产线程注册模块,用于将包括重叠资源的所述待排产数据注册至同一个排产线程中,以及将不包括重叠资源的所述待排产数据注册至不同的排产线程中;排产资源分配模块,用于利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果,并将已分配的排产资源存储至资源占用池中;排产任务执行模块,根据所述排产结果生成排产任务,并调用所述资源占用池中所述排产任务对应的排产资源执行所述排产任务。根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的仓储排产方法。根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的仓储排产方法。本公开一种仓储排产方法及装置,通过将各数据进行拼装得到待排产数据;然后将包括重叠资源的所述待排产数据注册至同一个排产线程中,以及将不包括重叠资源的所述待排产数据注册至不同的排产线程中;接着利用注册的排产线程为待排产数据分配排产资源以得到排产结果,再将已分配的排产资源存储至资源占用池中;最后调用资源占用池中排产任务对应的排产资源执行排产任务;一方面,通过将已分配的排产资源存储至资源占用池中,避免了由于排产资源占用发生冲突导致回滚进而使得系统产生额外负担以及影响排产时效的问题;减少了系统的负担并提高了排产结果计算的成功率;另一方面,通过调用资源占用池中排产任务对应的排产资源执行排产任务,提高了排产任务执行的效率以及成功率;再一方面,通过将包括重叠资源的待排产数据注册到同一排产线程,可以保证资源征用不发生冲突,通过将不包括重叠资源的待排产数据注册到不同的排产线程中,则可以对不包括重叠资源的待排产数据启用并行计算线程,因此可以大大的提高待排产数据的本文档来自技高网
...

【技术保护点】
1.一种仓储排产方法,其特征在于,包括:获取多个排产模块分别根据获取的数据拼装得到的多个待排产数据;将包括重叠资源的所述待排产数据注册至同一个排产线程中,以及将不包括重叠资源的所述待排产数据注册至不同的排产线程中;利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果,并将已分配的排产资源存储至资源占用池中;根据所述排产结果生成排产任务,并调用所述资源占用池中所述排产任务对应的排产资源执行所述排产任务。

【技术特征摘要】
1.一种仓储排产方法,其特征在于,包括:获取多个排产模块分别根据获取的数据拼装得到的多个待排产数据;将包括重叠资源的所述待排产数据注册至同一个排产线程中,以及将不包括重叠资源的所述待排产数据注册至不同的排产线程中;利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果,并将已分配的排产资源存储至资源占用池中;根据所述排产结果生成排产任务,并调用所述资源占用池中所述排产任务对应的排产资源执行所述排产任务。2.根据权利要求1所述的仓储排产方法,其特征在于,所述仓储排产方法还包括:对所述资源占用池的资源进行管理,其包括:在所述排产模块获取数据时,根据所述排产模块获取的数据确定第一候选资源,并通过所述第一候选资源构建资源预占用池;在拼装得到所述待排产数据后,根据所述待排产数据从所述资源预占用池中确定第二候选资源,并通过所述第二候选资源构建资源占用池;在生成所述排产任务后,根据所述排产任务在所述资源占用池中确定目标资源作为所述排产任务对应的排产资源。3.根据权利要求2所述的仓储排产方法,其特征在于,对所述资源占用池的资源进行管理还包括:在所述第一候选资源加入所述资源预占用池后,将该所述第一候选资源从所述资源预占用池中滤除;以及在所述第二候选资源被确定为所述目标资源后,将该所述第二候选资源从所述资源占用池中滤除。4.根据权利要求1所述的仓储排产方法,其特征在于,利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果包括:如果同一个排产线程中包括多个待排产数据,则根据所述待排产数据的注册时间,启动所述排产线程依次为所述待排产数据分配排产资源以得到排产结果。5.根据权利要求2所述的仓储排产方法,其特征在于,在利用注册的所述排产线程为各所述待排产数据分配排产资源以得到排产结果之后,所述仓储排产方法还包括:配置结果下发线程,并利用所述结果下发线程...

【专利技术属性】
技术研发人员:韩宁郎元辉朱恒斌
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1