余 娜,何國榮,李培東,馬 馳
(楊凌職業(yè)技術學院,陜西 楊凌 712100)
智能制造工業(yè)生產調動是指在制造過程中,通過對設備、生產環(huán)境、生產流程等方面的優(yōu)化,實現(xiàn)制造系統(tǒng)的高效運行和質量提升。智能制造工業(yè)生產調動是一個復雜的多目標優(yōu)化問題,主要涉及到設備、生產環(huán)境、生產流程等方面的優(yōu)化。隨著智能制造技術的不斷發(fā)展,生產調動已經成為智能制造領域的重要研究方向之一[1]。智能制造工業(yè)生產調動的研究背景主要有制造環(huán)境復雜、資源配置困難、生產需求多樣和智能技術的應用[2]。其中制造環(huán)境復雜是指隨著智能制造技術的不斷發(fā)展,制造環(huán)境日益復雜,不僅僅需要考慮設備的配置問題,還要考慮如何保證生產過程中的質量和穩(wěn)定性。資源配置困難是指在智能制造工業(yè)中,設備、生產環(huán)境、生產流程等方面都需要進行優(yōu)化,以實現(xiàn)資源的最優(yōu)配置。生產需求多樣是指在智能制造工業(yè)中,生產需求多樣,不僅需要滿足單一產品的需求,還要滿足多產品、多批次的需求。智能技術應用是指隨著人工智能技術的不斷發(fā)展,智能制造技術已經開始應用于生產調動領域[3]。
綜上所述,智能制造工業(yè)生產調動的研究背景非常復雜,需要綜合考慮多個方面的因素,以實現(xiàn)制造系統(tǒng)的高效運行和質量提升。許多學者也著手研究如何利用人工智能算法解決智能制造工業(yè)生產調動問題[4]。國外學者主要從算法設計、算法性能提升和交叉學科研究等方面進行生產調動研究。Shang C等人回顧了應用于工業(yè)過程監(jiān)測、控制和優(yōu)化的數(shù)據(jù)分析和機器學習的最新進展,特別關注機器學習模型的可解釋性和功能性。通過分析實際需求與當前研究現(xiàn)狀之間的差距,確定了機器人學習模型在智能制造中的重要意義[5]。國內學者潘俊峰等人提出了一種基于深度學習和多Agent協(xié)作的智能制造任務調動方法,用于求解離散型任務調動問題[6]。然而,目前國內在任務調動領域的研究仍存在一些不足之處。例如:現(xiàn)有研究大多集中在某一具體的生產調動上,缺乏對整個制造系統(tǒng)的研究;同時現(xiàn)有研究方法大多基于傳統(tǒng)知識和經驗,缺乏對新情況和新技術的研究等[7]。近年來,模擬退火算法(SA,simulated annealing)因其良好的全局搜索能力和快速的收斂速度而備受關注。它是一種通過模擬退火過程來尋找最優(yōu)解的優(yōu)化算法。因此,研究基于改進SA算法應用于智能制造工業(yè)生產調動優(yōu)化中的可行性和優(yōu)勢進行分析,并構建模型,旨為智能制造工業(yè)生產調動提供一種新的研究思路。
SA是一種基于隨機抽樣的優(yōu)化算法。它通過模擬自然界中熱力學過程的退火機制來尋找最優(yōu)解,具有很高的全局搜索能力和快速的收斂速度。在金屬加工鍛造行業(yè)中,所謂的退火,就是將一種金屬材料,加熱到熔化的程度,再進行降溫處理,讓它慢慢冷卻,最后變成一種規(guī)則的晶體[8-9]。SA法是模擬金屬退火處理的一種隨機搜索法,能夠用于解決組合優(yōu)化問題。但是,該方法在求解時,不僅采用了隨機搜索的方式,還引入了金屬退火這一自然規(guī)律,使其在求解時不受初值的影響,并具有漸進收斂性,能夠迅速求解出最優(yōu)解,并被證實為一種基于概率1的全局優(yōu)化方法[10]。研究以局部搜索算法為切入點,在每次運算時,隨機產生一個新的狀態(tài),并按照概率算法標準,以一定的概率接收到新的狀態(tài),從而使算法獲得全局最優(yōu)解。
在智能制造企業(yè)中,生產調度任務的優(yōu)化是一個非常有意義的研究課題。智能制造工業(yè)指的是運用人工智能、物聯(lián)網(wǎng)、大數(shù)據(jù)等技術,實現(xiàn)工業(yè)生產的智能化和數(shù)字化,從而提升生產效率和產品質量。調度任務優(yōu)化是智能制造領域的一項重要課題,涉及到生產計劃制定、資源配置、裝備調度等諸多因素。在傳統(tǒng)的調度優(yōu)化方法中,常用的優(yōu)化算法是遺傳算法和粒子群優(yōu)化算法。該方法具有良好的全局尋優(yōu)能力和快速的收斂性,但是也存在易陷入局部極值等問題。該方法采用了局部尋優(yōu)策略,對局部最優(yōu)解進行了不斷地調整,最終達到了全局最優(yōu)。為了解決容易陷入局部最優(yōu)的問題,研究對SA算法進行了研究,發(fā)現(xiàn)SA算法不僅具有很強的魯棒性,而且還具有很強的局部搜索能力,相對于其它的優(yōu)化搜索方法,它在解決組合優(yōu)化問題方面有很多獨特的特征和優(yōu)勢[12-13]。首先,SA算法可以在不同的退火溫度下進行求解,并且可以進行一定的惡意求解,從而避免了陷入局部極值問題。其次,SA算法在修正時,按照對退火溫度的需求,將退火過程分為相應的階段,而在各個階段中,相應的選擇和選擇的標準溫度值都是不一樣的。同時,該算法的迭代次數(shù)越多,溫度越低。此時函數(shù)的選擇需要根據(jù)對應的收斂速度,溫度下降的函數(shù)可用公式(1)計算。
(1)
公式(1)中,T0表示算法開始時的溫度;k表示算法中的迭代次數(shù)。由于函數(shù)隨著溫度的變化出現(xiàn)了緩慢下降,為了快速地模擬算法溫度下降函數(shù)的計算,通過優(yōu)化,可用公式(2)表示。
(2)
公式(2)中,α表示退火過程中的溫度下降系數(shù)。研究從分子的熱力學特性出發(fā),利用物質中高能分子的存在幾率較低的特點,使得低溫區(qū)的求解幾率較高,從而使獲得最佳求解的幾率較高。在高溫區(qū),氣溫迅速降低,并隨時間逐漸減小,此時的目標函數(shù)可用公式(3)計算。
f(xk),1≤k≤n
(3)
公式(3)中,n表示樣本數(shù)量。目標函數(shù)與退火過程中系統(tǒng)熵是相對應的,目標函數(shù)是一個關于xk的函數(shù),f(xk)在解空間中存在著最小值或最大值,而該最值所對應的解,就是命題的最優(yōu)解??捎霉?4)表示。
Δf=f(xk)-f(xk-1)
(4)
公式(4)中,Δf≤0表示目標函數(shù)是最優(yōu)解;當Δf>0表示目標函數(shù)接收了惡化解。SA算法的基本流程圖如圖1所示。
圖1 SA算法的基本流程
智能制造工業(yè)生產調動模型的目標是實現(xiàn)生產過程的優(yōu)化和自動化,從而提高生產效率和產品質量。在這個目標下,調動模型需要解決生產過程中的多個問題,如生產計劃、資源分配、設備調動等[14]。通過對這些問題的優(yōu)化和控制,可以提高生產效率和產品質量,從而實現(xiàn)更好的經濟效益。由1.1分析可知,傳統(tǒng)的模擬退火算法通常通過隨機抽樣的方式來生成初始解,并且需要經過一段時間的運行才能收斂到最優(yōu)解。它存在著一些缺點,這些缺點主要包括易陷入局部最優(yōu)解、計算效率低、容易受到外界因素的影響[15-16]。模擬退火算法是一種無偏搜索,但在實際應用中,局部最優(yōu)解可能更容易得到。計算效率低是指SA算法在大規(guī)模問題中,它的計算效率較低,難以滿足實時性要求。易受外界因素影響是指SA算法依賴于當前狀態(tài),如果外界因素發(fā)生變化,這會對算法的精確度造成影響。這表明SA算法雖然有強大的優(yōu)化能力,但是也必須與精確的制冷計劃相結合才能實現(xiàn)[17]。為了實現(xiàn)全局收斂,需要有較高的初溫和較慢的退火速度,所以如何提升算法的運行效率成為SA算法應用中的瓶頸[18-19]。為了克服SA算法的缺點,研究在熱動力學過程方面,引入了一個新的溫度控制機制,使得算法能夠更好地適應環(huán)境溫度的變化。
在引入新溫度的控制機制求解過程中,需要根據(jù)不同的命題,分別設計相應的狀態(tài)產生函數(shù),使算法的性能得到充分的發(fā)揮。這樣算法不僅需要在解空間中實現(xiàn)全局尋優(yōu),而且還需要通過隨機產生的狀態(tài)與問題的實際狀態(tài)之間存在某種概率相關性,從而極大地提升算法的收斂性和求解質量[20-21]。因此,研究對SA方法中的狀態(tài)產生函數(shù)作進行優(yōu)化,以減小解的搜索空間并加快其收斂性。但是該方法在求解過程中存在著較大的收斂空間而無法達到全局最優(yōu)的問題,并且容易在較大的范圍內陷入局部極值。研究在SA算法中引入了初始溫度和降溫函數(shù)的概念,同時在算法中引入了加熱機制。加熱機制中的初值選取對算法的收斂性和結果的優(yōu)劣有很大的影響。SA算法的退火過程與金屬的熔點類似,即太高的溫度會導致退火過程中使金屬過早融化,太低的溫度會使金屬不能融化,從而達不到設計的效果[22]。通過上述分析,初始溫度的選擇可以根據(jù)公式(5)。
(5)
公式(5)中,SR0的取值范圍[0.1~0.5];J0表示目標函數(shù)的初始值。若要快速高效的進行冷卻,就需要設計合適的降溫算法,使其能夠在迅速降溫的同時,保證收斂概率仍為1到全局最優(yōu)。降溫函數(shù)可用公式(6)計算。
Tk=α*Tk-1,(0<α<1)
(6)
公式(6)中,Tk-1表示絕對熱度值。升溫機制表示在算法中完成10次迭代仍然沒有搜索到最優(yōu)解,系統(tǒng)會升高退火的溫度。退火控制溫度的效率和取值與目標函數(shù)有關,退火溫度可用公式(7)表示。
(7)
公式(7)中,k表示迭代次數(shù);Tk表示升溫機制工作后的溫度;SRk表示迭代次數(shù)為k時的對應值;Jk表示迭代次數(shù)為k時的評價值。經改進SA算法構建的智能制造工業(yè)調動流程圖如圖2所示。
圖2 改進SA算法構建的生產調動流程圖
為了驗證模型算法的性能,研究用MatlabR作為模擬平臺,在Windows10系統(tǒng)中運行,采用Intel(R)Core(TM)i7-2450 MCPU@2.50 Ghz(8.0 GB)的存儲空間進行模擬。具體的參數(shù)設定為,種群大小為100,c=0.6,初始溫度為100 ℃,終止溫度為10 ℃,溫度可以降低的最大次數(shù)M=500。在此參數(shù)下運行10次,利用GA算法、PSO算法和改進GA算法進行對比。為了驗證模型方法在運行過程中的穩(wěn)定性和準確率,研究利用GA算法、PSO算法和模型算法進行對比,通過對比3種算法在自動調動過程中的準確率和F1值來判斷模型算法是否具有優(yōu)越性。同時為了測試模型算法在數(shù)據(jù)集中的可靠性,實驗隨機生成了100個測試樣本,且每個測試樣本中包含10個加工工件和1臺機器,并采用機器指派規(guī)則,即當其它機器存在加工工件完成的情況時,系統(tǒng)會將未完成的工件分配到該機器。利用Matlab對100個測試樣本進行仿真運算,將模型算法與現(xiàn)有的傳統(tǒng)算法分別在測試樣本中進行運行,運行10次,并收集運行的平均值,用運行結果的平均值去判斷模型方法的性能。圖3表示3種算法在自動調動過程中的準確率和召回率對比圖,此處的召回率表示算法對全局數(shù)據(jù)的搜索檢測能力,以判斷數(shù)據(jù)是否存在漏檢的情況,即當召回率越高,漏檢的數(shù)據(jù)越少,從而判斷檢測準確率的可靠性。
圖3 不同算法的準確率和召回率
由圖3(a)可知,隨著迭代次數(shù)的增加,3種算法的準確率都在增加,其中模型算法的準確率最高,其次是PSO算法,效果最差的是GA算法。模型算法的準確率最大值為94.21%,準確率平均值為88.12%;PSO算法的準確率最大值為83.69%,準確率平均值為78.99%;GA算法的準確率最大值為70.46%,準確率平均值為67.58%。模型算法準確率最大值比PSO算法和GA算法分別高出了10.52%和23.75%,而模型算法的準確率平均值比PSO算法和GA算法分別高出了9.13%和20.54%。由圖3(b)可知,隨著迭代次數(shù)的增加,3種算法的召回率也都在增加,其中模型算法的召回率最高,其次是PSO算法,效果最差的是GA算法。模型算法的召回率最大值為95.96%,召回率平均值為90.27%;PSO算法的召回率最大值為88.34%,召回率平均值為82.73%;GA算法的召回率最大值為75.23%,召回率平均值為69.97%。模型算法召回率最大值比PSO算法和GA算法分別高出了7.62%和20.73%,而模型算法的召回率平均值比PSO算法和GA算法分別高出了7.54%和20.3%。由此可知,模型算法在自動調動過程中的召回率也明顯高于PSO算法和GA算法,具有很高的查全率。為了驗證模型方法與真實值和傳統(tǒng)方法的差異,研究利用F1值去衡量三者之間的差異,結果如圖4。圖4表示3種算法在自動調動過程中的F1值對比圖。
圖4 不同算法的F1值
由圖4可知,3種算法在相同的迭代次數(shù)中的F1值存在著一定的差異,且隨著迭代次數(shù)的增加呈下降趨勢。其中F1值最大的算法是模式算法,其次是PSO算法,最低的是GA算法。圖中模型算法的F1最大值為0.92,F(xiàn)1的平均值為0.89;PSO的F1最大值為0.81,F(xiàn)1的平均值為0.74;GA的F1最大值為0.72,F(xiàn)1的平均值為0.61。模型算法的F1平均值分別比PSO算法和GA算法高出0.15和0.28,且模型算法的F1最大值分別比PSO算法和GA算法高出0.11和0.20。這說明模型算法的F1值均為最優(yōu),結合圖5、圖6分析可知,在經過仿真實驗的對比后發(fā)現(xiàn),模型算法的準確率和F1值均為最優(yōu)的,這說明模型算法的性能比其它兩種算法的性能更加優(yōu)越,具有更好的應用價值。
為了驗證模型的實際效果,研究利用傳統(tǒng)方法和模型算法與實際運行時的流經時間方差進行對比,圖5表示三者流經時間的方差和拖期時間方差對比圖。
圖5 傳統(tǒng)方法、模型方法與真實值的流經時間、拖期時間方差對比
由圖5(a)可知,傳統(tǒng)方法的流經時間方差與真實值之間差異較大,傳統(tǒng)方法的流經時間方差最大值為426.19 s2,流經時間方差平均值為263.75 s2。模型方法與真實值的差距較小,其中模型方法的流經時間方差最大值為182.62 s2,流經時間方差的平均值為129.81 s2;而真實值的最大流經時間方差為152.99 s2,流經方差的平均值為87.57 s2。其中模型方法的流經方差最大值比真實值高出29.63 s2,流經方差的平均值高出42.24 s2;傳統(tǒng)方法的流經方差最大值比真實值高出273.2 s2,流經方差的平均值高出176.18 s2。這說明傳統(tǒng)方法在自動調動的過程中需要花費更多的時間,而模型方法與真實值相差19.37%,在自動調動的過程中能夠節(jié)省較多時間,相比傳統(tǒng)方法節(jié)省了49.21%的流經時間,體現(xiàn)了模型方法的可靠性。由圖5(b)可知,傳統(tǒng)方法和模型方法的拖期時間方差與真實值之間都存在差異,其中傳統(tǒng)方法的差異更大,模型方法的差異也很明顯。傳統(tǒng)方法的拖期時間方差最大值為361.85 s2,拖期時間方差平均值為153.68 s2。模型方法與真實值的差距較小,其中模型方法的拖期時間方差最大值為98.15 s2,拖期時間方差的平均值為69.22 s2;而真實值的最大拖期時間方差為12.41 s2,拖期方差的平均值為9.56 s2。其中模型方法的拖期方差最大值比真實值高出85.74 s2,拖期方差的平均值高出59.66 s2;傳統(tǒng)方法的拖期方差最大值比真實值高出349.44 s2,拖期方差的平均值高出144.12 s2。這說明模型方法和傳統(tǒng)方法在生產調動過程中都存在拖期的情況,其中模型方法與真實值的差距小一些,且明顯優(yōu)于傳統(tǒng)方法,由此可看出模型方法與傳統(tǒng)方法相比,能夠縮短自動調動生產中的拖期時間,具有更好時效性。為了驗證模型方法在多生產任務調動中的性能,研究對資源利用率、平均完工時間和不公平度3個方面對模型方法、傳統(tǒng)方法和真實值進行統(tǒng)計和分析,結果如圖6所示。
圖6 不同任務下的不公平度、平均完工時間和資源利用率對比
由圖6(a)可知,在不同任務數(shù)量下,真實值、模型方法和傳統(tǒng)方法的不公平度均存在差異,在2個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的不公平度分別為8.96%、12.57%和28.13%;真實值與模型方法、傳統(tǒng)方法的不公平度相比低3.61%和19.17%,其中模型方法與真實值的差距僅為3.61%。在3個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的不公平度分別為12.63%、16.84%和32.66%;真實值與模型方法、傳統(tǒng)方法的不公平度相比低4.21%和20.03%,其中模型方法與真實值的差距僅為4.21%。在4個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的不公平度分別為17.01%、20.73%和38.23%;真實值與模型方法、傳統(tǒng)方法的不公平度相比低3.72%和21.22%,其中模型方法與真實值的差距僅為3.72%。這能夠說明模型方法具有較高的穩(wěn)定性。
由圖6(b)可知,在不同任務數(shù)量下,真實值、模型方法和傳統(tǒng)方法的平均完成時間也存在差異,在2個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的平均完成時間分別為56.19 min、59.87 min和65.03 min;真實值與模型方法、傳統(tǒng)方法的平均完成時間相比低3.68 min和8.84 min,其中模型方法與真實值的差距僅為3.68 min。在3個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的平均完成時間分別為65.05 min、69.38 min和73.69 min;真實值與模型方法、傳統(tǒng)方法的平均完成時間相比低4.33 min和8.64 min,其中模型方法與真實值的差距僅為4.33 min。在4個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的平均完成時間分別為85.33 min、89.92 min和93.81 min;真實值與模型方法、傳統(tǒng)方法的平均完成時間相比低4.59 min和8.48 min,其中模型方法與真實值的差距僅為4.59 min。這能夠說明模型方法與真實值的完成時間差距不大,能夠有效地利用時間,具有較高的可行性。
由圖6(c)可知,在不同任務數(shù)量下,真實值、模型方法和傳統(tǒng)方法的平均資源利用率同樣也存在差異,在2個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的平均資源利用率分別為85.71%、83.69%和79.53%;真實值與模型方法、傳統(tǒng)方法的平均資源利用率相比高出2.02%和6.18%,其中模型方法與真實值的差距僅為2.02%。在3個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的平均資源利用率分別為80.29%、78.07%和74.21%;真實值與模型方法、傳統(tǒng)方法的平均資源利用率相比高出2.22%和6.08%,其中模型方法與真實值的差距僅為2.22%。在4個任務數(shù)量時,真實值、模型方法和傳統(tǒng)方法的平均資源利用率分別為74.95%、69.94%和65.71%;真實值與模型方法、傳統(tǒng)方法的平均資源利用率相比高出5.01%和9.24%,其中模型方法與真實值的差距為5.01%。驗證了模型方法具有較強的資源利用能力,防止了資源的浪費。
為了解決智能生產過程中的資源分配等問題,研究構建了基于智能制造工業(yè)生產調動模型。研究首先對SA算法進行了優(yōu)化,其次利用優(yōu)化后的算法構建了生產調動模型,最后通過仿真實驗去驗證模式算法的性能。為了驗證模型方法在運行過程中的穩(wěn)定性和準確率,研究利用GA算法、PSO算法和模型算法進行對比,通過三者的準確率和F1值來判斷哪種算法的性能更優(yōu)。通過比較發(fā)現(xiàn)3種算法中模型算法的準確率和F1值均為最佳。實驗結果表明,改進的模擬退火算法在調動優(yōu)化問題中具有一定的優(yōu)勢。在計算效率方面,改進的模擬退火算法比傳統(tǒng)算法有了顯著提高,能夠更快地收斂到最優(yōu)解。同時在適應度函數(shù)方面,改進的模擬退火算法能夠更好地捕捉全局最優(yōu)解。在實際生產調動數(shù)據(jù)集中,利用模型算法、傳統(tǒng)算法與真實值進行比較,發(fā)現(xiàn)模型算法與真實值之間的差異更小,模型方法與真實值相差19.37%,相比傳統(tǒng)方法節(jié)省了49.21%的流經時間;模式算法拖期方差平均值高出真實值59.66 s2;傳統(tǒng)方法拖期方差的平均值比真實值高出144.12 s2。同時為了驗證模型方法在不同任務數(shù)量下的性能,研究利用資源利用率、平均完工時間和不公平度對模型方法進行驗證,在不同任務數(shù)量的情況下,模型方法的資源利用率、平均完工時間和不公平度與真實值之間的差異很小,驗證了模型方法具有較高的可行性,同時這也表明基于改進SA算法的智能化生產調動系統(tǒng)能夠有效解決傳統(tǒng)生產過程中存的產品拖期交付、資源浪費等問題,提高生產制造的完成效率,能夠在現(xiàn)有條件下將資源盤活,降低企業(yè)的運營成本。但研究中還存在不足之處,由于研究利用的生產數(shù)據(jù)采集具有一定的行業(yè)局限性,未來可以將智能信息采集計算、生產控制等功能全面結合起來,完善智能制造工業(yè)生產任務調動系統(tǒng)。