发明内容
本发明的发明人发现上述相关技术中存在如下问题:在落袋口和站点数量较多的情况下,相关技术无法均衡各落袋口承担的流量,从而造成分拣区拥堵。针对上述问题,本发明人提出了解决方案。
本发明的一个目的是提供一种能够保证各落袋口流量均衡的货物流量分配技术方案。
根据本发明的一个实施例,提供了一种货物流量的分配方法,包括:将待分配的落袋口划分为多个落袋分区;根据各站点承担的货物流量,确定所述各站点与各落袋分区之间的分配关系,使得所述各落袋分区之间承担的货物流量的最大差值最小;将各落袋分区中的落袋口分配给对应的各站点。
可选地,根据所述各站点承担的货物流量,以各站点与各落袋分区之间的分配关系为变量建立第一目标函数,所述第一目标函数需要满足所述各落袋分区之间承担的货物流量的最大差值最小,求解所述第一目标函数以确定所述各站点与所述各落袋分区之间的分配关系。
可选地,一个站点最多与一个落袋分区具有分配关系,所述分配关系的数量大于等于所述待分配的落袋口的数量。
可选地,根据各站点承担的货物流量,确定所述各站点与对应的所述落袋分区中的各落袋口之间的分配关系,使得所述落袋分区的行流量最大差值与列流量最大差值的加权和最小,所述行流量最大差值为所述落袋分区中的各行落袋口承担的货物流量之间的最大差值,所述列流量最大差值为所述落袋分区中的各列落袋口承担的货物流量之间的最大差值,将各落袋口分配给对应的各站点。
可选地,根据各站点承担的货物流量,以各站点与对应的落袋分区内的各落袋口之间的分配关系为变量建立第二目标函数,所述第二目标函数需要满足所述落袋分区的所述行流量最大差值与所述列流量最大差值的加权和最小,求解所述第二目标函数获取所述各站点与所述各落袋口之间的分配关系。
可选地,一个站点最多与一个落袋口具有分配关系,一个落袋口最多分配给一个站点。
可选地,站点的数量与所述待分配的落袋口数量相等。
可选地,将预设数量的落袋口作为预留的落袋口,将所述预留的落袋口分配给承担货物流量大的站点。
根据本发明的另一个实施例,提供一种货物流量的分配装置,包括:落袋分区划分模块,用于将待分配的落袋口划分为多个落袋分区;落袋分区分配模块,用于根据各站点承担的货物流量,确定所述各站点与各落袋分区之间的分配关系,使得所述各落袋分区之间承担的货物流量的最大差值最小;落袋口分配模块,用于将各落袋分区中的落袋口分配给对应的各站点。
可选地,所述落袋分区分配模块根据所述各站点承担的货物流量,以各站点与各落袋分区之间的分配关系为变量建立第一目标函数,所述第一目标函数需要满足所述各落袋分区之间承担的货物流量的最大差值最小,并求解所述第一目标函数以确定所述各站点与所述各落袋分区之间的分配关系。
可选地,所述第一目标函数的约束条件包括:一个站点最多与一个落袋分区具有分配关系,所述分配关系的数量大于等于所述待分配的落袋口的数量。
可选地,所述落袋口分配模块根据各站点承担的货物流量,确定所述各站点与对应的所述落袋分区中的各落袋口之间的分配关系,使得所述落袋分区的行流量最大差值与列流量最大差值的加权和最小,所述行流量最大差值为所述落袋分区中的各行落袋口承担的货物流量之间的最大差值,所述列流量最大差值为所述落袋分区中的各列落袋口承担的货物流量之间的最大差值,并将各落袋口分配给对应的各站点。
可选地,所述落袋口分配模块根据各站点承担的货物流量,以各站点与对应的落袋分区内的各落袋口之间的分配关系为变量建立第二目标函数,所述第二目标函数需要满足所述落袋分区的所述行流量最大差值与所述列流量最大差值的加权和最小,并求解所述第二目标函数获取所述各站点与所述各落袋口之间的分配关系。
可选地,一个站点最多与一个落袋口具有分配关系,一个落袋口最多分配给一个站点。
可选地,站点的数量与所述待分配的落袋口数量相等。
可选地,所述落袋口分配模块还用于将预设数量的落袋口作为预留的落袋口,并将所述预留的落袋口分配给承担货物流量大的站点。
根据本发明的又一个实施例,提供一种货物流量的分配装置,包括:存储器以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器装置中的指令,执行上述任一实施例所述的货物流量的分配方法。
根据本发明的再一个实施例,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例所述的货物流量的分配方法。
本发明的一个优点在于,通过将待分配的落袋口划分为多个落袋分区,在保证各落袋分区之间承担的货物流量的最大差值最小的前提下为站点分配落袋分区,均衡了落袋口需要承担的流量,避免了拥堵。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1示出本发明的货物流量的分配方法的一个实施例的流程图。
在待分配的落袋口数量较大的情况下,直接求解优化问题的计算开销依然太大。例如,需要分配300个落袋口,则需要设置3002个0-1变量用于表示落袋口与站点之间的分配关系。而且在这种情况下,以松弛0-1变量为连续变量求解该优化问题无法得到整数解。
因此,本发明先将待分配的落袋口划分为多个落袋分区,以减小优化问题的变量个数。
具体地,可以通过下面的方法先获取站点与落袋分区之间的分配关系,再分配落袋分区内的落袋口给该落袋分区对应的站点。
如图1所示,该方法包括:步骤110,划分落袋分区;步骤120,确定站点与落袋分区之间的分配关系;步骤130,将落袋分区内的落袋口分配给对应的站点。
在步骤110中,将待分配的落袋口划分为多个落袋分区。
在一个实施例中,需要保证站点的数量与待分配的落袋口数量相等。例如,可以将流量较大的站点拆分成多个站点,以保证站点的数量与待分配的落袋口数量相等,从而保证各落袋口需要承担的流量均衡。
在步骤120中,根据各站点承担的货物流量,确定各站点与各落袋分区之间的分配关系,使得各落袋分区之间承担的货物流量的最大差值最小。
在一个实施例中,可以根据各站点承担的货物流量,以各站点与各落袋分区之间的分配关系为变量建立第一目标函数。第一目标函数需要满足各落袋分区之间承担的货物流量的最大差值最小。第一目标函数的约束条件可以包括:一个站点最多与一个落袋分区具有分配关系,分配关系的数量大于等于待分配的落袋口的数量。然后求解第一目标函数以确定各站点与各落袋分区之间的分配关系。
例如,将待分配的落袋口划分为I个落袋分区P={p
1,p
2…p
i…p
I,},落袋分区p
i具有K
i个落袋口,共有J个站点Q={q
1,q
2…q
j…q
J,},各站点需要承担的流量为{v
1,v
2…v
qj…v
qJ},x
ij为0-1变量,
表示落袋小区p
i分配给站点q
j,
表示落袋小区p
i未分配给站点q
j。在这种情况下,可以建立第一目标函数为:
约束条件可以包括:
第一目标函数也可以表示为:
min t
约束条件还可以包括:
在步骤130中,将各落袋分区中的落袋口分配给对应的各站点。
例如,图2示出本发明划分落袋分区的一个实施例的示意图。如图2所示,经过步骤110和120,将10个落袋口211-214和221-226划分为2个落袋分区21和22,并将落袋分区21和22分别分配给10个站点。然后,就可以将落袋口211-214分配给落袋分区21对应的站点,将落袋口221-226分配给落袋分区22对应的站点。
具体地,可以通过下面的方法实现落袋口的分配。
图3示出本发明的货物流量的分配方法的另一个实施例的流程图。
如图3所示,该方法包括:步骤1301,确定站点与落袋分区内落袋口之间的分配关系;步骤1302,根据分配关系将落袋口分配给站点。
在步骤1301中,可以根据各站点承担的货物流量,确定各站点与对应的落袋分区中的各落袋口之间的分配关系,使得落袋分区的行流量最大差值与列流量最大差值的加权和最小。行流量最大差值可以为落袋分区中的各行落袋口承担的货物流量之间的最大差值,列流量最大差值可以为落袋分区中的各列落袋口承担的货物流量之间的最大差值。
例如,已经通过步骤110-120将图2中的落袋分区22分配给6个站点,然后可以根据6个站点承担的货物流量将落袋口221-226分别分配给6个站点。分配的结果要保证落袋分区22中各行之间承担的最大流量差和各列之间承担的最大流量差的加权和最小。
各行之间承担的最大流量差可以为:落袋分区22中落袋口221和222承担的货物流量之和,落袋口223和224承担的货物流量之和以及落袋口225和226承担的货物流量之和两两之间的最大差值。各列之间承担的最大流量差可以为:落袋分区22中落袋口221、223和225承担的货物流量之和以及落袋口222、224和226承担的货物流量之和二者之间的最大差值。
在一个实施例中,可以根据各站点承担的货物流量,以各站点与对应的落袋分区内的各落袋口之间的分配关系为变量建立第二目标函数。第二目标函数需要满足落袋分区的行流量最大差值与列流量最大差值的加权和最小。求解第二目标函数获取各站点与各落袋口之间的分配关系。
例如,落袋分区p
i包含K
i=M×N个落袋口。M为p
i中的落袋口行数,N为p
i中的落袋口列数。落袋口行的集合为L={l
1,l
2…l
m…l
M,},落袋口列的集合为R={r
1,r
2…r
n…r
N,}。分配给落袋分区p
i的站点集合为
各行之间承担的最大流量差f
M和各列之间承担的最大流量差f
N可以表示为:
为0-1变量,
表示位于落袋分区p
i的m行n列的落袋口分配给了站点q
j,
表示位于落袋分区p
i的m行n列的落袋口未分配给站点q
j。
在这种情况下,可以将落袋口与站点的分配转化为一个多目标优化问题。为了达到均衡各落袋口承担的流量的目的,可以构造目标函数使得fM和fN的加权和最小。例如可以通过如下目标函数实现:
minλ1A+λ2B
约束条件可以包括:
λ1和λ2为加权系数,通过加权系数可以统一多个目标的尺度。例如:λ1=1/A′,λ2=1/B′,A′=minA,B′=minB。
在另一个实施例中,可以将预设数量的落袋口作为预留的落袋口,将预留的落袋口分配给承担货物流量大的站点。
例如,可以根据历史数据预测当前波次各站点的日均流量,并按照日均流量从大到小排序。然后,可以将流量大的站点多出的落袋口作为预留的落袋口,并根据即时流量动态调整预留的落袋口与站点的分配情况。
这样就可以在分拣仓存在多个波次的情况下,根据即时的站点流量动态分配预留的落袋口给流量大的站点,不需要临时调整其它落袋口的分配,从而提高了分拣效率。
上述实施例中,通过划分落袋分区,并根据流量均衡原则先后分配落袋分区以及其中的落袋口给站点,避免了由于给流量大的站点分配的落袋口过于集中而出现的区域拥堵。从而提升了分拣效率以及机器人小车的回流效率。
图4示出本发明的货物流量的分配装置的一个实施例的结构图。
如图4所示,该装置包括:落袋分区划分模块41、落袋分区分配模块42和落袋口分配模块43。
落袋分区划分模块41用于将待分配的落袋口划分为多个落袋分区。
落袋分区分配模块42用于根据各站点承担的货物流量,确定各站点与各落袋分区之间的分配关系,使得各落袋分区之间承担的货物流量的最大差值最小。
在一个实施例中,落袋分区分配模块42根据各站点承担的货物流量,以各站点与各落袋分区之间的分配关系为变量建立第一目标函数。第一目标函数需要满足各落袋分区之间承担的货物流量的最大差值最小,并求解第一目标函数以确定各站点与各落袋分区之间的分配关系。第一目标函数的约束条件可以包括:一个站点最多与一个落袋分区具有分配关系,分配关系的数量大于等于待分配的落袋口的数量。
落袋口分配模块43用于将各落袋分区中的落袋口分配给对应的各站点。
在一个实施例中,落袋口分配模块43根据各站点承担的货物流量,确定各站点与对应的落袋分区中的各落袋口之间的分配关系,使得落袋分区的行流量最大差值与列流量最大差值的加权和最小,并将各落袋口分配给对应的各站点。行流量最大差值可以为落袋分区中的各行落袋口承担的货物流量之间的最大差值,列流量最大差值可以为落袋分区中的各列落袋口承担的货物流量之间的最大差值。
例如,落袋口分配模块43根据各站点承担的货物流量,以各站点与对应的落袋分区内的各落袋口之间的分配关系为变量建立第二目标函数,第二目标函数需要满足落袋分区的所述行流量最大差值与列流量最大差值的加权和最小,并求解第二目标函数获取各站点与各落袋口之间的分配关系。第二目标函数的约束条件包括:一个站点最多与一个落袋口具有分配关系,一个落袋口最多分配给一个站点。
上述实施例中,通过划分落袋分区,并根据流量均衡原则先后分配落袋分区以及其中的落袋口给站点,避免了由于给流量大的站点分配的落袋口过于集中而出现的区域拥堵。从而提升了分拣效率以及机器人小车的回流效率。
图5示出本发明的货物流量的分配装置的另一个实施例的结构图。
如图5所示,该实施例的装置5包括:存储器51以及耦接至该存储器51的处理器52,处理器52被配置为基于存储在存储器51中的指令,执行本发明中任意一个实施例中的货物流量的分配方法。
其中,存储器51例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)、数据库以及其他程序等。
本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
至此,已经详细描述了根据本发明的货物流量的分配方法、装置和计算机可读存储介质。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。