柔性作业车间动态调度问题研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Abstract: A multi-objective immune genetic algorithm (MOIGA) based dynamic scheduling optimization algorithm was proposed to solve the flexible job shop dynamic scheduling problem. The problem was defined in which deviation degree criterion was proposed with the delivery date criterion to reflect the difference between the pre-scheduling and the rescheduling. A MOIGA-based interactive optimization model integrating periodic and event-driven dynamic scheduling strategy was proposed. An operation-extended based encoding way was put forward and a bidirectional scheduling algorithm aiming at the earliness/tardiness (E/T) criteria optimized was proposed in the decoding step. The factors related with MOIGA’s time complexity was discussed. A simulation example result shows that the optimization model can solve the problem effectively and efficiently. Key words: flexible job shop; dynamic scheduling; MOIGA; earliness/tardiness criteria
(1) 交货期最优目标函数 JIT 制企业强调提前于交货期完工和落后于交货期完工 都将受到惩罚,所有工件的完工时间必须尽量与交货期靠
近。因此,交货期性能最优既是预调度又是再调度的优化目
标,定义如下:
N
min f1 = max(max((d j − C j ), 0)) j =1
N
min f2 = max(max((C j − d j ),0)) j =1
动时,重新产生调度方案后,尚未加工的工序在预调度和再
调度两种方案里的开工时间的偏差和。
∑( ) Nd
min f3 = min
S
' j
−
S
j
j =1
其中,
S
' j
和
S
j
分别指开工时间,Nd
是再调度因子出现时预
调度中尚未完工的总工序数。
2.2 动态调度策略
过程如下:交货期最早的工件的紧急程度设为 1 级,优先级 也设为 1 级;交货期最晚的工件的紧急程度设为 N 级,优 先级也设为 N 级;依次类推。
1) 基于规则和标准遗传算法相结合的方法。遗传算法 和免疫算法都是随机搜索算法,单靠算法本身产生特定问题 的可行解的效率往往不太满意。许多传统的局部搜索方法或 基于规则的方法尽管容易陷入局部最优,但其局部搜索能力 极强,这正好能够克服随机搜索算法的缺点。因此根据调度 优化的指标体系,构建基于启发式规则的调度算法库,采用 嵌入式方法[9]嵌入到染色体的解码过程中,从而快速给出性 能指标值。
收稿日期:2007-03-21
修回日期:2007-06-03
作者简介:吴秀丽(1977-),女,河南鹤壁人,博士,讲师,研究方向为
生产调度优化及仿真。
预调度,使其不能正常执行下去。它是再调度的触发器。 Suresh 等[2,3]将再调度因子分成以下 4 类:1)与工件相关的: 包括工件随机到达、加工时间不确定、交货期更改、加急订 单、动态优先级和订单变化等情况;2)与机器相关的:包括 机器故障、负载有限、机器阻塞/死锁和生产能力冲突等情 况;3)与工序相关的:包括工序延误、质量问题和产量不稳 定等情况[4];4)其它:如操作人员缺勤、原材料延期到达、 原材料有缺陷、动态加工路线等情况。
定义 4:工件窗:一个动态的调度任务集合。 定义 5:工件窗口容量:指工件窗内工件的数目,它与 车间的加工能力有关。 定义 6:再调度周期:在采用周期驱动方式的动态调度 中,两次再调度之间的时间间隔。再调度周期的选择非常关 键,直接影响到再调度的效率和结果。
2 问题描述
2.1 问题定义
FJSP 动态调度问题可以定义如下: 在 M 个机器上安排 N 种工件的加工,每种工件 Jj 有 nj 个工序组成,nj 个工序满足工艺约束,工件的每道工序可由 M 台机器中的多台机器加工,用 Mij 表示第 j 种工件的第 i 道工序可用机器集合 M ij ⊆ {1, 2...M } ,Oijk 表示第 j 种工件
中图分类号:TP 18
文献标识码:A
文章编号:1004-731 X (2008) 14-3828-05
Research on Flexible Job Shop Dynamic Scheduling Problem
WU Xiu-li
(Department of Logistics Engineering, School of Mechanical Engineering, University of Science and Technology Beijing, Beijing 100083, China)
的动态调度优化算法。首先定义了柔性作业车间动态调度问题,然后采用事件驱动和周期驱动相结
合的调度策略,提出了基于 MOIGA 的动态调度优化模型,接着设计了面向交货期性能最优的柔性
作业车间调度算法,并讨论了影响算法复杂度的因素,最后通过一个实例仿真,表明了算法的可行
性和优越性。
关键词:柔性作业车间;动态调度;MOIGA;交货期性能
1 几个定义
定义 1:预调度:假设生产过程中一切因素都固定不变 的情况下,制定出的静态调度方案。
定义 2:再调度:预调度执行过程中出现随机扰动后, 修正预调度的过程。一般来讲,再调度的方法有三种[1]:完 全再调度方法、鲁棒调度方法和预调度—再调度方法。
定义 3:再调度因子:指生产系统内的突发因素,影响
引 言1
为了更好地应用于生产实践,生产调度问题的研究已由 经典作业车间调度问题(Job shop Scheduling Problem, JSP)逐 渐向多目标、实用化、动态化等方向发展。柔性作业车间调 度问题(Flexible Job Shop Scheduling Problem, FJSP)是 JSP 的 重要扩展,它体现了实际生产环境中存在并行机和多功能机 的特征。生产调度要实现实用化,必须能够在线辨识随机扰 动,并能快速进行再调度。影响调度的随机扰动因素有很多 种,不同的扰动因素导致的动态调度的方法也有所不同。本 文结合免疫算法和遗传算法,提出一种考虑出现质量问题的 FJSP 动态调度问题的求解方法。
工件窗口有待加工工件? 无
有
根据工件的优先级和调度周 期,执行预调度算法,产生 预调度方案
否 是
调度周期到?
执行调度方案 否 出现扰动因素? 是
否
判断扰动的影响,是否 必须启动再调度? 是
修改再调度的状态参数
根据新的调度目标执行再调度 算法,并执行再调度方案
保证实时生产的高效性与对扰动反应的灵活性是动态 调度的典型特征。由优化目标可知,再调度时,除了预调度 时已有的目标外,预调度和再调度方案之间的偏差也作为再 调度的优化目标。因此就调度策略而言,需要一个人机交互 的界面,每次启动再调度程序时,调整优化目标和状态参数。 因此提出如图 1 所示的动态调度策略,具体的步骤如下:
图 1 动态调度策略
3 基于 MOIGA 的调度优化算法
免疫算法和遗传算法都是受生物系统的启发而构造出 来的随机搜索算法[5-8],二者在求解 NP 难题上有着很大的优 势。但是遗传算法由于采用交叉操作技术,无法克服优化后 期种群个体多样性锐减现象的发生,另外还忽视了问题的特 征信息在求解问题时的辅助作用[9]。而免疫算法的最大特征 就是利用待求问题中的一些特征信息或知识来抑制其优化 过程中出现的退化现象。因此结合二者,提出基于多目标免 疫遗传算法(Multiple Objective Immune Genetic Algorithm, MOIGA)的 FJSP 动态调度优化算法。
1) 所有工件的工艺计划是固定不变的,即工序的先后 顺序不能违背;
2) 工序在可供选择的机器上的加工时间已确定; 3) 出现再调度因子时,不受影响的正在加工的工序继 续加工,直到本工序完成;
4) 每个工件在固定时刻只能在一台机器上加工。 随着 JIT(Just in time)制生产模式的逐渐普及,本文提出 如下的调度优化目标函数。
步骤 1:根据车间的生产能力,定义调度周期 Ts 和工件 窗口容量 Ws。
步骤 2:从接到的生产任务中,按照紧急程度,设定工 件的优先级 Uj。将最紧急的前 Ws 个工件迁入工件窗口,如 果工件数 N < Ws ,则将 N 个工件全部迁入。工件的紧急程度 与交货期相关,记工件 Jj 的交货期为 dj,则紧急程度的计算
步骤 7:修改扰动引起的状态变化及再调度的目标函数。 步骤 8:启动动态调度器,产生再调度方案并开始执行。 执行过程中,返回步骤 5 判断是否出现扰动。 步骤 9:判断再调度周期 Ts 是否到达,若到,返回步骤 2;否则,跳回步骤 5 继续执行现有调度方案。
生产任务
按照调度窗口容量, 取工件放入工件窗口
其中, C j 是工件 j 的完工时间, dj 是工件 j 的交货期。
(2) 偏差度目标函数
采用偏差目标的原因是一旦预调度方案投入实施后,车
间就会付出一系列的准备工作(比如订购原材料、调试机器、
组织工人、制定交货期等等),如果生产过程中出现的扰动
情况对这些准备工作产生负面影响,就应该把这种偏差尽量
减小。该目标作为再调度的优化目标,具体定义为:发生扰
步骤 3:判断工件窗内是否有工件,如有,转步骤 4; 否则,等待新的生产任务。
步骤 4:根据工件的优先级和再调度周期,启动动态调 度器,产生一个预调度方案,并开始执行。
步骤 5:判断是否出现扰动因素,如有,转入步骤 6; 否则,继续执行现有调度方案。
步骤 6:判断扰动的影响,决定预调度方案是否继续执 行?如果扰动的影响较小,可以继续执行预调度方案;否则 转入步骤 7。
• 3829 •
第 20 卷第 14 期 2008 年 7 月
系统仿真ห้องสมุดไป่ตู้报
Vol. 20 No. 14 Jul., 2008
整个 MOIGA 算法适用于图 1 中的两个阴影框。根据图 1 中的动态调度策略,需要启动调度算法器时(两个阴影框所 在位置),运行 MOIGA 算法。算法的输入是 FJSP 动态调度 问题,包括要优化的目标,机器的可用状态和工件的加工进 展情况,输出是调度方案和优化的目标值,算法的内部是以 遗传算法为基本框架,辅以免疫机理的迭代搜索过程。在宏 观策略上,MOIGA 算法采用如下技术保证获得满意的 Pareto 解集。
的第 i 道工序可用机器 k,pijk 表示第 j 种工件的第 i 道工序
• 3828 •
第 20 卷第 14 期 2008 年 7 月
吴秀丽:柔性作业车间动态调度问题研究
Vol. 20 No. 14 Jul., 2008
在第 k 个机器上加工需要的时间,即1 ≤ j ≤ N ,1 ≤ i ≤ n j , 1 ≤ k ≤ M ,考虑生产过程中出现的返工返修和报废品现象。 调度的任务是在 M 台机器上安排 N 种工件的加工任务,同 时最优化既定的目标,并满足以下假设条件:
第 20 卷第 14 期 2008 年 7 月
系 统 仿 真 学 报© Journal of System Simulation
Vol. 20 No. 14 Jul., 2008
柔性作业车间动态调度问题研究
吴秀丽
(北京科技大学机械工程学院物流工程系, 北京 100083)
摘 要:为了有效求解柔性作业车间动态调度问题,提出了一个基于多目标免疫遗传算法(MOIGA)
(1) 交货期最优目标函数 JIT 制企业强调提前于交货期完工和落后于交货期完工 都将受到惩罚,所有工件的完工时间必须尽量与交货期靠
近。因此,交货期性能最优既是预调度又是再调度的优化目
标,定义如下:
N
min f1 = max(max((d j − C j ), 0)) j =1
N
min f2 = max(max((C j − d j ),0)) j =1
动时,重新产生调度方案后,尚未加工的工序在预调度和再
调度两种方案里的开工时间的偏差和。
∑( ) Nd
min f3 = min
S
' j
−
S
j
j =1
其中,
S
' j
和
S
j
分别指开工时间,Nd
是再调度因子出现时预
调度中尚未完工的总工序数。
2.2 动态调度策略
过程如下:交货期最早的工件的紧急程度设为 1 级,优先级 也设为 1 级;交货期最晚的工件的紧急程度设为 N 级,优 先级也设为 N 级;依次类推。
1) 基于规则和标准遗传算法相结合的方法。遗传算法 和免疫算法都是随机搜索算法,单靠算法本身产生特定问题 的可行解的效率往往不太满意。许多传统的局部搜索方法或 基于规则的方法尽管容易陷入局部最优,但其局部搜索能力 极强,这正好能够克服随机搜索算法的缺点。因此根据调度 优化的指标体系,构建基于启发式规则的调度算法库,采用 嵌入式方法[9]嵌入到染色体的解码过程中,从而快速给出性 能指标值。
收稿日期:2007-03-21
修回日期:2007-06-03
作者简介:吴秀丽(1977-),女,河南鹤壁人,博士,讲师,研究方向为
生产调度优化及仿真。
预调度,使其不能正常执行下去。它是再调度的触发器。 Suresh 等[2,3]将再调度因子分成以下 4 类:1)与工件相关的: 包括工件随机到达、加工时间不确定、交货期更改、加急订 单、动态优先级和订单变化等情况;2)与机器相关的:包括 机器故障、负载有限、机器阻塞/死锁和生产能力冲突等情 况;3)与工序相关的:包括工序延误、质量问题和产量不稳 定等情况[4];4)其它:如操作人员缺勤、原材料延期到达、 原材料有缺陷、动态加工路线等情况。
定义 4:工件窗:一个动态的调度任务集合。 定义 5:工件窗口容量:指工件窗内工件的数目,它与 车间的加工能力有关。 定义 6:再调度周期:在采用周期驱动方式的动态调度 中,两次再调度之间的时间间隔。再调度周期的选择非常关 键,直接影响到再调度的效率和结果。
2 问题描述
2.1 问题定义
FJSP 动态调度问题可以定义如下: 在 M 个机器上安排 N 种工件的加工,每种工件 Jj 有 nj 个工序组成,nj 个工序满足工艺约束,工件的每道工序可由 M 台机器中的多台机器加工,用 Mij 表示第 j 种工件的第 i 道工序可用机器集合 M ij ⊆ {1, 2...M } ,Oijk 表示第 j 种工件
中图分类号:TP 18
文献标识码:A
文章编号:1004-731 X (2008) 14-3828-05
Research on Flexible Job Shop Dynamic Scheduling Problem
WU Xiu-li
(Department of Logistics Engineering, School of Mechanical Engineering, University of Science and Technology Beijing, Beijing 100083, China)
的动态调度优化算法。首先定义了柔性作业车间动态调度问题,然后采用事件驱动和周期驱动相结
合的调度策略,提出了基于 MOIGA 的动态调度优化模型,接着设计了面向交货期性能最优的柔性
作业车间调度算法,并讨论了影响算法复杂度的因素,最后通过一个实例仿真,表明了算法的可行
性和优越性。
关键词:柔性作业车间;动态调度;MOIGA;交货期性能
1 几个定义
定义 1:预调度:假设生产过程中一切因素都固定不变 的情况下,制定出的静态调度方案。
定义 2:再调度:预调度执行过程中出现随机扰动后, 修正预调度的过程。一般来讲,再调度的方法有三种[1]:完 全再调度方法、鲁棒调度方法和预调度—再调度方法。
定义 3:再调度因子:指生产系统内的突发因素,影响
引 言1
为了更好地应用于生产实践,生产调度问题的研究已由 经典作业车间调度问题(Job shop Scheduling Problem, JSP)逐 渐向多目标、实用化、动态化等方向发展。柔性作业车间调 度问题(Flexible Job Shop Scheduling Problem, FJSP)是 JSP 的 重要扩展,它体现了实际生产环境中存在并行机和多功能机 的特征。生产调度要实现实用化,必须能够在线辨识随机扰 动,并能快速进行再调度。影响调度的随机扰动因素有很多 种,不同的扰动因素导致的动态调度的方法也有所不同。本 文结合免疫算法和遗传算法,提出一种考虑出现质量问题的 FJSP 动态调度问题的求解方法。
工件窗口有待加工工件? 无
有
根据工件的优先级和调度周 期,执行预调度算法,产生 预调度方案
否 是
调度周期到?
执行调度方案 否 出现扰动因素? 是
否
判断扰动的影响,是否 必须启动再调度? 是
修改再调度的状态参数
根据新的调度目标执行再调度 算法,并执行再调度方案
保证实时生产的高效性与对扰动反应的灵活性是动态 调度的典型特征。由优化目标可知,再调度时,除了预调度 时已有的目标外,预调度和再调度方案之间的偏差也作为再 调度的优化目标。因此就调度策略而言,需要一个人机交互 的界面,每次启动再调度程序时,调整优化目标和状态参数。 因此提出如图 1 所示的动态调度策略,具体的步骤如下:
图 1 动态调度策略
3 基于 MOIGA 的调度优化算法
免疫算法和遗传算法都是受生物系统的启发而构造出 来的随机搜索算法[5-8],二者在求解 NP 难题上有着很大的优 势。但是遗传算法由于采用交叉操作技术,无法克服优化后 期种群个体多样性锐减现象的发生,另外还忽视了问题的特 征信息在求解问题时的辅助作用[9]。而免疫算法的最大特征 就是利用待求问题中的一些特征信息或知识来抑制其优化 过程中出现的退化现象。因此结合二者,提出基于多目标免 疫遗传算法(Multiple Objective Immune Genetic Algorithm, MOIGA)的 FJSP 动态调度优化算法。
1) 所有工件的工艺计划是固定不变的,即工序的先后 顺序不能违背;
2) 工序在可供选择的机器上的加工时间已确定; 3) 出现再调度因子时,不受影响的正在加工的工序继 续加工,直到本工序完成;
4) 每个工件在固定时刻只能在一台机器上加工。 随着 JIT(Just in time)制生产模式的逐渐普及,本文提出 如下的调度优化目标函数。
步骤 1:根据车间的生产能力,定义调度周期 Ts 和工件 窗口容量 Ws。
步骤 2:从接到的生产任务中,按照紧急程度,设定工 件的优先级 Uj。将最紧急的前 Ws 个工件迁入工件窗口,如 果工件数 N < Ws ,则将 N 个工件全部迁入。工件的紧急程度 与交货期相关,记工件 Jj 的交货期为 dj,则紧急程度的计算
步骤 7:修改扰动引起的状态变化及再调度的目标函数。 步骤 8:启动动态调度器,产生再调度方案并开始执行。 执行过程中,返回步骤 5 判断是否出现扰动。 步骤 9:判断再调度周期 Ts 是否到达,若到,返回步骤 2;否则,跳回步骤 5 继续执行现有调度方案。
生产任务
按照调度窗口容量, 取工件放入工件窗口
其中, C j 是工件 j 的完工时间, dj 是工件 j 的交货期。
(2) 偏差度目标函数
采用偏差目标的原因是一旦预调度方案投入实施后,车
间就会付出一系列的准备工作(比如订购原材料、调试机器、
组织工人、制定交货期等等),如果生产过程中出现的扰动
情况对这些准备工作产生负面影响,就应该把这种偏差尽量
减小。该目标作为再调度的优化目标,具体定义为:发生扰
步骤 3:判断工件窗内是否有工件,如有,转步骤 4; 否则,等待新的生产任务。
步骤 4:根据工件的优先级和再调度周期,启动动态调 度器,产生一个预调度方案,并开始执行。
步骤 5:判断是否出现扰动因素,如有,转入步骤 6; 否则,继续执行现有调度方案。
步骤 6:判断扰动的影响,决定预调度方案是否继续执 行?如果扰动的影响较小,可以继续执行预调度方案;否则 转入步骤 7。
• 3829 •
第 20 卷第 14 期 2008 年 7 月
系统仿真ห้องสมุดไป่ตู้报
Vol. 20 No. 14 Jul., 2008
整个 MOIGA 算法适用于图 1 中的两个阴影框。根据图 1 中的动态调度策略,需要启动调度算法器时(两个阴影框所 在位置),运行 MOIGA 算法。算法的输入是 FJSP 动态调度 问题,包括要优化的目标,机器的可用状态和工件的加工进 展情况,输出是调度方案和优化的目标值,算法的内部是以 遗传算法为基本框架,辅以免疫机理的迭代搜索过程。在宏 观策略上,MOIGA 算法采用如下技术保证获得满意的 Pareto 解集。
的第 i 道工序可用机器 k,pijk 表示第 j 种工件的第 i 道工序
• 3828 •
第 20 卷第 14 期 2008 年 7 月
吴秀丽:柔性作业车间动态调度问题研究
Vol. 20 No. 14 Jul., 2008
在第 k 个机器上加工需要的时间,即1 ≤ j ≤ N ,1 ≤ i ≤ n j , 1 ≤ k ≤ M ,考虑生产过程中出现的返工返修和报废品现象。 调度的任务是在 M 台机器上安排 N 种工件的加工任务,同 时最优化既定的目标,并满足以下假设条件:
第 20 卷第 14 期 2008 年 7 月
系 统 仿 真 学 报© Journal of System Simulation
Vol. 20 No. 14 Jul., 2008
柔性作业车间动态调度问题研究
吴秀丽
(北京科技大学机械工程学院物流工程系, 北京 100083)
摘 要:为了有效求解柔性作业车间动态调度问题,提出了一个基于多目标免疫遗传算法(MOIGA)