專(zhuān)利名稱(chēng):面向多重入制造系統(tǒng)在線(xiàn)調(diào)度的單臺(tái)設(shè)備匹配重調(diào)度方法
技術(shù)領(lǐng)域:
多重入制造系統(tǒng)的在線(xiàn)重調(diào)度方法,特別面向微電子制造領(lǐng)域的生產(chǎn)管理技術(shù), 是一種修正式的重調(diào)度方法。具體地,本發(fā)明涉及一種重調(diào)度方法,即局部重調(diào)度算法中的 單臺(tái)設(shè)備匹配重調(diào)度(SMUR)算法;這種算法以充分利用設(shè)備空閑時(shí)間為思想,以提升重調(diào) 度決策的有效性與生產(chǎn)線(xiàn)的穩(wěn)定性。
背景技術(shù):
對(duì)于復(fù)雜多變的多重入制造系統(tǒng),許多生產(chǎn)線(xiàn)的擾動(dòng)因素具有不可預(yù)測(cè)性,而這 些擾動(dòng)因素往往會(huì)使得原本優(yōu)化的調(diào)度方案不再優(yōu)化,甚至失去了可行性,這時(shí)需要對(duì)生 產(chǎn)線(xiàn)進(jìn)行重新調(diào)度,這也就引出了多重入制造系統(tǒng)的重調(diào)度問(wèn)題。所謂重調(diào)度,是指當(dāng)既定生產(chǎn)調(diào)度方案在其執(zhí)行過(guò)程中被干擾時(shí),在既定調(diào)度方 案的基礎(chǔ)上生成新的調(diào)度方案,以適應(yīng)當(dāng)前狀態(tài)的過(guò)程。目前,國(guó)內(nèi)外的重調(diào)度研究主要集中于單臺(tái)機(jī)器系統(tǒng)、并行機(jī)器系統(tǒng)、流水車(chē)間和 作業(yè)車(chē)間、柔性制造單元與系統(tǒng)。研究?jī)?nèi)容主要包括以下三個(gè)方面重調(diào)度策略、重調(diào)度方 法和重調(diào)度評(píng)價(jià)。重調(diào)度策略是根據(jù)各種重調(diào)度因素,決定何時(shí)產(chǎn)生重調(diào)度,采用何種重調(diào)度方法。 常見(jiàn)的有三種重調(diào)度策略周期性重調(diào)度策略,事件驅(qū)動(dòng)重調(diào)度策略和混合重調(diào)度策略。周期性重調(diào)度策略以恒定的時(shí)間間隔有規(guī)律的對(duì)設(shè)備進(jìn)行重調(diào)度,不考慮事件觸 發(fā)。周期性重調(diào)度是最普遍的重調(diào)度策略,通常是基于管理區(qū)間(如,一周或一天或一個(gè)班 次)進(jìn)行的。Church和Uzsoy給出了這種重調(diào)度策略詳細(xì)的解釋。Kempf提出了一種基于 人工智能的預(yù)先調(diào)度方法,該方法每個(gè)班次執(zhí)行一次,給出優(yōu)化的調(diào)度方案。Sabimcuoglu 和Karabuk在柔性制造系統(tǒng)中考慮重調(diào)度頻率對(duì)系統(tǒng)效能的影響。不同的重調(diào)度周期對(duì)生 產(chǎn)線(xiàn)的影響很大,如何決定最佳重調(diào)度周期是一項(xiàng)困難而重要的工作。事件驅(qū)動(dòng)重調(diào)度策略由擾動(dòng)事件觸發(fā)重調(diào)度,能夠即時(shí)響應(yīng)動(dòng)態(tài)制造系統(tǒng)中的擾 動(dòng)事件,修改原調(diào)度方案或生成新的調(diào)度方案。Vieira等描述了在動(dòng)態(tài)系統(tǒng)中利用分析模 型比較基于隊(duì)列長(zhǎng)度的事件驅(qū)動(dòng)重調(diào)度策略的性能。Bierwirth和Mattfeld研究的重調(diào)度 策略,當(dāng)每個(gè)新工件到來(lái)時(shí)創(chuàng)建一個(gè)新的調(diào)度。然而,完全的事件響應(yīng)可能會(huì)導(dǎo)致過(guò)度的計(jì) 算開(kāi)銷(xiāo),難以滿(mǎn)足實(shí)時(shí)性的要求。混合重調(diào)度策略將上述兩種重調(diào)度策略相結(jié)合,在周期性觸發(fā)重調(diào)度的基礎(chǔ)上, 根據(jù)擾動(dòng)事件對(duì)原調(diào)度方案的影響有選擇的觸發(fā)重調(diào)度。Chacon描述了在Sony半導(dǎo)體中 使用的系統(tǒng),采用周期性重調(diào)度策略,并且當(dāng)非預(yù)期事件發(fā)生時(shí)手工進(jìn)行重調(diào)度。Suwa采用 固定周期重調(diào)度策略,同時(shí)計(jì)算累積任務(wù)延遲,當(dāng)累計(jì)任務(wù)延遲達(dá)到預(yù)先設(shè)定的臨界值時(shí) 開(kāi)始重調(diào)度?;旌闲椭卣{(diào)度既可以避免周期性重調(diào)度對(duì)非預(yù)期事件不敏感的確定,又可以 避免事件驅(qū)動(dòng)型重調(diào)度易造成過(guò)度頻繁的重調(diào)度導(dǎo)致計(jì)算量過(guò)大的缺點(diǎn)。在采用流水線(xiàn)車(chē)間加工的生產(chǎn)系統(tǒng)中,一個(gè)傳送系統(tǒng)沿著工作臺(tái)運(yùn)送WIP,在每個(gè) 工作臺(tái)處,完成WIP的一道不同工序。從理論上,WIP在從頭到尾加工行進(jìn)期間中訪(fǎng)問(wèn)各個(gè)工作臺(tái)一次。半導(dǎo)體生產(chǎn)線(xiàn)與使用流水線(xiàn)車(chē)間加工的大多數(shù)生產(chǎn)系統(tǒng)不同。在半導(dǎo)體生產(chǎn) 線(xiàn)中,WIP在加工行進(jìn)過(guò)程中有可能數(shù)次訪(fǎng)問(wèn)同一個(gè)工作臺(tái),WIP要經(jīng)歷數(shù)次清洗、氧化、沉 積、噴涂金屬、蝕刻、離子注入及脫膜等工序,直到完成半導(dǎo)體產(chǎn)品。重調(diào)度方法用于產(chǎn)生具有優(yōu)化性能指標(biāo)的重調(diào)度方案,主要有兩種方式生成式 重調(diào)度和修正式重調(diào)度。生成式重調(diào)度根據(jù)是否考慮生產(chǎn)線(xiàn)不確定因素可以分為常規(guī)性調(diào)度和魯棒性調(diào) 度。常規(guī)性調(diào)度通常忽略隨機(jī)擾動(dòng)因素,旨在給出優(yōu)化的靜態(tài)調(diào)度方案,但是對(duì)隨機(jī)擾動(dòng)處 理能力不夠。常規(guī)性調(diào)度可以借鑒已有的調(diào)度方法,如離散時(shí)間系統(tǒng)仿真,運(yùn)籌學(xué),計(jì)算智 能等。魯棒性調(diào)度在常規(guī)性調(diào)度的基礎(chǔ)上研究生產(chǎn)線(xiàn)的各種隨機(jī)因素,在調(diào)度的時(shí)候已經(jīng) 考慮各種干擾的影響,所以給出的調(diào)度方案更適用于實(shí)際的生產(chǎn)。不少學(xué)者對(duì)不確性模型 的魯棒性調(diào)度展開(kāi)了研究,Metha和Uzsoy提出的預(yù)期調(diào)度方案通過(guò)插入一些空閑的時(shí)間 片來(lái)減少隨機(jī)擾動(dòng)的影響。Daniels和Kouvelis等人考慮生產(chǎn)線(xiàn)處于最壞情況下給出優(yōu)化 調(diào)度方案,這樣可以更有效的減少隨機(jī)事件的干擾,但是在擾動(dòng)較少的情況下可能會(huì)降低 生產(chǎn)率。當(dāng)原有的調(diào)度方案由于各種隨機(jī)因素不適用的時(shí)候,需要進(jìn)行修正,即進(jìn)行修正 式重調(diào)度。修正式重調(diào)度主要分為兩類(lèi)局部修正式重調(diào)度、全局修正式重調(diào)度。局部修 正式重調(diào)度僅僅修正那些受擾動(dòng)直接影響和間接影響的派工方案。Miyashint和Sycara 在基于約束的基礎(chǔ)上根據(jù)不同的情況選擇局部修正的方法,具體包括調(diào)整開(kāi)始加工時(shí)間、 交換操作和切換到其他可選資源。全局修正式重調(diào)度由重調(diào)度點(diǎn)開(kāi)始更新整個(gè)調(diào)度方案。 Bierwirth和Mattfeld在原調(diào)度方案的基礎(chǔ)上使用遺傳算法生成新調(diào)度,該方法可以有效 的減少重新生成調(diào)度方案的計(jì)算開(kāi)銷(xiāo)。James等人提出了一種基于原調(diào)度方案的匹配調(diào)度 方法,考慮了多種資源約束、工件的投料和生產(chǎn)線(xiàn)擾動(dòng)。重調(diào)度有許多不同的評(píng)價(jià)指標(biāo),這些評(píng)價(jià)指標(biāo)大致可以分成三類(lèi)有效性評(píng)價(jià)指 標(biāo)、穩(wěn)定性評(píng)價(jià)指標(biāo)和成本評(píng)價(jià)指標(biāo)。有效性評(píng)價(jià)指標(biāo)通常使用一些基于時(shí)間的指標(biāo),比如加工周期,平均延遲,平均資 源利用率,最大延遲等。穩(wěn)定性評(píng)價(jià)是重調(diào)度十分重要的評(píng)價(jià)指標(biāo)。Wu和Storer等人認(rèn)為 穩(wěn)定性主要表現(xiàn)在新舊調(diào)度方案開(kāi)始時(shí)間的偏差和新舊調(diào)度方案各個(gè)操作順序的差異?;?于時(shí)間的指標(biāo)不能明顯的反映經(jīng)濟(jì)效益,一些研究人員提出調(diào)度決策需要考慮一些經(jīng)濟(jì)性 指標(biāo),如Shafaei和Brurm提到總成本、WIP數(shù)、延遲交貨代價(jià)和不同任務(wù)的收益等評(píng)價(jià)指 標(biāo)。本發(fā)明以半導(dǎo)體生產(chǎn)線(xiàn)為對(duì)象,對(duì)多重入制造系統(tǒng)中在線(xiàn)重調(diào)度的策略和方法展 開(kāi)研究,通過(guò)優(yōu)化重調(diào)度策略和重調(diào)度方法來(lái)提高系統(tǒng)對(duì)不確定事件的反映能力,使新調(diào) 度方案不僅繼承了原調(diào)度的優(yōu)化性同時(shí)盡可能保持調(diào)度方案的穩(wěn)定性。
發(fā)明內(nèi)容
本發(fā)明提出的重調(diào)度算法包括下列步驟(1)尋找匹配點(diǎn),確定是否可以采用SMUR方法的判定過(guò)程,若找不到這樣的匹配點(diǎn),則采用常規(guī)的右移重調(diào)度方法調(diào)整;(2)確定重調(diào)度任務(wù)集,從擾動(dòng)開(kāi)始時(shí)間到匹配點(diǎn)之間的受影響任務(wù)將是SMUR調(diào)整的對(duì)象;(3)更新任務(wù)加工時(shí)間,在等待約束的范圍內(nèi)迭代更新任務(wù)的開(kāi)始時(shí)間和結(jié)束時(shí) 間;其中,尋找匹配點(diǎn)和確定任務(wù)集的步驟是步驟1,確定故障設(shè)備kd的匹配點(diǎn)Γ:和需要重調(diào)度的任務(wù)集Grf .對(duì)故障設(shè)備的任務(wù)集進(jìn)行刷選與排序,選擇滿(mǎn)足下列公式的任務(wù),并按任務(wù)的開(kāi) 始時(shí)間升序排列;Ow = min w (Xi kd | Xi kd > td)其中Om 發(fā)生擾動(dòng)后,原序列中第1個(gè)任務(wù);Xijcd 原調(diào)度中任務(wù)i在設(shè)備K上的開(kāi)始時(shí)間;找出故障結(jié)束后最早滿(mǎn)足下列公式 的任務(wù)序號(hào)np,其中np 任務(wù)第η個(gè)操作;tu:擾動(dòng)的結(jié)束時(shí)間;Pvikd 第i個(gè)操作在第k臺(tái)設(shè)備上的加工時(shí)間;從而得到,故障設(shè)備的匹配點(diǎn)為,故障設(shè)備的重調(diào)度任務(wù)集為
Ckd =‘其中TkMd 故障設(shè)備的匹配點(diǎn);X^xlkd 故障設(shè)備上第np+1個(gè)操作的開(kāi)始時(shí)間;Ckj 故障設(shè)備的重調(diào)度任務(wù)集合;Om 第i個(gè)任務(wù);步驟2,確定其他設(shè)備的匹配點(diǎn):Tf和重調(diào)度任務(wù)集ζ k ;第k臺(tái)設(shè)備的匹配點(diǎn)可以由巧=max,64.irf U/^來(lái)確定;對(duì)于任意滿(mǎn)足式子~ < XKk < Tf的任務(wù),其中k = 1,2,. . .,m且k = kd,將其加入
任務(wù)集ζX ;其中Tf :第K臺(tái)設(shè)備的匹配點(diǎn);ζ k 第K臺(tái)設(shè)備的重調(diào)度任務(wù)集合;Xijk 原調(diào)度中操作i在設(shè)備k上的開(kāi)始時(shí)間點(diǎn);pijk 操作i在設(shè)備k上的加工時(shí)長(zhǎng);td:擾動(dòng)的開(kāi)始時(shí)間;kd 故障的設(shè)備;步驟3,確定SMUR匹配點(diǎn)Tp和重調(diào)度任務(wù)集ζ ;
SMUR方法的匹配點(diǎn)I;重調(diào)度的任務(wù)集為ζ = ζ i U ζ 2 U . . . U ζ m, 其中 k = 1,2,. . .,m ;其中Tp:全局重調(diào)度匹配點(diǎn);TkM 設(shè)備的重調(diào)度匹配點(diǎn);ζ i :第i臺(tái)設(shè)備的重調(diào)度任務(wù)集;更新任務(wù)時(shí)間確定了重調(diào)度匹配點(diǎn)后,根據(jù)匹配點(diǎn)是否在規(guī)定的時(shí)域范圍內(nèi)選擇更新任務(wù)時(shí)間的方法。上述過(guò)程同時(shí)也確定了重調(diào)度任務(wù)集,下面介紹如何更新這些任務(wù)的開(kāi)始加工時(shí) 間和結(jié)束加工時(shí)間。由于任務(wù)之間存在著上文提到的等待約束關(guān)系,調(diào)度更新被設(shè)計(jì)為一 個(gè)迭代的過(guò)程,從故障開(kāi)始的一刻開(kāi)始依次更新任務(wù)集中的任務(wù),對(duì)于已經(jīng)更新的任務(wù)則 從任務(wù)集中移除。這里的任務(wù)集采用一種隊(duì)列的數(shù)據(jù)結(jié)構(gòu),如圖2所示。對(duì)于隊(duì)列中每一個(gè)任務(wù),其 結(jié)構(gòu)如圖中q所示,包含了產(chǎn)品號(hào)、工件號(hào)、設(shè)備號(hào)、當(dāng)前步數(shù)、開(kāi)始加工時(shí)間和任務(wù)加工時(shí) 間這些必要的信息。調(diào)度更新過(guò)程如圖3所示,新任務(wù)的開(kāi)始加工時(shí)間由設(shè)備的最早可用時(shí)間和任務(wù) 的最早到達(dá)時(shí)間兩者的最大值確定。設(shè)備的最早可用時(shí)間,一般由兩個(gè)因素的最大值確定 (1)該設(shè)備上一個(gè)任務(wù)的結(jié)束時(shí)間;(2)設(shè)備擾動(dòng)結(jié)束時(shí)間(如故障修復(fù)好的時(shí)間、維護(hù)保 養(yǎng)的完成時(shí)間)。任務(wù)的最早到達(dá)時(shí)間需要考慮兩種情況(1)對(duì)于單卡加工設(shè)備,任務(wù)的 最早到達(dá)時(shí)間由該任務(wù)上一步的完工時(shí)間確定;(2)對(duì)于批加工設(shè)備,任務(wù)的最早達(dá)到時(shí) 間由該批任務(wù)中工件上一步任務(wù)完工時(shí)間的最大值確定。以上SMUR重調(diào)度方法的設(shè)計(jì)目標(biāo)是有效利用任務(wù)間空閑時(shí)間,快速響應(yīng)生產(chǎn)線(xiàn) 擾動(dòng),及時(shí)更新調(diào)度方案,保持原調(diào)度方案的優(yōu)化性能。SMUR方法只要調(diào)整部分原調(diào)度方案就可以得到新的調(diào)度,但同時(shí)可以發(fā)現(xiàn),該方 法需要原調(diào)度方案比較松弛,具有較多的空閑時(shí)間。對(duì)于某些任務(wù)負(fù)載較重的設(shè)備,空閑時(shí) 間較少,使用上述方法會(huì)受到一定的限制。半導(dǎo)體生產(chǎn)線(xiàn)中,某些設(shè)備具有這樣一個(gè)特點(diǎn),同一加工任務(wù)可以在多臺(tái)設(shè)備上 加工,即某些設(shè)備具有相似的功能,一般的把這些具有相似功能的設(shè)備稱(chēng)為設(shè)備組。同樣以 設(shè)備故障作為生產(chǎn)線(xiàn)的擾動(dòng)因素,本發(fā)明考慮設(shè)備組的匹配重調(diào)度方法。本發(fā)明的優(yōu)點(diǎn)在于,這種算法優(yōu)化了右移重調(diào)度算法,充分利用設(shè)備任務(wù)空閑,消 除擾動(dòng)對(duì)調(diào)度方案的影響,大大提高生產(chǎn)線(xiàn)在重調(diào)度后的穩(wěn)定性??傊景l(fā)明提供了切實(shí)可行的半導(dǎo)體生產(chǎn)局部重調(diào)度算法,該算法的提出對(duì)研 究半導(dǎo)體生產(chǎn)重調(diào)度有一定的參考價(jià)值,對(duì)提高我國(guó)半導(dǎo)體生產(chǎn)系統(tǒng)領(lǐng)域中局部重調(diào)度算 法具有重要的指導(dǎo)意義。在SMUR算法中用到的一些字母符號(hào)如下nmatch-up階段中的任務(wù)數(shù);m設(shè)備數(shù);?^第i個(gè)任務(wù)在第k臺(tái)設(shè)備上的加工時(shí)間;kd故障的設(shè)備;
Γ/原調(diào)度中第k臺(tái)設(shè)備的調(diào)度開(kāi)始時(shí)間;7廣新調(diào)度中第k臺(tái)設(shè)備的match-up時(shí)間點(diǎn);Tp重調(diào)度匹配點(diǎn)Tmax最大match-up時(shí)間點(diǎn)(原調(diào)度的結(jié)束時(shí)間);Α/加工任務(wù)i的第一臺(tái)設(shè)備;<加工任務(wù)i的最后一臺(tái)設(shè)備;ESi, k操作(i,k)可能的最早時(shí)間;LFi, k操作(i,k)可能的最遲時(shí)間;Xi, k原調(diào)度中操作(i,k)的開(kāi)始時(shí)間;Yi,k新調(diào)度中操作(i,k)的開(kāi)始時(shí)間;td擾動(dòng)的開(kāi)始時(shí)間;tu擾動(dòng)的結(jié)束時(shí)間;Om發(fā)生擾動(dòng)后,原序列中第i個(gè)任務(wù);ζ k設(shè)備k的重調(diào)度任務(wù)集;ζ所有設(shè)備的重調(diào)度任務(wù)集;
圖1是SMUR的算法流程圖;圖2是重調(diào)度算法中任務(wù)隊(duì)列的數(shù)據(jù)結(jié)構(gòu)示意圖;圖3是SMUR算法中迭代更新任務(wù)開(kāi)始時(shí)間和結(jié)束時(shí)間示意具體實(shí)施例方式本發(fā)明提供的重調(diào)度方法的實(shí)施方式如下。本發(fā)明提供的調(diào)度方法在具體實(shí)施階段需要滿(mǎn)足的條件為企業(yè)必須有支撐生產(chǎn) 的MES系統(tǒng),或者實(shí)時(shí)與實(shí)際生產(chǎn)同步的數(shù)據(jù)庫(kù);由于本發(fā)明提供的兩種算法均需要仿真 作為輔助,必須至少有一種仿真平臺(tái)軟件支持。重調(diào)度系統(tǒng)應(yīng)包括三塊內(nèi)容企業(yè)數(shù)據(jù)庫(kù)、本地?cái)?shù)據(jù)庫(kù)、重調(diào)度軟件系統(tǒng)、仿真平 臺(tái)。大致流程為,軟件系統(tǒng)每隔固定時(shí)間從企業(yè)數(shù)據(jù)庫(kù)中讀取數(shù)據(jù),存入本地?cái)?shù)據(jù)庫(kù),一旦 發(fā)現(xiàn)重調(diào)度擾動(dòng),則觸發(fā)重調(diào)度,重調(diào)度軟件系統(tǒng)通過(guò)仿真接口控制仿真平臺(tái)的仿真開(kāi)始、 結(jié)束,最后,將重調(diào)度后的數(shù)據(jù)通過(guò)軟件系統(tǒng)寫(xiě)回至企業(yè)數(shù)據(jù)庫(kù),以供MES系統(tǒng)使用,使線(xiàn) 上工作人員能及時(shí)依照最新的派工方案進(jìn)行派工。以下就各部分詳細(xì)闡述本發(fā)明的實(shí)施方 式。由于企業(yè)數(shù)據(jù)庫(kù)的結(jié)構(gòu)往往是異構(gòu)的,且同一企業(yè)內(nèi),由于生產(chǎn)線(xiàn)的不同,所對(duì)應(yīng)的數(shù)據(jù)庫(kù)也會(huì)不同。然而,本發(fā)明提供的重調(diào)度算法對(duì)生產(chǎn)線(xiàn)并無(wú)特殊需求,屬于適用性較 廣的算法。所以,要使重調(diào)度算法能夠適用于所有的生產(chǎn)線(xiàn),需要先轉(zhuǎn)換企業(yè)數(shù)據(jù)庫(kù)至本地 數(shù)據(jù)庫(kù)。重調(diào)度算法對(duì)數(shù)據(jù)的需求并不復(fù)雜,只需要有原始的派工信息即可。本地?cái)?shù)據(jù)庫(kù)的作用在于存儲(chǔ)從企業(yè)數(shù)據(jù)庫(kù)中加載的數(shù)據(jù),目的在于比較最新的數(shù) 據(jù)與前一次加載數(shù)據(jù)的區(qū)別,以判斷是否滿(mǎn)足重調(diào)度的觸發(fā)條件。一般觸發(fā)條件包括三種 累計(jì)加工延時(shí)超標(biāo)(指工件的實(shí)際開(kāi)始加工時(shí)間或完工時(shí)間與原調(diào)度方案之間的誤差,若誤差達(dá)到一定的閥值,則說(shuō)明原調(diào)度方案不再適用,必須生成重調(diào)度方案,以縮短預(yù)期調(diào)度 與實(shí)際生產(chǎn)之間的誤差);設(shè)備故障(指突發(fā)的不可預(yù)測(cè)的設(shè)備故障,同時(shí)需要故障信息及 時(shí)有效的在數(shù)據(jù)庫(kù)中反映,如此才能保證重調(diào)度算法的有效性);非計(jì)劃性投料進(jìn)入生產(chǎn) 線(xiàn)(指不在計(jì)劃之內(nèi)的投料,一般是企業(yè)的工程卡,即用于實(shí)驗(yàn)的測(cè)試卡,且這些卡的優(yōu)先 級(jí)一般比較高,一旦有這些工件的加入,勢(shì)必打亂原先的調(diào)度方案,需要重調(diào)度)。本地?cái)?shù)據(jù) 庫(kù)的另一作用在于存儲(chǔ)每次重調(diào)度前后的排程方案,以方便企業(yè)通過(guò)歷史數(shù)據(jù)分析重調(diào)度 的有效性。仿真平臺(tái),作為重調(diào)度系統(tǒng)的輔助工具,用于當(dāng)無(wú)法找到匹配點(diǎn),或算法執(zhí)行超 時(shí),可采用仿真平臺(tái)做全局重調(diào)度,仿真平臺(tái)必須提供外部接口可與軟件系統(tǒng)數(shù)據(jù)交互、仿 真控制等。重調(diào)度軟件系統(tǒng),該部分作為重調(diào)度系統(tǒng)的核心部分作用在于控制企業(yè)數(shù)據(jù)庫(kù)與 本地?cái)?shù)據(jù)庫(kù),以及控制仿真平臺(tái),并且實(shí)現(xiàn)重調(diào)度算法。在企業(yè)數(shù)據(jù)庫(kù)方面,軟件負(fù)責(zé)每隔 固定時(shí)間段加載企業(yè)數(shù)據(jù)庫(kù)中所需要的數(shù)據(jù),并存入本地?cái)?shù)據(jù)庫(kù),目的在于及時(shí)地發(fā)現(xiàn)重 調(diào)度觸發(fā)因素。由于企業(yè)數(shù)據(jù)庫(kù)的數(shù)據(jù)量一般較大,可以采用增量形式對(duì)數(shù)據(jù)進(jìn)行刷新。在 仿真平臺(tái)方面,由于本發(fā)明提供的重調(diào)度算法存在找不到匹配點(diǎn)或算法運(yùn)行超時(shí)的情況, 在這種情況下,可選用全局重調(diào)度替代,然而全局重調(diào)度需要仿真平臺(tái)的支撐。另一方面,算法實(shí)現(xiàn)是軟件系統(tǒng)的主要部分,以下詳細(xì)闡述算法的實(shí)現(xiàn)過(guò)程。采用 遞歸算法實(shí)現(xiàn),首先是SMUR算法。SMUR算法有三個(gè)參數(shù),新開(kāi)始時(shí)間(即當(dāng)前任務(wù)的新加工開(kāi)始時(shí)間)startTime, 任務(wù)Dispatch,是否調(diào)度在當(dāng)前任務(wù)后的在同一設(shè)備上的任務(wù)標(biāo)志位eqpFlag,簡(jiǎn)稱(chēng)設(shè)備 標(biāo)志位。步驟1檢查startTime是否小于當(dāng)前任務(wù)的原startTime,若小于則直接返回,否 則繼續(xù)下一步。因?yàn)槿绻麻_(kāi)始時(shí)間小于調(diào)度任務(wù)的原開(kāi)始時(shí)間,則表示匹配點(diǎn)已找到,無(wú) 須繼續(xù)調(diào)度后續(xù)任務(wù)。步驟2判斷設(shè)備標(biāo)志位eqpFlag是否為真,若為真則下一步,否則跳至步驟5。步驟3尋找當(dāng)前任務(wù)所對(duì)應(yīng)工件的下一步工序,并找出工序所對(duì)應(yīng)的任務(wù) nextSt印Dispatch,若找到,則遞歸調(diào)用SMUR算法,參數(shù)分別為StartTime =于當(dāng)前任務(wù) flJf^nWfB] + ii^r^f^^U ;dispatch = nextStepDispatch ;eqpFlag = true ;步驟4更新當(dāng)前任務(wù)的開(kāi)始加工時(shí)間以及結(jié)束加工時(shí)間。步驟5尋找與當(dāng)前任務(wù)處于同一設(shè)備的下一項(xiàng)任務(wù),可能不止一項(xiàng),因?yàn)榇嬖诮M 批現(xiàn)象,存入列表nextEqpDispatchList中。步驟6若列表中只有一項(xiàng)任務(wù),則進(jìn)行步驟7,否則跳轉(zhuǎn)至步驟9。步驟7遞歸調(diào)用SMUR算法,參數(shù)分別為StartTime =于當(dāng)前任務(wù)新開(kāi)始時(shí)間+任 務(wù)持續(xù)時(shí)間;dispatch = nextStepDispatchList
;eqpFlag = true。步驟8尋找當(dāng)前任務(wù)所對(duì)應(yīng)工件的下一步工序,并找出工序所對(duì)應(yīng)的任務(wù) nextSt印Dispatch,若找到則遞歸調(diào)用SMUR算法,參數(shù)分別為StartTime =于當(dāng)前任務(wù)新 開(kāi)始時(shí)間+任務(wù)持續(xù)時(shí)間;dispatch = nextSt印DispatcheqpFlag = true。跳轉(zhuǎn)至步驟 12。步驟9對(duì)nextEqpDispatchList中的每一項(xiàng)任務(wù)做循環(huán),直至遍歷列表中的所有
9調(diào)度任務(wù)。循環(huán)步驟為步驟10至步驟11。步驟10若當(dāng)前調(diào)度任務(wù)為循環(huán)中的第一項(xiàng)任務(wù),則遞歸調(diào)用SMUR算法 ,參數(shù)分別 為utartTime =于當(dāng)前任務(wù)新開(kāi)始時(shí)間+任務(wù)持續(xù)時(shí)間;dispatch =當(dāng)前循環(huán)的調(diào)度任 務(wù);eqpFlag = true。若當(dāng)前任務(wù)并不是列表中的第一項(xiàng)任務(wù),同樣遞歸調(diào)用SMUR算法,除 了 eqpFlag = false,其余兩項(xiàng)參數(shù)與前面一致。步驟11尋找當(dāng)前任務(wù)所對(duì)應(yīng)工件的下一步工序,并找出工序所對(duì)應(yīng)的任務(wù) nextSt印Dispatch,若找到,則遞歸調(diào)用SMUR算法,參數(shù)分別為StartTime =于當(dāng)前任務(wù) flJf^nWfB] + ii^r^f^^U ;dispatch = nextStepDispatch ;eqpFlag = true。步驟12更新當(dāng)前任務(wù)的開(kāi)始加工時(shí)間與結(jié)束時(shí)間。最后,提供本發(fā)明在MINIFAB以及HP24FAB1半導(dǎo)體生產(chǎn)線(xiàn)模型中的性能表現(xiàn)。主 要分析修正后的調(diào)度任務(wù)與原調(diào)度任務(wù)的累計(jì)延時(shí)。仿真的前提為1.隨機(jī)設(shè)置5處故障, 每次故障持續(xù)半小時(shí)。2.采用固定數(shù)量投料,兩個(gè)月內(nèi)全部投完。3.仿真時(shí)間為60天。
權(quán)利要求
一種面向多重入制造系統(tǒng)在線(xiàn)調(diào)度的單臺(tái)設(shè)備匹配重調(diào)度方法,包括下列步驟(1)尋找匹配點(diǎn),確定是否可以采用SMUR方法的判定過(guò)程,若找不到這樣的匹配點(diǎn),則采用常規(guī)的右移重調(diào)度方法調(diào)整;(2)確定重調(diào)度任務(wù)集,從擾動(dòng)開(kāi)始時(shí)間到匹配點(diǎn)之間的受影響任務(wù)將是SMUR調(diào)整的對(duì)象;(3)更新任務(wù)加工時(shí)間,在等待約束的范圍內(nèi)迭代更新任務(wù)的開(kāi)始時(shí)間和結(jié)束時(shí)間;其中,尋找匹配點(diǎn)和確定任務(wù)集的步驟是步驟1,確定故障設(shè)備kd的匹配點(diǎn)和需要重調(diào)度的任務(wù)集對(duì)故障設(shè)備的任務(wù)集進(jìn)行刷選與排序,選擇滿(mǎn)足下列公式的任務(wù),并按任務(wù)的開(kāi)始時(shí)間升序排列; <mrow><msub> <mi>O</mi> <mrow><mo>[</mo><mn>1</mn><mo>]</mo> </mrow></msub><mo>=</mo><msub> <mi>min</mi> <mrow><mo>∀</mo><mi>i</mi> </mrow></msub><mrow> <mo>(</mo> <msub><mi>X</mi><mrow> <mi>i</mi> <mo>,</mo> <msub><mi>k</mi><mi>d</mi> </msub></mrow> </msub> <mo>|</mo> <msub><mi>X</mi><mrow> <mi>i</mi> <mo>,</mo> <msub><mi>k</mi><mi>d</mi> </msub></mrow> </msub> <mo>≥</mo> <msub><mi>t</mi><mi>d</mi> </msub> <mo>)</mo></mrow> </mrow>其中O[1]發(fā)生擾動(dòng)后,原序列中第1個(gè)任務(wù);原調(diào)度中任務(wù)i在設(shè)備K上的開(kāi)始時(shí)間;找出故障結(jié)束后最早滿(mǎn)足下列公式的任務(wù)序號(hào)np, <mrow><msub> <mi>t</mi> <mi>u</mi></msub><mo>+</mo><msubsup> <mi>Σ</mi> <mrow><mi>i</mi><mo>=</mo><mn>1</mn> </mrow> <mi>np</mi></msubsup><msub> <mi>P</mi> <mrow><mo>[</mo><mi>i</mi><mo>]</mo><mo>,</mo><msub> <mi>k</mi> <mi>d</mi></msub> </mrow></msub><mo>-</mo><msub> <mi>X</mi> <mrow><mo>[</mo><mi>np</mi><mo>+</mo><mn>1</mn><mo>]</mo><mo>,</mo><msub> <mi>k</mi> <mi>d</mi></msub> </mrow></msub><mo>≤</mo><mn>0</mn> </mrow>其中np任務(wù)第n個(gè)操作;tu擾動(dòng)的結(jié)束時(shí)間;第i個(gè)操作在第k臺(tái)設(shè)備上的加工時(shí)間;從而得到,故障設(shè)備的匹配點(diǎn)為故障設(shè)備的重調(diào)度任務(wù)集為其中;故障設(shè)備的匹配點(diǎn);故障設(shè)備上第np+1個(gè)操作的開(kāi)始時(shí)間;故障設(shè)備的重調(diào)度任務(wù)集合;O[i]第i個(gè)任務(wù);步驟2,確定其他設(shè)備的匹配點(diǎn)和重調(diào)度任務(wù)集ζk第k臺(tái)設(shè)備的匹配點(diǎn)可以由來(lái)確定;對(duì)于任意滿(mǎn)足式子的任務(wù),其中k=1,2,...,m且k=kd,將其加入任務(wù)集ζk;其中第K臺(tái)設(shè)備的匹配點(diǎn);ζk第K臺(tái)設(shè)備的重調(diào)度任務(wù)集合;Xi,k原調(diào)度中操作i在設(shè)備k上的開(kāi)始時(shí)間點(diǎn);pi,k操作i在設(shè)備k上的加工時(shí)長(zhǎng);td擾動(dòng)的開(kāi)始時(shí)間;kd故障的設(shè)備;步驟3,確定SMUR匹配點(diǎn)Tp和重調(diào)度任務(wù)集ζ;SMUR方法的匹配點(diǎn)重調(diào)度的任務(wù)集為ζ=ζ1∪ζ2∪...∪ζm,其中k=1,2,...,m;其中Tp全局重調(diào)度匹配點(diǎn);設(shè)備的重調(diào)度匹配點(diǎn);ζi第i臺(tái)設(shè)備的重調(diào)度任務(wù)集。FSA00000114244100011.tif,FSA00000114244100012.tif,FSA00000114244100014.tif,FSA00000114244100021.tif,FSA00000114244100022.tif,FSA00000114244100023.tif,FSA00000114244100024.tif,FSA00000114244100025.tif,FSA00000114244100026.tif,FSA00000114244100027.tif,FSA00000114244100028.tif,FSA00000114244100029.tif,FSA000001142441000210.tif,FSA00000114244100031.tif,FSA00000114244100032.tif
全文摘要
本發(fā)明提供一種面向多重入制造系統(tǒng)在線(xiàn)調(diào)度的單臺(tái)設(shè)備匹配重調(diào)度方法,即局部重調(diào)度算法中的單臺(tái)設(shè)備匹配重調(diào)度(SMUR)算法;這種算法以充分利用設(shè)備空閑時(shí)間為思想,以提升重調(diào)度決策的有效性與生產(chǎn)線(xiàn)的穩(wěn)定性。該方法主要過(guò)程是,(1)尋找匹配點(diǎn),確定是否可以采用SMUR方法的判定過(guò)程,若找不到這樣的匹配點(diǎn),則采用常規(guī)的右移重調(diào)度方法調(diào)整;(2)確定重調(diào)度任務(wù)集,從擾動(dòng)開(kāi)始時(shí)間到匹配點(diǎn)之間的受影響任務(wù)將是SMUR調(diào)整的對(duì)象;(3)更新任務(wù)加工時(shí)間,在等待約束的范圍內(nèi)迭代更新任務(wù)的開(kāi)始時(shí)間和結(jié)束時(shí)間;優(yōu)點(diǎn)在于,這種算法優(yōu)化了右移重調(diào)度算法,充分利用設(shè)備任務(wù)空閑,消除擾動(dòng)對(duì)調(diào)度方案的影響,大大提高生產(chǎn)線(xiàn)在重調(diào)度后的穩(wěn)定性。
文檔編號(hào)G05B19/418GK101833319SQ201010170689
公開(kāi)日2010年9月15日 申請(qǐng)日期2010年5月11日 優(yōu)先權(quán)日2010年5月11日
發(fā)明者喬非, 葉愷, 施斌 申請(qǐng)人:同濟(jì)大學(xué)