【技术实现步骤摘要】
基于NSGA
‑
III算法求解车间调度问题的方法
[0001]本专利技术属于作业调度
,具体涉及一种基于NSGA
‑
III算法求解车间调度问题的方法。
技术介绍
[0002]在以往的车间生产调度研究中,主要针对机器转速恒定的车间节能调度问题进行研究,但随着科技的发展,出现了不少多功能机床设备,可以根据实际需要以不同速度来对不同零件进行加工。因此,考虑不同转速对于机器加工效果的影响,研究机器多转速条件下的多目标柔性作业车间节能调度问题,更加符合目前制造车间的生产实际和调度理论未来的发展。
技术实现思路
[0003]本专利技术的目的是提供一种基于NSGA
‑
III算法求解车间调度问题的方法,解决了现有技术中存在的不同转速对于机器加工效果具有影响的问题。
[0004]本专利技术所采用的技术方案是,基于NSGA
‑
III算法求解车间调度问题的方法,具体按照以下步骤实施:
[0005]步骤1、构建多目标柔性作业车间调度问题模型:包括多目标柔性作业车间调度问题描述、模型构建;
[0006]步骤2、产生一组分布均匀的参考点;
[0007]步骤3、采用等长三段式编码方式进行编码,三段式编码分别为工序码、设备码和速度码;采用随机方式生成初始种群P
t
,规模为N;设置算法参数:当前迭代次数t,最大迭代次数t
max
,交叉概率P
N
,变异概率P
M />,每个目标的等分数H;
[0008]步骤4、对父代种群P
t
中的个体进行基于自适应算子的交叉、变异操作,生成子代种群Q
t
,将P
t
和Q
t
合并生成临时种群R
t
,规模为2N;
[0009]步骤5、对临时种群R
t
进行基于参考点的近似支配排序,并将排序后的临时种群R
t
分成多个支配等级的小种群,由高到低依次加入下一代父代种群P
t+1
中,对临界层种群通过小生境技术进行选择加入P
t+1
,使生成第二代父代种群P
t+1
的规模为N;
[0010]步骤6、判断是否满足终止条件,若不满足,则返回执行步骤4;若满足,则执行步骤7;
[0011]步骤7、利用加权法,从最优解集中选出一个解作为最优妥协解,并输出。
[0012]本专利技术的特点还在于,
[0013]步骤1中多目标柔性作业车间调度问题描述如下:
[0014]假设车间有m台机器,机器的集合为M={M
k
,1≤k≤m},有n个工件需要加工,工件的集合为J={J
i
,1≤i≤n},每个工件J
i
包含n
i
道工序,O
ij
则表示工件J
i
的第j道工序,工件J
i
的工序的集合为I
i
={O
ij
,1≤j≤n
i
},机器M
k
的加工速度集合表示为V
k
={v
l
,1≤l≤d},O
ij
在某时刻可以在某台机器M
k
以速度v
l
加工,则表示为x
ijkl
(t)=1,因此,一个工序在一台
机器上以速度v
l
加工的时间是P
ijkl
,柔性作业车间调度的目的是分配n类加工工件的所有工序O
ij
的加工方案;
[0015]模型假设具体如下:
[0016]所有工件在初始时刻均处于可加工状态;
[0017]工序在加工过程中不可被打断;
[0018]一道工序被限制在同一台机器上加工完成;
[0019]一台机器同时只能加工一道工序;
[0020]同一工件的各工序间的加工次序是不能改变的,各工序间的加工次序也不会相互影响;
[0021]工件没有优劣等级之分;
[0022]在所有任务的最后一道工序完成前,空闲的设备不停机;
[0023]不计设备的预处理时间和工件的装卸、搬运时间;
[0024]设备故障或加急任务均不考虑;
[0025]步骤1中多目标柔性作业车间调度问题模型构建具体如下:
[0026]J
i
表示工件i的总工序数;表示工件i的完工时间;n表示工件总数;m表示机器总数;ST
ijk
表示工序O
ij
在机器M
k
上开始加工时刻;ET
ijk
表示工序O
ij
在机器M
k
上的结束加工时刻;P
ijkl
表示工序O
ij
以速度l在机器M
k
上加工的时间;同理,ST
i(j
‑
1)k'
和ET
i(j
‑
1)k'
分别为工件J
i
的第j
‑
1道工序O
i(j
‑
1)
在机器M
k'
上的开始加工时刻和结束时刻;ET
hgk
为机器M
k
在加工工序O
ij
之前的紧前工序O
hg
的结束时刻;MI
k
表示机器M
k
的释放时间;S
i
表示工件i的释放时间;D
i
表示工件i的交货期;Y表示车间单位时间的固定能耗率;E
kl
表示机器对应加工状态下的能耗率,且x
ijkl
(t)为0
‑
1变量,如果机器M
k
以速度v
l
在t时刻加工工序O
ij
,则x
ijkl
(t)=1,否则x
ijkl
(t)=0;SE
k
表示机器处于待机状态下的能耗率,且SE
k
=1,z
k
(t)为0
‑
1变量,如果在t时刻,机器M
k
处于待机状态,则z
k
(t)=1,否则z
k
(t)=0;α表示车间内工件的转移能耗率;Z表示车间工件的转移次数;P
ijkl
表示工序O
ij
以速度l在机器M
k
上加工的时间,E
kl
与P
ijkl
两者的关系,如果工序O
ij
在机器M
k
上的加工速度增加,则相应加工时间会变小,但与之相反,相应加工的能量消耗则会增大,本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.基于NSGA
‑
III算法求解车间调度问题的方法,其特征在于,具体按照以下步骤实施:步骤1、构建多目标柔性作业车间调度问题模型:包括多目标柔性作业车间调度问题描述、模型构建;步骤2、产生一组分布均匀的参考点;步骤3、采用等长三段式编码方式进行编码,三段式编码分别为工序码、设备码和速度码;采用随机方式生成初始种群P
t
,规模为N;设置算法参数:当前迭代次数t,最大迭代次数t
max
,交叉概率P
N
,变异概率P
M
,每个目标的等分数H;步骤4、对父代种群P
t
中的个体进行基于自适应算子的交叉、变异操作,生成子代种群Q
t
,将P
t
和Q
t
合并生成临时种群R
t
,规模为2N;步骤5、对临时种群R
t
进行基于参考点的近似支配排序,并将排序后的临时种群R
t
分成多个支配等级的小种群,由高到低依次加入下一代父代种群P
t+1
中,对临界层种群通过小生境技术进行选择加入P
t+1
,使生成第二代父代种群P
t+1
的规模为N;步骤6、判断是否满足终止条件,若不满足,则返回执行步骤4;若满足,则执行步骤7;步骤7、利用加权法,从最优解集中选出一个解作为最优妥协解,并输出。2.根据权利要求1所述的基于NSGA
‑
III算法求解车间调度问题的方法,其特征在于,所述步骤1中多目标柔性作业车间调度问题描述如下:假设车间有m台机器,机器的集合为M={M
k
,1≤k≤m},有n个工件需要加工,工件的集合为J={J
i
,1≤i≤n},每个工件J
i
包含n
i
道工序,O
ij
则表示工件J
i
的第j道工序,工件J
i
的工序的集合为I
i
={O
ij
,1≤j≤n
i
},机器M
k
的加工速度集合表示为V
k
={v
l
,1≤l≤d},O
ij
在某时刻可以在某台机器M
k
以速度v
l
加工,则表示为x
ijkl
(t)=1,因此,一个工序在一台机器上以速度v
l
加工的时间是P
ijkl
,柔性作业车间调度的目的是分配n类加工工件的所有工序O
ij
的加工方案;模型假设具体如下:所有工件在初始时刻均处于可加工状态;工序在加工过程中不可被打断;一道工序被限制在同一台机器上加工完成;一台机器同时只能加工一道工序;同一工件的各工序间的加工次序是不能改变的,各工序间的加工次序也不会相互影响;工件没有优劣等级之分;在所有任务的最后一道工序完成前,空闲的设备不停机;不计设备的预处理时间和工件的装卸、搬运时间;设备故障或加急任务均不考虑;步骤1中多目标柔性作业车间调度问题模型构建具体如下:J
i
表示工件i的总工序数;表示工件i的完工时间;n表示工件总数;m表示机器总数;ST
ijk
表示工序O
ij
在机器M
k
上开始加工时刻;ET
ijk
表示工序O
ij
在机器M
k
上的结束加工时刻;P
ijkl
表示工序O
ij
以速度l在机器M
k
上加工的时间;同理,ST
i(j
‑
1)k'
和ET
i(j
‑
1)k'
分别为工件J
i
的第j
‑
1道工序O
i(j
‑
1)
在机器M
k'
上的开始加工时刻和结束时刻;ET
hgk
为机器M
k
在加工工序O
ij
之
前的紧前工序O
hg
的结束时刻;MI
k
表示机器M
k
的释放时间;S
i
表示工件i的释放时间;D
i
表示工件i的交货期;Y表示车间单位时间的固定能耗率;E
kl
表示机器对应加工状态下的能耗率,且x
ijkl
(t)为0
‑
1变量,如果机器M
k
以速度v
l
在t时刻加工工序O
ij
,则x
ijkl
(t)=1,否则x
ijkl
(t)=0;SE
k
表示机器处于待机状态下的能耗率,且SE
k
=1,z
k
(t)为0
‑
1变量,如果在t时刻,机器M
k
处于待机状态,则z
k
(t)=1,否则z
k
(t)=0;α表示车间内工件的转移能耗率;Z表示车间工件的转移次数;P
ijkl
表示工序O
ij
以速度l在机器M
k
上加工的时间,E
kl
与P
ijkl
两者的关系,如果工序O
ij
在机器M
k
上的加工速度增加,则相应加工时间会变小,但与之相反,相应加工的能量消耗则会增大,具体如下:所有机器在加工过程中始终保持开机状态,当其上没有工件加工时,对应机器处于待机状态,直到所有工件加工完成,机器才能关闭;目标函数构建如下:目标函数构建如下:目标函数构建如下:目标函数构建如下:目标函数构建如下:目标函数构建如下:s.t.s.t.s.t.s.t.s.t.s.t.s.t.
其中,公式(1
‑
2)表示最大完工时间;公式(1
‑
3)表示平均流程时间;公式(1
‑
4)表示总延期时长;公式(1
‑
5)表示机器总负荷;公式(1
‑
6)表示瓶颈机器负荷;公式(1
‑
7)系统总能耗,公式(1
‑
8)代表每个工件的加工顺序约束;公式(1
‑
9)表示同一工件的当前工序O
ij
的开始时刻与上一道工序O
i(j
‑
1)
的结束时刻、当前加工机器开始空闲时刻MI
k
及工件释放时间S
i
的约束关系;公式(1
‑
10)为最后一道工序的结束时刻;公式(1
‑
11)定义了机器开始处于空闲的时刻应等于该机器上的工序结束时刻;公式(1
‑
12)表示一道工序只能被一台机器进行加工;公式(1
‑
13)表示一台机器同时只能加工一道工序;公式(1
‑
14)~(1
‑
15)为0
‑
1变量;公式(1
‑
16)~(1
‑
19)为非负约束。3.根据权利要求2所述的基于NSGA
‑
III算法求解车间调度问题的方法,其特征在于,所述步骤2中参考点分布在G
‑
1维的超平面上,G是目标空间的维度,假设将每个目标进行H等分,则步骤2中生成参考点的个数L通过式(2
‑
1)确定:步骤2.1、定义X为集合中所有元素的G
‑
1种组合;步骤2.2、对X中的每一个元素x
ij
,有其中,x
ij
表示X中第i种组合里的第j个元素;步骤2.3、令S表示参考点集合,则对于S中的每一个元素s
ij
和X中的每一个元素x
ij
,满足式(2
‑
2):G是目标空间的维度,也就是要优化目标的个数;x
ij
表示X中第i种组合里的第j个元素;s
ij
表示S中第i种组合里的第j个元素。4.根据权利要求3所述的基于NSGA
‑
III算法求解车间调度问题的方法,其特征在于,所述步骤4具体如下:(1)提前定义好交叉和变异算子策略池中分别各有Q个交叉和变异算子,每个交叉或变异算子都有...
【专利技术属性】
技术研发人员:魏引焕,汤彪,祖思雨,孙炫炫,黄宏,
申请(专利权)人:陕西科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。