CN101859101A - 基于Match-up的制造系统设备组匹配重调度方法 - Google Patents
基于Match-up的制造系统设备组匹配重调度方法 Download PDFInfo
- Publication number
- CN101859101A CN101859101A CN201010170462A CN201010170462A CN101859101A CN 101859101 A CN101859101 A CN 101859101A CN 201010170462 A CN201010170462 A CN 201010170462A CN 201010170462 A CN201010170462 A CN 201010170462A CN 101859101 A CN101859101 A CN 101859101A
- Authority
- CN
- China
- Prior art keywords
- reschedule
- task
- algorithm
- rescheduling
- device group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- General Factory Administration (AREA)
Abstract
本发明提供一种基于Match-up的制造系统设备组匹配重调度方法,即局部重调度算法中的设备组匹配重调度(GMUR)算法;这种算法以充分利用设备空闲时间为思想,以提升重调度决策的有效性与生产线的稳定性。优点在于,这种算法优化了右移重调度算法,充分利用设备任务空闲,消除扰动对调度方案的影响,大大提高生产线在重调度后的稳定性。
Description
技术领域
多重入制造系统的在线重调度方法,特别面向微电子制造领域的生产管理技术,是一种修正式的重调度方法。具体地,本发明涉及一种半导体制造系统设备组重调度方法,即局部重调度算法中的设备组匹配重调度(GMUR)算法;这种算法以充分利用设备空闲时间为思想,以提升重调度决策的有效性与生产线的稳定性。
背景技术
对于复杂多变的多重入制造系统,许多生产线的扰动因素具有不可预测性,而这些扰动因素往往会使得原本优化的调度方案不再优化,甚至失去了可行性,这时需要对生产线进行重新调度,这也就引出了多重入制造系统的重调度问题。
所谓重调度,是指当既定生产调度方案在其执行过程中被干扰时,在既定调度方案的基础上生成新的调度方案,以适应当前状态的过程。
目前,国内外的重调度研究主要集中于单台机器系统、并行机器系统、流水车间和作业车间、柔性制造单元与系统。研究内容主要包括以下三个方面:重调度策略、重调度方法和重调度评价。
重调度策略是根据各种重调度因素,决定何时产生重调度,采用何种重调度方法。常见的有三种重调度策略:周期性重调度策略,事件驱动重调度策略和混合重调度策略。
周期性重调度策略以恒定的时间间隔有规律的对设备进行重调度,不考虑事件触发。周期性重调度是最普遍的重调度策略,通常是基于管理区间(如,一周或一天或一个班次)进行的。Church和Uzsoy给出了这种重调度策略详细的解释。Kempf提出了一种基于人工智能的预先调度方法,该方法每个班次执行一次,给出优化的调度方案。Sabuncuoglu和Karabuk在柔性制造系统中考虑重调度频率对系统效能的影响。不同的重调度周期对生产线的影响很大,如何决定最佳重调度周期是一项困难而重要的工作。
事件驱动重调度策略由扰动事件触发重调度,能够即时响应动态制造系统中的扰动事件,修改原调度方案或生成新的调度方案。Vieira等描述了在动态系统中利用分析模型比较基于队列长度的事件驱动重调度策略的性能。Bierwirth和Mattfeld研究的重调度策略,当每个新工件到来时创建一个新的调度。然而,完全的事件响应可能会导致过度的计算开销,难以满足实时性的要求。
混合重调度策略将上述两种重调度策略相结合,在周期性触发重调度的基础上,根据扰动事件对原调度方案的影响有选择的触发重调度。Chacon描述了在Sony半导体中使用的系统,采用周期性重调度策略,并且当非预期事件发生时手工进行重调度。Suwa采用固定周期重调度策略,同时计算累积任务延迟,当累计任务延迟达到预先设定的临界值时开始重调度。混合型重调度既可以避免周期性重调度对非预期事件不敏感的确定,又可以避免事件驱动型重调度易造成过度频繁的重调度导致计算量过大的缺点。
在采用流水线车间加工的生产系统中,一个传送系统沿着工作台运送WIP,在每个工作台处,完成WIP的一道不同工序。从理论上,WIP在从头到尾加工行进期间中访问各个工作台一次。半导体生产线与使用流水线车间加工的大多数生产系统不同。在半导体生产线中,WIP在加工行进过程中有可能数次访问同一个工作台,WIP要经历数次清洗、氧化、沉积、喷涂金属、蚀刻、离子注入及脱膜等工序,直到完成半导体产品。
重调度方法用于产生具有优化性能指标的重调度方案,主要有两种方式:生成式重调度和修正式重调度。
生成式重调度根据是否考虑生产线不确定因素可以分为:常规性调度和鲁棒性调度。常规性调度通常忽略随机扰动因素,旨在给出优化的静态调度方案,但是对随机扰动处理能力不够。常规性调度可以借鉴已有的调度方法,如离散时间系统仿真,运筹学,计算智能等。鲁棒性调度在常规性调度的基础上研究生产线的各种随机因素,在调度的时候已经考虑各种干扰的影响,所以给出的调度方案更适用于实际的生产。不少学者对不确性模型的鲁棒性调度展开了研究,Metha和Uzsoy提出的预期调度方案通过插入一些空闲的时间片来减少随机扰动的影响。Daniels和Kouvelis等人考虑生产线处于最坏情况下给出优化调度方案,这样可以更有效的减少随机事件的干扰,但是在扰动较少的情况下可能会降低生产率。
当原有的调度方案由于各种随机因素不适用的时候,需要进行修正,即进行修正式重调度。修正式重调度主要分为两类:局部修正式重调度、全局修正式重调度。局部修正式重调度仅仅修正那些受扰动直接影响和间接影响的派工方案。Miyashint和Sycara在基于约束的基础上根据不同的情况选择局部修正的方法,具体包括调整开始加工时间、交换操作和切换到其他可选资源。全局修正式重调度由重调度点开始更新整个调度方案。Bierwirth和Mattfeld在原调度方案的基础上使用遗传算法生成新调度,该方法可以有效的减少重新生成调度方案的计算开销。James等人提出了一种基于原调度方案的匹配调度方法,考虑了多种资源约束、工件的投料和生产线扰动。
重调度有许多不同的评价指标,这些评价指标大致可以分成三类:有效性评价指标、稳定性评价指标和成本评价指标。
有效性评价指标通常使用一些基于时间的指标,比如加工周期,平均延迟,平均资源利用率,最大延迟等。稳定性评价是重调度十分重要的评价指标。Wu和Storer等人认为稳定性主要表现在新旧调度方案开始时间的偏差和新旧调度方案各个操作顺序的差异。基于时间的指标不能明显的反映经济效益,一些研究人员提出调度决策需要考虑一些经济性指标,如Shafaei和Brunn提到总成本、WIP数、延迟交货代价和不同任务的收益等评价指标。
本发明以半导体生产线为对象,对多重入制造系统中在线重调度的策略和方法展开研究,通过优化重调度策略和重调度方法来提高系统对不确定事件的反映能力,使新调度方案不仅继承了原调度的优化性同时尽可能保持调度方案的稳定性。
发明内容
本发明提出的重调度算法包括下列步骤:
(1)寻找匹配点TP;
(2)TP>Tmax否?若是,则确定重调度任务集,更新任务开始时间和线路束时间;
(3)若不是,选择移动工件;
(4)选择择互替设备;
(5)选择插入点,插入任务;
(6)更新计算配点TP;
(7)匹配点是否左移?若是,返回至(2);
(8)若不是,右移重调度;
(9)结束。
对于GMUR算法,需要考虑以下几个选择策略问题:
(1)从故障设备任务集中选择哪一个任务移动到互替设备上;
(2)选择哪台互替设备作为移动任务的目标机器;
(3)移动任务插入到互替设备任务集的哪个位置;
对于问题1,可以选择故障设备任务集队首任务,也可以选择队尾任务,当然也可以随机选择一个任务。由于任务受等待约束的限制,后面的任务即使移动到互替设备也不能立即开始,这意味着互替设备的任务空闲时间不能很好的利用,因而选择队列较前的任务有利于寻找匹配点,这里采用的是队首优先原则,即优先选择故障设备任务集靠前的任务。
对于问题2,目的是充分利用设备空闲时间,因而互替设备越是空闲则越能减少任务移动数量,加快匹配速度。这里采用的是空闲设备优先原则,即优先将任务移动到最空闲的设备上。
对于问题3,由于GMUR寻找匹配点是一个迭代过程,可能需要经过多次的任务移动才能找到匹配点,为了充分利用设备空闲时间,移入的任务当尽可能早的加工,这样为下一次任务移入留下更多的空闲时间。因而,这里采用的是插入任务优先原则,即目标设备优先加工移入的任务。
本发明的优点在于,这种算法优化了右移重调度算法,充分利用设备任务空闲,消除扰动对调度方案的影响,大大提高生产线在重调度后的稳定性。
总之,本发明提供了切实可行的半导体生产局部重调度算法,该算法的提出对研究半导体生产重调度有一定的参考价值,对提高我国半导体生产系统领域中局部重调度算法具有重要的指导意义。
附图说明
图1是本发明算法流程图。
具体实施方式
本发明提供的重调度方法的实施方式如下。
本发明提供的调度方法在具体实施阶段需要满足的条件为:企业必须有支撑生产的MES系统,或者实时与实际生产同步的数据库;由于本发明提供的两种算法均需要仿真作为辅助,必须至少有一种仿真平台软件支持。
重调度系统应包括三块内容:企业数据库、本地数据库、重调度软件系统、仿真平台。大致流程为,软件系统每隔固定时间从企业数据库中读取数据,存入本地数据库,一旦发现重调度扰动,则触发重调度,重调度软件系统通过仿真接口控制仿真平台的仿真开始、结束,最后,将重调度后的数据通过软件系统写回至企业数据库,以供MES系统使用,使线上工作人员能及时依照最新的派工方案进行派工。以下就各部分详细阐述本发明的实施方式。
由于企业数据库的结构往往是异构的,且同一企业内,由于生产线的不同,所对应的数据库也会不同。然而,本发明提供的重调度算法对生产线并无特殊需求,属于适用性较广的算法。所以,要使重调度算法能够适用于所有的生产线,需要先转换企业数据库至本地数据库。重调度算法对数据的需求并不复杂,只需要有原始的派工信息即可。
本地数据库的作用在于存储从企业数据库中加载的数据,目的在于比较最新的数据与前一次加载数据的区别,以判断是否满足重调度的触发条件。一般触发条件包括三种:累计加工延时超标(指工件的实际开始加工时间或完工时间与原调度方案之间的误差,若误差达到一定的阀值,则说明原调度方案不再适用,必须生成重调度方案,以缩短预期调度与实际生产之间的误差);设备故障(指突发的不可预测的设备故障,同时需要故障信息及时有效的在数据库中反映,如此才能保证重调度算法的有效性);非计划性投料进入生产线(指不在计划之内的投料,一般是企业的工程卡,即用于实验的测试卡,且这些卡的优先级一般比较高,一旦有这些工件的加入,势必打乱原先的调度方案,需要重调度)。本地数据库的另一作用在于存储每次重调度前后的排程方案,以方便企业通过历史数据分析重调度的有效性。
仿真平台,作为重调度系统的辅助工具,用于当无法找到匹配点,或算法执行超时,可采用仿真平台做全局重调度,仿真平台必须提供外部接口可与软件系统数据交互、仿真控制等。
重调度软件系统,该部分作为重调度系统的核心部分作用在于控制企业数据库与本地数据库,以及控制仿真平台,并且实现重调度算法。在企业数据库方面,软件负责每隔固定时间段加载企业数据库中所需要的数据,并存入本地数据库,目的在于及时地发现重调度触发因素。由于企业数据库的数据量一般较大,可以采用增量形式对数据进行刷新。在仿真平台方面,由于本发明提供的重调度算法存在找不到匹配点或算法运行超时的情况,在这种情况下,可选用全局重调度替代,然而全局重调度需要仿真平台的支撑。
另一方面,算法实现是软件系统的主要部分,以下详细阐述算法的实现过程。采用递归算法实现。
以下详细阐述GMUR算法的具体实现步骤。GMUR算法与SMUR算法结构大致相同,采用递归实现,具体区别参见如下描述。GMUR包含4个参数,分别为:新开始时间(即当前任务的新加工开始时间)startTime;任务Dispatch;是否调度在当前任务后的在同一设备上的任务标志位eqpFlag,简称设备标志位;是否调度寻找互替设备标志位,switchFlag。
步骤1检查startTime是否小于当前任务的原startTime,若小于则直接返回,否则继续下一步。因为如果新开始时间小于调度任务的原开始时间,则表示匹配点已找到,无须继续调度后续任务。
步骤2判断设备标志位eqpFlag是否为真,若为真则下一步,否则跳至步骤5。
步骤3寻找当前任务所对应工件的下一步工序,并找出工序所对应的任务nextStepDisatch,若找到,则递归调用SMUR算法,参数分别为:startTime=于当前任务新开始时间+任务持续时间;dispatch=nextStepDispatch;eqpFlag=true;switchFlag==false。
步骤4更新当前任务的开始加工时间以及结束加工时间。
步骤5寻找与当前任务处于同一设备的下一项任务,可能不止一项,因为存在组批现象,存入列表nextEqpDispatchList中。
步骤6若列表中只有一项任务,则进行步骤7,否则跳转至步骤9。
步骤7若switchFlag为true,则寻找互替设备,并且得到互替设备上可供当前任务插入的位置,即插入位置的前一项任务preDis。若找到可插入的位置,则更新当前任务的开始加工时间与结束加工时间,将当前任务移至互替设备上的任务列表中,递归调用SMUR算法,参数分别为:startTime=于当前任务新开始时间+任务持续时间;dispatch=nextStepDispatchList[0];eqpFlag=true;switchFlag=true。
步骤8寻找当前任务所对应工件的下一步工序,并找出工序所对应的任务nextStepDispatch,若找到则递归调用SMUR算法,参数分别为:startTime=于当前任务新开始时间+任务持续时间;dispatch=nextStepDispatch;eqpFlag=true;switchFlag=false。跳转至步骤12。
步骤9对nextEqpDispatchList中的每一项任务做循环,直至遍历列表中的所有调度任务。循环步骤为步骤10至步骤11。
步骤10若当前调度任务为循环中的第一项任务,则递归调用SMUR算法,参数分别为:startTime=于当前任务新开始时间+任务持续时间;dispatch=当前循环的调度任务;eqpFlag=true;;switchFlag=true。若当前任务并不是列表中的第一项任务,同样递归调用SMUR算法,除了eqpFlag=false,其余三项参数与前面一致。
步骤11寻找当前任务所对应工件的下一步工序,并找出工序所对应的任务nextStepDispatch,若找到,则递归调用SMUR算法,参数分别为:startTime=于当前任务新开始时间+任务持续时间;dispatch=nextStepDispatch;eqpFlag=true;switchFlag=true;
步骤12更新当前任务的开始加工时间与结束时间。
最后,提供本发明在MINIFAB以及HP24FAB1半导体生产线模型中的性能表现。主要分析修正后的调度任务与原调度任务的累计延时。仿真的前提为:1.随机设置5处故障,每次故障持续半小时。2.采用固定数量投料,两个月内全部投完。3.仿真时间为60天。
Claims (1)
1.一种基于Match-up的制造系统设备组匹配重调度方法,包括下列步骤:
步骤1,寻找匹配点TP;
步骤2,TP>Tmax否?若是,则确定重调度任务集,更新任务开始时间和线路束时间;
步骤3,若不是,选择移动工件;
步骤4,选择择互替设备;
步骤5,选择插入点,插入任务;
步骤6,更新计算配点TP;
步骤7,匹配点是否左移?若是,返回至步骤2;
步骤8,若不是,右移重调度;
步骤9,结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010170462A CN101859101A (zh) | 2010-05-11 | 2010-05-11 | 基于Match-up的制造系统设备组匹配重调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010170462A CN101859101A (zh) | 2010-05-11 | 2010-05-11 | 基于Match-up的制造系统设备组匹配重调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101859101A true CN101859101A (zh) | 2010-10-13 |
Family
ID=42945062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010170462A Pending CN101859101A (zh) | 2010-05-11 | 2010-05-11 | 基于Match-up的制造系统设备组匹配重调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101859101A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102103649A (zh) * | 2011-03-16 | 2011-06-22 | 北京航空航天大学 | 一种装备rms分析仿真任务的逻辑流程建立方法 |
CN104636610A (zh) * | 2015-01-30 | 2015-05-20 | 同济大学 | 一种应用于动态环境下的制造系统派工信息修正方法 |
CN105834081A (zh) * | 2015-02-04 | 2016-08-10 | 万润科技股份有限公司 | 液材涂布方法及装置 |
-
2010
- 2010-05-11 CN CN201010170462A patent/CN101859101A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102103649A (zh) * | 2011-03-16 | 2011-06-22 | 北京航空航天大学 | 一种装备rms分析仿真任务的逻辑流程建立方法 |
CN104636610A (zh) * | 2015-01-30 | 2015-05-20 | 同济大学 | 一种应用于动态环境下的制造系统派工信息修正方法 |
CN104636610B (zh) * | 2015-01-30 | 2017-12-05 | 同济大学 | 一种应用于动态环境下的制造系统派工信息修正方法 |
CN105834081A (zh) * | 2015-02-04 | 2016-08-10 | 万润科技股份有限公司 | 液材涂布方法及装置 |
CN105834081B (zh) * | 2015-02-04 | 2018-12-07 | 万润科技股份有限公司 | 液材涂布方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101833319A (zh) | 面向多重入制造系统在线调度的单台设备匹配重调度方法 | |
CN111091238B (zh) | 一种自动化集装箱码头agv智能化调度方法 | |
CN108776862B (zh) | 支持工序任务量拆分的智能排产方法 | |
CN109902975B (zh) | 调度方法、系统、装置以及计算机可读存储介质 | |
US20110224816A1 (en) | Multi-agent system for distributed manufacturing scheduling with genetic algorithms and tabu search | |
CN105974891B (zh) | 一种基于动态看板的模具生产过程自适应控制方法 | |
CN111882215A (zh) | 一种含有agv的个性化定制柔性作业车间调度方法 | |
CN109583709A (zh) | 一种自动泊车机器人群体任务调度方法 | |
CN115456387A (zh) | 煤炭港口出港作业集成调度方法、装置、电子设备及介质 | |
CN110942203B (zh) | 一种自动化集装箱码头agv路径优化方法 | |
CN114594744B (zh) | 一种分布式工厂生产配送集成调度方法和系统 | |
CN112488606B (zh) | 一种生产物流智能优化和自动调度系统 | |
CN103246938A (zh) | 基于自适应蚁群优化的弹性车间调度技术 | |
CN108229853B (zh) | 一种基于静态调度预测的智慧工厂动态协同调度方法 | |
CN101859101A (zh) | 基于Match-up的制造系统设备组匹配重调度方法 | |
CN113822588A (zh) | 基于离散的人工蜂群进化的自动导向车辆调度方法 | |
CN111813054B (zh) | 一种有轨制导车辆的动态调度方法及系统 | |
CN104636610B (zh) | 一种应用于动态环境下的制造系统派工信息修正方法 | |
Beham et al. | Dynamic warehouse environments for crane stacking and scheduling | |
Zhang et al. | A discrete job-shop scheduling algorithm based on improved genetic algorithm | |
CN110245809A (zh) | 一种用于多机器人多任务协作工作的智能优化方法和系统 | |
CN111703802A (zh) | 出入库流程的控制方法和装置、仓储系统 | |
CN110764472A (zh) | 一种基于复合智能体的车间实时调度方法及装置 | |
KR100687075B1 (ko) | 워크플로우엔진을 이용한 업무처리방법 및 공급사슬관리방법 | |
CN113361902B (zh) | 高效调控智能排产系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20101013 |