基于改进蒙特卡洛树搜索算法的动态车间调度方法及系统技术方案

技术编号:39571370 阅读:10 留言:0更新日期:2023-12-03 19:22
本发明专利技术公开了一种基于改进蒙特卡洛树搜索算法的动态车间调度方法及系统,通过确定动态车间调度的动态事件类型;根据动态车间调度的动态事件类型,基于转移时间的最大完工时间的目标函数建立动态车间调度问题的重调度模型;基于改进的蒙特卡洛树搜索算法对动态车间调度问题重调度模型求解获得动态车间最佳调度方案,通过建立基于转移时间的最大完工时间为目标动态车间调度问题重调度模型,通过改进的蒙特卡洛树搜索算法对其进行求解,扩展了算法的应用领域,促使车间生产过程中遇到动态事件时,能快速响应

【技术实现步骤摘要】
基于改进蒙特卡洛树搜索算法的动态车间调度方法及系统


[0001]本专利技术属于动态车间调度
,具体涉及基于改进蒙特卡洛树搜索算法的动态车间调度方法及系统


技术介绍

[0002]动态车间调度作为静态车间调度问题的一种延伸形式,具有更强的应用背景和更大的求解难度,已被证明是一种具有
NP
难特性的组合优化问题

该问题的求解算法研究已成为车间调度领域的热点,现阶段常用的动态车间调度问题的方法,主要有智能优化算法和机器学习类的算法

虽然用智能优化算法求解动态车间调度问题时,求解精度高,但其求解时间长

用机器学习类的算法求解动态车间调度问题时,求解时间快,但精度低

因此需要一种求解精度高的求解车间调度问题的方法


技术实现思路

[0003]本专利技术的目的在于提供基于改进蒙特卡洛树搜索算法的动态车间调度方法及系统,以克服现有技术针对动态车间调度计算时间长,精度低的问题

[0004]为解决上述技术问题,本专利技术采用如下技术方案:
[0005]基于改进蒙特卡洛树搜索算法的动态车间调度方法,包括:
[0006]S1、
确定动态车间调度的动态事件类型;
[0007]S2、
根据动态车间调度的动态事件类型,基于最大完工时间的目标函数建立动态车间调度问题的重调度模型;
[0008]S3、
基于改进的蒙特卡洛树搜索算法对动态车间调度问题重调度模型求解获得动态车间最佳调度方案

[0009]优选的,所述基于改进的蒙特卡洛树搜索算法对动态车间调度问题重调度模型求解获得动态车间最佳调度方案,具体包括以下步骤:
[0010]S31、
将工件分为已加工的工件集和未加工的工件集;
[0011]S32、
判断根节点是否为叶子节点,若是,则输出调度方案,否则,执行步骤
S33

[0012]S33、
判断多分枝模拟策略是否结束,若未结束,执行步骤
S34,
否则,执行步骤
S38

[0013]S34、
判断扩展的节点是否已存在,若存在,执行步骤
S35
,否则,执行步骤
S37

[0014]S35、

r<
ε
,随机选择一节点扩展,否则通过强化学习确定需要扩展节点;
[0015]S36、
判断叶子节点是否到达,若到达执行步骤
S33
,否则执行步骤
S 34

[0016]S37、
扩展子节点,计算最大完工时间和机器利用率,确定下一节点,并执行步骤
S36

[0017]S38、
计算所有分支的所有评估值,确定下一根节点,保存对应的分支;
[0018]S39、
对保存的分支进行裁剪,并跳转到步骤
S32。
[0019]优选的,基于最大完工时间的目标函数表示为:
[0020][0021]式中
F
表示最大完工时间,
C
i
为工件
i
的完工时间;
i
表示第
i
个工件

[0022]优选的,动态车间调度问题重调度模型的约束条件为:
[0023][0024][0025][0026]j

1,2,...,n
i

k,w

1,2,3...m
[0027][0028][0029]式
(1

2)
表示机器加工时,工序的开始时间约束,式
(1

3)
表示机器加工时,工序的加工时间约束,式
(1

4)
表示同一工件的相邻两道工序受优先级约束,式
(1

5)
表示在运输时间约束条件下,机器加工相邻两道工序关系,式
(1

6)
表示每道工序只能加工一次;
[0030]式中为:工件
i
的第
j
道工序在机器
k
上的开始加工时间计算公式,
S
ijk
为:工件
i
的第
j
道工序在机器
k
上的开始加工时间,
X
ijk
为0‑1变量,若工件
i
的第
j
道工序在机器
k
上加工,
X
ijk
=1否者
X
ijk
=0,
S
ij
为工件
i
的第
j
道工序的开始加工时间,
i
为工件的编号,
j
为工件所需工序编号,
k
为机器的编号;
[0031]为工件
i
的第
j
道工序在机器
k
上的基本加工时间计算公式;
B
ijk
为工件
i
的第
j
道工序在机器
k
上的基本加工时间;
[0032]B
ij
为工件
i
的第
j
道工序的基本加工时间;
S
i(j

1)
为工件
i
的第
j
‑1道工序的开始加工时间;
[0033]B
i(j

1)k
为工件
i
的第
j
‑1道工序在机器
k
上的基本加工时间;
[0034]为工件
i
的相邻两道工序
{O
ij
,O
ij
‑1}
在不同的机器上转移时间计算公式;
[0035]TT
i(j

1)kjw
为工件
i
的相邻两道工序
{O
ij
,O
ij
‑1}
从机器
k
到机器
w
的转移时间;
X
i(j

1)kjw
为0‑1变量,若工件
i
的相邻两道工序
{O
ij
,O
ij
‑1}
从机器
k
到机器
w
的发生转移,
X
i(j

本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
基于改进蒙特卡洛树搜索算法的动态车间调度方法,其特征在于,包括:
S1、
确定动态车间调度的动态事件类型;
S2、
根据动态车间调度的动态事件类型,基于最大完工时间的目标函数建立动态车间调度问题的重调度模型;
S3、
基于改进的蒙特卡洛树搜索算法对动态车间调度问题重调度模型求解获得动态车间最佳调度方案
。2.
根据权利要求1所述的基于改进蒙特卡洛树搜索算法的动态车间调度方法,其特征在于,所述基于改进的蒙特卡洛树搜索算法对动态车间调度问题重调度模型求解获得动态车间最佳调度方案,具体包括以下步骤:
S31、
将工件分为已加工的工件集和未加工的工件集;
S32、
判断根节点是否为叶子节点,若是,则输出调度方案,否则,执行步骤
S33

S33、
判断多分枝模拟策略是否结束,若未结束,执行步骤
S34,
否则,执行步骤
S38

S34、
判断扩展的节点是否已存在,若存在,执行步骤
S35
,否则,执行步骤
S37

S35、

r<
ε
,随机选择一节点扩展,否则通过强化学习确定需要扩展节点;
S36、
判断叶子节点是否到达,若到达执行步骤
S33
,否则执行步骤
S34

S37、
扩展子节点,计算最大完工时间和机器利用率,确定下一节点,并执行步骤
S36

S38、
计算所有分支的所有评估值,确定下一根节点,保存对应的分支;
S39、
对保存的分支进行裁剪,并跳转到步骤
S32。3.
根据权利要求1所述的基于改进蒙特卡洛树搜索算法的动态车间调度方法,其特征在于,基于最大完工时间的目标函数表示为:式中
F
表示最大完工时间,
C
i
为工件
i
的完工时间;
i
表示第
i
个工件
。4.
根据权利要求1所述的基于改进蒙特卡洛树搜索算法的动态车间调度方法,其特征在于,动态车间调度问题重调度模型的约束条件为:在于,动态车间调度问题重调度模型的约束条件为:在于,动态车间调度问题重调度模型的约束条件为:在于,动态车间调度问题重调度模型的约束条件为:式
(1

2)
表示机器加工时,工序的开始时间约束,式
(1

3)
表示机器加工时,工序的加工时间约束,式
(1

4)
表示同一工件的相邻两道工序受优先级约束,式
(1

5)
表示在运输时间
约束条件下,机器加工相邻两道工序关系,式
(1

6)
表示每道工序只能加工一次;式中为:工件
i
的第
j
道工序在第
k
台机器上开始加工时间计算公式,
S
ijk
为:工件
i
的第
j
道工序在机器
k
上的开始加工时间,
X
ijk
为0‑1变量,若工件
i
的第
j
道工序在机器
k
上加工,
X
ijk
=1否者
X
ijk
=0,
S
ij
为工件
i
的第
j
道工序的开始加工时间,
i
为工件的编号,
j
为工件所需工序编号,
k
为机器的编号;为工件
i
的第
j
道工序在机器
k
上的基本加工时间计算公式;
B
ijk
为工件
i
的第
j
道工序在机器
k
上的基本加工时间;
B
ij
为工件
i
的第
j
道工序的基本加工时间;
S
i(j

1)
为工件
i
的第
j
‑...

【专利技术属性】
技术研发人员:何舟汤彪
申请(专利权)人:陕西科技大学
类型:发明
国别省市:

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

1