基于离散入侵杂草算法的作业车间调度方法技术

技术编号:22565977 阅读:21 留言:0更新日期:2019-11-16 12:24
基于离散入侵杂草算法的调度方法,算法步骤包括:给所有的杂草给定一个随机数的初始解,并通过工序的编码方式对初始随机序列进行编解码;在每一次的迭代过程中,每个杂草计算其所要产生的种子个数;在算法的空间扩散操作中,种子根据父代植物的适应度值产生控制扩散距离的标准差值,种子根据这个标准差值在父代周围以正态分布的方式随机扩散;对于新生成的种子进行局部的寻优,使用VNS的思想改变工件的序列,提升算法的局部搜索能力;当杂草的总个数到达设定的最大值时,算法去除较差个体,只保留最大值个数的杂草。本发明专利技术提出了一种基于先进的新型进化算法的调度方法,并使其更加智能的解决制造业中的作业车间调度问题。

Job shop scheduling method based on discrete invasive weed algorithm

The scheduling method based on the discrete intrusion weed algorithm includes: giving all weeds an initial solution of random number, encoding and decoding the initial random sequence by the way of process coding; calculating the number of seeds produced by each weed in each iteration process; in the spatial diffusion operation of the algorithm, the seeds are based on the fitness of the parent plants The value generates the standard difference of the control diffusion distance, according to which the seed spreads randomly around the parent generation in a normal distribution way; for the newly generated seed, local optimization is carried out, and the sequence of workpieces is changed by using VNS idea to improve the local search ability of the algorithm; when the total number of weeds reaches the set maximum value, the algorithm removes the poor individuals and only retains the maximum Worth a few weeds. The invention proposes a scheduling method based on an advanced new evolutionary algorithm, and makes it more intelligent to solve the job shop scheduling problem in the manufacturing industry.

【技术实现步骤摘要】
基于离散入侵杂草算法的作业车间调度方法
本专利技术涉及制造业中生产线调度领域,具体对生产调度环境中作业车间调度问题进行优化的方法。
技术介绍
作业车间调度问题(JobShopSchedulingProblem,简称JSP)是制造业生产调度问题中一个非常重要的问题。同时作业车间调度问题所应用的领域也非常广泛,除了涉及制造业的生产调度之外,还涉及了航母调度,机场飞机调度,港口码头货船调度,汽车加工流水线调度等实际性问题。因此研究车间调度具有非常重要的意义,并且传统的数学方法已经无法满足生产调度的需求。目前学者大都使用近似算法来解决此类问题,其中很大一类分支是元启发式算法。元启发式算法中的代表算法包括:GA、DE、PSO、HS等等。针对作业车间调度这一NP-hard问题,本专利主要提出了一种新型入侵杂草算法来解决此类问题。入侵杂草算法是一种基于杂草的新型数值随机优化算法,其基本思想来源于杂草的入侵理论。该算法利用了杂草强大的适应环境能力,效仿了杂草入侵的4个阶段:种群初始化、生长繁殖、空间扩散和竞争排斥。算法主要在繁殖阶段通过每个杂草的适应度值控制每个杂草所产生的种子数。在空间扩散阶段,算法通过控制正态分布的标准差值σcur控制种子扩散的距离,使得种子在算法迭代前期可以在父代杂草周围大范围扩散,在算法迭代后期种子在父代杂草周围小范围扩散。算法初始设置一个杂草种群,设定杂草种子和标准差值的变化范围。之后在算法的迭代过程中,通过反复执行生长繁殖、空间扩散和竞争排斥这三个操作对种群进行优化。并应用到作业车间调度问题中。该算法的提出用于解决当前算法存在的运行结果不稳定,计算时间长,精度差,收敛性无理论指导的缺点。
技术实现思路
本专利技术的目的是提供一种基于离散入侵杂草算法的作业车间调度方法。本专利技术是基于离散入侵杂草算法的作业车间调度方法,其步骤为:步骤1:初始化种群,种群大小为N;步骤2:初始化参数,包括种子和标准差值变化区间、步骤3:根据基于工序的编码方式生成包含n个解(杂草)的种群;步骤4:评价每个解的适应度值;当算法满足终止条件时,算法返回目前找到的当前解,算法结束;步骤5:计算种群的标准差值以及父代个体产生的种子数;步骤6:对杂草进行排序,找到最优和最差适应度值的杂草个体;步骤7:计算每个杂草产生的种子,并计算其适应度值;步骤8:对种群中的杂草个体执行局部搜索策略;步骤8.1:根据局部搜索策略,生成Wnew;步骤8.2:如果randi<PARg,则:步骤8.2.1:杂草个体从当前最好的杂草中选值;步骤8.2.2:否则:杂草个体从当代保留的所有杂草中选择值;步骤8.3:如果randi<HMCR,则:步骤8.3.1:杂草个体直接继承步骤10.2中得到的杂草个体;步骤8.3.2:否则:算法在解空间中产生新解;步骤9:对新产生杂草个体执行VNS操作:步骤9.1:对种群中的一杂草个体x执行插入操作,得到杂草个体x*;步骤9.2:对种群中的一杂草个体x*执行交叉操作,得到杂草个体x’;步骤9.3:如果f(x’)≤f(x),则将x更新为x’;步骤10:将新产生的种子和杂草放在一起,按照适应度值排序;步骤11:消除适合度较低的杂草以达到群体中的最大允许群体;步骤12:更新整个种群的全局最优解,转步骤4。本专利技术的有益之处是:(1)在种群的初始化阶段,使用基于工序的编码规则生成种群。(2)在空间扩散阶段加入局部搜索策略和VNS思想,通过VNS的插入和交换操作增强算法的局部搜索能力和深度搜索能力。(3)在迭代过程中,根据如下的公式进行算法的局部搜索。(4)在空间扩散操作中,通过控制算法的标准差值改变算法的搜索方式,由前期的全局搜索方式逐步转变为局部搜索方式。(5)算法在竞争排斥阶段根据设置好的最大种群数淘汰掉种群中适应度值较差的个体,使得种群数不超过最大种群数。附图说明图1为本专利技术的流程图,图2为作业车间调度方法的Psize参数变化趋势图,图3为作业车间调度方法的Smax参数变化趋势图,图4为作业车间调度方法的n参数变化趋势图,图5为编码方式甘特图,图6为收敛图,图7为作业车间调度方法的盒图。具体实施方式所述的基于离散入侵杂草算法的作业车间调度方法的应用:作业车间调度问题中有M台机器,表示为[1,2,..k,m,…,M],m和k分别为调度问题中的一台机器,并且m≠k。每台机器只能加工一道工序,而且每一台机器上的工序都不相同;不同的工件在不同机器上的工序的完成时间是相互独立的,并保证所有的机器不会发生故障。作业车间调度问题中有N个工件需要加工,表示为:[1,2,..i,n,…,N],i和n分别为调度问题中的一个工件,并且n≠i。每个工件的加工顺序可以各不相同,并且完成时间相互独立。假设工件n在机器m上的完成时间为Cn,m;工件n在机器m上的加工时间为ln,m;当作业车间调度的目标是最小化最大完工时间时,目标函数为:minmax1≤n≤NCnM同时每个工件的不同加工工序的次序应该满足以下条件:Cnm-lnm+D(1-ankm)≥Cnk在公式Eq.(1.2)中,D为一个足够大的正数;ankm为指标系数,含义为:在公式Eq.(1.2)中表示满足约束条件下的每个工件的操作顺序;每台机器不同工件的加工顺序应该满足以下的条件:Cnm-Cim+D(1-xinm)≥lnm公式中的,xinm为指示变量,含义为:公式表示每个工件的在机器上加工时,每个机器的先后顺序。因此,作业车间调度模型为:具体的步骤如下:初始化参数:设置种群大小N;最大种子数Smax;最小种子数Smin;初始标准差值σinit,最终标准差值σfinal;最大种群数Pmax,扰动选择概率HMCR和PARg。步骤1:初始化种群,种群大小为N;步骤2:初始化参数,包括种子和标准差值变化区间、步骤3:根据基于工件的编码方式生成包含n个解(杂草)的种群;步骤4:评价每个解的适应度值;当算法满足终止条件时,算法返回目前找到的当前解,算法结束;步骤5:计算种群的标准差值以及父代个体产生的种子数;步骤6:对杂草进行排序,找到最优和最差适应度值的杂草个体;步骤7:计算每个杂草产生的种子,并计算其适应度值;步骤8:将新产生的种子和杂草放在一起,按照适应度值排序;步骤9:消除适合度较低的杂草以达到群体中的最大允许群体;步骤10:对种群中的杂草个体执行局部搜索策略:步骤10.1:根据局部搜索策略,生成Wnew;步骤10.2:如果randi<PARg,则:步骤10.2.1:杂草个体从当前最本文档来自技高网
...

【技术保护点】
1.基于离散入侵杂草算法的作业车间调度方法,其特征在于,其步骤为:/n步骤1:初始化种群,种群大小为N;/n步骤2:初始化参数,包括种子和标准差值变化区间;/n步骤3:根据基于工序的编码方式生成包含n个解(杂草)的种群;/n步骤4:评价每个解的适应度值;当算法满足终止条件时,算法返回目前找到的当前解,算法结束;/n步骤5:计算种群的标准差值以及父代个体产生的种子数;/n步骤6:对杂草进行排序,找到最优和最差适应度值的杂草个体;/n步骤7:计算每个杂草产生的种子,并计算其适应度值;/n步骤8:对种群中的杂草个体执行局部搜索策略:/n步骤8.1:根据局部搜索策略,生成W

【技术特征摘要】
1.基于离散入侵杂草算法的作业车间调度方法,其特征在于,其步骤为:
步骤1:初始化种群,种群大小为N;
步骤2:初始化参数,包括种子和标准差值变化区间;
步骤3:根据基于工序的编码方式生成包含n个解(杂草)的种群;
步骤4:评价每个解的适应度值;当算法满足终止条件时,算法返回目前找到的当前解,算法结束;
步骤5:计算种群的标准差值以及父代个体产生的种子数;
步骤6:对杂草进行排序,找到最优和最差适应度值的杂草个体;
步骤7:计算每个杂草产生的种子,并计算其适应度值;
步骤8:对种群中的杂草个体执行局部搜索策略:
步骤8.1:根据局部搜索策略,生成Wnew;
步骤8.2:如果randi<PARg,则:
步骤8.2.1:杂草个体从当前最好的杂草中选值;
步骤8.2.2:否则:杂草个体从当代保留的所有杂草中选择值;
步骤8.3:如果randi<HMCR,则:
步骤8.3.1:杂草个体直接继承步骤10.2中得到的杂草个体;
步骤8.3.2:否则:算法在解空间中产生新解;
步骤9:对新产生杂草个体执行VNS操作:
步骤9.1:对种群中的一杂草个体x执行插入操作,得到杂草个体x*;
步骤9.2:对种群中的一杂草个体x*执行交叉操作,得到杂草个体x’;
步骤9.3:如果f(x’)≤f(x),则将x更新为x’;
步骤10:将新产生的种子和杂草放在一起,按照适应度值排序;
步骤11:消除适合度较低的杂草以达到群体中的最大允许群体;
步骤12:更新整个种群的全局最优解,转步骤4。


2.根据权利要求1所述的基于离散入侵杂草算法的作业车间调度方法,其特征在于,在初始化阶段,设置种群大小N;最大种子数Smax;最小种子数Smin;初始标准差值σinit,最终标准差值σfinal;最大种群数Pmax,扰动选择概率...

【专利技术属性】
技术研发人员:赵付青逯浩唐建新张建林
申请(专利权)人:兰州理工大学
类型:发明
国别省市:甘肃;62

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1