□ 文志永 □ 蘭煜坤 □ 賀靖倫
1.中國中車股份有限公司信息化管理部 北京 100038
2.北京交通大學機械與電子控制工程學院 北京 100044
生產(chǎn)調(diào)度是制造企業(yè)進行生產(chǎn)的核心環(huán)節(jié),人們對于生產(chǎn)調(diào)度問題的研究大多是理想的生產(chǎn)環(huán)境下進行討論的[1-4],而實際的生產(chǎn)環(huán)境是一個復雜、動態(tài)、充滿不確定性的系統(tǒng)[5],因此這類理論研究和實際情況仍存在一定區(qū)別。在近期調(diào)度理論研究中,生產(chǎn)活動中的各類不確定性因素逐步被重視,動態(tài)不確定環(huán)境下的調(diào)度問題成為研究的一個主要方向[6-7]。當前大多數(shù)研究以調(diào)度在執(zhí)行過程中沒有干擾為前提,當制造環(huán)境中出現(xiàn)干擾后,再采用重調(diào)度方法對資源重新分配,但是這種過度頻繁的重調(diào)度會對生產(chǎn)系統(tǒng)的穩(wěn)定性造成較大破壞。造成傳統(tǒng)動態(tài)調(diào)度研究與生產(chǎn)實際難以深入結(jié)合的重要原因在于信息獲取的限制性[8]。近些年來,隨著信息傳感和信息通信等技術(shù)的發(fā)展,制造信息獲取、識別和傳輸?shù)确矫娑加辛孙@著提高[9-12],為生產(chǎn)系統(tǒng)狀態(tài)全面獲取設(shè)備健康預測和管理提供了技術(shù)手段。鑒于此,筆者將研究考慮設(shè)備預留維護時間(RMT)的前攝性調(diào)度,以提高調(diào)度方案的穩(wěn)定性。
設(shè)備故障是生產(chǎn)過程中最常見的擾動之一,擾動的出現(xiàn)使得生產(chǎn)調(diào)度無法按照計劃完成,因此筆者在考慮設(shè)備健康狀態(tài)對車間調(diào)度潛在影響的基礎(chǔ)上,設(shè)計一種考慮RMT的調(diào)度方案。假設(shè)設(shè)備在時刻t的可靠度函數(shù)為:
式中:β和η分別為韋布爾分布形狀參數(shù)和尺度參數(shù)。
當設(shè)備的可靠度R(t)低于可靠度閾值時,預測故障發(fā)生的概率較大,需要根據(jù)加工情況安排預防性維護。
假設(shè)白色部分為設(shè)備空閑時間,其余為加工時間,g為設(shè)備預測故障索引號,k為設(shè)備索引號為設(shè)備Mk上加工的第j道工序為設(shè)備Mk第g次預測故障發(fā)生的時間為故障后維修結(jié)束的時間,c為空閑時間段索引號為設(shè)備k上第c段空閑的開始時間為該空閑結(jié)束時間為空閑時間區(qū)間?;诖耍谠O(shè)備甘特圖的時間軸上,預測故障出現(xiàn)的位置,存在以下三種情況。
▲圖1 故障發(fā)生情況Ⅰ
(1)情況Ⅰ。如圖1所示,預測故障在某工序結(jié)束時發(fā)生,且后續(xù)為空閑時間,這種情況發(fā)生的條件為這時可采用維護任務(wù)后移方式,能保證部分維護時間被空閑時間吸納。吸納的程度取決于維修時間與空閑時間的重疊程度Ok,用式(2)表示:
(2)情況Ⅱ。如圖2所示,情況Ⅱ為情況Ⅰ的特殊情況,這種情況發(fā)生的條件為為工序Oij在設(shè)備Mk上加工結(jié)束的時間,i為任務(wù)索引號。這一情況發(fā)生時會導致停工,且可能造成后續(xù)關(guān)聯(lián)工序的延期。
▲圖2 故障發(fā)生情況Ⅱ
(3)情況Ⅲ。如圖3所示,故障在某工序加工期間發(fā)生,假設(shè)正在加工的工序為Oij,這種情況發(fā)生的條件為為工序Oij在設(shè)備Mk上加工開始的時間。這種情況不僅會導致停工,而且會使正在加工的工件報廢。
▲圖3 故障發(fā)生情況Ⅲ
基于以上分析可得出,故障發(fā)生的條件有兩種:①故障在某工序結(jié)束時發(fā)生,滿足條件② 故障在加工進行時發(fā)生,滿足條件
針對情況Ⅰ,可采用如圖4所示的維護任務(wù)后移方法對故障進行規(guī)避。針對情況Ⅱ,可選擇維護任務(wù)前移或者在該工序結(jié)束時插入空閑時間維護任務(wù)的方法對故障進行規(guī)避。針對情況Ⅲ,可采用如圖5所示的維護任務(wù)前移方法對故障進行規(guī)避。
在RMT調(diào)度策略設(shè)計前,先假設(shè)設(shè)備可靠度閾值為Thk,min,這是判斷設(shè)備是否需要進行維護的控制閾值??煽慷葘挿乓驍?shù)為bk,即設(shè)備可靠度值在寬放區(qū)間[Thk,min(1-bk),Thk,min(1+bk)]的范圍內(nèi)均可安排維護。 總體包括兩個流程,首先在初始任務(wù)生成之后對設(shè)備可靠度函數(shù)判斷,確定是否需要維護;其次確定維護任務(wù)的移動方式。令設(shè)備在工序Oij結(jié)束時的累積加工時間為該累積加工時間對應(yīng)的可靠度計算值為達到可靠度閾值的累積加工時間為具體步驟如下。
▲圖4 維護任務(wù)后移
▲圖5 維護任務(wù)前移
(1)調(diào)取原調(diào)度方案,初始化參數(shù)。
(2)從第一臺設(shè)備開始,對每臺設(shè)備上的工序依次遍歷,依次計算每道工序Oij的開始時間結(jié)束時間工序加工時間pij、加工該工序前設(shè)備的累積運行時間某設(shè)備可靠度閾值為Thk,min,設(shè)備k上的預防性維護時間為設(shè)備k維護次數(shù)為
如果R(Tkij+pij) (4)檢查是否還有尚未進行檢查的工序,如果有,返回第(2)步;如果沒有,操作結(jié)束。 調(diào)度模型包括兩個部分:優(yōu)化目標和約束條件。在優(yōu)化目標方面,統(tǒng)籌考慮兩個指標:任務(wù)成本C、任務(wù)加工質(zhì)量Q。 主要包括任務(wù)的延期懲罰成本C1與任務(wù)的加工成本C2。系統(tǒng)中所有任務(wù)的延期懲罰成本為: 式中:Fi為任務(wù)Ji的完成時間;di為交貨期限;Exti為延期懲罰成本。 加工成本包括固定的原材料成本和工序的加工成本。工序的加工成本與設(shè)備有關(guān),是工件占用設(shè)備產(chǎn)生的生產(chǎn)費用,包括人工、設(shè)備及能源費用。任務(wù)的總加工成本為: 式中:Cos1i與分別為工序Oij的原材料成本和加工成本;xijk?{0,1},當 xijk=1 時,表示工序 Oij在該設(shè)備上加工,當xijk=0時,表示工序Oij不在該設(shè)備上加工;Ni為第i個任務(wù)的工序數(shù)量。 加工質(zhì)量是對設(shè)備完成相同類型工序所達到的加工精度等質(zhì)量的評價,其總加工質(zhì)量為: 綜上所述,系統(tǒng)的初始調(diào)度目標為F=(minC1,minC2,maxQ)。 柔性作業(yè)車間需要滿足的假設(shè)與約束條件如下。(1)所有設(shè)備在零時刻時均可以使用。 (2)任務(wù)在不同設(shè)備上的加工時間已知,假設(shè)加工時間中包含了準備時間與搬運時間。 (3)任務(wù)的不同工序之間存在加工順序的先后約束。 (4)任務(wù)在同一時間只能在一臺設(shè)備上進行加工。 (5)一個設(shè)備同一時間只能加工一個任務(wù)。 調(diào)度模型采用遺傳算法進行求解,染色體編碼、適應(yīng)度函數(shù)與遺傳操作方法如下。 染色體編碼方式采用基于工序與設(shè)備的整數(shù)雙層編碼方式。第一層編碼為任務(wù)工序?qū)樱糜诖_定任務(wù)各道工序的位置。第二層編碼為設(shè)備層,用于確定每道工序所選擇的加工設(shè)備。第一層編碼中,基因總數(shù)為待加工的總工序數(shù),數(shù)字代表任務(wù)編號,任務(wù)的工序編號為該數(shù)字出現(xiàn)的次數(shù)。如圖6所示,第一層編碼串中前三個數(shù)字1、1、3依次表示任務(wù)J1的第一道工序O11、任務(wù)J1的第二道工序O12、任務(wù)J3的第一道工序O31,依次類推。在第二層編碼,即設(shè)備層匹配編碼中,前三個數(shù)字1、3、3依次表示設(shè)備 1、設(shè)備 3、設(shè)備 3,依次類推。 ▲圖6 整數(shù)雙層編碼 采用加權(quán)法構(gòu)造適應(yīng)度函數(shù)。由于各調(diào)度目標具有不同的量綱和量級,因此需要對它們進行歸一化處理,計算式為: 式中:qi為歸一化處理之前的指標值。 越大越好的正指標,用式(6)中第一個式子計算,越小越好的逆指標,用式(6)中第二個式子計算。 適應(yīng)度函數(shù)為: 采用錦標賽的選擇操作,每次隨機從父代種群中選擇兩個染色體,選擇適應(yīng)度函數(shù)最高的個體進入下一代種群。 任務(wù)層與設(shè)備層各自分別進行交叉操作,首先在種群中選擇兩條待交叉操作的雙親染色體;然后在任務(wù)編號區(qū)間內(nèi)產(chǎn)生兩個隨機數(shù)r1、r2,將雙親染色體中非r1、r2的剩余基因片段另存,原雙親染色體中非r1、r2的基因片段變?yōu)?;最后交換兩條染色體,將取出的基因片段插入新染色體中。 采用反轉(zhuǎn)變異操作,在種群中隨機選擇染色體,在染色體長度區(qū)間內(nèi)產(chǎn)生隨機數(shù)r1、r2作為染色體變異的起點與變異的長度,并找到變異片段,將染色體對應(yīng)片段倒排列。 假定一個擁有10臺設(shè)備的柔性作業(yè)車間,生產(chǎn)任務(wù)類型有6種,表1為設(shè)備可靠度相關(guān)參數(shù),數(shù)值均無量綱。為驗證RMT調(diào)度策略的有效性,對6個任務(wù)進行試驗。任務(wù)相關(guān)信息見表2~表6。 表1 設(shè)備可靠度函數(shù)相關(guān)參數(shù) 表2 任務(wù)信息 表3 工序可選設(shè)備列表 表4 工序加工時間列表 圖7和圖8分別為不考慮RMT和考慮RMT的調(diào)度方案。黑色部分表示設(shè)備需要進行預防性維護的時間。通過蒙特卡羅仿真方法,對生產(chǎn)過程進行仿真。當設(shè)備發(fā)生故障后,進行維修,設(shè)備進行預防性維護與故障維修后均認為恢復如新,故障修復時間服從4~10間的均勻分布。 表7與表8分別為兩種方案的故障設(shè)備、故障開始時間、故障結(jié)束時間及該周期內(nèi)因為設(shè)備故障而導致的系統(tǒng)累積延遲偏差。 表5 工序加工成本列表 表6 工序加工質(zhì)量列表 ▲圖7 不考慮RMT調(diào)度方案 ▲圖8 考慮RMT調(diào)度方案 表7 不考慮RMT設(shè)備故障仿真結(jié)果 表8 考慮RMT設(shè)備故障仿真結(jié)果 由試驗結(jié)果可知,由于安排了預防性維護,仿真過程中考慮RMT的調(diào)度方案,其故障發(fā)生次數(shù)要明顯少于對比方案,故障發(fā)生后進行重調(diào)度的延遲時間均短于對比方案,證明了筆者所提出的考慮RMT的調(diào)度方案優(yōu)于對比方案,具有可行性,同時也提升了調(diào)度方案的魯棒性。 以設(shè)備故障為代表的不確定因素是影響生產(chǎn)效率與計劃制訂的主要因素,傳統(tǒng)車間由于缺少準確的信息獲取機制,無法預先針對不確定因素進行合理預防?;诖耍P者針對設(shè)備故障擾動提出RMT調(diào)度策略,將車間作業(yè)調(diào)度問題和機器預防維修時間進行集成考慮。分析了設(shè)備故障對車間調(diào)度的潛在影響,設(shè)計了考慮RMT的調(diào)度策略流程、調(diào)度模型及求解算法,通過案例分析驗證了所提出的方案是一種兼具調(diào)度效率性能與魯棒性能的調(diào)度方案,對理論研究與實際生產(chǎn)都具有一定意義。4 調(diào)度模型
4.1 任務(wù)成本C
4.2 任務(wù)加工質(zhì)量Q
5 調(diào)度模型求解
5.1 染色體編碼
5.2 適應(yīng)度函數(shù)
5.3 遺傳操作
6 案例分析
7 結(jié)束語