入库分拣方法、入库分拣装置、电子设备及存储介质
技术领域
本公开涉及物流仓储技术领域,尤其涉及一种入库分拣方法、入库分拣装置、电子设备及计算机可读存储介质。
背景技术
入库分拣是指将入库的物品分拣整理到对应的货架储位上,在大型仓库、工厂原料库、大型超市等场景中都是必不可少的一项工作。
目前,得益于分拣机、扫码器、图像识别等技术的发展,入库分拣工作越来越趋于自动化,然而在实际应用中,自动化设备仍然无法覆盖到分拣的全过程,特别是最后将物品上架的环节,还需要人工完成。因此,如何通过分拣设备将物品进行最优化的分拣,以尽可能减少后续的人力成本,成为现有技术亟待解决的问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供了一种入库分拣方法、入库分拣装置、电子设备及计算机可读存储介质,进而至少在一定程度上克服或改善现有技术中人力成本较高的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供一种入库分拣方法,包括:获取待分拣物品的信息,所述待分拣物品的信息包括每种待分拣物品的数量与预设属性;分析所述待分拣物品的信息,将每种待分拣物品分配至分拣机上对应的滑道,以使各滑道所分配的待分拣物品数量均衡,且所述预设属性相同、种类不同的待分拣物品分配至不同的滑道。
可选的,所述预设属性包括待分拣物品的颜色。
可选的,所述分析所述待分拣物品的信息,将每种待分拣物品分配至分拣机上对应的滑道,以使分配至各滑道的待分拣物品数量均衡,且所述预设属性相同、种类不同的待分拣物品分配至不同的滑道,包括:根据所述待分拣物品的信息设置第一参数和第二参数,所述第一参数表示各滑道所分配的待分拣物品数量不均衡的程度,所述第二参数表示颜色相同、种类不同的待分拣物品分配至相同滑道的程度;通过计算所述第一参数和所述第二参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
可选的,所述方法还包括:根据所述待分拣物品的信息设置第三参数,所述第三参数表示将所述待分拣物品运送至终点所需的成本;所述通过计算所述第一参数和所述第二参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道,包括:通过计算所述第一参数、所述第二参数和所述第三参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
可选的,所述方法还包括:根据所述待分拣物品的信息设置第四参数,所述第四参数表示各滑道所分配的待分拣物品的种类数超过预设上限值的程度;所述通过计算所述第一参数、所述第二参数和所述第三参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道,包括:通过计算所述第一参数、所述第二参数、所述第三参数和所述第四参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
可选的,所述计算所述第一参数和所述第二参数的最小值,包括:分别获取所述第一参数和所述第二参数的权重,计算所述第一参数和所述第二参数的加权和的最小值。
可选的,所述待分拣物品的信息还包括每种待分拣物品所属的第一级类目、第二级类目、...、与第L级类目,其中,每一级类目隶属于其前一级类目,所述第L级类目相同的待分拣物品为同一种待分拣物品,L为大于1的正整数;所述获取待分拣物品的信息之后,所述方法还包括:如果所述待分拣物品中第i种待分拣物品的数量小于第一阈值,则将所述第i种待分拣物品合并至与其第L-1级类目相同的待分拣物品中,以作为同一种待分拣物品。
可选的,所述方法还包括:将入库物品按照其所属的特定一级类目划分为多个大类;将等待时间超过第二阈值的入库物品标记为长期等待物品,所述等待时间为入库时间到当前的时间;检测每个大类中长期等待物品的数量,并按照该数量从大到小的顺序排列各大类,并在各大类中按照等待时间从长到短的顺序排列各入库物品;选取排列在前端的G件入库物品,作为待分拣物品;其中,G=p·E,p为修正系数,E为所述分拣机的容量。
可选的,所述获取待分拣物品的信息之后,所述方法还包括:按照每种待分拣物品的数量从大到小的顺序排列所述待分拣物品,并按排列的顺序依次选取待分拣物品,直到被选取的待分拣物品达到分拣批次数量;将未被选取的待分拣物品分配至特定的尾货滑道,所述尾货滑道上的待分拣物品用于合并至下一分拣批次。
可选的,所述方法还包括:确定所述分拣机的一个滑道为单物品滑道;如果所述待分拣物品只有一件,则将所述待分拣物品分配至所述单物品滑道。
根据本公开的第二方面,提供一种入库分拣装置,包括:信息模块模块,用于获取待分拣物品的信息,所述待分拣物品的信息包括每种待分拣物品的数量与预设属性;滑道分配模块,用于分析所述待分拣物品的信息,将每种待分拣物品分配至分拣机上对应的滑道,以使各滑道所分配的待分拣物品数量均衡,且所述预设属性相同、种类不同的待分拣物品分配至不同的滑道。
可选的,所述预设属性包括待分拣物品的颜色。
可选的,滑道分配模块包括:参数设置单元,用于根据所述待分拣物品的信息设置第一参数和第二参数,所述第一参数表示各滑道所分配的待分拣物品数量不均衡的程度,所述第二参数表示颜色相同、种类不同的待分拣物品分配至相同滑道的程度;最小值计算单元,用于通过计算所述第一参数和所述第二参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
可选的,所述参数设置单元,还用于根据所述待分拣物品的信息设置第三参数,所述第三参数表示将所述待分拣物品运送至终点所需的成本;所述最小值计算单元,用于通过计算所述第一参数、所述第二参数和所述第三参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
可选的,所述参数设置单元,还用于根据所述待分拣物品的信息设置第四参数,所述第四参数表示各滑道所分配的待分拣物品的种类数超过预设上限值的程度;所述最小值计算单元,用于通过计算所述第一参数、所述第二参数、所述第三参数和所述第四参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
可选的,所述最小值计算单元,用于分别获取所述第一参数和所述第二参数的权重,计算所述第一参数和所述第二参数的加权和的最小值。
可选的,所述待分拣物品的信息还包括每种待分拣物品所属的第一级类目、第二级类目、...、与第L级类目,其中,每一级类目隶属于其前一级类目,所述第L级类目相同的待分拣物品为同一种待分拣物品,L为大于1的正整数;所述装置还包括:合并处理模块,用于如果所述待分拣物品中第i种待分拣物品的数量小于第一阈值,则将所述第i种待分拣物品合并至与其第L-1级类目相同的待分拣物品中,以作为同一种待分拣物品。
可选的,所述装置还包括:物品统计模块,所述物品统计模块又包括以下单元:分类单元,用于将入库物品按照其所属的特定一级类目划分为多个大类;标记单元,用于将等待时间超过第二阈值的入库物品标记为长期等待物品,所述等待时间为入库时间到当前的时间;排序单元,用于检测每个大类中长期等待物品的数量,并按照该数量从大到小的顺序排列各大类,并在各大类中按照等待时间从长到短的顺序排列各入库物品;选取单元,用于选取排列在前端的G件入库物品,作为待分拣物品;其中,G=p·E,p为修正系数,E为所述分拣机的容量。
可选的,所述物品统计模块还包括:批次确定单元,用于按照每种待分拣物品的数量从大到小的顺序排列所述待分拣物品,并按排列的顺序依次选取待分拣物品,直到被选取的待分拣物品达到分拣批次数量,将未被选取的待分拣物品分配至特定的尾货滑道,所述尾货滑道上的待分拣物品用于合并至下一分拣批次。
可选的,所述滑道分配模块,还用于确定所述分拣机的一个滑道为单物品滑道,如果所述待分拣物品只有一件,则将所述待分拣物品分配至所述单物品滑道。
根据本公开的第三方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一种入库分拣方法。
根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种入库分拣方法。
本公开具有以下有益效果:
通过分析待分拣物品的种类、数量、预设属性等信息,将其分配到分拣机上对应的滑道,以使各滑道所分配的待分拣物品数量均衡,且预设属性相同、种类不同的待分拣物品分配至不同的滑道。从而针对于入库分拣的场景需求设计了一套自动分拣的方法流程,满足均衡分配与属性互斥的分拣要求,实现了分拣机上的最优化分拣,减少后续人工分拣上架的难度,降低人力成本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本示例性实施例中一种分拣机的结构图;
图2示意性示出本示例性实施例中一种入库分拣方法的流程图;
图3示意性示出本示例性实施例中另一种入库分拣方法的流程图;
图4示意性示出本示例性实施例中一种入库分拣装置的结构框图;
图5示意性示出本示例性实施例中一种用于实现上述方法的电子设备;
图6示意性示出本示例性实施例中一种用于实现上述方法的计算机可读存储介质。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
本公开的示例性实施例首先提供一种入库分拣方法,图1示出了本示例性实施例运行环境的分拣机结构示意,该分拣机100包括供件系统110、传送系统120、分拣小车130、滑道140、容器150与计算机160。其中,待分拣物品可以首先投放到供件系统110,进入分拣小车130,在传送系统120上传输,在到达相应的滑道140时,由分拣小车130将物品自动投入滑道140中,物品进入容器150。容器150可以是分拣箱或手推车等,工作人员最后将容器150中的物品放置到相应的货架储位上,完成分拣的全过程。计算机160通过执行本示例性实施例的方法,确定每个物品分配到哪个滑道140,以实现待分拣物品到容器150的最优化分拣。
应当理解,图1中分拣机100各部分的数目仅是示例性的,例如可以根据实际需求,设置任意数目的分拣小车130、滑道140或容器150。此外,计算机160可以是分拣机100内置的计算机,也可以其外部连接的计算机,本公开对此不做限定。
图2示出了本示例性实施例的一种流程,包括以下步骤:
步骤S210,获取待分拣物品的信息,包括每种待分拣物品的数量与属性;
步骤S220,分析待分拣物品的信息,将每种待分拣物品分配至分拣机上对应的滑道,以使各滑道所分配的待分拣物品数量均衡,且预设属性相同、种类不同的待分拣物品分配至不同的滑道。
其中,待分拣物品可以按照SKU(Storage Keeping Unit,库存量单位,通常被引申为产品统一编号,本实施例采用其引申义)进行分类,SKU相同的物品可称为一种单品,即本实施例中的一种待分拣物品,例如以衣服为例,款式、颜色、尺寸都相同的衣服为一个SKU,即一种待分拣物品。或者待分拣物品的信息中可以包括待分拣物品所属的第一级类目、第二级类目、...、与第L级类目,L为大于1的正整数,第L级类目为最下级类目,第一级类目为最上级类目,每一级类目隶属于其前一级类目,例如服装是第一级类目,上衣是第二级类目,T恤是第三级类目,款式编号是第四级类目(L=4)。本实施例可以以第L级类目相同的待分拣物品为同一种待分拣物品,例如上述款式编号相同的物品为一种待分拣物品。基于待分拣物品的种类,在分配滑道时,以每种待分拣物品为单位进行处理,使同一种待分拣物品划分到同一滑道,以便于后续人工放置。
本示例性实施例中,可以根据实际应用需求事先确定分拣条件,步骤S220中实际包含了两条分拣条件:第一分拣条件是均衡分配各滑道的待分拣物品数量,这样每个容器的物品数量均衡合理,适合人工搬运,第一分拣条件可称为均衡分配条件;第二分拣条件是预设属性相同、且种类不同的待分拣物品分配至不同的滑道,称为属性互斥条件,其中预设属性可以是诸如颜色(或色号)、尺寸、(食品、饮品的)口味儿等,如果属性相同、种类不同的待分拣物品在同一滑道,进入同一容器中,很容易造成工作人员混淆,增加分拣难度,因此设置本条件。此外,还可以设置其他分拣条件,例如:第三分拣条件,运送待分拣物品的成本最低,简称为成本最低条件,具体可以包括将待分拣物品分配至距离其储位最近的滑道,储位相近的待分拣物品分配至同一滑道等。
在一示例性实施例中,可以根据上述分拣条件可以建立滑道分配模型,其可以是数学函数模型、机器学习模型等。例如:根据上述第一分拣条件与第二分拣条件建立物品不均衡函数与属性混淆函数,分别表示分配到各滑道的待分拣物品数量不均衡的程度与属性易混淆程度,联立这两个函数得到滑道分配模型,通过求解两个函数的最小值得到滑道分配的最优解;或者根据上述第一分拣条件与第二分拣条件进行人工的滑道分配,得到滑道分配的标签数据,以相应的待分拣物品信息为样本数据,训练神经网络模型,从而得到滑道分配模型,滑道分配模型以待分拣物品信息的编码为输入数据,以滑道分配的结果为输出数据。当然,本公开对于滑道分配模型的具体形式以及建立滑道分配模型的具体方式不做限定,在建立滑道分配模型时,也可以考虑第三甚至更多的分拣条件。
步骤S220中,可以将待分拣物品的信息经过一定的预处理后再进行滑道分配,例如根据待分拣物品的信息中的预设属性与滑道分配模型中的变量的关联,将信息中的数据转换为变量值,或者根据滑道分配模型的数据格式对待分拣物品的信息进行数值化的编码与转换,得到相应的向量或矩阵等。通常步骤S210与S220在向分拣机上投放物品之前进行,即事先确定好分拣方案,然后启动分拣机上的分拣过程,分拣机根据该分拣方案控制各个部分的信号,将每种待分拣物品投放到其对应的滑道,并运送到相应的容器,从而完成了分拣机上的物品分拣过程。
基于上述说明,本示例性实施例中,通过分析待分拣物品的种类、数量、预设属性等信息,将其分配到分拣机上对应的滑道,以使各滑道所分配的待分拣物品数量均衡,且预设属性相同、种类不同的待分拣物品分配至不同的滑道。从而针对于入库分拣的场景需求设计了一套自动分拣的方法流程,满足均衡分配与属性互斥的分拣要求,实现了分拣机上的最优化分拣,减少后续人工分拣上架的难度,降低人力成本。
在一示例性实施例中,基于分拣条件预先建立滑道分配模型,可以应对各种情况的待分拣物品,无论其包含的物品种类单一或复杂,数量多或少,通过模型的求解或处理都可以得到合适的分拣方案,使得本示例性实施例具有较强的适用性。
本示例性实施例可以应用于大多数入库分拣的场景,例如:在电商场景中经常需要将退货商品分拣整理到仓库货架上,由于退货商品一般比较散乱,种类繁多,且存在动态变化的情况,通过传统的分拣方式需要耗费大量的人力,而通过本示例性实施例的方法,可以根据当前退货商品的信息,在满足业务需求的前提下,合理并快速的分配滑道,确定分拣方案,并通过分拣机进行自动分拣,从而大大减少人力,实现退货商品的快速高效分拣。
在一示例性实施例中,待分拣物品的信息中所记录的预设属性可以包括待分拣物品的颜色,则第二分拣条件可以是颜色互斥条件,具体为:颜色相同且种类不同的待分拣物品分配至不同的滑道。该条件特别适用于分拣服装、装饰品等颜色繁多、外形相近的物品,例如颜色相同、款式不同的T恤很容易被工作人员误认为是相同的T恤,从而误放置到同一储位上,留下隐患,因此需要设置颜色互斥条件。
基于均衡分配条件与颜色互斥条件,在一示例性实施例中,步骤S220可以具体通过以下步骤实现:
根据待分拣物品的信息设置第一参数和第二参数,第一参数表示各滑道所分配的待分拣物品数量不均衡的程度,第二参数表示颜色相同、种类不同的待分拣物品分配至相同滑道的程度;
通过计算第一参数和第二参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
具体而言,可以通过如下方式设置第一参数P1和第二参数P2:
P1=∑j∈Ryj; (3)
P2=∑j∈R∑k∈Czkj; (5)
其中,qi为第i种待分拣物品的数量;R为滑道的集合,j表示其中的任一滑道;C为颜色的集合,k表示其中的任一颜色,S是待分拣物品的种类的集合,Sk是颜色为k的待分拣物品的种类的集合;xij表示第i种待分拣物品是否分配至滑道j,当第i种待分拣物品分配至滑道j时,xij=1,当第i种待分拣物品不分配至滑道j时,xij=0;可以将全部xij表示为(xij)矩阵,则本示例性实施例的滑道分配问题可以转换为求解矩阵解的方程问题。
通过计算P1和P2的最小值,可以最小程度的违反均衡分配条件与颜色互斥条件,即最大程度地满足实际应用需求。可以联立公式(3)和(5)进行最小值求解,以得到滑道分配结果(xij)。
在一示例性实施例中,计算第一参数和第二参数的最小值时,可以分别获取第一参数和第二参数的权重,计算第一参数和第二参数的加权和的最小值。可以表示为如下方程:
(xij,yj,zkj)=argmin(λ1∑j∈R yj+λ2∑j∈R∑k∈Czkj); (6)
其中,λ1为P1的权重,又可称为第一惩罚系数,表示违反第一分拣条件的惩罚力度;λ2为P2的权重,由可称为第二惩罚系数,表示违反第二分拣条件的惩罚力度。λ1∑j∈Ryj为第一代价函数,是对分拣方案违反第一分拣条件的程度进行度量,其系数λ1为第一惩罚系数,表示违反第一分拣条件的惩罚力度;λ2∑j∈R∑k∈Czkj为第二代价函数,是对分拣方案违反第二分拣条件的程度进行度量,其系数λ2为第二惩罚系数,表示违反第二分拣条件的惩罚力度;λ1与λ2可以根据经验设定,值越大,表示相应分拣条件的重要性越高,例如,λ2可以远大于λ1,即表示应当尽可能满足颜色互斥条件,当颜色不得不相同时,才会违反颜色互斥条件而满足均衡分配条件。
方程(6)右侧的λ1∑j∈Ryj+λ2∑j∈R∑k∈Czkj可以看作是一个综合代价函数,通过设置λ1、λ2的值调节各分拣条件之间的权重关系,以表示违反各分拣条件的综合代价,上述数学模型即是通过求解使综合代价函数值最小的解,以得到最优分拣方案。
本示例性实施例中,数学模型的解包括矩阵(x
ij),假设待分拣物品共有m种,滑道数量为n,则(x
ij)为m*n的矩阵,其中第i行第j列的项表示第i种待分拣物品是否分配至滑道j,其值为1或0,1表示“是”,0表示“否”。因此,通常(x
ij)中每一行只有一项为1,其余项为0,表示一种待分拣物品只分配到一个滑道,即(x
ij)需要满足
在特殊情况下,考虑到每种待分拣物品的数量过多,一个滑道难以承载,则也可以分配到两个甚至更多的滑道,即(x
ij)中可能存在一行或多行,每一行中至少两项为1,其余项为0。
在一示例性实施例中,可以对上述数学模型中的(1)、(4)、(6)进行简化,得到以下关系:
(xij)=argmin(λ1∑j∈R|yj|+λ2∑j∈R∑k∈Cmax(zkj,0)); (6’)
其中,方程(6’)中的第一代价函数与第二代价函数分别为关于yj与zkj的函数,yj与zkj又是关于xij的函数,则数学模型问题可以表示为求解关于xij的方程。
理想状况下,y
j为0,表示滑道j完全遵守均衡分配条件,y
j的绝对值越大,表示滑道j上的分配越不均衡。z
kj为分配到滑道j的颜色为k的待分拣物品超过1种的种类数,存在三种情况:滑道j并未被分配颜色为k的待分拣物品,
z
kj=-1,不存在违反颜色互斥条件的情况;滑道j被分配颜色为k的待分拣物品,只有1种,即遵守了颜色互斥条件,
z
kj=0;以上两种情况都未违反颜色互斥条件,因此在第二代价函数中贡献的分量max(z
kj,0)=0;第三种情况是滑道j被分配颜色为k的待分拣物品超过1种,
z
kj>0,颜色为k的物品种类数越多,z
kj值越大,其在在第二代价函数中贡献的分量max(z
kj,0)越大,表示违反颜色互斥条件的程度越高。
进一步的,可以根据实际需求在方程(6)的右侧添加补充项,如下:
(xij,yj,zkj)=argmin(λ1∑j∈Ryj+λ2∑j∈R∑k∈Czkj+D); (7)
D为补充项,表示违反第一与第二以外的分拣条件的代价函数。D可以是另外一个或多个关于xij的函数,可以根据实际应用需求定义第一与第二以外的分拣条件并建立相关函数。例如,在一示例性实施例中,考虑成本最低条件为第三分拣条件,可以根据待分拣物品的信息设置的第三参数P3,表示将待分拣物品运送至终点所需的成本,具体如下:
P3=∑j∈R∑i∈Sxijqidij; (8)
其中,dij表示将一件第i种物品通过滑道j运送到该物品的储位所需的成本,例如可以根据滑道j与第i种物品的储位之间的距离确定。
在分配滑道时,可以通过计算第一参数、第二参数和第三参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。即方程(7)可以表示为如下的方程(9):
(xij,yj,zkj)=
argmin(λ1∑j∈Ryj+λ2∑j∈R∑k∈Czkj+λ3∑j∈R∑i∈Sxijqidij);
(9)
其中,λ3为P3的权重,又可称为第三惩罚系数,表示违反第三分拣条件的惩罚力度,第三分拣条件为上述的成本最低条件,λ3可以根据经验设定。求解方程(9)即求解第一参数P1、第二参数P2和第三参数P3的最小值问题。
在一示例性实施例中,也可以为上述各方程设置以下限制条件:
其中,a、b均为经验参数,且a、b均大于0。a是为每个滑道上分配不均衡程度设置的上限,b是为每个滑道上违反颜色互斥的程度设置的上限。例如,公式(3)中的avg=20,a=4,则为每个滑道分配的待分拣物品的数量应当在16~24之间;b=1,则为每个滑道分配的每个颜色的待分拣物品不应超过两种。可见,a与b的数值设定可以参照经验以及实际应用需求。
在一示例性实施例中,还可以添加第四分拣条件:各滑道所分配的待分拣物品的种类数应当不超过预设上限值。这是考虑到一个滑道上分配的物品种类数量如果过多,会增加滑道末端分拣人员的工作量,因此设置本条件。由此,在分配滑道时,可以根据待分拣物品的信息设置第四参数,表示各滑道所分配的待分拣物品的种类数超过预设上限值的程度。如下所示:
P4=∑j∈R∑i∈Smax((xij-Uj),0); (12)
其中,P
4为第四参数;U
j为预设上限值,表示滑道j在一次分拣中所能处理的待分拣物品的种类上限,也可以看作是每个容器所能装载的物品种类上限,通常认为各滑道是均等的,可以为各滑道设置统一的种类上限值,例如
举例而言,考虑到人工从容器中分拣物品时,如果容器中的物品种类过多,人工分拣难度较大,可以预先确定U=3,即每个滑道最多一次处理3种待分拣物品,每个容器最多包含3种物品。在公式(12)中,第四参数是将各滑道的物品种类数超过预设上限值的程度进行累加,如果某一滑道的物品种类数未超过预设上限值,则值为0,如果超过一种,则值为1,以此将各滑道的计算值累加得到第四参数。
在设置第四参数后,通过计算第一参数、第二参数、第三参数和第四参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。即方程(7)可以表示为:
(xij,yj,zkj)=
argmin(λ1∑j∈Ryj+λ2∑j∈R∑k∈Czkj+
λ3∑j∈R∑i∈Sxijqidij+λ4∑j∈R∑i∈Smax((xij-Uj),0)); (13)
其中,λ4为P4的权重,又可称为第四惩罚系数,表示违反第四分拣条件的惩罚力度。由上可知,可以根据实际应用需求以及经验设定第一、第二、第三和第四惩罚系数的相对大小。考虑到上述(1’)、(4’)、(6’)的简化关系,方程(13)可以进一步表示为:
(xij)=
argmin(λ1∑j∈R|yj|+λ2∑j∈R∑k∈C max(zkj,0)+λ3∑j∈R∑i∈Sxijqidij+
λ4∑j∈R∑i∈Smax((xij-Uj),0)); (14)
此外,也可以将第四分拣条件表示为限制条件的形式,则方程(14)转换为如下关系:
(xij)=
argmin(λ1∑j∈R|yj|+λ2∑j∈R∑k∈Cmax(zkj,0)+λ3∑j∈R∑i∈Sxijqidij);
(15)
联立公式(16)求解方程(15),可以得到滑道分配结果。
当然,在求解方程(14)或(15)时,也可以添加上述(10)和(11)的限制条件。
通过设置上述第一参数、第二参数、第三参数和第四参数,将入库分拣问题转化成了一个整数线性规划的模型求解问题,需要说明的是,在求解该模型时,可以通过计算机程序在限制条件下计算最优解,作为最终的分拣方案;如果待分拣物品的种类与属性较多较复杂,其信息中所包含的数据量较大,可能导致求解模型的计算量增加,为了提高效率,可以设定时间限制,在该时间内如果未得到最优解,则在已得到的解中确定最优解,作为最终的分拣方案。
在一示例性实施例中,待分拣物品的信息可以包括每种待分拣物品所属的第一级类目、第二级类目、...、与第L级类目。在步骤S210之后,还可以执行以下步骤:
如果待分拣物品中第i种待分拣物品的数量小于第一阈值,则将第i种待分拣物品合并至与其第L-1级类目相同的待分拣物品中,以作为同一种待分拣物品。
换而言之,如果存在一种待分拣物品,其物品数量过少,则不单独处理,将其合并至其他种类相近的待分拣物品中,第一阈值即衡量物品数量是否过少的标准,通常为经验参数。例如:如果某种待分拣物品,其第三级类目为T恤,第四级类目为款式编号10011(L=4),其数量只有8件,少于预设的第一阈值10件,则可以将其合并至另一种T恤中,如合并至款式编号10012的T恤中,作为同一种物品进行后续处理。进一步的,在合并时,可以优先将多种需要合并的待分拣物品进行合并,例如两种待分拣物品,其数量都小于第一阈值,且第L-1级类目相同,则优先合并这两种物品,如果合并后数量达到第一阈值,则不再合并,如果合并后数量仍小于第一阈值,则继续合并。本示例性实施例中,通过合并数量较少的待分拣物品,可以使每种待分拣物品的数量都达到第一阈值,以减少处理零散物品的工作量,进一步提高效率。
在一示例性实施例中,如图3所示,入库分拣方法还可以包括以下步骤:
步骤S201,将入库物品按照其所属的特定一级类目划分为多个大类;
步骤S202,将等待时间超过第二阈值的入库物品标记为长期等待物品,等待时间为入库时间到当前的时间;
步骤S203,检测每个大类中长期等待物品的数量,并按照该数量从大到小的顺序排列各大类,并在各大类中按照等待时间从长到短的顺序排列各入库物品;
步骤S204,选取排列在前端的G件入库物品,作为待分拣物品;
其中,上述特定一级类目可以是第一级类目、第二级类目、...、或第L-1级类目,通常为入库时对物品做的粗略分类,例如可以将入库物品分为大型、中型或小型物品这三个大类,或者分为服装、食品、生活用品等几个大类;等待时间即入库后未分拣的时间,通常在入库分拣的场景中,都会设定时限,规定物品入库后一定时间内必须分拣,则该时限即为上述第二阈值,超过时限的为长期等待物品,也可以为不同大类的物品设置不同的第二阈值,例如食品类的第二阈值较小,服装类的第二阈值较大。
本示例性实施例中,长期等待物品最多的大类优先分拣,其中等待时间越长的物品越优先分拣。分拣物品的数量G=p·E,p为修正系数,E为分拣机的容量,表示分拣机一次能够处理的物品件数,通常分拣机的容量为一个参考值;考虑到物品的大小、重量等的变化,可以根据经验设定修正系数p,入库物品普遍较小较轻时,p可以大于1,反之可以小于1,例如分拣夏季服装时,p可以为1.5。按照步骤S203中排序,从前开始选取物品,第一个大类中的物品数量不足G,则到第二个大类中继续选取,最终选取G件入库物品,为待分拣物品。然后可以执行步骤S210与S220。当然,如果当前入库物品的总量不足G,则可以在一段时间(来了新的入库物品)后再次执行步骤S201~204以启动入库分拣流程。可见,通过步骤S201~S204可以实现入库物品的有序分拣,提高效率。
在一示例性实施例中,步骤S201~S204之后,可以先执行步骤S210,然后再执行以下步骤:
步骤S211,按照每种待分拣物品的数量从大到小的顺序排列待分拣物品,并按排列的顺序依次选取待分拣物品,直到被选取的待分拣物品达到分拣批次数量;
步骤S212,将未被选取的待分拣物品分配至特定的尾货滑道,尾货滑道上的待分拣物品用于合并至下一分拣批次。
在排列待分拣物品时,每种待分拣物品为一个单位,统计其中的物品数量,将数量多的待分拣物品排在前面,优先选取。分拣批次数量即分拣机一次分拣所能处理的物品数量,可以是各容器的承载量之和,也可以算法所能处理的最大数量(与硬件条件相关)等,分拣批次数量通常小于步骤S204中的G,二者的差值即未被选取的待分拣物品。未被选取的待分拣物品通过尾货滑道进入特殊的容器或者循环回到分拣机上,如果这些物品的数量超过分拣批次数量,则可以再次执行步骤S211,如果不足分拣批次数量,则可以合并到下一批待分拣物品(即下一批G件物品)。需要说明的是,步骤S212与S220是并行的两个步骤,其执行的先后顺序不做限定。
在一示例性实施例中,入库分拣方法还可以包括以下步骤:
确定分拣机的一个滑道为单物品滑道;
如果待分拣物品只有一件,则将待分拣物品分配至单物品滑道。
换而言之,对于只有一件待分拣物品的情况,后续无需进行人工再分拣,因此可以不启动滑道分配模型,直接将物品分配至单物品滑道。单物品滑道是分拣机上的一个特殊滑道,专门用于处理单物品的情况,可以预先确定任一滑道为单物品滑道。通过这种处理方式可以简化了单物品的处理流程,进一步提高效率。
本公开的示例性实施例还提供了一种入库分拣装置,如图4所示,该装置400可以包括:信息获取模块410,用于获取待分拣物品的信息,待分拣物品的信息包括每种待分拣物品的数量与预设属性;滑道分配模块420,用于分析待分拣物品的信息,将每种待分拣物品分配至分拣机上对应的滑道,以使各滑道所分配的待分拣物品数量均衡,且预设属性相同、种类不同的待分拣物品分配至不同的滑道。
在一示例性实施例中,预设属性可以包括待分拣物品的颜色。
在一示例性实施例中,滑道分配模块可以包括:参数设置单元,用于根据待分拣物品的信息设置第一参数和第二参数,第一参数表示各滑道所分配的待分拣物品数量不均衡的程度,第二参数表示颜色相同、种类不同的待分拣物品分配至相同滑道的程度;最小值计算单元,用于通过计算第一参数和第二参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
在一示例性实施例中,参数设置单元还可以用于根据待分拣物品的信息设置第三参数,第三参数表示将待分拣物品运送至终点所需的成本;最小值计算单元,用于通过计算第一参数、第二参数和第三参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
在一示例性实施例中,参数设置单元还可以用于根据待分拣物品的信息设置第四参数,第四参数表示各滑道所分配的待分拣物品的种类数超过预设上限值的程度;最小值计算单元可以用于通过计算第一参数、第二参数、第三参数和第四参数的最小值,将每种待分拣物品分配至分拣机上对应的滑道。
在一示例性实施例中,最小值计算单元可以用于分别获取第一参数和第二参数的权重,计算第一参数和第二参数的加权和的最小值。
在一示例性实施例中,待分拣物品的信息还可以包括每种待分拣物品所属的第一级类目、第二级类目、...、与第L级类目,其中,每一级类目隶属于其前一级类目,第L级类目相同的待分拣物品为同一种待分拣物品,L为大于1的正整数;入库分拣装置还可以包括:合并处理模块,用于如果待分拣物品中第i种待分拣物品的数量小于第一阈值,则将第i种待分拣物品合并至与其第L-1级类目相同的待分拣物品中,以作为同一种待分拣物品。
在一示例性实施例中,入库分拣装置还可以包括物品统计模块,物品统计模块又可以包括以下单元:分类单元,用于将入库物品按照其所属的特定一级类目划分为多个大类;标记单元,用于将等待时间超过第二阈值的入库物品标记为长期等待物品,等待时间为入库时间到当前的时间;排序单元,用于检测每个大类中长期等待物品的数量,并按照该数量从大到小的顺序排列各大类,并在各大类中按照等待时间从长到短的顺序排列各入库物品;选取单元,用于选取排列在前端的G件入库物品,作为待分拣物品;其中,G=p·E,p为修正系数,E为分拣机的容量。
在一示例性实施例中,物品统计模块还可以包括:批次确定单元,用于按照每种待分拣物品的数量从大到小的顺序排列待分拣物品,并按排列的顺序依次选取待分拣物品,直到被选取的待分拣物品达到分拣批次数量,将未被选取的待分拣物品分配至特定的尾货滑道,尾货滑道上的待分拣物品用于合并至下一分拣批次。
在一示例性实施例中,滑道分配模块还可以用于确定分拣机的一个滑道为单物品滑道,如果待分拣物品只有一件,则将待分拣物品分配至单物品滑道。
上述装置中的各模块/单元的具体细节已经在对应的方法部分实施例中进行了详细的描述,因此不再赘述。
本公开的示例性实施例还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图5来描述根据本公开的这种示例性实施例的电子设备500。图5显示的电子设备500仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500以通用计算设备的形式表现。电子设备500的组件可以包括但不限于:上述至少一个处理单元510、上述至少一个存储单元520、连接不同系统组件(包括存储单元520和处理单元510)的总线530、显示单元540。
其中,存储单元520存储有程序代码,程序代码可以被处理单元510执行,使得处理单元510执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,处理单元510可以执行图2或图3所示的方法步骤等。
存储单元520可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)521和/或高速缓存存储单元522,还可以进一步包括只读存储单元(ROM)523。
存储单元520还可以包括具有一组(至少一个)程序模块525的程序/实用工具524,这样的程序模块525包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线530可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备500也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备500交互的设备通信,和/或与使得该电子设备500能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口550进行。并且,电子设备500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器560通过总线530与电子设备500的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开示例性实施例的方法。
本公开的示例性实施例还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
参考图6所示,描述了根据本公开的示例性实施例的用于实现上述方法的程序产品600,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言-诸如Java、C++等,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施例,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。