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

基于进化优化算法的氨纶盘头作业动态调度方法

2023-02-04 15:42:29 来源:中国专利 TAG:


1.本发明涉及动态调度技术领域,具体涉及一种基于进化优化算法的氨纶盘头作业动态调度方法。


背景技术:

2.盘头作业调度和多agv调度是氨纶车间生产过程中不可缺少的两个环节。在传统的研究中,盘头作业调度和多agv调度被视为顺序的两个部分。随着调度问题的深入研究,提出了联合调度问题,联合调度问题考虑了在氨纶场景下盘头作业调度与多agv调度之间的关系,虽然盘头作业调度和多agv调度的综合研究增加了问题的复杂性,使联合调度问题更难以解决,但大量文献表明,联合调度有利于缓解氨纶盘头作业中的资源冲突,提高设备的利用率,提高生产效率。
3.盘头作业调度问题可以定义为一段时间内分配服务资源以执行一组作业,这个问题可以解释为将在m台机器上处理n个作业,尽管不同的作业可能具有单独的处理序列,但每个操作将在指定的处理时间内的候选机器上处理,作业车间调度问题可以分为两个部分:作业操作排序,包括所有候选机器上调度所有作业操作,以获得可行和有效的解决方案;机器分配,包括分配一台候选机器处理所有作业操作中的一项操作;因此作业车间调度问题,已经被证明为np问题。


技术实现要素:

4.有鉴于此,本发明的目的在于提供一种基于进化优化算法的氨纶盘头作业动态调度方法,克服现有氨纶盘头作业静态调度研究的局限性与不足,根据动态事件构造基于重新调度策略的可行数学模型,既提高了搜索效率,又能动态实时更新车间调度状态。
5.为实现上述目的,本发明采用如下技术方案:
6.一种基于进化优化算法的氨纶盘头作业动态调度方法,包括以下步骤:
7.步骤s1:根据氨纶盘头作业工作环境,根据氨纶盘头作业工作环境,构建多种类型任务、多点多区域调度和多agv调度的数学模型,并建立数学模型的约束条件;
8.步骤s2:基于数学模型的约束条件,采用进化优化算法,获取初步调度方案;
9.步骤s3:基于初步调度方案,考虑新作业加入和旧作业取消,采用重组调度,交叉调度和插入调度,完成动态调度。
10.进一步的,所述约束条件:
[0011][0012]
[0013][0014][0015][0016]
其中,o
ij
:工件ji的第j道工序,o
ik
:工件ji的第k道工序,μ
ij
:工序o
ij
加工机器所在的加工站,tr
ij
:工序o
i,j-1
与工序o
ij
之间的带载操,tri′j′
:工序o
i,j-1
与工序o
ij
之间的空载操作,
[0017]
目标函数为考虑最小化最大完工时间:
[0018]
f=min(c
max
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1.1)
[0019]
其中c
max
为最大化完工时间;
[0020]
约束(1.1)为目标函数:
[0021][0022]
其中,ωi:工件ji的工序任务集合,其中ni表示工件ji的总工序数,ni 1 是工件ji被搬回满盘头架m
m 1
的操作,ni 2是小车回到停泊位的操作;
[0023]
ωj:盘头集合,i∈{1,2,...,j},其中j是工件总数;
[0024]
ω
mij
:工序o
ij
的可选加工机器的集合;
[0025]
μ
ij
:工序o
ij
加工机器所在的加工站;
[0026]
ωm:加工站集合,m=0,1,
……
,m,m 1,m 2,其中m1,......mm表示机器加工站,m
m 2
表示停泊位,m0和m
m 1
分别表示空盘头架和满盘头架;
[0027]
约束(1.2)保证了同一台机器同一时刻只能加工一个空盘头:
[0028][0029]
其中,ωr:表示agv小车,r=1,2,...,r,其中r是车间agv数量;
[0030]
约束(1.3)确保同一时刻同一agv最多只能搬运一个盘头:
[0031][0032]
其中,p
ij
为工序o
ij
的加工时间,o
ij
为工件ji的第j道工序,t
ij
:工序 o
ij
在加工站μ
ij
的完成时间;a
ij
:工序o
ij
到达加工站μ
ij
的时间;t(m 2,0):从停泊位到空盘头架的时间。
[0033]
进一步的,所述步骤s2具体为:
[0034]
步骤s21:初始化参数,包括种群数目,种群规模,迭代次数;
[0035]
步骤s22:设置初始时间为0,并等待加工事件到来;
[0036]
步骤s23:随机初始化种群,并计算其适应值;
[0037]
步骤s24:将种群的连续位置与离散位置建立一对一映射关系,然后通过排序获取到种群的离散数据;
[0038]
步骤s25:改进交叉算子,通过将群体中两个选定父代的遗传等位基因与交叉概率
相结合,形成更好的后代。
[0039]
进一步的,所述步骤s25具体为:
[0040]
(1)随机选择作业1和作业2,并将作业3和作业4的子集保留在父代_1和父代_2;
[0041]
(2)将父代_1中的作业1和作业2的子集以相同的顺序复制到父代_2中对应的位置,更改后父代_2为子代_2;
[0042]
(3)将父代_2中的作业2和作业1的子集以相同的顺序复制到父代_1中对应的位置,将其更改为子代_1。
[0043]
进一步的,所述步骤s3具体为:
[0044]
针对插入新作业和取消旧作业,当动态事件到达时,将构建新的时间表,当新作业和先前调度的作业具有相同优先级时,采用交叉调度,如果新作业有更高的优先级,采用插入调度;在实际的制造环境中,如果不能从相应分配的机器中改变整个操作,则采用重组调度。
[0045]
本发明与现有技术相比具有以下有益效果:
[0046]
本发明克服现有氨纶盘头作业静态调度研究的局限性与不足,根据动态事件构造基于重新调度策略的可行数学模型,既提高了搜索效率,又能动态实时更新车间调度状态。
附图说明
[0047]
图1是本发明基于进化优化算法的氨纶盘头作业动态调度原理图;
[0048]
图2是本发明一实施例中氨纶盘头作业流程图;
[0049]
图3是本发明一实施例中进化算法编码与解码原理图
[0050]
图4是本发明一实施例中交叉算子原理图。
具体实施方式
[0051]
下面结合附图及实施例对本发明做进一步说明。
[0052]
请参照图1-4,本发明提供一种基于进化优化算法的氨纶盘头作业调度方法,该方法针对实际氨纶盘头作业,其作业流程如图2所示, agv小车从停泊位置出发到空盘头区搬运空盘头,并将其运输到机台加工,加工完成后agv小车将其搬运到满盘头区,最后小车回到停泊位。若有清洁盘头需求,则需搬运空盘头到清洁盘头区。
[0053]
氨纶盘头作业包括多种类型的任务(运输空盘头和运输满盘头),多点多区域调度(空盘头区,满盘头区、停泊位和清洁盘头区),以及多agv调度,提出进化优化算法,解决以最小化完工时间的氨纶作业车间调度,并引入重调度策略,优化氨纶盘头作业动态调度。
[0054]
具体包括以下步骤:
[0055]
步骤s1:根据氨纶盘头作业工作环境,构建优化环境的数学模型,并建立约束条件;
[0056]
步骤s2:基于数学模型和约束条件,采用进化优化算法,获取初步调度方案;
[0057]
步骤s3:基于初步调度方案,考虑新作业加入和旧作业取消,采用重组调度,交叉调度和插入调度,完成动态调度。
[0058]
在本实施例中,构建多种类型任务、多点多区域调度和多agv 调度的数学模型
[0059]
式中:
[0060]
ωj:工件集合,i∈{1,2,...,j},其中j是盘头总数
[0061]
σc:运输盘头的装载时间
[0062]
σd:运输盘头的卸载时间
[0063]
τ
rl
:加工站r到加工站l的空载操作消耗的时间
[0064]
p
ij
:工序o
ij
的加工时间
[0065]oij
:工件ji的第j道工序
[0066]qij
:工序o
ij
在加工站μ
ij
的等待时间
[0067]
约束条件:
[0068][0069][0070][0071][0072][0073]
本次的目标函数在考虑最小化最大完工时间:
[0074]
f=min(c
max
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1.1)
[0075]
约束(1.1)为目标函数:
[0076][0077]
约束(1.2)保证了同一台机器同一时刻只能加工一个空盘头:
[0078][0079]
约束(1.3)确保同一时刻同一agv最多只能搬运一个盘头:
[0080][0081]
在本实施例中,进化优化算法,具体如下:
[0082]
步骤s21:初始化参数,包括种群数目,种群规模,迭代次数;
[0083]
步骤s22:设置初始时间为0,并等待加工事件到来;
[0084]
步骤s23:随机初始化种群,并计算其适应值;
[0085]
步骤s24:在初始化阶段,种群已经映射到离散域。上述更新导致其进入连续域。因此,需要修改机制,该实例提出了一种新的改进机制,首先考虑到更新后种群的连续性,将种群的连续位置与离散位置建立一对一映射关系,然后通过排序获取到种群的离散数据,如图3 所示;
[0086]
步骤s25:为了在计算过程中提高群体的质量,改进交叉算子,通过将群体中两个选定父代的遗传等位基因与交叉概率相结合,形成更好的后代,它可以有效地提高算法的
搜索功能。
[0087]
因此,在本实施例中,优选的,采用基于随机选择作业的顺序交叉,其过程如图4所示,将一代中所有解的近似最优解为父代_1,将相应的最差解为父代_2。首先,随机选择作业1和作业2,并将作业 3和作业4的子集保留在父代_1和父代_2。
[0088]
然后,将父代_1中的作业1和作业2的子集以相同的顺序复制到父代_2中对应的位置,更改后父代_2为子代_2。最后,将父代_2中的作业2和作业1的子集以相同的顺序复制到父代_1中对应的位置,将其更改为子代_1。
[0089]
在本实施例中,针对插入新作业和取消旧作业,当动态事件到达时,将构建新的时间表,当新作业和先前调度的作业具有相同优先级时,交叉调度比重组调度和插入调度更有效,如果新作业有更高的优先级,相比于重组调度和交叉调度,则应该选择插入消毒。在实际的制造环境中,如果不能从相应分配的机器中改变整个操作,则应该选择重组,尽管不同的重新调度策略将导致不同的结果,但可以在不同的实际环境中选择每种策略。
[0090]
重组调度:表明原始调度方案不变,并为动态事件构造了适合新插入作业的新调度方案。对于这种重新调度策略,旧的调度方案不会受到新插入作业的影响,由于当所有分配的操作被完全处理时,机器和agv小车是可用的,因此在新的调度方案中,不同机器和agv 小车可用时间可能不同;
[0091]
交叉调度:是指将现有作业的未完成操作与动态事件相结合,生成一个新的交叉调度,适用于上述两个动态事件,并改变旧作业的调度方案,例如,当新作业在时间x到达时,可能存在未完成的操作,尽管新作业到达可用于重新调度,但工作机器、agv和旧作业在时间x不可用;
[0092]
插入调度,该调度声明必须存在可用于动态事件的候选机器的可用时隙,与重组调度类似,原调度方案不变,适用于新作业和取消旧作业。然而,当一个旧的作业被取消时,原始的调度方案通常会因较小的完工时间而改变;
[0093]
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献