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