(北京機械工業自動化研究所有限公司,北京 100120)
在中國制造2025的大環境下,越來越多的企業選擇將具體的生產業務與ERP、MES等信息化系統相結合,利用信息化的手段來管控,指導制造生產。而在這其中,對于實際的生產計劃的計劃調度則是十分重要的。高級計劃與排程系統(APS)通過對計劃、資源、時間等進行管理從而達到最大化效益的目的,可以十分有效地管理企業的生產計劃。盡管APS系統的理論已經非常豐富,在實際生產中的運用效果卻不是很理想。這一情況的出現有多種原因,其中一個原因就是實際生產中的生產規則太過于復雜和多變,企業的生產人員也無法很清晰地將實際生產規則總結提煉為通用的規則,導致排程系統排程的結果并不是很準確,需要頻繁的人工干預,從而使得效率大幅度降低。
然而,絕大部分的企業在生產過程中都會保留生產信息,這些大量的生產信息中暗中包含了企業生產的相關規則,所以可以利用規則挖掘方法以及粗集理論來對通用生產規則進行總結與歸納,也可以利用不斷產生的生產信息進行自學習,得到更加具有普適性的生產規則,從而更高效地指導生產,并且可以根據實際生產情況的變化而對排程規則進行更新,可以更準確地指導生產。
知識是對對象進行分類的規則,對象是用屬性集表示的,而知識則是屬性集之間的映射關系。對屬性集進行映射就會產生不同的分類,而這些分類就是知識。
根據粗集理論,一個規則體系可以表達為S=(U,C∪D,V,f)。其中U={X1,X2,…,Xn}代表對象集合,A=C∪D代表屬性集合,子集C代表條件屬性集,子集D代表決策屬性集。并且有C∪D=A,C∩D=φ。若規則體系用二維表的方式表達,那么可以稱這個二維表為決策表,在這個表中每一行表示一個元素,每一列表示其屬性。
設U為對象的有限集,稱之為論域,對于任何子集X∈U,都可以稱X是一個U中的概念,U中的任何概念組可以稱之為關于U的抽象知識,簡稱知識。若有集合R={X1,X2,…,Xn},其中Xi∈U,Xi≠φ,并且Xi∩Xj=φ,當i≠j;i,j=1,2,…,n;且有∪ni=1Xi=U,則稱R為一個分類,Xi稱為R的一個等價類。論域U中的一個分類確定了U上的一個等價關系。同樣,論域U中的一個等價關系也確定了論域U的一個分類,所以可以利用等價關系對集合進行分類。
屬性集A中的屬性分為條件屬性C與結論屬性D;確定條件屬性集上的等價類E_k與結論屬性集上的系統概念X,尋找Ek與X件的關系,若其結果有X包含Ek,則成為下近似;X與Ek的交集非空,則稱為上近似;X與Ek的交集為空,則稱為兩者無關;根據上述結果確定發現的規則,下近似中的條件屬性與結論屬性之間可以建立確定性規則,上近似中的條件屬性與結論屬性之間可以建立不確定性規則,而無關說明條件屬性和結論屬性毫無規則可言?;诖旨碚摰闹R發現主要涉及兩個重要的處理過程:求近似控件和縮減。實現規則發現的一個具體方法是通過在近似空間中尋找條件屬性關于結論屬性集中的最小依賴關系來完成的。
粗集理論的特點是不需要預先定某些屬性或者特征的定量描述,而是直接從給定問題的直接描述出發,通過不可分辨關系確定問題的近似域,從而找出該問題所對應的知識,即為對象進行分類的方法。
利用粗集理論和決策挖掘方法提取APS排程規則的主要過程如圖1所示。

圖1 規則提取過程
如圖1所示,首先得到企業的實際生產數據,此時需對企業的生產數據進行整理與清洗,得到標準格式的條件屬性集-決策屬性集生產數據。然后利用粗集理論與規則挖掘的方式對生產數據進行條件集與決策集的最小映射,挖掘出的映射關系即為規則,最后在企業的不斷生產中,生成新的生產數據,系統根據新的生產數據不斷的進行優化學習,使得排程規則更全,排程更加準確。
基于以上提到的粗集理論,我們在得到了企業的生產數據進行整理得到,時間-產品-設備的具體信息,其中時間可以作為權重系數,時間太久的規則可以降低權重甚至作廢。
首先我們對生產的設備進行分類,由于生產的設備一般不會有很多種類,所以這一步由人工進行分配,比較極端的情況有兩種:第一種是所有設備全部都一樣,不需要進行分類。這個時候也不需要進行排程規則的提取,因為沒有任何限制,這時候只要根據企業具體生產實際情況,將產品的生產計劃分配到具體的設備上進行生產就可以。第二種情況是全部的生產設備全都不一樣,即每個設備為一個分類,這時候就不需要人工對設備進行分類了。此時只要根據歷史數據對產品和生產設備之間的規則進行抽取即可。
我們取最普通的情況,即有n種產品,有m個生產設備。其中m個生產設備可以劃分為M組,我們認為每組生產設備可以生產的產品種類完全相同。即找到屬于生產設備的最小集合。假設M可以表示為M={M1,M2,…,Mn},則根據生產的歷史數據中產品曾經在某個生產設備上面生產過的信息可以得到ni∈Mj,i,j∈R。這樣我們其實就得到一條規則,即產品ni可以在設備集Mj上進行生產。然后按照歷史數據不斷的將產品信息與設備集信息進行對應,這樣我們就可以得到一個產品與設備集對應的關系。
這樣,只要企業的歷史生產數據足夠大,那么理論上歷史數據是可以包含所有生產情況的,根據一個粗略的判斷法則,當一個分類擁有5k個已經標注的樣本時就可以達到可以接受的性能,當擁有一千萬已經標注的樣本時就可以達到甚至超過人類進行判斷的準確性。依據這個法則,我們可以大致的估算一下我們得到的粗集規則是不是可以使用。當然,如果不是非常準確也沒有關系,因為在APS系統根據這個規則集進行排程之后,計劃人員可以手工對排程結果進行干預,比如在原規則集中沒有產品n1可以在設備集M1上生產的記錄,那么排程系統就不會將產品n1排程在設備集M1上進行生產,但是如果計劃員在進行確認排程結果的時候認為產品n1可以在此設備集上進行生產,那么通過人工對排程結果進行干預,將產品n1排程在屬于此設備集的任意設備上面進行生產,那么系統就可以自動記錄這么一條規則,從而在下次對這個產品進行排程的時候也會將設備集M1作為備選生產設備考慮進去,這樣就會令計劃排程的結果越來越準確。
我們以某橡膠密封圈加工企業作為測試對象,該企業每周生產六天,每天分為三班,每班生產的產品有可能和下一班次一樣,也有可能不一樣,并且班中也有可能換產品生產。如表一所示,我們收集了該企業82臺設備近一年的實際生產情況,一共102641條記錄,如表一所示,即每個班次每個設備上利用什么模具生產什么產品的相關信息。

表1 部分企業實際生產數據表
按照產品-模具作為條件,即產品代碼和模具代碼都相同的記錄會被視為相同的條件,按照這種分組方法可以將分為2030組。

表2 部分設備集合表
然后如表二所示,手工將8臺設備分為9個集合,保證每個集合中的機器都可以生產相同的產品。

圖2 規則表達方式
如圖2所示,由人工對生產排程的規則進行梳理,產品-模具作為條件集,設備作為屬性集,將條件集與屬性集對應即為一條規則。按照產品-模具-設備分組可以分出6658條規則,作為系統自動對產品-模具-設備集合進行規則抽取的對照組。然后再利用上文描述的方法,在系統中自動將產品-模具-設備集信息進行對應,進行相應的規則抽取。從而得到一個粗集規則表,這個表就代表了對應的產品,對應的模具應該在哪些設備集上面進行生產,我們一共抽取出了5171條規則。將兩個規則集中的規則進行一一對比后,相同的規則集有4263條。
由此,按照得到的規則來算,系統自動得到了4263條規則,實際準確的規則有6658條,自動抽取規則的準確率達到了0.64。當然由于每個設備集合中所含的設備數目是不同的,所以在規則抽取中尋找出設備數目較多的集合明顯比設備數目較少的集合要更有價值。此時我們再將設備集合中的設備數作為一個權重加入計算準確率的公式,即對于每個產品-模具條件,自動抽取規則的準確性X=numtest/numco,numtest表示系統自動抽取規則所得到的設備數目,numco表示準確的規則中所包含的設備數目。對每一個產品-模具條件計算準確性之后,再做一個平均,可以得到此時的準確性已經達到0.789。此方法的最大特點是可以快速進行部署,只需要對得到的生產數據進行簡單的數據清洗,就可以快速地得到較為準確的結果,并且可以在以后的生產中自動地不斷優化。
本文利用粗集理論,通過不可分辨關系的概念,可以將對象劃分為多個近似域,找出這些對象中隱藏的關系,十分適合于制造業中復雜多變的生產環境。具體的來說有以下特點:
1)能夠比較快速的發掘并且更新企業生產排程的規則,從而快速部署APS高級排程系統;
2)當生產數據足夠的情況下,排程的準確度相較于啟發式排程方式高,從而減少人工干預的情況,令APS排程系統實際的使用效果更好;
3)決策者的先驗知識可以很方便地在系統中進行新增與維護,并且系統可以根據實際生產數據進行自學習,從而令排程結果越來越準確。
然而,有很多企業的生產數據是有時效性的,一定時間以前的生產數據表述的知識有可能是不準確甚至是錯誤的,如何挑選生產數據與將結果規則集添加權重從而令得到的規則集更加準確是本文未解決的難點,也是下一步研究的重點。