本发明属于自动化立体仓库调度领域中的堆垛机调度路径模型建立范畴,具体涉及一种同轨双车运行模式下堆垛机调度路径模型建立方法。
背景技术:
堆垛机调度又称堆垛机拣选作业调度,是立体仓库调度问题的核心部分。大型堆垛机仓库模型巷道纵深过长,导致单台堆垛机运行时间较长,出/入库台或其缓冲区经常处于闲置状态。为缩短出/入库台到货架深处库位点的距离,提高出/入库台或其缓冲区的利用率,有文献报道了一种两端式同轨双车的堆垛机调度模型,通过在立体仓库两端各设置一个出/入库台,并在同一巷道上增加一台堆垛机的方式,将货架深处库位点转移至仓库中心位置,缩短堆垛机的行进路线,大幅提高存取效率。但在同一条巷道上存在两台堆垛机,任务分配方式则成为影响堆垛机工作效率的重要因素,当一批出/入库任务输入后,需根据实际情况将这批任务合理的分配给两台堆垛机,任务合理分配后,才能避免碰撞,且效率最优。因此,建立适用于双堆垛机的SC/DC任务并存的堆垛机调度模型,使其更具通用性一直是本领域技术人员所关注的。
技术实现要素:
针对现有技术存在的缺陷或不足,本发明目的在于,提供一种同轨双车运行模式下的堆垛机调度路径模型建立方法,该方法建立的堆垛机调度路径模型以两台堆垛机完成任务序列所需时间为评价标准,通过统筹分配方法将任务合理地分配给两台堆垛机,并完善现有堆垛机SC/DC作业模式,以使堆垛机调度路径模型更具通用性,从而解决了现有堆垛机调度模型不能满足同轨双车工况的问题。
为实现上述任务,本发明采取如下技术解决方案:
一种同轨双车运行模式下堆垛机调度路径模型的建立方法,其特征在于,该方法将任务合理地分配给自动化仓库两端式布局的两台堆垛机,完善现有堆垛机SC/DC作业模式,具体按下列步骤进行:
在同轨双车运行模式下,一批出/入库任务输入后,通过统筹分配原则合理地将任务分配给两台堆垛机;
这批任务完成的时间取决于两堆垛机完成各自任务运行时间的最大值;
T=max(TL,TR) (1)
其中:TL,TR分别为同一巷道上两台堆垛机完成各自任务的运行时间;
两台堆垛机在同一巷道上同时工作,它们各自的水平位移和垂直位移互不干涉,故其中一台堆垛机完成一次存/取任务所花费的时间为水平、垂直作业所需时间的最大值;
设一个货架的长度为l、高度为h,堆垛机水平位移速度为Vx、垂直位移速度为Vy,则其中一台堆垛机以位置[xa,ya]为起点,以位置[xb,yb]为终点,所花费的时间为:
t=max(|xa-xb|l/Vx,|ya-yb|h/Vy) (2)
在同轨双车运行模式下,决定仓库存储效率的要素有两点:
(1)出/入库任务的分配情况,即货位到两端出/入库台的距离和每台堆垛机获得的任务数量;
(2)SC/DC任务的组合方式,即堆垛机执行DC任务时,入库货位和出库货位的距离;
基于上述决定仓库存储效率的两点要素,同轨双车运行模式下任务的分配原则及双堆垛机执行SC/DC任务的调度模型如下:
1)任务分配原则:
一批任务输入后,基于统筹分配原则将这批任务分配给两台堆垛机,其对应货位的横坐标构成集合L={x1,x2,...,xl}和R={x1,x2,...,xr},集合L中元素对应任务由横坐标小的出/入库台执行出/入库作业,集合R中元素对应任务由横坐标大的出/入库台执行出/入库作业;
统筹分配原则的目标是在一组出/入库任务分配完成后,两堆垛机完成各自任务的运行时间最短;两堆垛机运行时间差的绝对值最小,数学模型表达如下:
约束条件:
xi<xj (4)
ΔT≤tmin (5)
其中,ΔT=|TL-TR|,xi∈L,i=1,2,...,l,xj∈R,j=1,2,...,r,tmin=min(tj,tj+1,...,tend);
式(3)中,TL和TR分别为同一巷道上两台堆垛机完成各自任务的运行时间;ΔT为两堆垛机运行时间差的绝对值;
式(4)含义为集合L中元素均小于集合R中元素,以保证堆垛机运行时间短,避免碰撞发生;
式(5)中,tmin为先完成任务的堆垛机执行另一台堆垛机各未完成任务所需时间的最小值,该式确保在一台堆垛机完成任务,处于“空闲”状态时,立体仓库的总存储效率最优;其中,tj,tj+1,...,tend分别为先完成任务的堆垛机执行另一台堆垛机各未完成任务所需时间;
2)SC任务调度模型:
同轨双车模式下堆垛机执行SC任务的作业方式为:两台堆垛机从出/入库台出发,抵达各自任务货位点卸载/装载货物,返回出/入库台;
针对其中一台堆垛机执行SC任务的作业方式进行分析,当有n条SC任务由该堆垛机执行时,其所花费的总时间为:
其中:
为左边这台堆垛机执行n条SC任务所花费的时间;
为堆垛机从出/入库台运行到第i个货位点的运行时间;
tpike和tput分别为取货操作和存货操作所需时间;
由此,两台堆垛机同时工作,完成一批SC任务所需时间为:
其中:
分别为同一巷道上两台堆垛机完成各自SC任务的运行时间;
3)DC任务调度模型:
同轨双车模式下堆垛机执行DC任务的作业方式为:两台堆垛机从出/入库台运载货物到各自入库任务货位,卸载货物后直接运行到各自出库任务货位装载货物,再将货物运至出/入库台;
针对其中一台堆垛机执行DC任务的作业方式进行分析,当有n条DC任务由该堆垛机执行时,所花费的总时间为:
其中:
为左边这台堆垛机执行n条DC任务所花费的时间;
2n为包括出库任务和入库任务的任务总数;
为堆垛机从出/入库台运行到第i个货位点的运行时间;
为同一条DC任务中,堆垛机从入库货位点运行到出库货位点的运行时间;
tpike和tput分别为取货操作和存货操作所需时间;
由此,两台堆垛机同时工作,完成一批DC任务所需时间为:
其中:
分别为同一巷道上两台堆垛机完成各自DC任务的运行时间;
综上所述,两端式自动化仓库布局中基于同轨双车运行模式下的堆垛机调度路径模型如下:
T=min(TL,TR)+ΔT (10)
约束条件:
xi<xj
ΔT≤tmin
其中:
xi∈L,i=1,2,...,l
xj∈R,j=1,2,...,r
ΔT=|TL-TR|
tmin=min(tj,tj+1,...,tend)
nL、nR、mL、mR分别为两堆垛机获得的入库作业数量和出库作业数量;
约束条件与式(4)、式(5)处含义相同;
在实际工况中,堆垛机所接到的任务数量大,任务分配原则与任务排序方式又相互影响,因此在式(10)中,堆垛机的运动时长因任务分配方式和任务排序的不同而存在较大差异,如采用枚举法一一列出,将消耗较长时间进行运算;故必须给出一种智能优化算法,用于求得该模型的最优解:
运用化学反应优化(CRO)全局搜索能力强的特点,采用任务序号映射货位坐标的间接整数编码的方式,将任务分配原则嵌入CRO的每一次迭代中,对式(10)进行最优解的计算,可以更加快速且准确的得到最优任务分配方案和堆垛机最优调度路径;
为了方便问题的求解,采用基于任务编号排序的间接整数编码法将出库任务和入库任务分别写成两段编码;
一个分子由两段自然数组成,自然数的先后顺序代表这个分子的结构;
自然数为每条任务的序号,通过映射得到该条任务对应的出/入库位点坐标;
第一段自然数为出库任务序号,第二段自然数为入库任务序号,自首位开始,对应位次的出/入库任务组成DC任务,剩余的出库或入库任务为SC任务;
在调度模型的优化过程中,采用统筹分配原则不能保证一次分配的结果为最优,通过先进行一次任务分配获得初始分子,再于每次迭代结束后调整分配结果的方式,可逐步寻得任务分配的最优解;
运用CRO,采用基于任务编号排序的间接编码法,将统筹分配原则融入到算法的每一次迭代中,即求得式(10)的最优解。
本发明的同轨双车模式下的堆垛机调度路径模型建立方法,克服了现有堆垛机调度路径模型的不足,解决了一批任务于两台堆垛机的分配问题。所建立的适用于两端式自动化仓库布局中同轨双车运行模式下两端堆垛机调度路径模型首次在工程领域(堆垛机调度)中得到应用,通过完善现有堆垛机调度模型中SC/DC作业方式,使其能够满足“同轨双车”这一实际工况需求。
在对堆垛机调度路径进行优化求解时,采用化学反应优化(CRO),通过任务序号映射货位坐标的间接编整数码的方式,对堆垛机调度模型进行分析。由于任务分配原则和任务编号排序相互影响,仅进行一次任务分配无法得到任务的最优分配方案,通过将任务分配原则嵌入算法的每一次迭代中,对现有的分配结果进行适当调整,使任务分配结果和任务序列为最优。
附图说明
图1是同轨双车模式下两端式仓库布局结构图;
图2是同轨双车运行模式下DC作业方式堆垛机作业路径示例图;
图3是同轨双车运行模式下SC作业方式堆垛机作业路径示例图;
图4是堆垛机调度路线图。
图1中的标记分别表示:①堆垛机,②货架,③出/入库台,④运输装置,⑤巷道。
以下结合附图和实施例对本发明作进一步的详细说明。
具体实施方式
按照本发明的技术方案,本实施例给出一种同轨双车运行模式下的堆垛机调度路径模型建立方法,该方法将任务合理地分配给自动化仓库两端式布局的两台堆垛机(布局结构图如图1所示),完善现有堆垛机SC/DC作业模式,具体按下列步骤进行:
在同轨双车运行模式下,一批出/入库任务输入后,通过统筹分配原则合理地将任务分配给两台堆垛机;
这批任务完成的时间取决于两堆垛机完成各自任务运行时间的最大值;
T=max(TL,TR) (1)
其中:
TL,TR分别为同一巷道上两台堆垛机完成各自任务的运行时间;
两堆垛机在同一巷道上同时工作,它们各自的水平位移和垂直位移互不干涉,故其中一台堆垛机完成一次存/取任务所花费的时间为水平、垂直作业所需时间的最大值;
设一个货架的长度为l、高度为h,堆垛机水平位移速度为Vx、垂直位移速度为Vy,则其中一台堆垛机以位置[xa,ya]为起点,以位置[xb,yb]为终点,所花费的时间为:
t=max(|xa-xb|l/Vx,|ya-yb|h/Vy) (2)
在同轨双车运行模式下,决定仓库存储效率的要素有两点:
(1)出/入库任务的分配情况,即货位到两端出/入库台的距离和每台堆垛机获得的任务数量;
(2)SC/DC任务的组合方式,即堆垛机执行DC任务时,入库货位和出库货位的距离;
基于上述决定仓库存储效率的两点要素,同轨双车运行模式下任务的分配原则及双堆垛机执行SC/DC任务的调度模型如下:
(1)任务分配原则:
一批任务输入后,设这些任务对应货位的横坐标构成集合U={x1,x2,...,xu},基于统筹分配原则将这批任务分配给两台堆垛机,其对应货位的横坐标构成集合L={x1,x2,...,xl}和R={x1,x2,...,xr},集合L中元素对应任务由横坐标小的出/入库台执行出/入库作业,集合R中元素对应任务由横坐标大的出/入库台执行出/入库作业;
统筹分配原则的目标是在一组出/入库任务分配完成后,两堆垛机完成各自任务的运行时间最短;两堆垛机运行时间差的绝对值最小,数学模型表达如下:
约束条件:
xi<xj (4)
ΔT≤tmin (5)
其中,ΔT=|TL-TR|,xi∈L,i=1,2,...,l,xj∈R,j=1,2,...,r,tmin=min(tj,tj+1,...,tend);
式(3)中,TL和TR分别为同一巷道上两台堆垛机完成各自任务的运行时间;ΔT为两堆垛机运行时间差的绝对值;
式(4)含义为集合L中元素均小于集合R中元素,以保证堆垛机运行时间短,避免碰撞发生;
式(5)中,tmin为先完成任务的堆垛机执行另一台堆垛机各未完成任务所需时间的最小值,该式确保在一台堆垛机完成任务,处于“空闲”状态时,立体仓库的总存储效率最优;其中,tj,tj+1,...,tend分别为先完成任务的堆垛机执行另一台堆垛机各未完成任务所需时间;
(2)SC任务调度模型:
同轨双车模式下堆垛机执行SC任务的作业方式为:两台堆垛机从出/入库台出发,抵达各自任务货位点卸载/装载货物,返回出/入库台;
同轨双车模式下,堆垛机执行SC任务的路径示例如图2所示;
针对其中一台堆垛机执行SC任务的作业方式进行分析,当有n条SC任务由该堆垛机执行时,其所花费的总时间为:
其中:
为左边这台堆垛机执行n条SC任务所花费的时间;
为堆垛机从出/入库台运行到第i个货位点的运行时间;
tpike和tput分别为取货操作和存货操作所需时间;
由此,两台堆垛机同时工作,完成一批SC任务所需时间为:
其中:
分别为同一巷道上两台堆垛机完成各自SC任务的运行时间;
(3)DC任务调度模型:
同轨双车模式下堆垛机执行DC任务的作业方式为:两台堆垛机从出/入库台运载货物到各自入库任务货位,卸载货物后直接运行到各自出库任务货位装载货物,再将货物运至出/入库台;
同轨双车模式下,堆垛机执行DC任务的路径示例如图3所示;
针对其中一台堆垛机执行DC任务的作业方式进行分析,当有n条DC任务由该堆垛机执行时,所花费的总时间为:
其中:
为左边这台堆垛机执行n条DC任务所花费的时间;
2n为包括出库任务和入库任务的任务总数;
为堆垛机从出/入库台运行到第i个货位点的运行时间;
为同一条DC任务中,堆垛机从入库货位点运行到出库货位点的运行时间;
tpike和tput分别为取货操作和存货操作所需时间;
由此,两台堆垛机同时工作,完成一批DC任务所需时间为:
其中:
分别为同一巷道上两台堆垛机完成各自DC任务的运行时间;
综上所述,两端式自动化仓库布局中基于同轨双车运行模式下的堆垛机调度路径模型如下:
T=min(TL,TR)+ΔT (10)
约束条件:
xi<xj
ΔT≤tmin
其中:
ΔT=|TL-TR|
xi∈L,i=1,2,...,l
xj∈R,j=1,2,...,r
tmin=min(tj,tj+1,...,tend)
nL、nR、mL、mR分别为两堆垛机获得的入库作业数量和出库作业数量;
约束条件与式(4)、式(5)处含义相同;
在实际工况中,堆垛机所接到的任务数量大,任务分配原则与任务排序方式又相互影响,因此在式(10)中,堆垛机的运动时长因任务分配方式和任务排序的不同而存在较大差异,如采用枚举法一一列出,将消耗较长时间进行运算;故必须给出一种智能优化算法,用于求得该模型的最优解:
运用化学反应优化(CRO)全局搜索能力强的特点,采用任务序号映射货位坐标的间接整数编码的方式,将任务分配原则嵌入CRO的每一次迭代中,对式(10)进行最优解的计算,可以更加快速且准确的得到最优任务分配方案和堆垛机最优调度路径;
为了方便问题的求解,采用基于任务编号排序的间接整数编码法将出库任务和入库任务分别写成两段编码;
一个分子由两段自然数组成,自然数的先后顺序代表这个分子的结构;
自然数为每条任务的序号,通过映射得到该条任务对应的出/入库位点坐标;
第一段自然数为出库任务序号,第二段自然数为入库任务序号,自首位开始,对应位次的出/入库任务组成DC任务,剩余的出库或入库任务为SC任务;
在调度模型的优化过程中,采用统筹分配原则不能保证一次分配的结果为最优,通过先进行一次任务分配获得初始分子,再于每次迭代结束后调整分配结果的方式,可逐步寻得任务分配的最优解;
运用CRO,采用基于任务编号排序的间接编码法,将统筹分配原则融入到算法的每一次迭代中,即求得式(10)的最优解。
本实施例给出的同轨双车模式下的堆垛机调度路径模型建立方法,克服了现有堆垛机调度路径模型的不足,解决了一批任务于两台堆垛机的分配问题。所建立的适用于两端式自动化仓库布局中同轨双车运行模式下两端堆垛机调度路径模型首次在工程领域(堆垛机调度)中得到应用,通过完善现有堆垛机调度模型中SC/DC作业方式,使其能够满足“同轨双车”这一实际工况需求。
在对堆垛机调度路径进行优化求解时,采用化学反应优化(CRO),通过任务序号映射货位坐标的间接编整数码的方式,对堆垛机调度模型进行分析。由于任务分配原则和任务编号排序相互影响,仅进行一次任务分配无法得到任务的最优分配方案,通过将任务分配原则嵌入算法的每一次迭代中,对现有的分配结果进行适当调整,使任务分配结果和任务序列为最优。
以下是一个具体的实施例:
设置订单的相关参数:建立任务序列的坐标矩阵,矩阵为N行,2列。N为出/入库任务的数量,行数对应该条任务的编号;两列分别对应库位点的横纵坐标。
设置货架及堆垛机相关参数:堆垛机水平运行速度Vx,堆垛机竖直运行速度Vy,取货操作和存货操作所需时间分别为tpike和tput。货架货位长为L,货架货位高位H。
通过基于任务编号排序的间接编码法将入库任务和出库任务各生成一段自然数列。自然数为任务的编号,通过映射得到该条任务的出/入库位点坐标。第一段自然数为出库任务序号,第二段自然数为入库任务序号,自首位开始,对应位次的出/入库任务组成DC任务,剩余的出库或入库任务为SC任务。
运用式(3)、式(4)、式(5)所描述的统筹分配原则将出/入库任务分配给两台堆垛机,即代表入库任务和出库任务的两段实数编码又各自分成两部分。
运用化学反应优化(CRO),以式(10)作为目标函数,结合式(2)所提出的堆垛机运行时长计算公式,对双堆垛机调度路径进行优化计算。先通过统筹分配原则产生初代分子,在算法每次迭代结束后,再根据任务分配原则的约束条件,即式(4)、式(5),对现有的任务分配结果进行调整。
本实施例提出的式(10)用于同轨双车运行模式下两端为出/入库台的自动化立体仓库堆垛机调度路径求解,解决了任务如何分配给同一巷道上两台堆垛机的任务分配问题,且建立的堆垛机调度路径模型适用于SC/DC任务并存的情况,更具通用性。
以某企业实际自动化仓库为研究对象,验证数学模型的适应性和CRO算法的有效性:
仓库货架位置固定,大小一致,每排货架共960个货位,分为12层,80列,每排货架两端各一个出/入库台,出/入库台坐标分别为[0,1],[81,1],用于工业产品的出库运输和入库存储。仓库货架的每个货位的大小一致,长(L)、宽(W)、高(H)均为1m。每排货架,同一轨道上的两台堆垛机Left和Right,Left通过坐标为[0,1]的出/入库台执行存/取任务,Right通过坐标为[81,1]的出/入库台执行存/取任务,它们的水平移动和垂直移动互不干涉,可同时进行,水平位移速度为Vx=3m/s,垂直位移速度为Vy=1m/s。堆垛机一次只能承载一个货物。
在某批出/入库任务中,对应的库位点坐标如表1所示。
表1出/入库任务坐标
针对上述出/入库任务,CRO算法的参数设定如下:初始分子的数量为m=10,迭代次数Max_CRO=100,每个分子的初始动能InitialKE=10000000,中央能量缓冲区buffer=0,所有基元反应中,双分子反应次数所占比重MoleColl=0.4。运用式(10)所提出堆垛机调度模型,对该任务订单进行堆垛机调度路径计算。
经过CRO计算,当至第42次迭代时,分子趋于稳定。完成该任务订单所需堆垛机执行时间为:258s。其中,Left堆垛机用时258s,Right堆垛机用时256s。两堆垛机运行时间差的绝对值为ΔT=2;Right堆垛机先完成任务后,如果执行用时最短的编号为9的出库任务,所需时间为tmin=33.33。满足式(5):ΔT≤ntim的任务分配原则,故分配结果为最优解。
在求得堆垛机路径调度最优解后,根据输出的最优解任务序列,其堆垛机运行路径图如图4所示。图4中白色方块为仓库两端出/入库台;黑色方块及实线表示堆垛机执行SC任务的运行路径;灰色方块及虚线表示堆垛机执行DC任务的运行路径。可以看出,两台堆垛机各自执行分配所得的出/入库任务,不存在碰撞情况。
由上述实际的一次仓库存/取任务作业的调度结果可知,依据本实施例所述方法建立的同轨双车运行模式下的堆垛机调度路径模型,可以针对同轨双车工况下的堆垛机调度路径进行计算。解决了同轨双车工况下存在的任务分配问题,避免碰撞的发生,且能满足SC/DC任务并存的工作情况,使堆垛机运行时间最短。