張文興,甘子橋,王建國(guó)
(內(nèi)蒙古科技大學(xué)機(jī)械工程學(xué)院,內(nèi)蒙古 包頭 014010)
甲醇合成工序在煤制甲醇生產(chǎn)中處于一個(gè)核心地位,是復(fù)雜流程的化工過程,其特點(diǎn)是流程長(zhǎng)、反應(yīng)機(jī)理復(fù)雜、強(qiáng)耦合性、高度非線性、時(shí)變性。由于甲醇合成塔運(yùn)行過程往往具有動(dòng)態(tài)特性,難以用數(shù)學(xué)模型來描述。人工神經(jīng)網(wǎng)絡(luò)方法是非線性過程建模的一種有效的方法,眾多領(lǐng)域中應(yīng)用最廣、最有成效的是多層前向網(wǎng)絡(luò),但它是一個(gè)靜態(tài)神經(jīng)網(wǎng)絡(luò),實(shí)現(xiàn)的是系統(tǒng)輸入與輸出之間的靜態(tài)匹配,無法準(zhǔn)確地反映甲醇合成過程的動(dòng)態(tài)特性。動(dòng)態(tài)神經(jīng)網(wǎng)絡(luò)具有延遲或反饋環(huán)節(jié),能夠更直接生動(dòng)地反應(yīng)系統(tǒng)動(dòng)態(tài)特性,Elman 網(wǎng)絡(luò)作為一種動(dòng)態(tài)遞歸神經(jīng)網(wǎng)絡(luò),對(duì)歷史數(shù)據(jù)具有敏感性,具有處理動(dòng)態(tài)信息的能力[1],然而 Pham[2]等指出,采用標(biāo)準(zhǔn) BP算法訓(xùn)練的Elman 網(wǎng)絡(luò),只能逼近一階動(dòng)態(tài)系統(tǒng),要更高階動(dòng)態(tài)系統(tǒng)建模,必須采用動(dòng)態(tài)算法或采用Elman 網(wǎng)絡(luò)的改進(jìn)型。因此,本文引入一種基于結(jié)構(gòu)改進(jìn)的Elman 網(wǎng)絡(luò),即在標(biāo)準(zhǔn)Elman 網(wǎng)絡(luò)的反饋節(jié)點(diǎn)引入自反饋,針對(duì)改進(jìn)Elman 網(wǎng)絡(luò)采用BP 算法進(jìn)行訓(xùn)練導(dǎo)致的的收斂速度慢、穩(wěn)定性差和泛化能力弱的問題,引入粒子群優(yōu)化算法對(duì)動(dòng)態(tài)神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進(jìn)行優(yōu)化。實(shí)驗(yàn)結(jié)果表明,使用動(dòng)態(tài)神經(jīng)網(wǎng)絡(luò)建立的粗甲醇轉(zhuǎn)化率預(yù)測(cè)模型具有預(yù)測(cè)精度高、動(dòng)態(tài)適應(yīng)性強(qiáng)、結(jié)構(gòu)簡(jiǎn)單等特點(diǎn);引入粒子群算法對(duì)動(dòng)態(tài)神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化后,模型的實(shí)時(shí)性、穩(wěn)定性和泛化能力都得到明顯的增強(qiáng)。
圖1 為改進(jìn)Elman 網(wǎng)絡(luò)結(jié)構(gòu),即在標(biāo)準(zhǔn)Elman網(wǎng)絡(luò)的反饋節(jié)點(diǎn)上加自反饋,系數(shù)為α,如圖1中虛線所示。
圖1 改進(jìn)Elman 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 The block diagram of modifield Elman neural network
因此可得:
改進(jìn) Elman 神經(jīng)網(wǎng)絡(luò)的非線性空間的表達(dá)式為:
式中:y—輸出節(jié)點(diǎn)向量;
x—n 維中間層節(jié)點(diǎn)單元向量;
u—r 維輸入向量;
xc(k)—n 維反饋狀態(tài)向量;
ω3—隱含層到輸出層連接權(quán)值;
ω2—輸入層到隱含層連接權(quán)值;
ω1—承接層到隱含層的連接權(quán)值;
g(*)—輸出神經(jīng)元的傳遞函數(shù),是隱含層輸出的線性組合;
f(*)—隱含層神經(jīng)元的傳遞函數(shù),多取為sigmoid 函數(shù),即
α在k 時(shí)刻的修正量可寫為:
式中:η —學(xué)習(xí)率。
改進(jìn)的Elman 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法仍然采用的是梯度下降算法,即利用反向傳播算法(BP)[4],根據(jù)網(wǎng)絡(luò)的實(shí)際輸出值與輸出樣本值的差值來修改權(quán)值和閾值,使得網(wǎng)絡(luò)輸出層的誤差平方和最小。設(shè)第k 步系統(tǒng)的實(shí)際輸出為 yd( k ),則改進(jìn)反饋網(wǎng)絡(luò)的目標(biāo)函數(shù)即誤差函數(shù)可表示為:
將E 對(duì)連接權(quán) wI3,wI2,wI1分別求偏導(dǎo),由梯度下降法可得網(wǎng)絡(luò)的學(xué)習(xí)算法:
甲醇合成過程的影響因素眾多,且各影響因素之間呈現(xiàn)高度非線性及強(qiáng)耦合性,因此本文采用核主元分析法(KPCA)來解決模型輸入變量特征提取問題。KPCA 方法的基本思想是通過某種隱式方式將輸入空間映射到某個(gè)高維空間(常稱為特征空間),并且在特征空間中實(shí)現(xiàn)主元分析(PCA)[5]。由于KPCA 通過核函數(shù)的引入實(shí)現(xiàn)了輸入樣本變量到非線性主元的映射,使數(shù)據(jù)變量與非線性主元間的距離和達(dá)到最小,彌補(bǔ)了PCA 在非線性特征提取問題上的局限性。結(jié)合上文介紹的改進(jìn)Elman 網(wǎng)絡(luò)可以建立一種DNN 模型,其原理如圖2 所示,先根據(jù)先驗(yàn)知識(shí)確定初始輸入變量,然后采用核主元分析法(KPCA)對(duì)輸入數(shù)據(jù)進(jìn)行非線性映射處理,消除數(shù)據(jù)變量之間的耦合相關(guān)性,降低數(shù)據(jù)維數(shù),提取主元,再利用改進(jìn)Elman 神經(jīng)網(wǎng)絡(luò)對(duì)提取的主元進(jìn)行訓(xùn)練學(xué)習(xí),最后完成預(yù)測(cè)模型的建立。
圖2 基于DNN 神經(jīng)網(wǎng)絡(luò)的粗甲醇轉(zhuǎn)化率預(yù)測(cè)模型Fig.2 Crude methanol conversion rate prediction model based on DNN neural network
PSO[6]算法最早由 Kennedy 和 Eberhart 在 1995年提出。PSO 算法是從鳥類捕食行為中得到啟發(fā)并用于求解優(yōu)化問題的,算法中每個(gè)粒子都代表問題的一個(gè)潛在解,每個(gè)粒子對(duì)應(yīng)一個(gè)由適應(yīng)度函數(shù)決定的適應(yīng)度值。粒子的速度決定了粒子移動(dòng)的方向和距離,速度隨自身及其他粒子的移動(dòng)經(jīng)驗(yàn)進(jìn)行動(dòng)態(tài)調(diào)整,從而實(shí)現(xiàn)個(gè)體在可解空間中的尋優(yōu)。粒子群算法收斂速度快,具有很強(qiáng)的通用性,并已在化工過程建模中獲得了廣泛的應(yīng)用[7,8]。
DNN 神經(jīng)網(wǎng)絡(luò)采用BP 算法基于梯度信息來調(diào)整連接權(quán)值,因而極易陷入局部極值點(diǎn)且收斂速度較慢,權(quán)值和閾值選取的隨機(jī)性會(huì)導(dǎo)致網(wǎng)絡(luò)穩(wěn)定性差。為了克服上述缺點(diǎn),引入收斂速度快、魯棒性高、全局搜索能力強(qiáng)的PSO 算法來優(yōu)化DNN 網(wǎng)絡(luò)的連接權(quán)值和閾值,建立一種新的 PSO-DNN 網(wǎng)絡(luò)模型。PSO 優(yōu)化DNN 網(wǎng)絡(luò)的具體實(shí)現(xiàn)步驟如下:
(1) 將DNN 網(wǎng)絡(luò)結(jié)構(gòu)中所有神經(jīng)元間的連接權(quán)值和各個(gè)神經(jīng)元閾值編碼成實(shí)數(shù)碼串表示的個(gè)體,即M 個(gè)優(yōu)化權(quán)值(包括閾值在內(nèi))可用由M 個(gè)權(quán)值參數(shù)組成的一個(gè)M 維向量來表示,作為PSO 算法要尋優(yōu)的位置向量。
(2)在編碼的解空間中,隨機(jī)產(chǎn)生一定數(shù)目的個(gè)體(微粒)組成種群,其中不同的個(gè)體代表神經(jīng)網(wǎng)絡(luò)的一組不同權(quán)值,同時(shí)初始化Gbest、Pbest。
(3)DNN 網(wǎng)絡(luò)訓(xùn)練及個(gè)體的適應(yīng)度評(píng)價(jià)。將微粒群中每一個(gè)個(gè)體的分量映射為網(wǎng)絡(luò)中的權(quán)值和閾值,從而構(gòu)成個(gè)體對(duì)應(yīng)的神經(jīng)網(wǎng)絡(luò)。首先劃分訓(xùn)練樣本和測(cè)試樣本;其次輸入訓(xùn)練樣本進(jìn)行網(wǎng)絡(luò)訓(xùn)練,通過反復(fù)迭代來優(yōu)化網(wǎng)絡(luò)權(quán)值,并計(jì)算每一個(gè)網(wǎng)絡(luò)在訓(xùn)練集上產(chǎn)生的均方誤差,以此作為目標(biāo)函數(shù);最后對(duì)每個(gè)個(gè)體進(jìn)行適應(yīng)度評(píng)價(jià),從中找到最佳個(gè)體用來判斷是否需要更新微粒的 Gbest 與Pbest,構(gòu)造如下的適應(yīng)度函數(shù):
式中:n—訓(xùn)練樣本個(gè)數(shù);
c—輸出端個(gè)數(shù);
tk,p—訓(xùn)練樣本P 在k 輸出端的給定輸出;
Yk,p(Xp)—訓(xùn)練樣本P 在k 端的實(shí)測(cè)值,他們兩個(gè)值的誤差平方和越小,表示實(shí)際值和預(yù)測(cè)值越接近,網(wǎng)絡(luò)的性能越好。
(4)更新每個(gè)粒子的速度和位置,產(chǎn)生下一代的粒子群。更新公式如下:
(5)當(dāng)目標(biāo)函數(shù)值小于給定的誤差或達(dá)到最大迭代次數(shù)時(shí),算法結(jié)束。將PSO 算法訓(xùn)練出來的最佳神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值作為DNN 網(wǎng)絡(luò)的初始值。
以某廠 ICI 型甲醇塔為對(duì)象,該裝置采用銅基催化劑低壓法合成甲醇,上游凈化工段產(chǎn)生的有效氣體(CO、CO2和 H2)在合成塔內(nèi)發(fā)生一連串反應(yīng),得到粗甲醇。通過分析甲醇合成機(jī)理及其反應(yīng)特點(diǎn),選取合成塔溫度(T)、合成系統(tǒng)壓力(P)、馳放氣流量(Sc)、氫碳比(ρ)、入塔氣流量(Sr)、新鮮氣流量(Sn)、循環(huán)氣流量(Sx)共7 個(gè)可操作變量,作為預(yù)測(cè)模型的初始輸入變量。選取甲醇合成塔出口的單程粗甲醇質(zhì)量轉(zhuǎn)化率為質(zhì)量指標(biāo)。選擇選擇 2011年9月至12月合成塔剛進(jìn)入穩(wěn)定期時(shí)采集到的原始數(shù)據(jù),經(jīng)過異常數(shù)據(jù)剔除處理,得到建模數(shù)據(jù)。經(jīng)過平滑濾波處理去除數(shù)據(jù)集中的隨機(jī)噪聲,通過歸一化處理將所有數(shù)據(jù)歸一化到[0,1]之間,消除數(shù)量級(jí)上的差異。
經(jīng)過預(yù)處理后的數(shù)據(jù)共249 組,考慮到樣本時(shí)間跨度較大,為了能使訓(xùn)練樣本集和測(cè)試樣本集都能夠涵蓋全部周期內(nèi)的信息,將樣本按時(shí)間序列排序,從中抽提出第4、8、12、16…248 組共62 組數(shù)據(jù)作為測(cè)試數(shù)據(jù)樣本集,剩余187 組數(shù)據(jù)作為訓(xùn)練集用來訓(xùn)練樣本。評(píng)價(jià)指標(biāo)選擇均方誤差。
BP 網(wǎng)絡(luò)和Elman 網(wǎng)絡(luò)參數(shù):根據(jù)人工經(jīng)驗(yàn),從7 個(gè)初始輸入變量中選取5 個(gè)影響最大的變量(T、P、Sc、ρ、Sx)作為模型的最終輸入,隱含層節(jié)點(diǎn)數(shù)通過窮舉試驗(yàn)確定為12 個(gè)時(shí)網(wǎng)絡(luò)性能最佳,輸出層節(jié)點(diǎn)數(shù)為1 個(gè),即粗甲醇轉(zhuǎn)化率,則BP 網(wǎng)絡(luò)和Elman 網(wǎng)絡(luò)均采用5-12-1 的結(jié)構(gòu)。
DNN 網(wǎng)絡(luò)參數(shù):7 個(gè)初始輸入變量(T、P、Sc、ρ、Sr、Sn、Sx)經(jīng)過 KPCA 特征變量提取后,選取累積貢獻(xiàn)率大于85%的前3 個(gè)變量作為最終輸入,隱含層節(jié)點(diǎn)個(gè)數(shù)通過窮舉法試驗(yàn)確定為8 個(gè)時(shí),平均誤差最小,反饋層節(jié)點(diǎn)個(gè)數(shù)與隱含層相同,均為 8個(gè),則DNN 網(wǎng)絡(luò)采用3-8-1 的結(jié)構(gòu)。
以上3 種網(wǎng)絡(luò)的訓(xùn)練算法均采用BP 算法,初始權(quán)值設(shè)為[-0.1,0.1]之間的隨機(jī)值。DNN 網(wǎng)絡(luò)的自反饋增益 為0.6。訓(xùn)練次數(shù)設(shè)定為1 000 次,目標(biāo)設(shè)定為0.001。
下面,設(shè)計(jì)PSO-DNN 網(wǎng)絡(luò)模型,結(jié)構(gòu)為3-8-1,粒子維數(shù)為:3×8+8×1+1+8=41 個(gè)個(gè),適應(yīng)度函數(shù)選擇均方誤差,取 c1=c2=2,慣性權(quán)重選擇ωmax=0.9,ωmin=0.4,選擇粒子個(gè)數(shù)為 30,最大迭代次數(shù)設(shè)為1000。按照PSO 優(yōu)化DNN 網(wǎng)絡(luò)模型的步驟,進(jìn)行粗甲醇轉(zhuǎn)化率預(yù)測(cè)仿真實(shí)驗(yàn),訓(xùn)練樣本預(yù)測(cè)結(jié)果如圖3 所示,測(cè)試樣本預(yù)測(cè)結(jié)果如圖4 所示。采用相同的實(shí)驗(yàn)數(shù)據(jù),基于上述4 種網(wǎng)絡(luò),分別建立粗甲醇轉(zhuǎn)化率的預(yù)測(cè)模型,誤差性能綜合分析比較見表1 所示。
圖3 PSO-DNN 網(wǎng)絡(luò)訓(xùn)練樣本預(yù)測(cè)結(jié)果Fig.3 The predicted results of the training sample of PSO-DNN network
從圖3 可以看出,PSO-DNN 網(wǎng)絡(luò)模型的訓(xùn)練效果良好,預(yù)測(cè)值與實(shí)際值的擬合程度較好。從圖 4可以看出PSO-DNN 模型較為精確的預(yù)測(cè)了粗甲醇的轉(zhuǎn)化率,具有較強(qiáng)的泛化能力。
從表1 可知,四種網(wǎng)絡(luò)的訓(xùn)練誤差都比較小,證實(shí)了神經(jīng)網(wǎng)絡(luò)非線性映射能力較強(qiáng)。Elman 網(wǎng)絡(luò)和DNN 網(wǎng)絡(luò)的測(cè)試誤差都小于BP 網(wǎng)絡(luò),說明反饋動(dòng)態(tài)網(wǎng)絡(luò)的逼近能力要強(qiáng)于前饋靜態(tài)網(wǎng)絡(luò)。DNN 網(wǎng)絡(luò)的訓(xùn)練誤差及測(cè)試誤差較 Elman 網(wǎng)絡(luò)均有所提高。但BP、Elman、DNN 三種網(wǎng)絡(luò)的測(cè)試誤差要遠(yuǎn)遠(yuǎn)高于訓(xùn)練誤差,說明采用 BP 算法的神經(jīng)網(wǎng)絡(luò)泛化能力較差。使用PSO 優(yōu)化DNN 網(wǎng)絡(luò)后,模型的跟蹤性能有所改善,測(cè)試誤差為 0.0057,說明PSO-DNN 網(wǎng)絡(luò)的泛化能力和穩(wěn)定性明顯提高,且全局收斂性增強(qiáng)。
圖4 PSO-DNN 網(wǎng)絡(luò)測(cè)試樣本預(yù)測(cè)結(jié)果Fig.4 The predicted results of the test sample of PSO-DNN network
表1 四種網(wǎng)絡(luò)模型的性能比較Table 1 Comparison of capability of four network models
本文針對(duì)甲醇合成過程的特點(diǎn),融合Elman 神經(jīng)網(wǎng)絡(luò)、核主元分析法、粒子群優(yōu)化算法的優(yōu)勢(shì),提出了基于 PSO-DNN 神經(jīng)網(wǎng)絡(luò)的粗甲醇轉(zhuǎn)化率預(yù)測(cè)模型。以合成塔實(shí)際運(yùn)行數(shù)據(jù)為樣本,通過仿真實(shí)驗(yàn),結(jié)果表明:首先,引入改進(jìn)的Elman 網(wǎng)絡(luò)增強(qiáng)了模型的動(dòng)態(tài)適應(yīng)性;其次,采用核主元分析法對(duì)預(yù)測(cè)模型輸入特征進(jìn)行提取和對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)處理,可一定程度降低模型的復(fù)雜度和提高預(yù)測(cè)效果;使用粒子群算法后,預(yù)測(cè)模型的實(shí)時(shí)跟蹤精度、穩(wěn)定性及泛化能力都得到了明顯的改善。本文建立的基于PSO-DNN 神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)模型實(shí)現(xiàn)了粗甲醇轉(zhuǎn)化率的實(shí)時(shí)測(cè)量,并為工藝參數(shù)優(yōu)化控制奠定了基礎(chǔ)。
[1] Cong Qiumei,Chai Tianyou,Yu Wen.Modeling wastewater treatment plant via hierarchical neural networks[J] . Control Theory &Applications,2009,26(1):8-14.
[2] Pham D T,et al.Dynamic system identification using Elman and Jordan Networks [A].Neural Networks for Chemical Engineers[C].Elsevier Sciense Publishers,1995:573-592.
[3]Qi Hongji,Liu Mandan,Wang Honggang.Proceess modeling method based on an improved Elman neural network//Proceedings of the 7th World Congress on Intelligent Control and Automation[C].2008,26(7):8188-8192.
[4] Rumelhart D,Williams R.Learning representations by back propagating errors[J].Nature,1986,323(9):533-536.
[5] B.Scholkopf,A.Smola,K-P Muller.Nonlinear component analysis as a kernel eigenvalue problem[J].Neural Computation,1998,10(6):1299-1319.
[6] Kennedy J,Eberhart R.Partical swarm optimization[C].Proc IEEE Int Conf on Nerural Networks,Perth,USA.USA:IEEE,1995,1942-1948.
[7] 馮冬青,楊書顯. 氧樂果合成過程的PSO-回歸BP 網(wǎng)絡(luò)建模方法[J]. 鄭州大學(xué)學(xué)報(bào),2011,43(3):113-117.
[8] 徐進(jìn)榮,潘豐. 基于PSO 和SVM 的發(fā)酵過程建模與優(yōu)化控制[J]. 微計(jì)算機(jī)信息,2008,24(7):31-33.