曹宇軒 劉惠康 江典蔚
(武漢科技大學(xué)教育部冶金自動(dòng)化與檢測技術(shù)工程研究中心 武漢 430081)
LF(ladle furnace)精煉爐是煉鋼生產(chǎn)的主要工序,作為煉鋼過程的重要一環(huán),位于轉(zhuǎn)爐和連鑄之間,具有承上啟下調(diào)節(jié)生產(chǎn)節(jié)奏的作用[1]。生產(chǎn)中鋼水溫度控制、合金加入、底吹氬氣的控制精度和準(zhǔn)確性,直接影響鋼水的質(zhì)量和工序的順序進(jìn)行。傳統(tǒng)煉鋼中主要是操作工依據(jù)經(jīng)驗(yàn)來預(yù)測鋼水溫度,只能通過多次測溫來判斷是否需要電機(jī)升溫或者加廢鋼降溫,該預(yù)估方法不可靠且多次測溫效率不高,可能會(huì)帶來很大誤差,直接影響吹氬壓力大小和加合金時(shí)間,致使鋼成分不達(dá)標(biāo),嚴(yán)重情況下可能會(huì)由于溫度過低導(dǎo)致鋼水報(bào)廢,造成極大的經(jīng)濟(jì)損失[2]。
因此建立精確的LF爐溫度控制模型具有很強(qiáng)的實(shí)際意義。從國內(nèi)外溫度模型的研究實(shí)例可以看出,常用的建模方法分為3類,分別是經(jīng)驗(yàn)建模、機(jī)理建模和數(shù)據(jù)建模[3,4]。經(jīng)驗(yàn)建模是操作工經(jīng)長期的現(xiàn)場冶煉過程和經(jīng)驗(yàn)總結(jié)的經(jīng)驗(yàn)公式,它忽略了一些內(nèi)在和外在的因素,因此經(jīng)驗(yàn)公式準(zhǔn)確性勢必受到影響。機(jī)理建模主要考慮精煉過程中物理反應(yīng)和化學(xué)反應(yīng)發(fā)生的熱量變化、鋼包散熱、冶煉過程中的吹氬攪拌和耗電量,運(yùn)用公理或定理及數(shù)學(xué)方法進(jìn)行推導(dǎo)得出數(shù)學(xué)模型,但精煉環(huán)節(jié)過多的物理化學(xué)反應(yīng)導(dǎo)致推導(dǎo)過程復(fù)雜,勢必影響到建模的準(zhǔn)確性[5]。數(shù)據(jù)建模是從生產(chǎn)數(shù)據(jù)中找出冶煉過程中影響鋼水溫度的各種工藝參數(shù)及其之間的必然聯(lián)系,在人工智能快速發(fā)展的今天,數(shù)據(jù)建模相對(duì)于經(jīng)驗(yàn)建模和機(jī)理建模來說具有明顯的優(yōu)勢,運(yùn)用最多的是使用BP神經(jīng)網(wǎng)絡(luò)來預(yù)測鋼水終點(diǎn)溫度,但傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的構(gòu)建嚴(yán)重依賴于人的經(jīng)驗(yàn)和專業(yè)知識(shí),缺乏明確的理論指導(dǎo),因此如何構(gòu)建出精確、高效、泛化能力強(qiáng)的溫度預(yù)報(bào)模型具有很強(qiáng)的現(xiàn)實(shí)意義[6]。
本文參考經(jīng)驗(yàn)建模和機(jī)理建模確定了影響鋼水終點(diǎn)溫度的主要參數(shù),采用鄰近爐次法和最大似然法對(duì)數(shù)據(jù)進(jìn)行篩選建立準(zhǔn)確的樣本數(shù)據(jù)庫,并引入蒙特卡洛算法生成神經(jīng)網(wǎng)絡(luò)架構(gòu),省去了確定神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)時(shí)需要由人工實(shí)驗(yàn)的方法來不斷嘗試的復(fù)雜過程。最后再用遺傳算法對(duì)生成的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化。通過仿真分析,該預(yù)報(bào)模型精確度較高,對(duì)于實(shí)現(xiàn)LF爐“一鍵精煉”具有較大意義。
準(zhǔn)確制鋼液溫度是LF精煉過程的主要任務(wù)。溫度預(yù)報(bào)模型主要根據(jù)鋼液進(jìn)站溫度、目標(biāo)精煉溫度及時(shí)間、吹氬流量、加入的合金、渣料的加入量及各種熱損失,根據(jù)能量守恒原理計(jì)算不同處理階段需要投入的電能,并預(yù)測鋼液溫度,最終達(dá)到控制鋼液溫度的目的[7]。
傳統(tǒng)煉鋼中經(jīng)驗(yàn)建模主要是操作工依據(jù)工作經(jīng)驗(yàn)總結(jié)的經(jīng)驗(yàn)公式來預(yù)測鋼水溫度,如下為某鋼廠第二煉鋼分廠經(jīng)驗(yàn)公式。
T=T0-▽T
(1)
▽T=▽T1+▽T2-▽T3+▽T4-▽T5
(2)
其中,T0為初始值,▽T為過程溫降量,▽T1為與時(shí)間有關(guān)的溫降量,▽T2為加入合金造成的溫降量,▽T3為脫氧產(chǎn)生的升溫,▽T4為其他因素(罐況等)造成的溫降,▽T5為電極加熱產(chǎn)生的升溫。
在機(jī)理建模中,首先要求清楚整個(gè)系統(tǒng)單位時(shí)間內(nèi)的熱量吸收和流失情況,并清楚電極加熱的升溫效率及所有會(huì)導(dǎo)致鋼水溫度變化的因素,最終根據(jù)能量守恒定律來計(jì)算任意時(shí)刻的鋼水溫度。LF爐精煉過程中輸入的能量主要是電極加熱產(chǎn)生的熱量及少量合金的溶解熱和化學(xué)反應(yīng)熱[8]。進(jìn)入熔池的熱量又分為如下幾個(gè)去向。
第1部分是用于鋼液的升溫及精煉過程中添加的合金及渣料的升溫熔化。
第2部分為通過包襯損失的熱量,其中又包括2部分,分別為使包襯溫度升高的包襯耐火材料蓄熱及鋼殼與周圍大氣之間的熱交換。
第3部分是通過渣層損失的熱量,其中包括由渣面的輻射和對(duì)流傳熱導(dǎo)致的熱損失以及由熔池的高溫氣體通過渣面帶走的熱量。
由以上分析可知影響鋼水溫度的主要因素有:
(1) 鋼水初始溫度。一般將實(shí)際測量的溫度作為初始溫度。
(2) 鋼水重量。每爐鋼包中鋼水的重量存在差異,將會(huì)對(duì)LF爐的溫度產(chǎn)生一定的影響。
(3) 鋼包處理時(shí)間。指鋼包到達(dá)工作站點(diǎn)到鋼包離開工作站點(diǎn)之間的處理時(shí)間。
(4) 鋼水氧含量。在傳統(tǒng)機(jī)理建模中往往只考慮合金加入時(shí)對(duì)鋼水降溫的影響,而忽略氧化反應(yīng)放出的熱量對(duì)鋼水升溫的影響。在某些特殊鋼種的冶煉中,鋼水加入合金時(shí)有部分脫氧合金(AL或硅錳合金)與鋼水中的氧反應(yīng)會(huì)產(chǎn)生大量的熱,為保證模型精度和適用性要求,此部分不可忽略。
(5) 渣厚。渣層可以防止鋼液溫度的散發(fā),由于渣的導(dǎo)熱系數(shù)相對(duì)較小,使渣層起到隔熱保溫作用,可有效減少鋼水熱損失。
(6) 罐況。新鋼包和舊鋼包對(duì)LF爐的溫度也有不同程度的影響,鋼包的使用次數(shù)也稱包齡,在此溫度模型中根據(jù)每個(gè)鋼包的包齡和保溫效果將其從好到壞依次分為A、B、C、D 4類。
(7) 電極加熱。LF爐是通過三相石墨電極進(jìn)行加熱的,電極的加熱是爐內(nèi)熱量的主要來源。
(8) 吹氬量。氬氣的攪拌可以均勻爐內(nèi)鋼水溫度,使鋼水和加入的合金進(jìn)行充分的化學(xué)反應(yīng),同時(shí)將鋼液中的雜質(zhì)送入渣層進(jìn)行化學(xué)反應(yīng),達(dá)到成分微調(diào)的目的。但是該過程也帶走一部分熱量,尤其是強(qiáng)吹氬時(shí),對(duì)LF爐的溫度影響較大。
(9) 加入合金量。對(duì)鋼水進(jìn)行成分微調(diào)或者脫氧時(shí)加入的合金與鋼水反應(yīng)、溶解也會(huì)對(duì)鋼水溫度產(chǎn)生一定影響。
(10) 渣料加入量。當(dāng)鋼水溫度過高時(shí)會(huì)加入廢鋼進(jìn)行調(diào)溫。
神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索(neural architecture search, NAS)是自動(dòng)機(jī)器學(xué)習(xí)(automated machine learning, AutoML)中的熱點(diǎn)問題之一。通過設(shè)計(jì)經(jīng)濟(jì)高效的搜索方法,自動(dòng)獲得泛化能力強(qiáng)、硬件友好的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),可以大量節(jié)省人工。
圖1展示了基于人工的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)和NAS的對(duì)比。完全基于人工的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)一般包括以下關(guān)鍵流程。
(1)由已知的神經(jīng)變換(operations)如卷積(convolution)池化(pooling)等設(shè)計(jì)一些拓?fù)浣Y(jié)構(gòu);
(2)在所給定訓(xùn)練集上訓(xùn)練這些網(wǎng)絡(luò)至收斂;
(3)在測試集上測試這些網(wǎng)絡(luò)收斂結(jié)果;
(4)根據(jù)測試準(zhǔn)確率選擇網(wǎng)絡(luò)結(jié)構(gòu);
(5)人工優(yōu)化拓?fù)浣Y(jié)構(gòu)設(shè)計(jì)并回到步驟(1)。
其中,步驟(5)需要消耗大量的人力和時(shí)間,而且在探索網(wǎng)絡(luò)結(jié)構(gòu)時(shí)更多的來自于經(jīng)驗(yàn),缺乏明確的理論指導(dǎo)。將該步驟自動(dòng)化,轉(zhuǎn)交給計(jì)算機(jī)完成是NAS的核心目的。
圖1 人工的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)和NAS對(duì)比
蒙特卡羅方法(Monte Carlo method),也稱統(tǒng)計(jì)模擬方法,是20世紀(jì)40年代中期隨著科學(xué)技術(shù)的發(fā)展和電子計(jì)算機(jī)的發(fā)明,而被提出的一種以概率統(tǒng)計(jì)理論為指導(dǎo)的一類重要的數(shù)值計(jì)算方法,使用隨機(jī)數(shù)(或更常見的偽隨機(jī)數(shù))來解決很多計(jì)算問題的方法。蒙特卡羅方法的解題過程可以歸結(jié)為3個(gè)主要步驟,構(gòu)造或描述概率過程、實(shí)現(xiàn)從已知概率分布抽樣及建立各種估計(jì)量。
計(jì)算機(jī)技術(shù)的發(fā)展使得蒙特卡羅方法在最近10年得到快速的普及?,F(xiàn)代的蒙特卡羅方法,已經(jīng)不必親自動(dòng)手做實(shí)驗(yàn),而是借助計(jì)算機(jī)的高速運(yùn)轉(zhuǎn)能力,使得原本費(fèi)時(shí)費(fèi)力的實(shí)驗(yàn)過程變成了快速和輕而易舉的事情。從理論上來說,蒙特卡羅方法需要大量的實(shí)驗(yàn)。實(shí)驗(yàn)次數(shù)越多,所得到的結(jié)果越精確。本文將以蒙特卡洛方法來實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì),省去了BP神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)中由人工實(shí)驗(yàn)不斷嘗試來確定網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜過程。
BP(back propagation)神經(jīng)網(wǎng)絡(luò)是一種在誤差反向傳播算法的指導(dǎo)下進(jìn)行訓(xùn)練的多層前饋網(wǎng)絡(luò),經(jīng)過多年的發(fā)展已經(jīng)成為目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型。BP網(wǎng)絡(luò)可以在事前未揭示輸入輸出之間映射關(guān)系的條件下,通過訓(xùn)練數(shù)據(jù)的學(xué)習(xí),逼近可以描述問題中輸入輸出關(guān)系的數(shù)學(xué)方程[9]。網(wǎng)絡(luò)以最速下降法作為學(xué)習(xí)規(guī)則,網(wǎng)絡(luò)的輸出誤差沿著網(wǎng)絡(luò)逐層反向傳播,每層神經(jīng)元根據(jù)誤差關(guān)系不斷調(diào)整連接權(quán)值和閾值,以不斷降低網(wǎng)絡(luò)輸出誤差為目標(biāo),最終達(dá)到誤差平方和的最小值。BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層(input layer)、隱含層(hidden layer)和輸出層(output layer)。
遺傳算法是模擬種群在自然界中的遺傳和進(jìn)化過程而建立起來的一種高度并行的全局性概率搜索算法,體現(xiàn)著―優(yōu)勝劣汰、適者生存的自然界法則[10]。遺傳算法運(yùn)行效率高,可以并行處理問題而且是從全局出發(fā)進(jìn)行搜索,能在搜索中主動(dòng)學(xué)習(xí)和積累其空間的知識(shí),不斷縮小搜索范圍以最終達(dá)到最優(yōu)解[11,12]。
遺傳算法主要由編解碼規(guī)則、遺傳算子和適應(yīng)度函數(shù)等幾個(gè)部分組成。其中,遺傳算子包含選擇算子、交叉算子和變異算子。
通過對(duì)印度比萊鋼鐵廠LF爐現(xiàn)場工藝分析結(jié)合經(jīng)驗(yàn)建模和機(jī)理建模,得出影響溫度變化的主要因素有鋼包初始溫度、鋼水重量、鋼包處理時(shí)間、鋼水氧含量、渣厚、罐況、電耗、冶煉過程中的吹氬量、加入合金量和廢鋼加入量10個(gè)輸入量。
神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索一般包括3步。首先定義搜索空間;然后通過搜索策略找出候選網(wǎng)絡(luò)結(jié)構(gòu),對(duì)它們進(jìn)行評(píng)估;根據(jù)反饋進(jìn)行下一輪的搜索[13]。
(1) 定義搜索樣本空間
為了縮小樣本空間,本文對(duì)網(wǎng)絡(luò)結(jié)構(gòu)做如下規(guī)定:
1)網(wǎng)絡(luò)輸入層輸出層神經(jīng)元個(gè)數(shù):與輸入輸出數(shù)據(jù)參數(shù)個(gè)數(shù)對(duì)應(yīng),分別取10和1。
隱藏層層數(shù)及神經(jīng)元個(gè)數(shù):理論上一個(gè)3層的BP神經(jīng)網(wǎng)絡(luò)可以完成任意n到m維的映射。因此本文為縮小樣本空間隱藏層層數(shù)設(shè)定為1。隱藏層神經(jīng)元個(gè)數(shù)在1至50之間隨機(jī)取值。
2)激活函數(shù)選擇:在logsig、tansig、relu、purelin、hardlim函數(shù)中選擇。
3)訓(xùn)練函數(shù)選擇:在traimlm、trainbr、trainrp、trainscg中選擇。
(2) 確定搜索策略
本文搜索策略采用蒙特卡洛方法進(jìn)行模擬隨機(jī)搜索。通過多次實(shí)驗(yàn)發(fā)現(xiàn)通過對(duì)搜索策略做如下定義可提高搜索效率:每次隨機(jī)生成3個(gè)網(wǎng)絡(luò)結(jié)構(gòu)并記錄最好的網(wǎng)絡(luò)結(jié)構(gòu),剩下的2個(gè)網(wǎng)絡(luò)結(jié)構(gòu)中1個(gè)在保持當(dāng)前最優(yōu)網(wǎng)絡(luò)結(jié)構(gòu)的隱藏層神經(jīng)元個(gè)數(shù)不變的情況下,對(duì)各層網(wǎng)絡(luò)的激活函數(shù)和訓(xùn)練函數(shù)隨機(jī)生成,另一個(gè)在保證與當(dāng)前最優(yōu)網(wǎng)絡(luò)結(jié)構(gòu)中激活函數(shù)和訓(xùn)練函數(shù)相同的情況下對(duì)于隱藏層神經(jīng)元個(gè)數(shù)隨機(jī)生成。
(3) 網(wǎng)絡(luò)結(jié)構(gòu)評(píng)估
本文中神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)隨機(jī)搜索以實(shí)際輸出與期望輸出之間的均方根誤差值(RMSE)為評(píng)估函數(shù),如式(3)所示。
(3)
(1) 輸入變量編碼和種群初始化
本文采用遺傳算法進(jìn)行BP網(wǎng)絡(luò)權(quán)值和閾值的優(yōu)化過程中,對(duì)初始種群采取實(shí)數(shù)編碼,每個(gè)個(gè)體由一組實(shí)數(shù)串組成。當(dāng)通過蒙特卡洛方法確定BP網(wǎng)絡(luò)結(jié)構(gòu)后,個(gè)體編碼長度也隨權(quán)值和閾值個(gè)數(shù)確定。本文將種群大小初始化為20,最大進(jìn)化代數(shù)設(shè)置為100,遺傳算法以這20個(gè)個(gè)體作為初始點(diǎn)進(jìn)行迭代。
(2) 適應(yīng)度函數(shù)計(jì)算
BP神經(jīng)網(wǎng)絡(luò)的誤差絕對(duì)值越小越好,而遺傳算法中,適應(yīng)度值越大越好,因此本文選取測試集數(shù)據(jù)誤差平方和的倒數(shù)作為適應(yīng)度函數(shù),以便使遺傳算法朝向適應(yīng)度函數(shù)增大的方向進(jìn)化。
(3) 選擇交叉變異
選擇交叉變異是遺傳算法的核心[14]。本文選擇操作采用輪盤賭法,首先產(chǎn)生0與1之間的隨機(jī)數(shù)確定種群中個(gè)體被選中次數(shù),然后根據(jù)上述適應(yīng)度函數(shù)計(jì)算,選擇適應(yīng)度大的進(jìn)入下一代種群。在權(quán)值和閾值優(yōu)化過程中,交叉操作采用交叉算子,利用一對(duì)個(gè)體根據(jù)給定的概率重組產(chǎn)生新的種群后代。算法流程如圖2所示。
本文實(shí)驗(yàn)數(shù)據(jù)以印度比萊鋼鐵廠某一鋼種的400組冶煉數(shù)據(jù)為原始樣本,通過最大似然法剔除當(dāng)中有明顯誤差的不合理數(shù)據(jù),采用鄰近爐次法去除時(shí)間太久的不具有參考價(jià)值的歷史數(shù)據(jù)。經(jīng)過挑選之后剩下360組數(shù)據(jù)建立新的數(shù)據(jù)庫進(jìn)行仿真分析,其中240組數(shù)據(jù)用作訓(xùn)練集進(jìn)行訓(xùn)練,120組用作驗(yàn)證集進(jìn)行驗(yàn)證,結(jié)果發(fā)現(xiàn),NAS-GA-BP溫度模型預(yù)測LF終點(diǎn)溫度的預(yù)測數(shù)據(jù)與實(shí)際數(shù)據(jù)的預(yù)報(bào)誤差在±5 ℃的命中率達(dá)到90.52%,在±10 ℃以內(nèi)的命中率達(dá)到了96.93%。通過對(duì)比孫小強(qiáng)[8]采用BP神經(jīng)網(wǎng)絡(luò)與修正方法相結(jié)合的方法預(yù)報(bào)誤差處于±10 ℃以下的數(shù)據(jù)為85%,±15 ℃以內(nèi)的數(shù)據(jù)為90%;李強(qiáng)等人[14]采用人工神經(jīng)網(wǎng)絡(luò)和專家系統(tǒng)相結(jié)合建立的LF溫度預(yù)報(bào)模型,預(yù)報(bào)誤差在±5 ℃的命中率為85%;李軍等人[7]采用遺傳算法(GA)和粒子群算法(PSO)混合優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值建立的GA-PSO-BP溫度預(yù)報(bào)模型的預(yù)報(bào)誤差在±5 ℃的誤差為88%,可知該模型比傳統(tǒng)的幾種算法具有更高的預(yù)測精度和學(xué)習(xí)能力,其部分仿真預(yù)測數(shù)據(jù)與實(shí)際數(shù)據(jù)對(duì)比如圖3所示,可知此溫度預(yù)報(bào)模型可以滿足大部分鋼種甚至某些特殊鋼種的實(shí)際生產(chǎn)需要。
圖2 算法流程圖
本文通過對(duì)傳統(tǒng)的經(jīng)驗(yàn)建模和機(jī)理建模的研究發(fā)現(xiàn),鋼水脫氧時(shí)的升溫對(duì)鋼水溫度的影響較大,在考慮特殊鋼水加合金進(jìn)行調(diào)成份和脫氧的工藝條件下,加入鋼水氧含量這一關(guān)鍵輸入?yún)?shù)增加了該模型的適用性和精確性。
圖3 預(yù)測數(shù)據(jù)與實(shí)際數(shù)據(jù)對(duì)比圖
針對(duì)神經(jīng)網(wǎng)絡(luò)方法對(duì)結(jié)構(gòu)設(shè)計(jì)要求很高,比較依賴結(jié)構(gòu)和設(shè)計(jì)使用者的經(jīng)驗(yàn)的問題,本文提出了一種基于蒙特卡羅方法實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)自生成的基礎(chǔ)上使用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值的LF溫度預(yù)報(bào)模型。該模型的應(yīng)用節(jié)省了人力,具有更好的泛化能力。
表1 實(shí)驗(yàn)數(shù)據(jù)(20組)
用最大似然法和鄰近爐次法對(duì)原始數(shù)據(jù)進(jìn)行挑選之后,通過對(duì)BP網(wǎng)絡(luò)、GA-BP網(wǎng)絡(luò)和NAS-GA-BP網(wǎng)絡(luò)預(yù)測LF終點(diǎn)溫度的比較發(fā)現(xiàn),該模型相比于傳統(tǒng)的幾種算法要好,本模型的預(yù)報(bào)誤差在±5 ℃的命中率達(dá)到90.52%,在±10 ℃以內(nèi)的命中率達(dá)到了96.93%,具有較高的預(yù)測精度,能夠滿足LF爐爐外精煉生產(chǎn)需要。