最大的變量為:系列電流XI、下料次數(shù)X2、分子比X3、出錯量X4、錯水平X5、電解質(zhì)水平 X6、槽溫X7、槽電壓X8共8個變量。
[0055] S2:選定鋁電解工業(yè)現(xiàn)場,采集N組決策變量Xi,X2,…,XN及其對應(yīng)的電流效率yi, y2,…,yN和溫室氣體排放量Zl,Z2,…,ZN作為數(shù)據(jù)樣本,以每一個決策變量Xi作為輸入,分別 以對應(yīng)的電流效率yi和溫室氣體排放量21作為輸出,運(yùn)用BP神經(jīng)網(wǎng)絡(luò)對樣本進(jìn)行訓(xùn)練、檢 驗(yàn),建立鋁電解槽生產(chǎn)過程模型;
[0056]在本實(shí)施例中,采集重慶天泰鋁業(yè)有限公司170KA系列電解槽中的223#槽電解槽 實(shí)際生產(chǎn)過程中的400組數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù),其中前380組作為訓(xùn)練樣本,后20組作為測試 樣本,數(shù)據(jù)樣本如下表1所示。
[0057]表1數(shù)據(jù)樣本
[0058]
[0059]在神經(jīng)網(wǎng)絡(luò)設(shè)計中,隱層節(jié)點(diǎn)數(shù)的多少是決定神經(jīng)網(wǎng)絡(luò)模型好壞的關(guān)鍵,也是神 經(jīng)網(wǎng)絡(luò)設(shè)計中的難點(diǎn),這里采用試湊法來確定隱層的節(jié)點(diǎn)數(shù)。
[0060]
[0061]式中,p為隱層神經(jīng)元節(jié)點(diǎn)數(shù),η為輸入層神經(jīng)元數(shù),m為輸出層神經(jīng)元數(shù),k為1-10 之間的常數(shù),本例中BP神經(jīng)網(wǎng)絡(luò)的設(shè)置參數(shù)如下表2所示。
[0062] 表2BP神經(jīng)設(shè)置參數(shù)
[0063]
[0064] 具體為:針對電流效率所構(gòu)建的生產(chǎn)過程模型而言,其輸入層采用8個神經(jīng)元節(jié) 點(diǎn),隱藏層采用13個神經(jīng)元節(jié)點(diǎn),輸出層采用1個神經(jīng)元節(jié)點(diǎn),輸入層到隱藏層之間傳遞函 數(shù)為Tansig函數(shù),隱藏層到輸出層之間的函數(shù)為Purelin函數(shù),樣本訓(xùn)練時的迭代次數(shù)為 500;
[0065] 針對溫室氣體排放量所構(gòu)建的生產(chǎn)過程模型而言,其輸入層采用8個神經(jīng)元節(jié)點(diǎn), 隱藏層采用12個神經(jīng)元節(jié)點(diǎn),輸出層采用1個神經(jīng)元節(jié)點(diǎn),輸入層到隱藏層之間傳遞函數(shù)為 Logsig函數(shù),隱藏層到輸出層之間的函數(shù)為Purelin函數(shù),樣本訓(xùn)練時的迭代次數(shù)為500。
[0066] 神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程中主要按照以下步驟進(jìn)行:
[0067] 設(shè)詈Xk=「xki,xk2,··· ,xkMl(k=l,2,···,N)為輸入矢量,N為訓(xùn)練樣本個數(shù),
4第g次迭代時輸入層Μ與隱層I之間的權(quán)值 矢量,WjP(g)為第g次迭代時隱層J與輸出層Ρ之間的權(quán)值矢量,Yk(g) = [ykl(g),yk2(g),···,ykp(g) ](k= 1,2,…,N)為第g次迭代時網(wǎng)絡(luò)的實(shí)際輸出,dk= [dki,dk2,…,dkp](k= 1,2,…, N)為期望輸出;
[0068] 步驟S2中建立鋁電解生產(chǎn)過程模型具體包括如下步驟:
[0069] S21:初始化,設(shè)迭代次數(shù)g初值為0,分別賦給 (0)、Wjp(0) -個(0,1)區(qū)間的隨機(jī) 值;
[0070] S22:隨機(jī)輸入樣本Xk;
[0071] S23:對輸入樣本Xk,前向計算BP神經(jīng)網(wǎng)絡(luò)每層神經(jīng)元的輸入信號和輸出信號;
[0072] S24:根據(jù)期望輸出dk和實(shí)際輸出Yk(g),計算誤差E(g);
[0073] S25:判斷誤差E(g)是否滿足要求,如不滿足,則進(jìn)入步驟S26,如滿足,則進(jìn)入步驟 S29;
[0074] S26:判斷迭代次數(shù)g+Ι是否大于最大迭代次數(shù),如大于,則進(jìn)入步驟S29,否則,進(jìn) 入步驟S27;
[0075] S27:對輸入樣本Xk反向計算每層神經(jīng)元的局部梯度δ;
[0076] S28:計算權(quán)值修正量ΔW,并修正權(quán)值,計算公式為:
>式中,η為學(xué)習(xí)效率;令g=g+l,跳轉(zhuǎn)至步驟S23;
[0077]S29:判斷是否完成所有的訓(xùn)練樣本,如果是,則完成建模,否則,繼續(xù)跳轉(zhuǎn)至步驟S22〇
[0078] 通過上述過程,可得到BP神經(jīng)網(wǎng)絡(luò)預(yù)測效果如圖2、3、4、5所示。鋁電解生產(chǎn)過程優(yōu) 化的基礎(chǔ)是優(yōu)化模型的建立,模型精度直接影響優(yōu)化結(jié)果。通過對圖2、3、4、5分析可知,經(jīng) BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練,電流效率的最大預(yù)測誤差為-0.407%,溫室氣體四氟化碳CF4排放量預(yù)測 誤差0.0165%,模型預(yù)測精度高,滿足建模要求。
[0079]S3:利用多目標(biāo)細(xì)菌覓食優(yōu)化算法,即MBF0算法,對步驟S2所得的兩個生產(chǎn)過程模 型進(jìn)行優(yōu)化,得到一組最優(yōu)決策變量Xbest及其對應(yīng)的電流效率ybest和溫室氣體排放量Zbest, 優(yōu)化時,根據(jù)菌群進(jìn)化狀態(tài)對趨向操作的步長進(jìn)行動態(tài)調(diào)整,以確保種群的多樣性和收斂 性;
[0080] 趨向操作的步長動態(tài)調(diào)整如下:
[0081] 第i只細(xì)菌第t+Ι次迭代的步長為<
[0082] 步長調(diào)整函數(shù)為
,
[0083]式中,Ct(i)為第i只細(xì)菌第t次迭代的步長,di為第i只細(xì)菌的擁擠距離,μ、λΕ(〇, 1)為步長調(diào)整因子 %第1只細(xì)菌第t次迭代的擁擠距離,L為細(xì)菌群體 的大??;
[0084] 進(jìn)一步地,步驟S3中的MBF0算法包括以下步驟:
[0085] S31:將決策變量X的值視為細(xì)菌位置,根據(jù)決策變量X中各個參數(shù)的范圍隨機(jī)生成 L個細(xì)菌構(gòu)成菌群初始位置;
[0086]S32:初始化系統(tǒng)參數(shù),包括趨向次數(shù)Nc,趨向行為中前進(jìn)次數(shù)Ns,繁殖次數(shù)Nre,驅(qū) 散次數(shù)Id,驅(qū)散概率Pd,外部檔案規(guī)模K;
[0087]S33:執(zhí)行趨向操作,包括翻轉(zhuǎn)和前進(jìn);
[0088] 假設(shè)第i(i= 1,2,…,L)只細(xì)菌在第j次趨向操作第k次復(fù)制操作和第1次驅(qū)散操作 之后的位置為 ,貝ijeUj+i =j,k,i)+c(irdct1;
[0089] 式中,dcti是第i只細(xì)菌最近一次翻轉(zhuǎn)時所選擇的隨機(jī)矢量方向,C(i)是其沿dcti 方向前進(jìn)的步伐長度,i
'Ai為各分量均為[-1,1]內(nèi)隨機(jī)數(shù)的向量,向量的 維數(shù)與決策變量X的維數(shù)相同;
[0090]S34:根據(jù)個體間的信息素濃度執(zhí)行聚群操作:
[0091] S35:計算菌群的健康函數(shù),并將其進(jìn)行降序排列,淘汰健康函數(shù)值小的一半細(xì)菌, 健康函數(shù)值大的另一半細(xì)菌進(jìn)行繁殖,且子細(xì)菌覓食能力保持與父代一致;
[0092]對給定的k、l,每只細(xì)菌的健康函數(shù)戈
,表示第 i只細(xì)菌的能量,1(1,」氺,1)表示細(xì)菌1在第」次趨向操作第1^次復(fù)制操作和第1次驅(qū)散操作 之后的適應(yīng)度函數(shù)值,N。表示趨向次數(shù),越大,表示細(xì)菌i的覓食能力越強(qiáng);
[0093]經(jīng)過一個周期的趨向操作后,按照"優(yōu)勝劣汰"的法則,菌落將依據(jù)每只細(xì)菌獲得 的能量進(jìn)行復(fù)制操作。在復(fù)制操作過程中,每只細(xì)菌按照覓得的總能量進(jìn)行排序,獲得能量 低的半數(shù)細(xì)菌將死去,獲得能量高的半數(shù)細(xì)菌進(jìn)行分裂,以此維持菌落細(xì)菌總數(shù)不變。
[0094] S36:將S35產(chǎn)生的菌群與前一次迭代計算產(chǎn)生的菌群合并,計算此時新菌群的個 體擁擠距離并按照擁擠距離進(jìn)行排序,選擇前L個優(yōu)勢個體構(gòu)成下一代菌群;
[0095]S36:驅(qū)散:細(xì)菌經(jīng)歷幾代復(fù)制后,以驅(qū)散概率Ped被驅(qū)散到搜索空間中的任意位置; [0096]在經(jīng)歷幾代復(fù)制操作后,菌落將會集聚,使其多樣性退化。為了保證菌落的多樣 性,菌落中的一些個體將以小概率Ped被驅(qū)散,而重新出現(xiàn)在搜索區(qū)域內(nèi)新的位置。雖然驅(qū)散 操作破壞了細(xì)菌的趨向行為,但細(xì)菌也有可能因此出現(xiàn)食物更加豐富的區(qū)域內(nèi)。
[0097]S37:判斷優(yōu)化算法是否滿足結(jié)束條件,如滿足,則輸出Pareto前沿即最優(yōu)決策變 量Xbest及其對應(yīng)的電流效率ybest和溫室氣體排放量Zbest,如不滿足,則跳轉(zhuǎn)至步驟S33循環(huán) 執(zhí)行。
[0098] 更進(jìn)一步地,步驟S3中計算非劣解的擁擠距離包括如下步驟:
[0099]A1:對外部檔案中所有最優(yōu)個體進(jìn)行升序排序;
[0100]A2:計算每個解相鄰的兩個個體在每個優(yōu)化目標(biāo)空間上的距離;
[0101] A3:將這些距離相加即得所求最優(yōu)解的擁擠距離,并設(shè)邊界解的擁擠距離為無窮 大;
[0102] 第i個個體的擁擠距離為
[0103]式中,為第i個個體在目標(biāo)j的距離,R為升序排列后擁擠距離最大的個體序號,m為目標(biāo)空間維度;
[0104]擁擠距離大的個體具有更多參與下一次迭代計算的機(jī)會,從而維持算法種群的多 樣性,使得算法能夠收斂到一個均勻分布的Pareto曲面。因此,利用擁擠距離作為更新外部 檔案的依據(jù)可使算法更好的收斂到Pareto曲面。
[0105]外部檔案被用來保存?zhèn)€體在搜索過程中產(chǎn)生的非劣解并在算法結(jié)束時輸出計算 結(jié)果,同時也能引導(dǎo)算法的進(jìn)化過程以保證算法全局收斂。維護(hù)外部檔案是為了控制外部 檔案的最大規(guī)模,同時保證非劣解的多樣性以及最優(yōu)個體不被丟失,對算法具有重要意義。 本發(fā)明采用基于擁擠距離排序的外部檔案更新策略,使得外部檔案能動態(tài)的自適應(yīng)更新, 以使菌群在尋優(yōu)過程中朝著目標(biāo)更迅速的