杜寶瑞,張 杰,屈力剛,李 亮
(1.中航工業沈陽飛機工業(集團)有限公司,沈陽 110000;2.沈陽航空航天大學,航空制造工藝數字化國防重點學科實驗室,沈陽 110136;3.中航工業中國空空導彈研究院,洛陽 471000)
隨著國內制造業的快速發展,為了滿足待檢測零件的精度和效率要求,航空制造業正在推行一種基于MBD(model based definition)[1]的數字化生產模式,逐漸形成以設計、制造、檢測為一體的閉環作業系統。在數字化生產模式的推動下,以設計部門設計的三維MBD模型為信息傳遞的唯一標準載體,向下游的生產部門和檢測部門同步傳遞,生產部門依據模型所攜帶的加工信息加工零件,同時檢測部門依據模型所攜帶的待檢測信息在三坐標系統上離線編制零件的檢測程序[2]。通過對三維MBD模型檢測要素的分類[3]和尺寸標注的自動規范化矯正[4,5]以及檢測程序的仿真推演,提前規劃并避免在使用三坐標測量機檢測待檢測零件時可能遇到的干涉、撞針等問題[6],當零件加工完成后可立即在三坐標測量機上自動執行待檢測零件的檢測程序任務,完成對零件的測量。
航空企業內成批次的零件使用壽命長,更新改動小,基于三坐標系統編制的測量程序具有可重復性、高效性、易改動等特點。企業中的三坐標檢測設備的數量在一定時期內是相對不變的,但是由于對檢測設備資源的分配沒有合理的規劃,依然采用依靠人工經驗選擇的方式,不僅存在隨意性和約束性,而且在如何選配上耗費大量的工作時間,降低了檢測效率。若零件加工生產完成后不能在交貨期內及時檢測完成,會導致不能按時交貨,經濟效益降低等問題。因此若能夠針對不同的待檢測零件,通過合理分配三坐標檢測設備資源進行協同測量,最大化釋放現有設備資源的使用價值,是對檢測設備資源及檢測過程的優化管理,是提高企業的生產效益和核心競爭力的關鍵問題之一。
針對上述航空企業中存在的問題,本文提出了一種檢測設備資源分配的優化方法,旨在解決數字化檢測模式下三坐標檢測設備得不到合理規劃利用的問題。
在使用三坐標系統編制檢測程序的過程中,受實際檢測條件和性能的約束影響,如零件的精度、不滿足三坐標設備檢測要求的特征、尺寸標注關聯特征的矢量方向、夾具夾持零件時無法檢測被夾持面的關聯特征等因素,都決定了待檢測零件其檢測程序的數量多少和復雜程度。因此,同一批次的零件在三坐標系統上會相應編制出多個檢測程序,才能覆蓋待檢測零件的所有檢測信息。
假設在檢測資源的配置過程中滿足以下基本規則:
1)在某一時刻,一臺設備只能執行一個零件的其中一個檢測程序任務;
2)在某一時刻,一個零件的其中一個檢測程序任務只能在一臺設備上執行;
3)檢測程序任務在某臺設備上開始執行后,就不能中斷,直到完成檢測;
4)每個檢測程序任務的檢測時間固定且都為已知;
5)需要更換其他設備執行其他檢測程序任務時,此設備沒有在執行檢測程序任務。
多批次的零件的檢測程序任務在檢測設備資源上的分配屬于典型的規劃和優化問題,可以描述為:若現有多批次共n個待檢測零件,每批次的零件根據檢測信息的要求編制成li(i?n)個檢測程序,則共有個檢測程序任務;每個檢測程序任務需要從m臺檢測設備中選擇某一臺設備以完成檢測任務。不同的分配方式付出不同的代價。即將檢測資源配置問題轉化為尋找待檢測零件與檢測設備資源的合理分配的最優解問題。
定義檢測設備集合為J={j|1,2,…,m},待檢測零件集合為I={i|1,2,…,n},每個零件的檢測程序任務集合為K={k|1,2,…,l},第i個待檢測零件的檢測程序任務為eik,交貨期限為T0。檢測設備j執行檢測程序任務eik的時間為Rikj,則所構成的所有檢測程序任務時間矩陣為。由于每臺檢測設備在某一時刻只能執行待檢測零件的一個檢測程序任務,即設當檢測設備j執行檢測程序任務eik時,其占用狀態用Bikj表示,正在執行檢測任務表示為Bikj=1,空閑狀態表示為Bikj=0。給出檢測程序任務在檢測設備上執行所需要的檢測時間Rikj和檢測設備的占用狀態BRikj的關系矩陣如表1所示。
為了使多批次零件能在生產周期內完成檢測任務,按時交貨,以檢測時間最小為優化目標,則檢測設備j執行其分配到的檢測程序任務的檢測時間為:

則在m臺檢測設備上執行n個待檢測零件的全部檢測任務的數學模型為:
在平時的課堂教學開始前,先環視整個教室,關注每一位學生的精神狀態和課前準備情況,用眼神告訴學生:老師很關注你的學習狀況。在課堂教學中,也要經常開展自主合作探究的學習方式,鼓勵學生在小組內暢所欲言,達到生生互學的效果。這樣的學習方式,讓學生在學習伙伴面前展現了自己的存在感,進而提升學習自信心。在小組匯報階段,都要鼓勵學生聲音響亮且有條理地表達自己的見解,要求其他學生能安靜傾聽并思考,要求對匯報者的匯報給予眼神的關注和語言上的評價及掌聲鼓勵。美其名曰:“他說,你聽!”“他說,你評!”“他說,你點贊!”通過這一系列的實踐活動,讓學生真切感受到學習伙伴和教師都在關注自己。

其中:式(2)表示以總檢測時間最小的目標;式(3)表示一個零件的其中一個檢測程序任務只能在一臺設備上執行;式(4)表示一臺設備只能執行一個零件的其中一個檢測程序任務。式(5)表示最長檢測時間不能超過規定的交貨期限。

表1 執行檢測程序任務的時間和檢測設備的占用狀態表
檢測設備資源的分配與柔性作業車間調度類似,也是一種很復雜的非確定多項式(Non-deterministic Polynomial)問題[7]。目前國內外對于NP問題求解方式的研究常應用智能優化算法,包括模擬退火、禁忌搜索、神經網絡、蟻群算法、遺傳算法等。其中,通過遺傳算法來求解最優的檢測設備選擇原則,具有較高的全局搜索效率和收斂效果,得出最優解與實際最優解的誤差較小[8]。
遺傳算法是一種模擬自然進化過程中優勝劣汰的機理來搜索最優解的方法,其利用編碼技術對一定數目的個體進行編碼,完成初始種群的構建。初始種群生成之后,由適應度大小淘汰不符合要求的個體,對通過選擇而保留的個體進行交叉和變異的重新組合生成新的種群,不斷的迭代使其進化到滿足某一設定的要求,進而得到符合要求的最優解。
針對上述檢測設備資源分配的問題,由于需要對檢測設備資源和檢測程序任務同時進行編碼,因此采用雙層編碼的方法。第一層為每個待檢測零件的檢測程序任務的編碼層,第二層為檢測設備編碼層。這樣就可以給檢測程序任務選擇執行的檢測設備,并將所選擇的檢測設備編號安排在對應的檢測設備編碼層。
在執行多批次零件的所有檢測程序任務期間,可能需要根據檢測程序的要求更換工裝夾具,為了減少此類不必要的更換以縮短額外的準備時間,將相同類型的程序優先排列選擇,避免無序選擇時造成的工裝夾具頻繁更換的問題。因此檢測程序編碼層采用基于優先權編碼的方式,即每一個基因代表一個優先權,表示每個檢測程序任務的執行次序,如n個零件中每個零件對應有li(i?n)個檢測程序,則共有個檢測程序,優先權值為從1到,染色體分為n段,每一段代表一個零件的所有檢測程序,每段包含li個基因,代表程序1到的優先權值。
檢測設備編碼層采用整數的編碼方式,由檢測設備的編號組成。根據檢測程序編碼層的基因隨機選擇對應執行檢測程序的檢測設備,將檢測設備編號填入檢測設備編碼層的對應位置。
假設現有3臺檢測設備,有4個待檢測零件,每個零件分別包含3、2、4、3個檢測程序任務,如表2所示。
為使其滿足約束條件,即檢測程序任務需按照合理的次序依次執行,首先從全部待檢測零件的第一道檢測程序任務{e11,e21,e31,e41}中隨機選擇出e31,賦予其優先權值,令其對應的染色體元素為1;然后再從{e11,e21,e31,e41}中隨機選擇出e21,賦予其優先權值,令其對應的染色體元素為2;然后再從{e11,e21,e32,e41}中隨機選擇出e32,賦予其優先權值,令其對應的染色體元素為3;依次類推,直到所有的檢測程序任務對應的染色體元素優先權值都被確定,生成父代檢測程序任務染色體編碼P11。隨機生成父代檢測設備染色體編碼C11。按照上述方法生成初始種群。從初始種群中隨機選取一個初始解染色體編碼P21和C21與父代染色體編碼P11和C11用于后續的交叉操作。如圖1所示。

圖1 生成初始種群
以總檢測時間為要求解的目標函數,為了使目標函數取最小值,取遺傳算法的適應度函數為f=-F。
檢測程序任務交叉操作時,首先保持各檢測設備染色體編碼不變,隨機選擇1個待檢測零件作為交叉零件,交換兩個染色體中對應的優先權值,如染色體P11和P21進行交叉,隨機選取第一個待檢測零件作為交叉零件,交換P11和P21中第一個零件的檢測程序任務編碼,得到新的交叉子代染色體編碼層P12。
檢測設備交叉操作時,再保持各檢測程序任務染色體編碼不變,對檢測設備染色體編碼進行多點交叉。首先隨機產生一個與染色體長度相等的由0、1代碼組成的交叉編碼串(1,0,1,0,1,1,1,0,1,0,0,1),交叉編碼串中的1代表對檢測設備染色體編碼層C11和C21中相同位置的元素進行互換,得到新的交叉子代染色體編碼層C12。如圖2所示。

表2 檢測程序任務表

圖2 染色體編碼層交叉操作結果
然后統計出P12中缺少和重復的優先權值,并用缺少的優先權值代替重復的優先權值,最后把所有檢測程序任務對應的優先權值按從小到大的順序重新排列,代表執行的順序。編碼層P12用缺少的優先權值(4,6)替代重復的優先權值(1,3),根據每個待檢測零件的優先權值從小到大的順序,用4替換1,6替換3,得到新的子代染色體編碼層P13。如圖3所示。

圖3 檢測程序任務編碼層優先權調整結果
檢測程序任務變異操作時,保持各檢測設備染色體編碼不變,隨機選擇2個不同待檢測零件的兩個基因交換其優先權值,如染色體P13中第一個零件的第二個檢測程序和第三個零件的第三個檢測程序編碼進行交換,得到新的變異子代染色體編碼層P14。
檢測設備變異操作時,如在C12中隨機選擇第二個零件的第二個檢測程序編碼,將隨機其替換為另一臺檢測設備,得到新的變異子代染色體編碼層C13。如圖4所示。

圖4 染色體編碼層變異操作結果
再按照4)中提到的方法調整P14層優先權值大小排序,得到新的子代染色體編碼層P15和C13。如圖5所示。

圖5 檢測程序任務編碼層優先權調整結果
至此一次循環結束,重復上述步驟,根據設定的遺傳算法迭代次數ε停止循環,輸出最終的結果即為最優解。
根據本文中所提出的檢測設備資源分配優化方法,為了驗證其在實際生產作業中是否具有實用性和高效性,根據建立的數學模型對其進行優化求解。選取初始種群規模為50,迭代次數為50,檢測設備交叉概率和檢測程序任務交叉概率都為pc=0.9,檢測設備變異概率和檢測程序任務變異概率都為pm=0.01。得到上述資源分配的最優結果如表3所示。
由表得知,每臺檢測設備分配到的最優檢測程序任務集合分別為{j1|e11、e42、e33、e34}、{j2|e31、e21、e22、e13}和{j3|e41、e32、e12、e43},每臺檢測設備工作的總檢測時間甘特圖如圖6所示。

表3 最優分配結果表

圖6 本文方法檢測設備資源配置圖

圖7 傳統方法檢測設備資源配置圖
而按照傳統的檢測零件的方式,檢測人員會根據個人的習慣和經驗選擇檢測設備,傳統的人工方法存在隨意性,不能最大程度釋放檢測設備資源的性能。其檢測時間甘特圖如圖7所示。
通過將所有的檢測程序任務合理地分配到每一臺檢測設備上,待全部的零件檢測完成后即為完成檢測任務,即可交貨。由木桶效應可知,每臺檢測設備工作的最長總檢測時間為實際總檢測時間,由圖6得本文方法為29.8min;而傳統人為選擇并分配檢測設備的方法其實際總檢測時間由圖7得為41.9min。根據現場作業統計,針對多批次的零件檢測任務,在檢測設備資源相同的情況下,零件的總數量越多,對應檢測程序任務的總數量就越多,本方法相對于傳統方式的優越性就越明顯,具體表現在需要人為干涉的任務量少,相對檢測時間比(傳統方式檢測時間/本方法檢測時間)越來越低,即檢測效率得到明顯提高,驗證了本文方法的可行性。如表4所示。

表4 本文方法和傳統方法對比表
本文面向數字化檢測生產模式,針對存在的檢測設備資源沒有提前規劃分配而是依靠人為經驗進行選擇的不合理問題,采用了一種雙層編碼的遺傳算法求解方法對建立的數學模型進行求解,根據實際生產要求得到其最優分配結果,避免了人為的選擇干涉,提高了檢測設備資源的利用率和檢測多批次零件的效率。最后通過實例驗證表明了該方法能夠實現檢測設備資源的合理分配,滿足數字化檢測的實際生產需求,并對推進數字化檢測的發展具有一定的意義。