大型电商平台进一步拓展了自动化立体仓储的应用领域,对自动化立体仓储技术来讲既是机遇又是挑战。仓储作业是仓储业务中最耗时的,大约占到仓储业务总耗时的55%
上述文献主要针对传统单区块类型仓储作业优化问题开展了相关的研究工作,对多区块类型仓储作业优化问题涉及较少。单区块类型仓储是指仓储系统仅仅包含前过道和后过道。如果仓储系统除了包含前、后两个过道外还有其他过道,则其为多区块类型仓储,具体如图1所示。特别是大型仓储系统,过道的引入给仓储作业增加了很大的柔性,因此该类仓储正逐步得到广泛应用。对于使用大型仓储系统的电商平台,比如淘宝、京东,在“双11”等类型的促销狂欢节中,在打价格战的同时,都希望将客户订单在最短时间内进行交付,以进一步提高服务质量和市场竞争力。因此,如何在带过道仓储中提高订单拣选作业效率是非常有价值的研究课题。
以某大型网上超市仓储系统为例,其布局如图1所示。与传统单区块仓储系统相比,增加了过道布局。
图1 仓储布局图
Figure 1 Warehouse layout
从图1中可以直观地看到,堆垛机根据自身当前所处位置,通过选择合适的过道可以方便地实现从当前巷道进入到下一个巷道。该仓储系统具体作业流程为:堆垛机在缓冲区接到客户订单拣选指令后,自动进入相应的巷道开始拣选作业,直到完成既定的拣选任务后返回到缓冲区。
为研究方便,忽略堆垛机的启动和制动时间,设堆垛机的水平运动平均速度和垂直运动平均速度分别为vx和vy,且水平和垂直方向运动相互独立。堆垛机最大载货量为C,仓储每个仓位的长、宽、高分别记为L、W、H,巷道宽度为W1,过道宽度为W2,区块数为L1,每区块每巷道货架列数为L2,层数为L3,巷道数为L4。假设P={p1,p2,…,pn}为订单的n个待拣选货位,其货位pi(i∈{1,2,…,n})坐标可表示为(xi,yi,zi,bi),其中xi、yi、zi、bi分别为货位所在巷道号、货位所在货架的列号层号以及货位所在区块号,本文将缓冲区记为p0(0,0,0,1)。同时,每个待拣选货位货物的订单需求量记为wi。
定义1如果堆垛机在执行拣选任务的过程中连续经过货位pi和pj,则eij=1,否则eij=0。
在定义1中,堆垛机由货位pi到pj所用的时间可表示为:
式中:
定义2由于堆垛机载重量的限制,某一订单可能需要堆垛机进行R次拣选作业。如果待拣选货位pi在第r(r∈R)次拣选作业中完成,则gir=1,否则gir=0。
求解该类型仓储作业优化问题的目标就是使完成所有订单的拣选任务所花费的时间最短,假设某订单拣选任务的集合为O,其数学模型和约束定义如下:
式中:eij、gir、gjr为决策变量;tij为参数变量。其中,式(2)为目标函数;式(3)~(10)为约束函数。式(3)表示待拣选货位在拣选路径中只允许出现一次;式(4)限定堆垛机进行拣选作业所装载货物不能超过自身最大载重;式(5)和式(6)表示每个待拣选货位在拣选过程中不能形成自回路;式(7)和式(8)限定堆垛机拣选路径起始位和结束位均为出入库缓冲区处;式(9)和式(10)为决策变量的二进制值域约束。
由于所求优化问题的特性千差万别,因而不存在适合于求解所有类型优化问题的万能算法。本文将多物种协同进化思想引入到算法设计中,使用遗传算法
关于多物种进化算法,已有学者进行了相关研究,比如黎明等
为使多个物种协同进化,引入竞争捕食机制,具体工作原理为:在生物进化的过程中,由于自身或自然条件等因素,会出现对生存环境适应能力较差的个体,这些个体被其他物种捕食的风险大。为实现物种间竞争捕食,首先基于平均适应度找出捕食者与被捕食者,以平均适应度最大的物种为捕食者,其余物种均为被捕食者。被捕食的种群为更好地适应生存环境,需要总结被捕食的经验教训,即通过所谓的学习来不断提高自身的生存能力。为此,个体被捕食概率pi定义如下:
式中:fitness(·)为适应度函数。
为体现多物种进化的协同性,引入基于学习机制的繁殖策略,即:如果某物种有个体被捕食,则会导致该物种种群数量减少,为维持生态平衡,在xiold个体被捕食后,将基于学习机制繁殖新个体。具体繁殖策略定义如下:
式中:Ω为全部物种的种群空间。
种群多样性是物种适应环境能力的一种表征,对优化算法而言,则是解空间分布的一种度量。如果种群分布集中,则不利于解空间的开拓,容易导致算法陷入局部最优,从而降低求解效率及求解质量,而变异策略在一定程度上可以提高种群的多样性。基于上述考虑,有必要对基于变异机制的种群多样性进行调整改善。
为兼顾解空间全局的开拓以及局部的开发,笔者对全部物种的种群多样性进行协同改善。具体策略为:对全部物种中的所有个体按照适应度高低进行降序排列,然后计算所有非最优个体与最优个体间的距离,并按距离长短降序排列。为克服过度变异带来的随机性,只对适应度及距离排名后10%的个体进行变异。
Step 1初始化参数。总体最大进化代数Gmax、每个物种的最大进化代数Gpmax、进化代数计数器t、种群规模M、交叉概率pc、变异概率pm、惯性权重w、学习因子c1和c2、步长step、人工鱼的视野范围Visual、尝试次数n、拥挤度因子δ,初始化每个物种的种群个体。
Step 2全局搜索,t=t+1。
Step 3局部搜索,遗传算法、粒子群算法以及人工鱼群算法进行单物种并行进化。
Step 4产生随机数r。对于被捕食者,如果r>pi,则进行基于学习机制的多物种竞争捕食。
Step 5多物种种群多样性协同改善。
Step 6如果t<Gmax,则返回Step 2;否则,输出最优解。
算法具体流程图如图2所示。
Figure 2 Flow chart of MSCA
定义3设{Xk,k=0,1,…}是一离散序列,Xk的有限状态空间为S={γ1,γ2,…,γN},若对于任意的k≥0及γ0,γ1,…,γk-1∈S,都有下式成立:
则称{Xk,k=0,1,…}为有限Markov链。
定义4条件概率P(Xk+1=γj|Xk=γi)称为Markov链{Xk,k=0,1,…}在时刻k处于状态γi的条件下,在时刻k+1转移到状态γj的转移概率,记为pij(k)。如果pij(k)与时间k无关,则称{Xk,k=0,1,…}为齐次有限Markov链。
定理1 MSCA的种群状态序列是齐次有限Markov链。
证明:假设种群中个体的位置称为个体的状态,由于求解问题规模有限,因而个体所有状态构成的空间S={ψ1,ψ2,…,ψN}是个有限集。同时,个体从当前状态ψi转移到下一个状态ψj无论经过遗传算法、粒子群算法、人工鱼群算法还是三者之间的竞争捕食,其转移概率pij(k)只与ψi有关,与时间k无关。因此MSCA的种群状态序列是齐次有限Markov链。
定义5假设Qk=max{F(xi)|i∈(1,2,…,U)}表示在第k代可行解中适应度最好的所有个体,如果满足下式:
则MSCA是全局收敛的,式中Q*为待求问题的全局最优解集。
定理2笔者提出的MSCA具有全局收敛性。
证明:
由于本文MSCA采用最优解保留策略,式(15)由贝叶斯条件概率公式又可表示为:
令
则由式(16)、(17)可得
又因为ζ∈(0,1),所以
又因为
由式(19)、(20)可得
因此,本文提出的MSCA具有全局收敛性。
为了验证MSCA算法的性能,结合某企业给出的60个客户订单进行测试,并与标准遗传算法(GA)、标准粒子群算法(PSO)、标准人工鱼群算法(AFS)进行比较。实验在Windows 10系统平台,MATLAB7.0开发环境下进行。进化代数均为600,其中,对于MSCA,各子算法的进化代数均为50,子种群规模均为60;对于GA,种群规模为180,交叉概率及变异概率分别为0.80、0.06;对于PSO,种群规模为180,惯性权重w为1.3,学习因子c1和c2均为2;对于AFS,种群规模为180,步长为0.5,视野范围为15,尝试次数为30,拥挤度因子δ为0.618。自动化立体仓库系统参数:L=30 cm,W=50 cm,H=40 cm,W1=80 cm,W2=80 cm,L1=8,L2=100,L3=15,L4=7,vx=1 m/s,vy=0.5 m/s,C=500 kg。针对本文上述测试算例,图3为各算法求出的最优解随进化代数的变化趋势。为具有普适性,对不同规模的订单进行了测试,并对参与比较的算法各运行30次,同时,为兼顾公平性,各算法使用相同的目标函数评价次数,图4给出了订单规模为60时,30次运行结果的箱形图,表1给出了不同规模订单运行30次的最优解、平均值及标准差。同时,在算法性能上,为验证MSCA与GA、PSO及AFS是否存在显著性差异,又对算法的运算结果进行了基于均值的双样本t-test,本文首先假设参与对比的两个算法之间在性能上不存在显著性差异,并且显著性水平设为0.05。表1中的t-test1、t-test2和t-test3分别表示MSCA与GA、PSO和AFS的对比测试。
图3 最优解随进化代数的变化趋势 下载原图
Figure 3 Optimum change with generation
图4 30次最优解的箱形图 下载原图
Figure 4 Boxplots of 30 optimums
从图3可以直观地看出,本文提出的MSCA算法在收敛速度以及求解精度上明显优于其他3种算法。同时,图4表明对同一问题的多次求解,MSCA得出的最优解分布较为集中,表明该算法具有良好的稳定性。为进一步评估MSCA算法的性能,表1依据不同规模订单的求解情况,从仓库有无过道两个角度,将MSCA与GA、PSO及AFS进行了对比。从表1的统计结果来看,首先在最优解和均值方面,对于规模订单拣选问题的求解,4种算法均显示出自身的优势,表明其具有较高的求解质量;其次,在标准差方面,MSCA标准差是最小的,特别是随着订单规模的增加,优势更为明显,从而表明MSCA具有较好的鲁棒性。关于MSCA的性能,t-test也对其进行了验证,在表1中,对任意规模订单的求解,|t|均大于t0.05,从而表明假设不成立,即MSCA与GA、PSO和AFS在性能上存在显著差异。MSCA之所以呈现这些特点,主要是由于笔者提出的基于学习机制的多物种竞争捕食及多物种种群多样性协同改善策略。首先,物种间的学习机制能够使物种快速获取整个生态系统当前时刻的最优解,从而能够引导自己向有利于找到全局最优解的方向搜索,从而提高了寻优效率;其次,多物种种群多样性协同改善策略通过物种间信息的共享,从全局角度改善了种群的多样性,这将在很大程度上降低算法进入局部最优的概率。因此这两方面有效增强了MSCA的全局开拓能力及局部探索能力。更为重要的是,表1揭示了带过道仓储在订单拣选效率上要好于无过道仓储。
表1 不同规模订单各算法求解情况对比 下载原图
Table 1 Comparison among MSCA,GA,PSO and AFS
为求解带过道的仓储作业优化问题,提出了一种多物种协同进化算法,通过引入学习机制,让物种间进行竞争捕食,从而实现优势互补;同时,提出多物种种群多样性协同改善机制,以快速提高每个物种的种群多样性。通过实例仿真可以看出,竞争捕食机制提高了求解效率,种群多样性协同改善机制扩大了解空间的寻优范围。最后验证了求解不同规模,特别是大规模订单拣选问题,MSCA相对GA、PSO及AFS算法的优越性,更为重要的是揭示了相对传统仓储,带过道仓储的订单拣选效率有明显的提升。因此,本文所研究问题的思路及成果为传统仓储的布局改造提供了参考。
【本文标签】
【责任编辑】平文云仓