近些年来,共享工厂、共享机床等共享经济模式在个性化定制生产中已得到广泛的融合发展
共享仓储为多个厂家提供短期或长期的仓储服务,其货位布局、货品摆放对于拣选与摆放货品效率的影响不容忽视。区别于传统的仓库布局,
共享仓储为了满足客户的不同需求、为客户提供更好的服务,需要在确保充分利用仓储货位的基础上,能够在单位时间内完成更多货品的出入库作业,提高出入库效率。基于Fishbone布局,对优化模型做如下假设:仓库是采用单指令拣货模式的仓库;所有的拣货小车速度(水平速度和垂直速度)为固定值,不受所载货物质量影响;同类货品可以放置于多个货位,单个货位只能放置一种货品;拣货小车每次只运送一类货品;货品的存放方式为随机存放;等待存储的货品信息已知;每个货位的长、宽、高都相等。
如图1所示,典型的Fishbone布局将货架分为四个区域,从右至左分别命名为1区、2区、3区和4区;所有的拣货通道(包括区域之间的通道与区域内货架之间的通道)宽度相同。其中,l表示货位的长、宽,h表示货位的高,i(i=1,2,3,4)表示区域,x(x=1,2,…,p)表示货架排数,y(y=1,2,…,p)表示货架列数,z(z=1,2,…,p)表示货架层数,Wip表示第i区第p排货架单层货位数,s表示第1/4区第一排货架单层货位数,I1表示第1/4区域偶数排与其前一排货架单层货位的增量,I2表示第1/4区奇数排与其前一排单层货位的增量,mipqt表示货品的质量,Pipqt表示货品的周转率,α为区域底边边长,αp主通道宽度,θ为区域倾斜角度。
每个区域有ni排τ层,其中τ保持不变。因此,每排货架的单层货位数Wip为:
其中,(-1)p表示当货架排数是奇数时,要在最后一排货架后增加一条通道。
货位Oipqt的坐标定义为Pipqt=(Xipqt,Yipqt,Zipqt)。把共享仓储出入库点作为坐标原点,货位各点坐标公式表示如下:
其中,
共享仓储货位分配优化模型是基于立体仓库货物存储原则确立的。根据货物出入库效率原则,将存取频率高的货物放在离出入库平台较近的货位,以降低作业小车总体作业时间,提高作业效率。目标函数为所有货物组合拣货时间之和最小,满足存取频率越高,拣货小车运送该货品时间越短,则模型函数可表示为:
其中,对于1区、4区,拣货设备行驶时间T1(Pipqt)为式(5),对于2区、3区,拣货设备行驶时间T2(Pipqt)为式(6):
其中,L是出入库口到货位的水平距离,v1为拣货小车的水平运动速度,v2为拣货小车的竖直运动速度。
在共享仓储中,当货架承载额定的货物重量、且货架及货物整体的中心在中位线以下时,货架是最稳定的。假设每个货位上的货物质量分布均匀,并且布满整个货位空间。故令货架每层货物质量与层数乘积之和最小,则模型函数可表示为:
其中,
仓储货位问题是一个典型的多目标优化问题。采用权重系数变换法赋予上述两个目标函数权重w1和w2,将多目标变为单目标优化问题。则共享仓储货位需求服务配置的数学模型为:
布谷鸟搜索(Cuckoo Search,CS)算法是由Xin-She
如图2所示,改进的布谷鸟搜索算法的求解流程:
步骤1:输入原始数据,获取货品信息(货品质量,周转率等),对货品信息、货位信息进行编码,货品按自然数编码,货位信息按区域进行编码,如货位4571表示该位置在4区5排7列1层,以矩阵形式输入,并确定待优化变量。
步骤2:初始化参数,设置种群数量NP、最大迭代次数N_iterTotal和发现概率Pa,搜寻步长α等。其中步长的分配公式为
其中,α(t)为当前迭代次数下平均步长。
步骤3:随机初始化鸟窝位置(即货品位置),计算每个鸟窝位置的个体适应值,获取当前的最优函数值。
步骤4:保留上一代鸟窝的最优函数值,采用Levy Flight更新当前鸟窝位置。
步骤5:综合约束条件,比较目标函数个体的适应值,并找出当前极值点,即当前最优解bestnest。
步骤6:比较目标函数适应值与鸟窝个体适应值大小,保留优解gbestnest。
步骤7:与发现概率Pa进行比较,若大于Pa,则把落在不可行区域内的个体舍弃,对新种群中的剩余鸟窝按莱维飞行原则重新更新并代替这些鸟窝,转向步骤4;若小于Pa,则继续进行迭代。
步骤8:判断是否满足算法停止条件,如果满足,输出全局极值gbestnest,否则继续进行迭代。
为验证所提出布谷鸟搜索算法求解仓储货位模型的正确性,设计如下实例进行仿真、验证与分析。
某Y工业园区的共享仓库,其内部为Fishbone布局结构,仓库内部具体结构信息为:一个货位的长度、宽度和高度均为1m,通道宽度αp为2m,第1区(或第4区)货架排数η为6;第1区(或第4区)第一排货架单层货位数量s为1,第1区(或第4区)奇数排货架单层货位的增量I2为4,货架层数为3。根据这些参数,结合模型公式,求得各个区域货架排数n为n=[6,6,6,6],各区域各排货架单层货位数量w为:
本案例共有货位468个,最终仓库布局的平面图如图3所示现有40种货物需要入库存放,具体信息如表1所示:
分别采用遗传算法和改进的布谷鸟搜索算法进行求解。在遗传算法求解中,参数设置为交叉概率pc=0.4,变异概率pm=0.1,最大进化代数T=400。在改进的布谷鸟搜索算法求解中,参数设置为α=0.5,pa=0.25,种群规模40,固定进化迭代次数200次,两种算法均独立运行。
表1 某共享仓储的货品信息
货物编号 | 货物质量(KG) | 周转率% | 货物编号 | 货物质量(KG) | 周转率% | |
1 | 87 | 9 | 21 | 51 | 11 | |
2 | 115 | 7 | 22 | 160 | 10 | |
3 | 84 | 11 | 23 | 64 | 5 | |
4 | 72 | 4 | 24 | 264 | 8 | |
5 | 72 | 8 | 25 | 465 | 12 | |
6 | 80 | 6 | 26 | 26 | 5 | |
7 | 50 | 12 | 27 | 9 | 7 | |
8 | 95 | 7 | 28 | 28 | 6 | |
9 | 60 | 3 | 29 | 175 | 10 | |
10 | 63 | 9 | 30 | 100 | 3 | |
11 | 52 | 6 | 31 | 105 | 7 | |
12 | 85 | 4 | 32 | 30 | 8 | |
13 | 70 | 6 | 33 | 7 | 10 | |
14 | 115 | 9 | 34 | 28 | 9 | |
15 | 136 | 4 | 35 | 175 | 8 | |
16 | 14 | 6 | 36 | 48 | 3 | |
17 | 144 | 5 | 37 | 124 | 7 | |
18 | 50 | 8 | 38 | 75 | 2 | |
19 | 90 | 7 | 39 | 150 | 6 | |
20 | 66 | 5 | 40 | 60 | 5 |
实验仿真环境:在Windows10系统中运行,处理器主频2.8GHz,CPU为Intel(R)Core(TM) i5-4200H,内存4GB,采用MATLAB R2018a实现算法编程。根据上述参数设定,得到的算法收敛曲线如图4所示,算法结果解码后如表2所示。
图4 改进布谷鸟搜索算法与遗传算法对比
表2 改进CS优化后货物位置
货物编号 | 货区i | 排p | 列q | 层t | 货物编号 | 货区i | 排p | 列q | 层t | |
1 | 4 | 5 | 7 | 1 | 21 | 3 | 2 | 5 | 3 | |
2 | 3 | 3 | 4 | 3 | 22 | 2 | 1 | 12 | 2 | |
3 | 3 | 1 | 1 | 2 | 23 | 1 | 6 | 7 | 2 | |
4 | 4 | 6 | 2 | 2 | 24 | 4 | 3 | 2 | 1 | |
5 | 2 | 1 | 3 | 2 | 25 | 1 | 4 | 3 | 1 | |
6 | 1 | 6 | 5 | 1 | 26 | 2 | 2 | 4 | 3 | |
7 | 1 | 5 | 5 | 1 | 27 | 2 | 1 | 1 | 1 | |
8 | 3 | 3 | 6 | 3 | 28 | 1 | 3 | 1 | 3 | |
9 | 4 | 4 | 4 | 2 | 29 | 2 | 3 | 8 | 3 | |
10 | 2 | 6 | 2 | 1 | 30 | 2 | 2 | 7 | 1 | |
11 | 3 | 1 | 10 | 1 | 31 | 3 | 2 | 1 | 2 | |
12 | 1 | 3 | 4 | 1 | 32 | 3 | 3 | 8 | 2 | |
13 | 2 | 3 | 4 | 3 | 33 | 4 | 3 | 1 | 1 | |
14 | 3 | 1 | 10 | 2 | 34 | 3 | 3 | 7 | 1 | |
15 | 2 | 3 | 5 | 3 | 35 | 3 | 1 | 11 | 1 | |
16 | 4 | 5 | 3 | 3 | 36 | 3 | 1 | 9 | 1 | |
17 | 1 | 5 | 6 | 1 | 37 | 4 | 4 | 5 | 1 | |
18 | 3 | 2 | 10 | 2 | 38 | 4 | 5 | 5 | 1 | |
19 | 1 | 2 | 1 | 2 | 39 | 2 | 1 | 10 | 2 | |
20 | 4 | 3 | 3 | 3 | 40 | 4 | 5 | 8 | 3 |
由上述解码后Fishbone布局货位需求服务配置结果可知,采用遗传算法得到的目标函数最小值为2860,采用改进布谷鸟搜索算法得到的目标函数最小值为2792,并且改进布谷鸟搜索算法迭代次数较遗传算法有较大改观。
针对共享仓储货位需求服务配置问题,基于Fishbone布局方法、仓储货品的基本原则,建立共享仓储货位需求服务配置设计问题的数学模型。以货品存放出入库最短完成时间及保持货架稳定性为目标,分别采用改进布谷鸟搜索算法和遗传算法进行了求解。案例仿真结果表明该模型能提高货品的出入库效率,并保证货架的稳定性,运用布谷鸟搜索算法求解货位需求服务配置问题是可行的。
但国内外对将布谷鸟搜索算法应用于仓储货位需求服务配置问题研究较少,只是对其进行初步研究,在工业实践应用方面还将面临许多问题,如提高该算法的求解精度、货位规模导致的计算效率低等方面还需进一步深入研究。
【本文标签】
【责任编辑】平文云仓