本发明涉及物流和仓储工业应用领域,尤其是一种基于遗传算法的堆叠组合方法、装置、设备和存储介质。
背景技术:
随着电商的快速发展,消费者订单以及物品数量增多,对物流的智能化堆叠组合需求也越来越多,商家需要提供成品包装给客户,例如当客户在电商平台购买多个成品包装的商品时,需要对这些商品进行堆叠打包,从而可以极大地提高的订单组合率,同时降低输送成本,提高消费者体验,但是多个物品堆叠打包方案复杂度高,并且有因为堆叠不规则导致派送成本骤增的风险。
因此,将多个物品进行快速合理的堆叠组合打包是物流打包中亟待解决的问题。目前出现的堆叠组合方案,主要在于增加自动化操作,从而减少人力成本的目标进行设计,能够解决单成品包装的堆叠组合问题,从而提高生产效率。但仓库中客户订单太多,需要进行混合成品包装,要求堆叠方案能够降低仓储成本和运输成本时,现有发明算法难以解决该问题。
技术实现要素:
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的是提供堆叠一种基于遗传算法的堆叠组合方法、装置、设备和存储介质。
本发明所采用的技术方案是:
一种基于遗传算法的堆叠组合方法,包括步骤:
s1:随机产生多个堆叠方案染色体,所述多个堆叠方案染色体组成初始种群;
s2:对所述初始种群中每个堆叠方案染色体进行堆叠适配过程,获得父代种群,并计算父代种群中每个堆叠方案染色体的适应度,并保留适应度最高的堆叠方案染色体;
s3:对父代种群中堆叠方案染色体进行交叉进化,并和所述父代种群中适应度最高的堆叠方案染色体组合得到第一代进化种群;
s4:对所述第一代进化种群进行变异,生成第一代变异种群,计算所述第一代变异种群中每个堆叠方案染色体的适应度,选择所述第一代变异种群中适应度最高的堆叠方案染色体为第一代近似最优堆叠方案染色体。
进一步地,还包括步骤:
s5:对近似最优堆叠方案染色体进行进化迭代,具体为:将所述步骤s4中得出的近似最优堆叠方案染色体作为所述步骤s1中初始种群中的其中一个堆叠方案染色体,重复执行步骤s1至s4,进行进化迭代得到下一代近似最优方案;
s6,当迭代次数达到预设迭代次数,则将最后一代近似最优堆叠方案染色体输出。
进一步地,步骤s1中所述堆叠方案染色体包括待堆叠物品的堆叠顺序参数、放置方式参数和推荐容器参数;
所述容器指:以待堆叠物品的摆放方式的朝上面为底,以运输渠道限制的最长边为高度,虚拟出的容器空间,作为该待堆叠物品的可用容器,即每个待堆叠物品的虚拟容器空间的底面,是由其摆放方式中朝上的面决定。
进一步地,还包括步骤:
执行步骤s1前,根据第一约束条件筛选待堆叠物品;
所述第一约束条件包括:待堆叠物品尺寸小于运输渠道的最大尺寸。
进一步地,所述步骤s2中对所述初始种群中每个堆叠方案染色体进行堆叠适配过程具体包括步骤:
s21:根据堆叠顺序进行待堆叠物品堆叠,判断容器尺寸是否匹配,如果匹配将待堆叠物品放入容器中,并进行三空间划分及空间合并;
s22:如果容器尺寸不适配,则根据推荐容器初始化新的空间,直至容器尺寸适配;
s23:判断待堆叠物品是否全部装入容器中:
如果没有,则按照堆叠顺序执行步骤s21至s23继续堆叠,直至所有待堆叠物品全部装入容器中;
如果已经全部装入容器中,则判断该堆叠方案染色体的堆叠适配过程完成。
进一步地,所述适应度计算方法具体为:
cost=1-(m+rule)/(n+1)
rule=1-vuse/vall
其中,cost为堆叠方案适应度,m为容器数量,rule为堆叠规则度,n为待堆叠物品数量,vall为已用堆叠容器的总体积,vuse为待堆叠物品的总体积,vm为每个已用堆叠容器的底面积,hmax为实际堆叠容器的最大高度。
进一步地,所述步骤s3对父代种群中堆叠方案染色体进行交叉进化得到第一代进化种群具体为:
对父代种群中的堆叠方案染色体按照顺序进行两两堆叠方案染色体交叉进化形成多个第一代堆叠方案染色体,多个第一代堆叠方案染色体组成第一代进化种群;
所述两两堆叠方案染色体交叉进化指:在两个进行交叉进化的堆叠方案染色体中,随机选择一个堆叠方案染色体的堆叠顺序和推荐容器,然后按顺序交叉两个堆叠方案染色体的放置方式,得到进化后的堆叠方案染色体。
进一步地,所述步骤s4中所述变异具体为:
s41:按照预设变异概率选择需要进行变异的堆叠方案染色体;
s42:在所述需要变异的堆叠方案染色体中,随机改变堆叠顺序参数,并根据改变后的堆叠顺序参数对应改变放置方式参数或推荐容器参数。
进一步地,所述步骤s42具体为:
在所述需要变异的堆叠方案染色体中,选择两个待堆叠物品,调换其堆叠顺序,同时分别随机生成其放置方式和推荐容器。
另一方面,本发明还提供一种基于遗传算法的适配堆叠装置,包括
初始种群生成模块,用于随机产生多个堆叠方案染色体,所述多个堆叠方案染色体组成初始种群;
堆叠适配模块,用于对初始种群生成模块输出的初始种群中每个堆叠方案染色体进行堆叠适配过程,获得父代种群,并计算父代种群中每个堆叠方案染色体的适应度,并保留适应度最高的堆叠方案染色体;
进化模块,用于对堆叠适配模块输出的父代种群中堆叠方案染色体进行交叉进化,并和所述父代种群中适应度最高的堆叠方案染色体组合得到第一代进化种群,其输入为堆叠适配模块的输出;
变异模块,用于对进化模块输出的第一代进化种群进行变异,生成第一代变异种群,计算所述第一代变异种群中每个堆叠方案染色体的适应度,并选择所述第一代变异种群中适应度最高的堆叠方案染色体为第一代近似最优堆叠方案染色体。
进一步地,还包括:
迭代模块,用于对近似最优堆叠方案染色体进行进化迭代,具体为:将变异模块中得出的近似最优堆叠方案染色体作为初始种群生成模块中初始种群中的其中一个堆叠方案染色体,重复执行将初始种群生成模块的输出送至堆叠适配模块,堆叠适配模块的输出送至进化模块,进化模块的输出送至变异模块,进行进化迭代得到下一代近似最优方案,当迭代次数达到预设迭代次数,则将最后一代近似最优堆叠方案染色体输出。
另一方面,本发明还提供一种基于遗传算法的堆叠组合操作的控制设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述任一项基于遗传算法的堆叠组合方法。
另一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述任一项基于遗传算法的堆叠组合方法。
本发明的有益效果是:
本发明针对仓储物流系统需要进行堆叠组合时,比如在仓库存储时将物品尽量堆叠得紧凑以节省仓储空间,或者在运输时将一个客户的多个成品包装商品堆叠组合在一起进行运输的问题,根据待堆叠物品的底面尺寸和运输渠道高度限制初始化虚拟容器空间,将堆叠组合问题转换为多空间装箱问题,当单个虚拟容器空间不能装完所有待堆叠箱物品时,再初始化新的虚拟容器空间,通过遗传算法提供最少虚拟容器且空间利用率最高的堆叠组合方案,提高订单组合率和堆叠规则度,完成物品堆叠组合,减少资源浪费。
另一方面,本发明在实际物流打包应用场景中,可以提前根据客户货物包装情况采用堆叠方案打包,减少不必要的装箱造成纸箱资源浪费,并且可以提前根据客户货物尺寸计算堆叠方案,提高订单组合率,降低运输成本,给客户提供更优质的服务。
本发明可广泛应用于各种物流、仓储和运输系统。
附图说明
图1是本发明一种实施例的基于遗传算法的堆叠组合方法流程图;
图2a~图2f是本发明一种实施例的基于遗传算法的堆叠组合方法中放置方式示意图;
图3是本发明一种实施例的基于遗传算法的堆叠组合方法中堆叠适配流程图;
图4是本发明一种实施例的基于遗传算法的堆叠组合方法中三空间划分示意图;
图5a~图5c是本发明一种实施例的基于遗传算法的堆叠组合方法中空间合并示意图;
图6是本发明一种实施例的基于遗传算法的堆叠组合方法中交叉进化流程图;
图7是本发明一种实施例的基于遗传算法的堆叠组合方法中变异流程图;
图8是本发明一种实施例的基于遗传算法的堆叠装置框图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例一:
如图1所示,为实施例一的基于遗传算法的堆叠组合方法流程图,
包括步骤s1:生成初始种群。具体为:随机产生多个堆叠方案染色体,并且多个堆叠方案染色体组成初始种群;s2:堆叠适配获得父代种群,具体为:对初始种群中每个堆叠方案染色体进行堆叠适配过程,获得父代种群,并计算父代种群中每个堆叠方案染色体的适应度,并保留适应度最高的堆叠方案染色体;s3:交叉进化获得第一代进化种群,具体为:对父代种群中堆叠方案染色体进行交叉进化,并和父代种群中适应度最高的堆叠方案染色体组合得到第一代进化种群;s4:种群变异获得第一代近似最优堆叠方案,具体为:对第一代进化种群进行变异,生成第一代变异种群,计算第一代变异种群中每个堆叠方案染色体的适应度,选择第一代变异种群中适应度最高的堆叠方案染色体为第一代近似最优堆叠方案染色体;s5:进化迭代输出近似最优堆叠方案,具体为:对近似最优堆叠方案染色体进行进化迭代,具体为:将步骤s4中得出的近似最优堆叠方案染色体作为步骤s1中初始种群中的其中一个堆叠方案染色体,重复执行步骤s1至s4,进行进化迭代得到下一代近似最优方案,当迭代次数达到预设迭代次数,则将最后一代近似最优堆叠方案染色体输出。
其中,在该实施例中,还包括执行步骤s1前,根据第一约束条件筛选待堆叠物品,第一约束条件指:待堆叠物品尺寸小于运输渠道的最大尺寸,本实施例中将带堆叠物体的外形看作是一种规则的具有长宽高的长方体,容器指:以待堆叠物品的摆放方式的朝上面为底,以运输渠道限制的最长边为高度,虚拟出的容器空间,作为该待堆叠物品的可用容器,即每个待堆叠物品的虚拟容器空间的底面,是由其摆放方式中朝上的面决定。
约束情况具体指:当待堆叠物品的尺寸超出运输渠道的最大尺寸限制,则不能运输。
如图2a~图2f所示,是本实施例中放置方式的示意图,图中示出了6中放置方式,其中坐标系x-y-z,待堆叠物品的左下角位于坐标系原点的位置,图2a~图2f分别表示六种不同的放置方式,分别为:
g1=[长宽面朝上,横放];g2=[长高面朝上,横放];g3=[宽高面朝上,横放];g4=[长宽面朝上,直放];g5=[长高面朝上,直放];g6=[宽高面朝上,直放]。
筛选可用容器的过程指:以待堆叠物品的摆放方式的朝上面为底,以运输渠道限制的最长边为高度,虚拟出的容器空间,作为该待堆叠物品的可用容器,即每个待堆叠物品的虚拟容器空间的底面,是由其摆放方式中朝上的面决定,并将不同摆放方式中不同的朝上面对应的虚拟容器放入该待堆叠物品的可用容器列表。
本实施例中堆叠方案染色体组成部分包括待堆叠物品的:堆叠顺序参数、放置方式参数、推荐容器参数作为染色体组成部分。
根据堆叠方案染色体的组成部分进行堆叠方案染色体的初始化,染色体的长度即待堆叠物品的数量,假设待堆叠物品的数量为n,初始化步骤如下:
(1)待堆叠物品的堆叠顺序参数:随机生成长度为n的随机数组,并进行随机排序,获取排序后数据的索引,即可确定本条堆叠方案染色体中待堆叠物品的堆叠顺序。
(2)放置方式参数:为每一个待堆叠物品在6种放置方式种随机选择一种放置方式。
(3)推荐容器参数:筛选可用容器的过程完成后,即得到每个待堆叠物品的可用容器列表,按上述堆叠物品顺序,随机获取每一个待堆叠物品的可用容器列表中的一个容器,作为此待堆叠物品的推荐容器。
确定堆叠顺序以及每个待堆叠物品放置方式和推荐容器参数后,该堆叠方案染色体初始化完毕。
本实施例中遗传算法初始种群由多个堆叠方案染色体组成,随机产生多个堆叠方案染色体,多个堆叠方案染色体组成初始种群,通常取值为待堆叠物品数量的10倍,对初始种群中每个堆叠方案染色体进行堆叠适配过程,其中堆叠适配过程包括步骤:
s21:根据堆叠顺序进行待堆叠物品堆叠,判断容器尺寸是否匹配,如果匹配将待堆叠物品放入容器中,并进行三空间划分及空间合并;s22:如果容器尺寸不适配,则根据推荐容器初始化新的空间,直至容器尺寸适配;s23:判断待堆叠物品是否全部装入容器中:如果没有,则按照堆叠顺序执行步骤s21至s23继续堆叠,直至所有待堆叠物品全部装入容器中;如果已经全部装入容器中,则判断该堆叠方案染色体的堆叠适配过程完成。
如图3所示,其具体流程为:
获取需要进行堆叠适配过程的堆叠方案染色体,按照该染色体的堆叠顺序以及每个待堆叠物品放置方式和推荐容器参数,放入第一个待堆叠物品,对可用的容器内部独立空间进行初始化,判断下一个待堆叠物品的最小可用空间是否存在,如果存在,即放入下一个待堆叠物品,然后判断所有的待堆叠物品是否已经全部堆叠,如果还存在需要堆叠的物品,就对剩余的空间进行三空间划分,判断划分的三空间是否满足空间合并的条件,如果满足条件即进行空间合并,并更新可用的独立空间信息,直至所有的待堆叠物品均已完成堆叠。
如果堆叠过程中,下一个待堆叠物品的最小可用空间不存在,就根据推荐容器参数,为该待堆叠物品初始化一个新的容器,放入该待堆叠物品之后,可用的独立空间就包括已经使用的所有容器的可用空间,在进行下一个待堆叠物品堆叠的时候,按容器顺序进行最小可用空间判断,即前一个容器空间不足时,判断下一个容器空间是否能放入该物品。
如图4所示,为本实施例中三空间划分示意图,图中示出了坐标系x-y-z,该坐标系为三维笛卡尔坐标系,用于建立容器内的空间模型,其中三个坐标轴x,y,z分别对应容器的长度方向、宽度方向、高度方向,该坐标系的原点在容器的左后下角,还示出了容器1和其内部放置的物品2,按照坐标系z-y-x划分的三空间包括z方向的上空间23、y方向的前空间21以及x方向的左空间22。
如图5a~图5c所示,为本实施例中空间合并示意图,通过三空间划分方式,每放入一个待堆叠物品就会产生3个子空间,随着待堆叠物品越来越多,产生的子空间也越来越小,有些过狭窄而无法装入任何物品,因此需要在堆叠之前对空间进行合并,即将同一空间中有共同面的两个空间进行合并成一个大的空间,形成新的可用独立空间,从而提高空间利用率。
图5a~5c示出了空间合并的三种情况,第一种为前后合并,图中示出了前空间211和后空间212,这两个空间有共同的xz面,可以进行前后合并成新空间213;第二种为左右合并,图中示出了左空间221和右空间222,这两个空间有共同的zy面,可以进行左右合并成新空间223;第三种为上下合并,图中示出了上空间231和下空间232,这两个空间有共同的xy面,可以进行上下合并成新空间233。
初始种群中所有堆叠方案染色体的堆叠适配过程完成后,获得父代种群,计算父代种群中每个堆叠方案染色体的适应度,并保留适应度最高的堆叠方案染色体。
适应度计算方法具体为:
cost=1-(m+rule)/(n+1)
rule=1-vuse/vall
其中,cost为堆叠方案适应度,m为容器数量,rule为堆叠规则度,n为待堆叠物品数量,vall为已用堆叠容器的总体积,vuse为待堆叠物品的总体积,vm为每个已用堆叠容器的底面积,hmax为实际堆叠容器的最大高度。
对父代种群中堆叠方案染色体进行交叉进化,进化过程具体为:对父代种群中的堆叠方案染色体按照顺序进行两两堆叠方案染色体交叉进化形成多个第一代堆叠方案染色体,多个第一代堆叠方案染色体组成第一代进化种群。其中两两堆叠方案染色体交叉进化指:在两个进行交叉进化的堆叠方案染色体中,随机选择一个堆叠方案染色体的堆叠顺序和推荐容器,然后按顺序交叉两个堆叠方案染色体的放置方式,得到进化后的堆叠方案染色体。
如图6所示为本实施例堆叠方案染色体交叉进化流程图,具体流程如下:
首先选择第n和n+1个染色体,其中0<n<种群数量m,生成交叉随机数x1(0<x1<1),判断是否满足条件x1<交叉概率,如果满足条件,则进化后的染色体的堆叠编号参数选择染色体n的堆叠编号参数,否则选择染色体n+1的堆叠编号参数,然后根据新堆叠编号参数逐个生成每个编号对应的交叉随机数x2,x2的数量与待堆叠物品的数量相同,逐个判断x2是否小于交叉概率,如果x2<交叉概率,则选择该编号对应的待堆叠物品在染色体n的放置方式参数,当x2>交叉概率,则选择该编号对应的待堆叠物品在染色体n+1的放置方式参数,并根据新堆叠编号对每一个待堆叠物品选择推荐容器,根据堆叠编号、放置方式、可用容器生成新的染色体,交叉进化过程结束。
将父代种群中堆叠适配过程完成的适应度最高的堆叠方案染色体与父代种群经过交叉后得到的多个第一代堆叠方案染色体进行组合,得到第一代进化种群。
然后对第一代进化种群的每一个堆叠方案染色体进行变异,生成第一代变异种群,变异过程即按照预设变异概率选择需要进行变异的堆叠方案染色体,在需要变异的堆叠方案染色体中,随机改变堆叠顺序参数,并根据改变后的堆叠顺序参数对应改变放置方式参数或推荐容器参数,更具体的是,在需要变异的堆叠方案染色体中,选择两个待堆叠物品,调换其堆叠顺序,同时分别随机生成其放置方式和推荐容器。
变异过程实现流程如图7所示,根据染色体的堆叠编号逐个生成变异随机数y(0<y<1),即每一个待堆叠物品对应一个变异随机数y,判断y与变异概率的大小,若y<变异概率,则交换当前的带堆叠物体与下一个带堆叠物体的堆叠编号,并且随机生成参与交换的两个带堆叠物体堆叠编号对应的放置方式和推荐容器,如果y>变异概率,则不做处理,遍历整个堆叠编号,即对每一个待堆叠物品进行变异概率判断,生成变异后的新染色体,变异结束,得到第一代变异种群。例如,变异概率通常在0.01~0.2之间,当选取变异概率为0.05时,待堆叠物体a的变异随机数y<0.05,则将待堆叠物品a的堆叠顺序与下一个待堆叠物品b的堆叠顺序调换,同时,物品a和b的放置方式和推荐容器重新随机生成。
对生成的第一代变异种群中每个堆叠方案染色体的适应度,选择适应度最高的堆叠方案染色体为第一代近似最优堆叠方案染色体。
将上述第一代近似最优堆叠方案染色体初始种群中的其中一个堆叠方案染色体,重复执行步骤s1至s4,进行进化迭代得到下一代近似最优方案,当迭代次数达到预设迭代次数,则将最后一代近似最优堆叠方案染色体数据转化成包含容器打包数据的堆叠方案输出,堆叠结束。
假设本实施例使用场景中待堆叠物品数量在10个以下的占98%,则为了兼顾准确率和算法效率,可以设置预设迭代次数为300。
下面是本实施例的基于遗传算法的堆叠组合方法的整体流程描述:
1)筛选出每个待堆叠物品的可用容器后,根据堆叠方案染色体的组成部分进行堆叠方案染色体的初始化,获取初始种群;
2)对每个堆叠方案染色体按照堆叠顺序参数,获取待堆叠物品的堆叠编号、放置方式和推荐容器,进行堆叠方案染色体的堆叠适配过程。
3)根据待堆叠物品的堆叠编号,获取待堆叠物品的尺寸信息,再获取可用的容器,如果待堆叠物品为第一个堆叠物品,根据其推荐容器信息,初始化可用的独立空间信息。
4)根据堆叠方案染色体中待堆叠物品编号对应的尺寸信息和放置方式,查找下一个待堆叠物品的最小可用空间是否存在,如果最小可用空间不存在,则根据推荐容器参数,为该待堆叠物品初始化一个新的容器,并且更新可用的独立空间信息,包括已经使用的所有容器的可用空间。
5)判断是否所有的待堆叠物品均已堆叠完成:若所有待堆叠物品堆叠完成,则堆叠该堆叠方案染色体的堆叠适配过程结束,计算该堆叠方案染色体的适应度;若还存在需要堆叠的物品,就对剩余的空间进行三空间划分,并判断划分的三空间是否需要进行空间合并,更新可用的独立空间信息,直至所有的待堆叠物品均已完成堆叠。
6)初始种群中所有堆叠方案染色体的堆叠适配过程完成后,获得父代种群,进行适应度计算,保留适应度最高的堆叠方案染色体。
7)将父代种群中堆叠适配过程完成的适应度最高的堆叠方案染色体与父代种群经过交叉后得到的多个第一代堆叠方案染色体进行组合,得到第一代进化种群。
8)对第一代进化种群的每一个堆叠方案染色体进行变异,生成第一代变异种群,并进行适应度计算保留适应度最高的堆叠方案染色体。
9)判断是否已达到预设迭代次数:若未达到预设迭代次数,将变异后适应度最高的堆叠方案染色体添加到初始种群中,继续进行交叉进化和变异后生成下一代染色体,重复步骤1~8;若达到预设迭代次数,将最后一代近似最优堆叠方案染色体数据转化成包含容器打包数据的堆叠方案输出,堆叠结束。
在某一个实施例中:
一个客户在某购物网站买了5件商品,5件商品表示为w1~w5,其长宽高尺寸分别为(5*10*10,10*10*10,10*10*20,10*20*20,20*20*30),假设经过统计后虚拟容器空间由c1~c6表示。
堆叠方案染色体表示为:{堆叠编号,放置方式,推荐容器}={w,g,c};
其中一条堆叠方案染色体组成为:
w={w5,w3,w2,w1,w4}-1;
g={g1,g2,g3,g4,g5}-1;
c={c2,c3,c2,c2,c3}-1;
对该堆叠方案染色体进行堆叠适配过程如下:
1)先按g1=[长宽面朝上,直放]方式将w5放入c2;
2)再将w3按g2=[长高面朝上,横放]方式放入剩余的可用空间,如果剩余可用空间过小无法放入,则按c3容器尺寸再增加一个新的可用空间,放入w3。依此类推将所有物品按顺序与摆放方式逐个放入容器。
3)完成堆叠后,统计使用的容器数量与容器总体积,根据适应度计算公式,计算出该堆叠方案染色体的适应度。
对初始种群所有的堆叠方案染色体全部堆叠适配完成后,保留适应度最高的染色体,进行两两交叉进化,变异,其中进化得到第一代变异种群,选择适应度最高的堆叠方案染色体为第一代近似最优堆叠方案染色体。
进行迭代直到达到预设迭代次数,得到近似最优堆叠方案染色体,将最后一代近似最优堆叠方案染色体数据转化成包含容器打包数据的堆叠方案输出,堆叠结束。
其中,交叉概率通常在0.4~0.6之间,本实施例中以0.5为例,变异概率通常在0.01~0.2之间,本实施例以0.05为例,种群数量通常为待堆叠物品数量的10倍,本实施例以50为例,本实施例使用的预设迭代次数为300。
实施例二:
如图8所示,为本实施例的一种基于遗传算法的堆叠装置框图,包括
初始种群生成模块,用于随机产生多个堆叠方案染色体,多个堆叠方案染色体组成初始种群;
堆叠适配模块,用于对初始种群生成模块输出的初始种群中每个堆叠方案染色体进行堆叠适配过程,获得父代种群,并计算父代种群中每个堆叠方案染色体的适应度,并保留适应度最高的堆叠方案染色体;
进化模块,用于对堆叠适配模块输出的父代种群中堆叠方案染色体进行交叉进化,并和父代种群中适应度最高的堆叠方案染色体组合得到第一代进化种群,其输入为堆叠适配模块的输出;
变异模块,用于对进化模块输出的第一代进化种群进行变异,生成第一代变异种群,计算第一代变异种群中每个堆叠方案染色体的适应度,并选择第一代变异种群中适应度最高的堆叠方案染色体为第一代近似最优堆叠方案染色体;
迭代模块,用于对近似最优堆叠方案染色体进行进化迭代,具体为:将变异模块中得出的近似最优堆叠方案染色体作为初始种群生成模块中初始种群中的其中一个堆叠方案染色体,重复执行将初始种群生成模块的输出送至堆叠适配模块,堆叠适配模块的输出送至进化模块,进化模块的输出送至变异模块,进行进化迭代得到下一代近似最优方案,当迭代次数达到预设迭代次数,则将最后一代近似最优堆叠方案染色体输出。
实施例三:
本发明还提供一种基于遗传算法的堆叠操作的控制设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,所述存储器存储有可被至少一个处理器执行的指令,所述指令被至少一个处理器执行,以使至少一个处理器能够执行任一项基于遗传算法的堆叠组合方法。
实施例四:
本发明还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行任一项所述的基于遗传算法的堆叠组合方法。
本发明针对仓储物流系统需要进行堆叠组合时,比如在仓库存储时将物品尽量堆叠得紧凑以节省仓储空间,或者在运输时将一个客户的多个成品包装商品堆叠组合在一起进行运输的问题,根据待堆叠物品的底面尺寸和运输渠道高度限制初始化虚拟容器空间,将堆叠组合问题转换为多空间装箱问题,当单个虚拟容器空间不能装完所有待堆叠箱物品时,再初始化新的虚拟容器空间,通过遗传算法提供最少虚拟容器且空间利用率最高的堆叠组合方案,提高订单组合率和堆叠规则度,完成物品堆叠组合,减少资源浪费。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。