【技术实现步骤摘要】
一种求解多目标柔性作业车间调度问题的优化方法
[0001]本专利技术涉及一种求解多目标柔性作业车间调度问题的优化方法
。
技术介绍
[0002]作为生产调度和组合优化问题的一部分,作业车间调度问题
(job
‑
shop scheduling problem
,
JSP)
在近几十年来吸引了越来越多的各行各业
(
如机械工程
、
数学和计算机软件工程
)
的研究人员
。
柔性作业车间调度问题
Flexible job
‑
shop scheduling problem(FJSP)
继承了
JSP
的特点,其中每个工序允许由给定集合中的任何机器而不是指定的机器处理,并且已经证明
FJSP
是强
NP
‑
难
。FJSP
由两个子问题组成:一个是路由子问题,每个工序分配给一组机器中的一个机器,另一个是调度问题,即通过在所有机器上对分配的工序进行排序来获得一个可用的调度
。
因此,
FJSP
比经典
JSP
更难解决,因为它需要确定相关机器中的工序分配
。
[0003]FJSP(SO
‑
FJSP)
的单目标优化已得到广泛研究,通常会最小化完成所有工件所需的时间
。
然而,许多行业
( >例如,飞机
、
半导体制造和电子产品
)
在其调度问题中存在权衡,在这些问题中需要考虑多个目标以优化系统的整体性能
。
因此,
MO
‑
FJSP
可能更接近现实的生产环境,需要进一步研究
。
近年来,
MO
‑
FJSP
引起了越来越多领域研究人员的兴趣,并提出了许多算法
。
与
SO
‑
FJSP
相比,
MO
‑
FJSP
有两个问题需要处理:目标之间的不可通约性和目标之间的矛盾
(
即优化单个目标通常会导致另一个目标的恶化
)。
[0004]对上述研究表明,
NSGAII
算法以其优化复杂问题的效率高和能够获得广泛的
Pareto
最优解等优点,已被广泛用于求解
MO
‑
FJSP。
而具有两阶段优化方案的算法也被广泛研究以解决
MOFJSP
,因为它可以充分挖掘各种元启发式算法的优化潜力
。
但是,
NSGA
‑
II
算法存在早熟收敛到本地解的缺点,并且该算法采用两阶段优化方案存在无法在第一阶段获得稳定优质的初始种群的缺点
。
技术实现思路
[0005]为了解决上述技术问题,本专利技术提供一种算法简单
、
快速有效的求解多目标柔性作业车间调度问题的优化方法
。
[0006]本专利技术解决上述问题的技术方案是:一种求解多目标柔性作业车间调度问题的优化方法,包括以下步骤:
[0007]步骤1:建立柔性作业车间调度问题的两个子问题;一个是路由子问题,将一组可用机器中的每个工序分配给一台机器;另一个是调度子问题,将所有机器上分配的工序排序,以获得优化某个目标函数的可行调度;
[0008]步骤2:建立目标函数,用于最小化三个目标,三个目标分别为机器的最大完成时间
、
负载最大的机器的工作负载
、
所有机器的总工作量;
[0009]步骤3:确定调度的约束条件;
[0010]步骤4:进行第一阶段:初始化种群,采用迭代次数为
T
的
NSGA
‑
II
算法得到初始种
群
N
;初始种群由三部分组成,随迭代次数变化;
[0011]步骤5:进行第二阶段:使用具有
Gen
迭代次数的
NSGA
‑
II
算法来获得
Pareto
最优解;
[0012]步骤6:选出精英子代,作业执行完毕,调度结束
。
[0013]上述求解多目标柔性作业车间调度问题的优化方法,所述步骤1中,
FJSP
定义如下,有一组
n
个工件和一组
m
台机器,
i
表示第
i
个工件,
i∈{1,2
,
…
,
n}
,
k
表示第
k
台机器,
k∈{1,2
,
…
,
m}
,
O
ij
表示工件
i
的第
j
道工序,
j∈{1,2
,
…
,
n
i
}
,
n
i
是工件
i
的工序总数,
M
ij
表示工序
O
ij
的可选机器,
P
ijk
表示工序
O
ij
在机器
k
上的处理时间,
t
ijk
表示工序
O
ij
在机器上
k
的开始时间,
C
ij
表示工序
O
ij
的完成时间;
FJSP
由两个子问题组成
:
分配的路由子问题,将每个工序分配给一组可用机器中的一台机器;调度子问题,将分配的工序在所有机器上排序,以获得优化某个目标函数的可行调度
。
[0014]上述求解多目标柔性作业车间调度问题的优化方法,所述步骤2中,建立的目标函数为:
[0015][0016]其中
C
k
表示机器
k
的完成时间,
W
k
表示机器
k
的工作负载
。
[0017]上述求解多目标柔性作业车间调度问题的优化方法,所述步骤3中,每个工序在处理过程中不能被中断
、
每台机器在任何时候最多只能处理一道工序
、
一道工序不能由多台机器同时处理
、
工序之间的移动时间和机器的设置时间忽略不计
、
机器彼此独立
、
工件是相互独立的;
[0018]约束函数为:不等式
(2)
保证了运算优先约束,
x...
【技术保护点】
【技术特征摘要】
1.
一种求解多目标柔性作业车间调度问题的优化方法,其特征在于,包括以下步骤:步骤1:建立柔性作业车间调度问题的两个子问题;一个是路由子问题,将一组可用机器中的每个工序分配给一台机器;另一个是调度子问题,将所有机器上分配的工序排序,以获得优化某个目标函数的可行调度;步骤2:建立目标函数,用于最小化三个目标,三个目标分别为机器的最大完成时间
、
负载最大的机器的工作负载
、
所有机器的总工作量;步骤3:确定调度的约束条件;步骤4:进行第一阶段:初始化种群,采用迭代次数为
T
的
NSGA
‑
II
算法得到初始种群
N
;初始种群由三部分组成,随迭代次数变化;步骤5:进行第二阶段:使用具有
Gen
迭代次数的
NSGA
‑
II
算法来获得
Pareto
最优解;步骤6:选出精英子代,作业执行完毕,调度结束
。2.
根据权利要求1所述的求解多目标柔性作业车间调度问题的优化方法,其特征在于,所述步骤1中,
FJSP
定义如下,有一组
n
个工件和一组
m
台机器,
i
表示第
i
个工件,
i∈{1,2
,
…
,
n}
,
k
表示第
k
台机器,
k∈{1,2
,
…
,
m}
,
O
ij
表示工件
i
的第
j
道工序,
j∈{1,2
,
…
,
n
i
}
,
n
i
是工件
i
的工序总数,
M
ij
表示工序
O
ij
的可选机器,
P
ijk
表示工序
O
ij
在机器
k
上的处理时间,
t
ijk
表示工序
O
ij
在机器上
k
的开始时间,
C
ij
表示工序
O
ij
的完成时间;
FJSP
由两个子问题组成
:
分配的路由子问题,将每个工序分配给一组可用机器中的一台机器;调度子问题,将分配的工序在所有机器上排序,以获得优化某个目标函数的可行调度
。3.
根据权利要求1所述的求解多目标柔性作业车间调度问题的优化方法,其特征在于,所述步骤2中,建立的目标函数为:其中
C
k
表示机器
k
的完成时间,
W
k
表示机器
k
的工作负载
。4.
根据权利要求2所述的求解多目标柔性作业车间调度问题的优化方法,其特征在于,所述步骤3中,每个工序在处理过程中不能被中断
、
每台机器在任何时候最多只能处理一道工序
、
一道工序不能由多台机器同时处理
、
工序之间的移动时间和机器的设置时间忽略不计
、
机器彼此独立
、
工件是相互独立的;约束函数为:不等式
(2)
保证了运算优先约束,
x
ijk
为一变量;不等式
(3)
确保每台机器每次只处理一道工序作;等式
(4)
表明可从可用的机器中选择一台机器来进行操作;
根据是否选择机器
k
加工步骤
O
ij
,使用等式
(5)
确定
x
ijk
的值;
5.
根据权利要求2所述的求解多目标柔性作业车间调度问题的优化方法,其特征在于,所述步骤4的具体步骤为:
Step1
:在第一阶段中,采用基于工序的表示方法,由工件编号组成;种群中每个初始个体的工序作序列向量是按照随机编码原理生成的,随机生成
N
个个体作为初始种群,设当前迭代次数
t
=1;
Step2
:根据目标
1、
目标
2、
目标3计算个体的适应度值;然后分别选出适应度最好的个体分别作为女王
1、
女王
2、
女王3;如果
t>1
,比较父代蜂王和子代蜂王的适应度值,相应地选出最好的作为新的蜂王;
Step3
:使用轮盘赌方法根据目标
1、
目标2和目标3的适合度值选择
P
个体;
Step4
:随机生成
R
个体,并将这些个体分别与
Step3
生成的
P
个体组合;
α
为迭代次数比;
Step5
:计算自适应交叉
、
变异概率;工序序列向量采用随机选择单点交叉
SPX
或多点交叉
MPX
算子;机器分配向量采用两点交叉
TPX
作为交叉算子;以概率
Pm
随机选择一个交换变异或反向变异算子作为工序序列向量,并为机器分配向量选择多点变异
MPM
算子;步骤
Step2
选出的新蜂王与步骤
Step4
产生的其他相应个体进行交叉变异,分别产生子代种群
1、
子代种群2和子代种群3;
Step6
:将三个子代种群组合成一个组合种群;
Step7
:快速非支配排序和拥塞计算;
Step8
:选择最好的
N
′
个体作为后代种群;
Step9
:令
t
=
t+1
;如果
t>T
,继续下一步;否则返回第
Step2
步,种群由选定的个体代替
。6.
根据权利要求2所述的求解多目标柔性作业车间调度问题的优化方法,其特征在于,所述步骤5的具体步骤为:
Step10
:在第二阶段中,选择
S
杰出个体作为精英个体,
S
杰出个体来自
N
的个人;
x
′
+S+0.5N≥N(7)Step11
:计算自适应交叉
、
变异概率;工序序列向量采用优先工序交叉
POX
或基于工件的交叉
JBX
,机器分配向量采用两点交叉
TPX
;使用二元锦标赛选择方法从后代种群中选择交叉个体,即选择的
N
个体;公式
(8)
中,
D(i,j)
表示的是一个差度函数,用于计算将要交叉的两条染色体,即染色体
i
与染色体
j
之间的相似性,其中
L
为染色体的长度,
a
il
为染色体
i
中
的第
l
段基因;使用优先工序交叉;否则,使用基于工件的交叉;公式
(9)
中,
u
表示的是一个设置为
0.7
的参数
。
随着
u
的减少,染色体倾向于选择多点保存交叉;
D(i
,
j)≤u
,
PrecedenceoperationcrossoverD(i
,
j)>u
,
Job
‑
basedcrossover(9)Step12
:如果个体处于
Pareto
最前沿,则选择交换变异;否则为工序序列向量选择二次结合变异
TBM
或反向变异;机器分配向量也选择
MPM
算子,当概率
P
m
<
=
0.1
的情况下,当后代等级=1时,则选择交换变异;若后代等级
≠1
时,选择两次结合变异或反向变异;当概率
P
m
>
0.1
的情况下,种群不会发生变异;
Step13
:随机产生新的
R
′
个体;
α
′
为新的迭代次数比;为新的迭代次数比;
Step14
:组合从
Step10、Step12
和
Step13
获得的三部分个体;
Step15
:用
Step7
处理结合种群产生后代种群;
Step16
:如果
t>GEN
,输出结果;否则,
t
=
t+1
,返回
Step10。7.
根据权利要求6所述的求解多目标柔性作业车间调度问题的优化方法,在染色体编码与解码阶段,对于工序顺序向量方面,采用基于工序的表示方法,由工件编号组成,表示使用了一个从1到
n
的不间断整数数组,每个整数出现
Oni
次,其中
Oni
是工件
i
的工序总数;因此,初始工序序列种群的长度等于通...
【专利技术属性】
技术研发人员:龚桂良,戚浩,黄丹,彭宁涛,张峻,成宇佳,朱楠,于健涛,
申请(专利权)人:中南林业科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。