一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种托盘四向穿梭车系统的提升机调度方法及装置与流程

2022-02-22 17:52:54 来源:中国专利 TAG:


1.本发明涉及仓储物流技术领域,尤其涉及一种托盘四向穿梭车系统的提升机调度方法及装置。


背景技术:

2.为达到国家对物流业提出的降本增效的目标,仓储物流产业正在由劳动密集型产业向自动化、柔性化和智能化转变。而托盘四向穿梭车系统因其灵活性高,适应性好等优势逐渐进入行业视野。托盘四向穿梭车系统主要由货架、托盘四向穿梭车、提升机等硬件设备和设备调度系统等软件系统组成。在进行出入库作业时,穿梭车负责货物水平面的搬运作业,提升机负责货物垂直方向的搬运作业,穿梭车通过搭乘提升机进行换层以在不同层进行作业。因为四向穿梭车可以在水平面进行二维运动,使穿梭车与巷道“解绑”,所以系统具有柔性高、可靠性高、适应性好等显著优势,对于白酒以及农产品冷链等行业具有良好的适用性,可以有效满足相关产品存储密度要求高、出入库业务波动大等特点。
3.与穿梭车系统类似,提升机是制约四向穿梭车系统效率的瓶颈资源。在出入库业务的高峰期,四向穿梭车系统的出入库效率高低与瓶颈设备资源的任务调度方案的优劣密切相关,受制于设备的实际布局条件,提升机数量(出库提升机或者入库提升机)最多只能与巷道数相同。所以,提升机作为整个系统中的瓶颈设备资源,其任务调度方案是影响四向穿梭车系统出入库效率的重要一环。
4.在多层穿梭车系统中,根据穿梭车是否可以进行换层作业,可以将多层穿梭车系统分为可换层多层穿梭车系统(tier-to-tier sbs/rs)和不可换层多层穿梭车系统(tier-captive sbs/rs)。在可换层多层穿梭车系统中,穿梭车可以在单巷道内进行换层,可以进到该巷道内的任意一层进行存取作业;在不可换层多层穿梭车系统中,每个巷道的每层内均有一台穿梭车负责该巷道该层内的存取作业。由上述可知,多层穿梭车系统无论是否可以进行换层,均被限制在单一巷道内进行运动,而四向穿梭车系统可以进行跨巷道运动。
5.在自动小车存取系统中,自动小车可以自主进行水平面的四向运动和借助提升机进行垂直方向的运动。但是,自动小车存取系统中小车一直与货物进行绑定,即在入库作业时,小车装载货物之后会与货物一起搭乘提升机到达货物指定存储层,之后将货物送至指定货位。出库任务同理。而在四向穿梭车系统中,穿梭车不与货物一起搭乘提升机。在穿梭车需要换层时,因为穿梭车与货物的重量不同,所以穿梭车换层会搭乘穿梭车换层提升机,而不与货物一起搭乘货物提升机。
6.目前,对提升机调度问题的研究主要集中在多层穿梭车系统和自动小车存取系统,多层穿梭车和自动小车存取系统与四向穿梭车系统在作业流程上存在较大区别,所以上述两个系统的建模方法不能应用于四向穿梭车系统的建模方法,四向穿梭车系统的建模方法也不能推广至上述两个系统。因此,缺少针对四向穿梭车系统提升机调度问题的研究,亟需建立切实高效的四向穿梭车系统提升机调度模型,来解决提升机调度问题。


技术实现要素:

7.本发明提供一种托盘四向穿梭车系统的提升机调度方法及装置,用以解决现有技术中四向穿梭车系统缺乏针对提升机调度问题进行单独建模以优化调度方案的缺陷,获得更好的提升机调度方案,实现系统出入库效率的提升。
8.本发明提供一种托盘四向穿梭车系统的提升机调度方法,包括:
9.根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数,其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
10.确定所述提升机调度模型的约束条件集,其中,所述提升机调度模型的约束条件集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
11.对所述提升机调度模型进行求解,得到调度结果,所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子任务在相应提升机处的执行顺序。
12.根据本发明提供的一种托盘四向穿梭车系统的提升机调度方法,所述目标函数的公式为:
[0013][0014]
所述提升机选择约束的公式为:
[0015][0016]
所述工序执行时间约束的公式为:
[0017][0018]
所述工序执行顺序约束的公式为:
[0019][0020]
所述提升机同时处理工序数约束的公式为:
[0021][0022]
所述提升机工序执行顺序约束的公式为:
[0023][0024][0025]
[0026]
同层;
[0027]
其中,i表示任务集合,i∈i,i={1,

,ni},j表示工序集合,j∈j,j={0,1,

,nj,nj 1},b表示穿梭车集合,b∈b,b={1,

,nb},k表示提升机集合,k∈k,k={1,

,nk},o
ij
表示任务i的第j道工序,t
i,j,kk

表示执行完工序o
ij
后货物由提升机k运输到提升机k

的运输时间,其中j=1,2,
……
,nj,p
i,j,k
表示工序o
ij
在提升机k上的处理时间,ri表示任务i的到达时刻,srt
i,b-hp
表示在穿梭车b的任务i的前一个任务的开始时间,ert
i,b-hp
表示在穿梭车b的任务i的前一个任务的结束时间,st
i,j,k
表示工序o
ij
在提升机k处的开始时间,et
i,j,k
表示工序o
ij
在提升机k处的结束时间,st
i,j,k-hp
表示工序o
ij
在提升机k处的前一个工序的结束时间,x
i,j,k
表示工序o
ij
是否分配给提升机k,是则取值为1,反则取值为0,m取值为maxet
i,j,k
,y是一个{0,1}变量,当分配给同一个提升机的同层工序oi′j′
1
的到达时间小于o
ij 1
的到达时间时,y取值为1,反之取值为0。
[0028]
根据本发明提供的一种托盘四向穿梭车系统的提升机调度方法,所述提升机选择约束用于约束任意一个任务的任一工序只能在一台提升机上进行加工,所述工序执行时间约束用于约束工序开始时间与结束时间之间关系,所述任务工序执行顺序约束用于约束任意一个任务的在前工序必须比在后工序先执行,所述提升机同时处理工序数约束用于约束在同一提升机上同一时间最多只能处理一道工序,所述提升机工序执行顺序约束用于约束同一台提升机的同层任务的处理顺序与到达提升机的先后顺序一致。
[0029]
根据本发明提供的一种托盘四向穿梭车系统的提升机调度方法,所述确定所述提升机调度模型的约束条件集,包括:
[0030]
根据提升机选择变量建立所述提升机选择约束;根据任务工序结束时间变量、运输时间变量和任务工序处理时间变量建立所述工序执行时间约束;根据任务工序开始时间变量、任务工序结束时间变量和运输时间变量建立任务工序执行顺序约束;根据任务工序结束时间变量、任务紧前工序结束时间变量和任务工序处理时间变量建立所述提升机同时处理工序数约束;根据任务工序开始时间变量、任务工序结束时间变量和运输时间变量建立所述提升机工序执行顺序约束。
[0031]
根据本发明提供的一种托盘四向穿梭车系统的提升机调度方法,所述对所述提升机调度模型进行求解,得到调度结果,包括:
[0032]
采用遗传算法对所述提升机调度模型进行求解,得到调度结果。
[0033]
本发明还提供一种托盘四向穿梭车系统的提升机调度装置,包括:
[0034]
调度模型构建模块,所述调度模型构建模块用于根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数,其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
[0035]
所述调度模型构建模块还用于确定所述提升机调度模型的约束条件集,其中,所述提升机调度模型的约束条件集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
[0036]
调度获取模块,所述调度获取模块用于对所述提升机调度模型进行求解,得到调度结果,所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子
任务在相应提升机处的执行顺序。
[0037]
根据本发明提供的一种托盘四向穿梭车系统的提升机调度装置,所述目标函数的公式为:
[0038][0039]
所述提升机选择约束的公式为:
[0040][0041]
所述工序执行时间约束的公式为:
[0042][0043]
所述工序执行顺序约束的公式为:
[0044][0045]
所述提升机同时处理工序数约束的公式为:
[0046][0047]
所述提升机工序执行顺序约束的公式为:
[0048][0049][0050][0051]
同层;
[0052]
其中,i表示任务集合,i∈i,i={1,

,ni},j表示工序集合,j∈j,j={0,1,

,nj,nj 1},b表示穿梭车集合,b∈b,b={1,

,nb},k表示提升机集合,k∈k,k={1,

,nk},o
ij
表示任务i的第j道工序,t
i,j,kk

表示执行完工序o
ij
后货物由提升机k运输到提升机k

的运输时间,其中j=1,2,
……
,nj,p
i,j,k
表示工序o
ij
在提升机k上的处理时间,ri表示任务i的到达时刻,srt
i,b-hp
表示在穿梭车b的任务i的前一个任务的开始时间,ert
i,b-hp
表示在穿梭车b的任务i的前一个任务的结束时间,st
i,j,k
表示工序o
ij
在提升机k处的开始时间,et
i,j,k
表示工序o
ij
在提升机k处的结束时间,st
i,j,k-hp
表示工序o
ij
在提升机k处的前一个工序的结束时间,x
i,j,k
表示工序o
ij
是否分配给提升机k,是则取值为1,反则取值为0,m取值为maxet
i,j,k
,y是一个{0,1}变量,当分配给同一个提升机的同层工序oi′j′
1
的到达时间小于o
ij 1
的到达时间时,y取值为1,反之取值为0。
[0053]
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述托盘四向穿梭车系统的提升机调度方法的
步骤。
[0054]
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述托盘四向穿梭车系统的提升机调度方法的步骤。
[0055]
本发明提供的一种托盘四向穿梭车系统的提升机调度方法,首次将四向穿梭车系统的提升机调度问题转化为含运输时间的柔性作业车间调度问题(fjsp,flexible job-shop scheduling problem)进行研究,对四向穿梭车系统的提升机调度问题进行单独建模。本发明考虑提升机缓存位处任务不能重排序的问题,即分配给同一台提升机的同层任务的处理顺序应该服从先到先服务规则,并将其纳入调度问题的模型中。
[0056]
本发明将提升机调度问题转化为fjsp,既可以类比两个问题中的相似之处便于建模,同时也可以借鉴fjsp的大量研究资料。同时,考虑到其他模型未考虑到的提升机缓存位处不能进行重排序的问题,本发明的建模方法提供了针对以上问题的约束条件,相比于其他模型更加贴近实际,且更易执行。本发明建立的模型以及调度方法可以得出较优的调度方案,相比于仓库中实际应用的派遣策略,可以有效提升系统的出入库效率。
附图说明
[0057]
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0058]
图1是本发明实施例提供的托盘四向穿梭车系统的提升机调度方法的流程示意图;
[0059]
图2是本发明实施例提供的在三台机器上处理三个工件的含运输时间的柔性作业车间调度问题的示例图;
[0060]
图3是本发明实施例提供的在三台机器上处理三个工件的含运输时间的柔性作业车间调度的甘特图;
[0061]
图4是本发明实施例提供的四向穿梭车系统的某一层的布局示意图;
[0062]
图5是本发明实施例提供的四向穿梭车系统执行出库任务的流程图;
[0063]
图6(a)是本发明实施例提供的三台提升机四个任务情况下的提升机设备调度甘特图之一;
[0064]
图6(b)是本发明实施例提供的三台提升机四个任务情况下的提升机设备调度甘特图之二;
[0065]
图7是本发明实施例的托盘四向穿梭车系统的提升机调度装置的结构示意图;
[0066]
图8是本发明提供的电子设备的结构示意图。
[0067]
附图标记:
[0068]
a:纵向通道;
ꢀꢀꢀꢀꢀꢀꢀꢀ
b:横向通道;
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
c:缓存区;
[0069]
d:四向穿梭车;
ꢀꢀꢀꢀꢀꢀ
e:托盘货物;
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
f:托盘出库提升机;
[0070]
g:托盘入库提升机;
ꢀꢀ
h:穿梭车换层提升机。
具体实施方式
[0071]
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0072]
针对四向穿梭车系统提升机调度问题,本发明先分析了含运输时间的柔性作业车间调度问题(fjsp,flexible job-shop scheduling problem)。该问题简单描述如下:车间中存在不同的工件,每个工件存在多个具有顺序约束的加工工序,每个工序均存在多个可供选择的加工机器,针对不同工件的不同工序,如何选择机器,并且确定其在机器处的加工顺序,以达到预期目标。如图2所示,以三个工件在三台机器上进行加工的示例对含运输时间的柔性作业车间调度问题进行了描述。图3为图2示例的甘特图,其中对工序处理时间,工件在机器之间的运输时间以及加工机器的空闲时间进行了展示。由图2可以看出,不合理的调度结果会导致加工机器出现较长的空闲时间导致完工时间较长。
[0073]
其次,以出库任务为例,四向穿梭车系统的提升机调度问题可简单描述如下:系统将出库任务按照某种特定规则分配给四向穿梭车之后,每台四向穿梭车需要按照指定顺序执行分配给其的任务。当穿梭车当前位置与出库任务不在同一层时,穿梭车还需要搭乘提升机执行换层任务。为保证穿梭车可以按照系统指定的顺序执行任务,提升机需要按照指定顺序执行穿梭车的换层任务,即如果将一台穿梭车的多个换层任务看为一个任务,该换层任务是由多个具有硬性先后执行顺序的换层子任务组成的。针对出库任务和换层任务的子任务,如何选择提升机,并且确定其在提升机处的执行顺序,以达到预期目标。如图4所示,四向穿梭车系统的设备主要是四向穿梭车和提升机,提升机包括托盘出入库提升机和穿梭车换层提升机两类。四向穿梭车可以沿着纵向通道和横向通道完成水平面的四向运动,因此可以到达任意提升机处。提升机负责货物与穿梭车的垂直运动。四向穿梭车不随货物一起搭乘提升机,当出库任务与其所分配的穿梭车不在同一层时,四向穿梭车会搭乘穿梭车换层提升机去往任务所在层进行接驳。
[0074]
本发明的发明构思是将上述两个问题建立对应关系,由于fjsp中工件的工序之间具有顺序约束,工序需要确定其选择的加工机器和加工顺序;提升机调度问题中出库任务和换层任务的子任务具有顺序约束,需要确定选择的提升机以及在提升机处的执行顺序。因此将穿梭车出库任务转化为单工序的加工工件,单台穿梭车的换层任务转化为多工序的加工工件,单台穿梭车的换层子任务转化为工序,任务的提升机选择问题转化为工序的加工机器选择问题,任务在提升机处的执行顺序问题转化为工序在加工机器处的加工顺序问题。将出库任务和换层任务统称为任务,任务的子任务称为任务的工序。从而建立了建立四向穿梭车系统的提升机调度模型。
[0075]
图1为本发明实施例提供的托盘四向穿梭车系统的提升机调度方法的流程示意图,如图1所示,本发明实施例提供了一种托盘四向穿梭车系统的提升机调度方法,包括:
[0076]
s101、根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数;
[0077]
其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,
所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
[0078]
s102、确定所述提升机调度模型的约束条件集;
[0079]
其中,所述提升机调度模型的约束条件集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
[0080]
s103、对所述提升机调度模型进行求解,得到调度结果;
[0081]
所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子任务在相应提升机处的执行顺序。
[0082]
本发明实施例的托盘四向穿梭车系统的提升机调度方法能够针对托盘四向穿梭车系统的实际运行过程中最影响出入库效率的提升机任务调度问题,结合fjsp进行建模,可以有效缩短任务完成时间,提升系统出入库效率。
[0083]
需要说明的是,在fjsp中,对于分配给同一台加工机器的工序,除了同一工件的不同工序之间的前后工序的硬性约束之外,不存在其他顺序约束。但是,在四向穿梭车系统的提升机调度问题中,提升机缓存位处不能进行重排序,如图4所示。所以,分配给同一台提升机的同层任务的处理顺序,必须与其到达提升机的先后顺序一致,故在模型中添加提升机工序执行顺序约束,表示分配给同一提升机的同层任务的执行顺序取决于其到达提升机的先后顺序。
[0084]
结合图6(a)和图6(b)对提升机工序执行顺序约束进行说明,在图6(a)中,提升机l2的工序处理顺序为o
21
→o22
→o31
,但是如果按照图6(b)中o
31
→o21
→o22
的处理顺序执行任务,总任务结束时间会缩短。但是在实际中,工序o
21
与工序o
31
是同层任务,且o
21
的到达时间早于o
31
,所以提升机l2必须先执行o
21
后执行o
31
,才能满足提升机工序执行顺序约束。
[0085]
在本发明的实施例中,在穿梭车调度方案确定每台穿梭车需要执行的任务序列确定的前提下,四向穿梭车执行出库任务的步骤如图5所示:
[0086]
s201、四向穿梭车由当前位置移动到出库任务所在位置,如果四向穿梭车当前位置与出库任务不在同一层,执行s202;如果四向穿梭车当前位置与出库任务在同一层,执行s203;
[0087]
s202、四向穿梭车移动到指定的换层提升机位置,给相应的换层提升机发送信号,换层提升机完成其当前任务后,移动到四向穿梭车所在层进行接驳,四向穿梭车随换层提升机移动到任务所在层,执行s203;
[0088]
s203、四向穿梭车由当前位置移动到同层出库任务所在位置,执行s204;
[0089]
s204、四向穿梭车携带出库货物移动到指定的货物提升机处,四向穿梭车将货物放至提升机缓存位,不与货物一起上提升机,之后按照调度方案执行下一个出库任务。
[0090]
在上述实施例的基础上,所述目标函数的公式为:
[0091][0092]
所述提升机选择约束的公式为:
[0093][0094]
所述工序执行时间约束的公式为:
[0095][0096]
所述工序执行顺序约束的公式为:
[0097][0098]
所述提升机同时处理工序数约束的公式为:
[0099][0100]
所述提升机工序执行顺序约束的公式为:
[0101][0102][0103][0104]
同层;
[0105]
各个符号的技术含义如下:
[0106]
i:任务集合,i∈i,i={1,

,ni};
[0107]
j:工序集合,j∈j,j={0,1,

,nj,nj 1};
[0108]
b:穿梭车集合,b∈b,b={1,

,nb};在本实施例中,穿梭车为rgv小车(rail guided vehicle,有轨制导车辆);
[0109]
k:提升机集合,k∈k,k={1,

,nk};
[0110]oij
:任务i的第j道工序;
[0111]
t
i,j,kk

:执行完工序o
ij
后货物由提升机k运输到提升机k

的运输时间,其中j=1,2,
……
,nj;
[0112]
p
i,j,k
:工序o
ij
在提升机k上的处理时间,其中p
i,0,k
=0,即任务在工序0的处理时间为0,不占用提升机;
[0113]ri
:任务i的到达时刻;
[0114]
srt
i,b-hp
:在rgv b的任务i的前一个任务的开始时间;
[0115]
ert
i,b-hp
:在rgv b的任务i的前一个任务的结束时间;
[0116]
st
i,j,k
:工序o
ij
在提升机k处的开始时间;
[0117]
et
i,j,k
:工序o
ij
在提升机k处的结束时间;
[0118]
st
i,j,k-hp
:工序o
ij
在提升机k处的前一个工序的结束时间;
[0119]
x
i,j,k
:工序o
ij
是否分配给提升机k,若是,则x
i,j,k
=1,否则为0;
[0120]
m:一个很大的数,取值为maxet
i,j,k

[0121]
y:一个{0,1}变量,当分配给同一个提升机的同层工序oi′j′
1
的到达时间小于o
ij 1
的到达时间时,y取值为1,反之取值为0。
[0122]
在上述实施例的基础上,所述提升机选择约束用于约束任意一个任务的任一工序只能在一台提升机上进行加工,所述工序执行时间约束用于约束工序开始时间与结束时间之间关系,所述任务工序执行顺序约束用于约束任意一个任务的在前工序必须比在后工序先执行,所述提升机同时处理工序数约束用于约束在同一提升机上同一时间最多只能处理一道工序,所述提升机工序执行顺序约束用于约束同一台提升机的同层任务的处理顺序与到达提升机的先后顺序一致。
[0123]
在上述实施例的基础上,所述确定所述提升机调度模型的约束条件集,包括:
[0124]
根据提升机选择变量建立所述提升机选择约束;根据任务工序结束时间变量、运输时间变量和任务工序处理时间变量建立所述工序执行时间约束;根据任务工序开始时间变量、任务工序结束时间变量和运输时间变量建立任务工序执行顺序约束;根据任务工序结束时间变量、任务紧前工序结束时间变量和任务工序处理时间变量建立所述提升机同时处理工序数约束;根据任务工序开始时间变量、任务工序结束时间变量和运输时间变量建立所述提升机工序执行顺序约束。
[0125]
进一步的,各个变量定义为:srt
i,b-hp
:在rgv b的任务i的前一个任务的开始时间,ert
i,b-hp
:在rgv b的任务i的前一个任务的结束时间,st
i,j,k
:工序o
ij
在提升机k处的开始时间始时间,et
i,j,k
:工序o
ij
在提升机k处的结束时间,st
i,j,k-hp
:工序o
ij
在提升机k处的前一个工序的结束时间,y为{0,1}变量,当分配给同一个提升机的同层工序oi′j′
1
的到达时间小于o
ij 1
的到达时间时,y取值为1,反之取值为0,决策变量:x
i,j,k
:工序o
ij
是否分配给提升机k,若是,则x
i,j,k
=1,否则为0。
[0126]
需要说明的是,在本发明的实施例中,所述对所述提升机调度模型进行求解,得到调度结果,包括:采用遗传算法对所述提升机调度模型进行求解,得到调度结果。所述的遗传算法包括如下步骤:
[0127]
步骤1、设定参数:在算法搜索空间内随机生成初始种群;
[0128]
步骤2、交叉操作:随机生成[0,1]之间的随机数,如果生成的随机数小于交叉概率,则按顺序选择两个父代个体进行交叉操作,对两个父代和两个子代的适应度值进行比较,保留两个适应度值最好的个体;如果生成的随机数大于交叉概率,则不进行交叉,直接保留父代个体;
[0129]
步骤3、变异操作:随机生成[0,1]之间的随机数,如果生成的随机数小于变异概率,则进行变异操作,如果新个体优于旧个体,则接受新个体,如果新个体劣于旧个体,则放弃新个体,保留旧个体;如果生成的随机数大于变异概率,则不进行变异操作,直接保留旧个体;
[0130]
步骤4、判断是否达到遗传算法的最大迭代次数,如果达到,则终止迭代,转步骤5,如未达到,则转步骤2;
[0131]
步骤5、输出最优个体。
[0132]
在本实施例中,编码方式采用整数多层编码方式,包含提升机选择编码部分和任务排序编码部分。提升机选择部分的编码表示该任务选择的提升机在该任务可选择的提升机子集中的位置,任务排序部分的编码表示任务执行的先后顺序。
[0133]
在本实施例中,以最小值为目标函数,故采用目标函数的倒数作为适应度函数,即
[0134][0135]
其中fitness表示适应度值,f(x)表示目标函数值。
[0136]
在本实施例中,在随机生成初始种群时,易产生不合法个体,即不满足约束条件的个体,并且任务中同层任务越多,提升机数量越少,生成不合法个体的概率越高。对于生成的不合法个体,对其进行个体修正,以保证初始种群中均为合法个体。具体修正方法为:
[0137]
(1)选取个体中不符合先到先服务原则的两道工序,
[0138]
(2)将个体中两道工序进行互换,
[0139]
(3)检测进行工序互换后的个体是否合法,如不合法,重复以上两个步骤,如合法,结束修正程序。
[0140]
在本实施例中,针对提升机选择编码采用两点交叉的方式,针对任务排序编码部分,采用顺序交叉的方式。同时,对于交叉过后产生的不合法个体,采用修正方法对其进行个体修正。
[0141]
在本实施例中,针对提升机选择编码和任务排序编码,采用不同的变异方式。对于提升机选择编码,在提升机选择编码部分随机选择位置,将该位置的编码随机改变为该工序可选择的机器集合中的其他位置序号;对于任务排序编码部分,采用互换变异方式。同时,对于变异过后产生的不合法个体,采用修正方法对其进行个体修正。
[0142]
需要说明的是,在本实施例中,调度问题的假设条件包括:
[0143]
所有提升机与四向穿梭车在零时刻均可用,但所有任务只有在到达时刻可被执行;
[0144]
在任意一个时刻,一台提升机只能执行一道工序,且提升机执行工序的过程不能中断;
[0145]
任务具有相同的优先级,不同任务的工序之间没有先后约束;
[0146]
同一任务的相邻工序之间,存在先后约束;
[0147]
工序之间的运输时间与工序本身以及工序选择的提升机有关;
[0148]
每台提升机的缓存位数量为无限。
[0149]
需要说明的是,在本发明的实施例中,提升机调度模型采用下式构建:
[0150]
min et
max
ꢀꢀꢀ
(1)
[0151]
subject to:
[0152][0153][0154][0155][0156]
[0157][0158][0159][0160][0161][0162][0163]
式(1)为模型目标函数,最小化所有工序完成时间中的最大值,以最小化任务完成时间。式(2)表示一道工序只能分配给一台提升机。式(3)为求解工序完成时间最大值的表达值。式(4)为求解每个任务第0道工序完成时间的表达式。式(5)为求解每个任务非0工序完成时间的表达式。式(6)表示同一任务的工序先后顺序约束。式(7)表示同一机器不能同时处理两道工序。式(8)为求解分配给rgv b的任务i的开始时间表达式。式(9)-(11)表示提升机工序执行顺序约束。
[0164]
下面结合图7描述本发明实施例的托盘四向穿梭车系统的提升机调度装置,下文描述的托盘四向穿梭车系统的提升机调度装置与上文描述的托盘四向穿梭车系统的提升机调度方法可相互对应参照,如图7所示,包括:
[0165]
调度模型构建模块701,所述调度模型构建模块用于根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数,其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
[0166]
所述调度模型构建模块701还用于确定所述提升机调度模型的约束条件集,其中,所述提升机调度模型的约束条件集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
[0167]
调度获取模块702,所述调度获取模块用于对所述提升机调度模型进行求解,得到调度结果,所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子任务在相应提升机处的执行顺序。
[0168]
本模型的调度装置与现有调度相比,考虑到提升机处执行顺序问题,即提升机缓存位处不能进行重排序的问题,更加贴近实际,可以获得较优的调度方案,从而达到提升系统出入库效率的目的。
[0169]
需要说明的是,在本发明实施例的托盘四向穿梭车系统的提升机调度装置中,所述目标函数的公式为:
[0170]
[0171]
所述提升机选择约束的公式为:
[0172][0173]
所述工序执行时间约束的公式为:
[0174][0175]
所述工序执行顺序约束的公式为:
[0176][0177]
所述提升机同时处理工序数约束的公式为:
[0178][0179]
所述提升机工序执行顺序约束的公式为:
[0180][0181][0182][0183]
同层;
[0184]
其中,i表示任务集合,i∈i,i={1,

,ni},j表示工序集合,j∈j,j={0,1,

,nj,nj 1},b表示穿梭车集合,b∈b,b={1,

,nb},k表示提升机集合,k∈k,k={1,

,nk},o
ij
表示任务i的第j道工序,t
i,j,kk

表示执行完工序o
ij
后货物由提升机k运输到提升机k

的运输时间,其中j=1,2,
……
,nj,p
i,j,k
表示工序o
ij
在提升机k上的处理时间,ri表示任务i的到达时刻,srt
i,b-hp
表示在穿梭车b的任务i的前一个任务的开始时间,ert
i,b-hp
表示在穿梭车b的任务i的前一个任务的结束时间,st
i,j,k
表示工序o
ij
在提升机k处的开始时间,et
i,j,k
表示工序o
ij
在提升机k处的结束时间,st
i,j,k-hp
表示工序o
ij
在提升机k处的前一个工序的结束时间,x
i,j,k
表示工序o
ij
是否分配给提升机k,是则取值为1,反则取值为0,m取值为maxet
i,j,k
,y是一个{0,1}变量,当分配给同一个提升机的同层工序oi′j′
1
的到达时间小于o
ij 1
的到达时间时,y取值为1,反之取值为0。
[0185]
需要说明的是,在本发明实施例的托盘四向穿梭车系统的提升机调度装置中,所述提升机选择约束用于约束任意一个任务的任一工序只能在一台提升机上进行加工,所述工序执行时间约束用于约束工序开始时间与结束时间之间关系,所述任务工序执行顺序约束用于约束任意一个任务的在前工序必须比在后工序先执行,所述提升机同时处理工序数约束用于约束在同一提升机上同一时间最多只能处理一道工序,所述提升机工序执行顺序约束用于约束同一台提升机的同层任务的处理顺序与到达提升机的先后顺序一致。
[0186]
需要说明的是,在本发明实施例的托盘四向穿梭车系统的提升机调度装置中,所
述确定所述提升机调度模型的约束条件集,包括:
[0187]
根据提升机选择变量建立所述提升机选择约束;
[0188]
根据任务工序结束时间变量、运输时间变量和任务工序处理时间变量建立所述工序执行时间约束;
[0189]
根据任务工序开始时间变量、任务工序结束时间变量和运输时间变量建立所述任务工序执行顺序约束;
[0190]
根据任务工序结束时间变量、任务紧前工序结束时间变量和任务工序处理时间变量建立所述提升机同时处理工序数约束;
[0191]
根据任务工序开始时间变量、任务工序结束时间变量和运输时间变量建立所述提升机工序执行顺序约束。
[0192]
需要说明的是,在本发明实施例的托盘四向穿梭车系统的提升机调度装置中,所述对所述提升机调度模型进行求解,得到调度结果,包括:
[0193]
采用遗传算法对所述提升机调度模型进行求解,得到调度结果。
[0194]
为了验证上述方法的有效性,通过仿真实验进行说明,在本发明实施例中,采用matlab作为仿真平台,采用某农产品冷库的实际货架布局与出库数据进行仿真实验。因为提升机调度问题为np-hard问题,优化求解器即使求解小规模任务也会花费很长的运算时间,所以采用遗传算法和仓库实际应用的派遣策略对模型的可行性和有效性进行验证。算法实验环境:处理器intel(r)core(tm)i7-8550u,cpu1.8ghz,ram16.0gb。货架和设备参数设置如下:货架为多深位货架,存在2个巷道,每层有32*45个货位,货架高25层。在整个仓库中,存在4台提升机和10台四向穿梭车,其中4台提升机既可以实现穿梭车换层,也可以实现货物换层。分别在任务规模为10、20、30和40的情况下,每种规模选取5组实例进行测试,每组实例测试十次,记录任务完成时间并计算其均值,如表1所示。派遣策略遵从仓库实际应用策略,即任务均匀分配给四向穿梭车,四向穿梭车在选择提升机时遵循分区管理的原则,即根据货物所在库区选择相应库区的提升机,并且优先选择当前库区任务较少的提升机,提升机在确定任务执行顺序时遵循先到先服务原则,即按照任务到达提升机的顺序执行任务。遗传算法采用的具体参数设置:种群规模为100,最大迭代次数为100,交叉概率为0.8,变异概率为0.1。
[0195]
表1遗传算法和派遣策略测试结果
[0196][0197]
表1测试结果表明,相比于派遣策略,遗传算法计算得出的调度方案的任务完成时间在不同任务规模的不同实例下,均优于派遣策略的任务完成时间,证明了模型与算法的有效性,其中效率最高可同比提升72.20%,最低可提升18.80%。
[0198]
图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(communications interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行托盘四向穿梭车系统的提升机调
度方法,该方法包括:根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数,其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
[0199]
确定所述提升机调度模型的约束条件集,其中,所述提升机调度模型的约束条件集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
[0200]
对所述提升机调度模型进行求解,得到调度结果,所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子任务在相应提升机处的执行顺序。
[0201]
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0202]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的托盘四向穿梭车系统的提升机调度方法,该方法包括:根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数,其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
[0203]
确定所述提升机调度模型的约束条件集,其中,所述提升机调度模型的约束条件集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
[0204]
对所述提升机调度模型进行求解,得到调度结果,所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子任务在相应提升机处的执行顺序。
[0205]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的托盘四向穿梭车系统的提升机调度方法,该方法包括:根据穿梭车执行任务包含的任务到达时间、工序处理时间以及任务在不同机器之间的运输时间,以穿梭车执行任务的时间最短为目标构建提升机调度模型的目标函数,其中,所述穿梭车执行任务包括分配给穿梭车的出库任务和穿梭车的换层任务,所述分配给穿梭车的出库任务为单工序,所述穿梭车的换层任务包括多个换层子任务,且每个换层子任务为换层任务的一道工序;
[0206]
确定所述提升机调度模型的约束条件集,其中,所述提升机调度模型的约束条件
集包括提升机选择约束、工序执行时间约束、任务工序执行顺序约束、提升机同时处理工序数约束和提升机工序执行顺序约束;
[0207]
对所述提升机调度模型进行求解,得到调度结果,所述调度结果包括出库任务和换层子任务对应的提升机,以及出库任务和换层子任务在相应提升机处的执行顺序。
[0208]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0209]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0210]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献