1自动化仓库旋转货架拣选优化问题自动化仓库旋转货架操作简单,存取作业迅速,适用于电子元件、精密机械等少批量多品种小物品的储存及管理。如所示,旋转货架货位为多层结构,设有电力驱动装置,驱动货架沿着由2个直线段和2个曲线段组成的环形轨道运行,拣货台可以垂直升降运行。旋转货架系统由电子计算机控制,存取货物时,将该批货物所在货位编号输入,通过优化计算,货位自动旋转,同时拣货台垂直运动到货位所在层,使货位以*短的时间到达拣货台,完成拣货操作。
自动化仓库旋转货架拣选优化问题可描述为:货位长为l,高为h;货位旋转速度为V h,拣货台升降速度为V;对于1批含有N h个货物的拣选任务,拣货台从第1层出发,同时货位开始旋转,依序完成拣货操作。目标是如何控制货位旋转及拣货台的升降,使拣选该批货物所用的时间*短。
货位2.拣货台2自动化仓库旋转货架拣选优化问题的分层遗传算法2 1分层遗传算法遗传算法(GA)是基于适者生存的一种高度并行、随机和自适应化的优化算法,它通过模拟物种的进化过程达到寻求整体*优的目标。普通遗传算法是首先产生一个初始种群,通过设计的进化操作来求解问题。普通遗传算法往往导致遗传种群缺乏多样性而过早的收敛。
分层遗传算法(HGA)是对上述遗传算法的改进。HGA首先进行低层遗传算法操作:生成多个初始种群,各种群设置不同的参数独立进行各自的遗传算法。各种群进化到一定程度便进入到高层遗传算法操作:将各种群的平均适应度作为种群适应度,进行以种群为单位的进化操作。HGA通过在低层遗传算法阶段获得位于个体串的一些特定位置的优良模式,通过高层遗传算法阶段获得包含不同种类的优良模式的新个体,获得较好的寻优效果。
2 2拣货台在货位之间的运行时间
将货架作为静止的参照物,拣货台既可上下升降,又能水平运动。对于含有m层,每层n个货位的旋转货架,可以看成是拣货台在长为nl、宽为mh的矩形区域内拣货。由于旋转货架可以左右旋转,故拣货台在货位i和j之间的运行时间t i, j = max (| y j - y i | / v v, min (| x j - x i | / v v, | nl+ x j - x i | / v v)其中x i、x j、y i、y j分别为货位i和j在货位旋转方向和拣货台垂直升降方向的坐标。
2 3低层遗传算法阶段操作(1)初始群体的产生采用自然数编码,将N h个货位按从1到N h的顺序依次编码。设拣货台起点为0,采用基于GENI的插入算法形成初始群体。GENI
插入法的一个*重要的优点就是它包含了路径内部的局部优化。生成初始个体方法:随机扰乱货位顺序,得到一个初始序列,将此序列依次用GENI插入法插入到路径中。重复以上产生个体的过程N次,得到规模为N的一个初始种群。
重复以上产生群体的过程M次,得到M个种群规模为N的的初始群体。
(2)交叉操作采用多点交叉操作。多点交叉的思想源于控制个体特定行为的染色体表示信息的部分无须包含于邻近的字串中,多点交叉的破坏性可以促进解空间的搜索,而不是促进过早的收敛,因此搜索更加健壮。多点交叉步骤:随机选择m个交叉位置,除了第1位变量与第1个交叉点之间的一段不做交换外,其他交叉点之间的变量可以间续地相互交换,产生2个新的后代。
(3)变异采用多次2- swap变异。一旦随机数小于变异概率,则变异操作发生,随机选取2个基因进行交换,当遇到不能交换的基因时,取消交换操作,重新选择交换基因,直到能够进行变异。
(4)内部(局部)扰动操作经过上述交叉、变异后,加入内部扰动过程,每进化Nr代,以某一概率给每次新生代增加全新染色体(与进化中的染色体完全无关的染色体) ,使进化过程不完全受制于初始群体,以达到跳出局部收敛点的目的。
2 4高层遗传算法阶段操作(1)选择操作计算低层遗传算法阶段得到的M个种群的平均适应度值,根据平均适应度值用轮盘赌方法进行选择。
(2)交叉操作与低层染色体交叉不同,高层遗传算法是对种群进行操作。本文采用的方法是:当2个父代种群被匹配在一起进行交叉操作,随机选择2个交叉点x 1、x 2,然后交换这2个父代种群中区间[ x 1, x 2 ]的染色体。
(3)变异操作高层遗传算法的变异操作是群体进行小概率改变的操作。本文采用的方法是:以随机生成的新个体小概率替换抽取的群体中某个体。
2 5终止准则本文HGA包括3个终止准则:低层终止准则、高层终止准则和算法终止准则。对于低层和高层终止准则,本文采用*大循环代数终止准则。算法终止准则采用*优解没有改进的*大进化代数。
2 6关键步骤用分层遗传算法优化自动化仓库旋转货架拣选问题关键步骤:(1)初始化参数,产生初始群体;(2)如果满足算法终止条件,则终止算法,否则继续; (3)如果满足局部扰动条件,继续,否则转5; (4)局部扰动操作;(5)低层交叉、变异操作;(6)如果满足低层终止条件,继续,否则转5;( 7)高层交叉、变异操作; (8)如果满足高层终止条件,转7,否则转2.
3试验结果及分析试验测试了有80个货位拣选任务的情况,旋转货架n= 10, m= 300, l = 1 m, h = 1 m.拣货台垂直升降速度v v = 0 4 m/ s,货架旋转速度v h = 2 m/ s.拣货台起始点为0,坐标为(0,0),该任务的货位坐标如表1所示。
计算30次,得到的*好解的拣货路径为: 0,13, 26, 65, 77, 80, 64, 23, 49, 61, 18, 16,34, 66, 67, 48, 4, 10, 47, 8, 54, 62, 27, 39,35, 2, 46, 43, 9, 79, 6, 32, 51, 21, 50, 57,60, 68, 28, 53, 36, 45, 37, 15, 76, 30, 24,59, 56, 40, 78, 19, 71, 31, 22, 73, 11, 74,72, 14, 52, 25, 12, 41, 20, 7, 55, 44, 75, 3,29, 1, 58, 69, 63, 42, 70, 17, 5, 33, 38, 0,拣货时间为367 s.
为了体现本分层遗传算法在解决自动化仓库旋转货架拣选问题上的优势,对不同规模的拣选任务做了试验,并且与简单遗传算法的试验结果作了比较。
试验结果分析表明:(1)当拣货任务为中小规模时,本文分层遗传算法对自动化仓库旋转货架拣选问题有很强的优化能力,运算过程和结果稳定。随着客户规模的扩大,优化能力逐渐减弱。
(2)与简单遗传算法相比,本文分层遗传算法无论在*优解、平均解和运算稳定性方面,都有较大的优势;能优化较大规模的自动化仓库旋转货架拣选问题,随着货位规模扩大,优势也更明显。
4结束语本文对普通遗传算法进行了较大的改进,把分层遗传算法应用于自动化仓库旋转货架拣选问题,根据具体情况对低层和高层采用了不同的进化策略,通过算例证明了本算法对自动化仓库旋转货架拣选问题的有效性。