林景棟,李 嶺,張 鵬
(重慶大學(xué)自動化學(xué)院,重慶 400044)
基于電解槽屬于非線性、時變、大滯后系統(tǒng)[1],采用槽電阻跟蹤法[2]常出現(xiàn)對氧化鋁濃度跟蹤丟失的問題,通常下料后氧化鋁濃度應(yīng)該在增加,但是在實踐中發(fā)現(xiàn),氧化鋁濃度時常保持不變或無緣無故減小,這樣違背了槽電阻規(guī)律.
為了解決這個問題,研究采取對氧化鋁濃度進行預(yù)測的方法:首先準確判定當前時刻氧化鋁濃度,然后選取影響氧化鋁濃度變化的主要因素,根據(jù)這些參數(shù)的特點,采用經(jīng)典的預(yù)測算法對其進行預(yù)測,得到下一時刻濃度值.為了使預(yù)測算法具有準確性,并具有自調(diào)整功能,筆者對當前預(yù)測值,和實際值作比較,通過修改預(yù)測算法權(quán)系數(shù),使預(yù)測值逼近于實際值.
當前氧化鋁濃度的判定尤為重要,因為它是檢測預(yù)測值準確與否的重要因素,只有對當前濃度做出準確判斷,才能與預(yù)測值對比得到修改算法準確性的權(quán)系數(shù).為此,筆者給出了一種可實現(xiàn)對當前氧化鋁濃度的判定方法:根據(jù)瞬時電壓歷史數(shù)據(jù)繪制出曲線,從當前時刻向前尋找10個波峰,計算該波峰段累計斜率乘以對應(yīng)的加權(quán)NB(加料時間間隔),最后篩選出最大值的點作為濃度最低點;再從那個時刻根據(jù)規(guī)則推理到當前,得出當前濃度.當判定出濃度最低的初始點以后,每隔10 min,計算該段時間內(nèi)槽電壓的變化率乘以對應(yīng)NB的加權(quán)平均,最后得出一個N值,直接參與推理.若10 min有升降陽極的動作,則需要去掉動極1 min和動極后2 min內(nèi)的數(shù)據(jù).
初始濃度判定算子:
①從當前點Now向前搜索5 d內(nèi)報告濃度過低(CMD=30)的點Pk(1≤k≤10).
②掃描每一個Pk前后7 min的范圍,得到每一個Pk在此范圍內(nèi)的瞬時電壓的最大值點對應(yīng)的時刻TV.在TV前后10 min的范圍內(nèi),檢查是否存在槽動作,不存在這些槽動作的點TV形成一個新的點集M(k)(1≤k≤10).
③掃描這個新的點集M(k).
向前取10 min T1=T-10;
向后也取10 min T2=T+10;
掃描T1:方向從T1時刻到T
計算每13個點的累計斜率Ki(1≤i≤4)
設(shè)第十三個點的電壓對應(yīng)的加料間隔為NBi
Y1=Abs(sum(K1*NB1+K2*NB2+K2*NB3+…+Kn*NBn)).
掃描T2:方向從T時刻到T2
計算每13個點的累計斜率Ki(1≤i≤4)
設(shè)第十三個點的電壓對應(yīng)的加料間隔為NBi Y2=Abs((sum(K1*NB1+K2*NB2+K2*NB3+…+Kn*NBn)).
Z(j)=Y1+Y2.(1≤j≤10)
若Zk>4 000,則
計算系數(shù)K=Zk/10,st=M(k).TV;
若沒有找到初態(tài)點,則
繼續(xù)向前搜索5 d低濃度點,轉(zhuǎn)第①步
根據(jù)以上算法可以實現(xiàn)當前時刻氧化鋁濃度的判定,對于檢驗預(yù)測得到下一時刻濃度值,調(diào)整權(quán)系數(shù)是必不可少的.在研究中選取槽電壓、電解槽狀態(tài)和出鋁量作為濃度預(yù)測的輸入變量,建立氧化鋁濃度預(yù)測模型.
針對影響氧化鋁變量的特點,可以采用一種多輸入單輸出的預(yù)測算法,在這里筆者采用經(jīng)典的線性回歸預(yù)測法[3-4],其原理是解一個線性方程組,求解一組系數(shù),使所有輸入輸出量盡量逼近此組系數(shù)構(gòu)成的方程.
在對程序進行靜態(tài)分析時為了構(gòu)造和逼近程序的不動點理論,Patrick Cousot和Radhia Cousot在1977年提出了基于格的抽象解釋理論[8]用于對程序的語義進行可靠近似。程序具體的對象域上的計算稱為程序的操作語義或者指稱語義,描述了對象域上的計算過程[9]。對程序的抽象解釋過程可以描述為通過對待分析程序在抽象域上的計算,使得抽象域上的計算結(jié)果盡可能地逼近程序在具體域上的計算結(jié)果過程。通過程序在抽象域上的計算結(jié)果來獲取真實程序計算結(jié)果的某些信息。抽象解釋實際上是通過損失一部分的計算結(jié)果的精確程度來取得較高的計算速度。是在計算結(jié)果的精度損失和計算時間效率之間的一種平衡。
設(shè)樣本點容量為n,因變量為y,K個自變量分別為X1,X2...,XK,則總體線性回歸模型方程可表示為:
(i=1,2,3,…,n) (j=1,2,3,…,n)
因變向量y=(y1,y2...yn)T;自變量矩陣:
相關(guān)系數(shù)β=(β0,β1,…,βk)T
令
(1)
則相關(guān)系數(shù)β的最小二乘估計值應(yīng)為
(2)
影響氧化鋁濃度因素是高度藕合的,并且各種生產(chǎn)因素對它的影響不是線性的,因此經(jīng)典的線形多元回歸在氧化鋁濃度預(yù)測的時候就會出現(xiàn)相對較大的偏差,這就限制了經(jīng)典方法的直接使用.所以將經(jīng)典的線性方程進行正交變換,用近似于線性方程的一個矩陣求解其特征值、特征向量得到推算出氧化鋁濃度預(yù)測值.
按照第1節(jié)中的論述,采用一些對氧化鋁濃度影響較大的因素去預(yù)測氧化鋁濃度.令輸入為槽狀態(tài)、出鋁量以及槽電阻.將模型描述為:
ΔY(K)=aΔV(K)+bΔL(K)+cΔC(K)+d
(3)
即:
Y(K)-Y(K-1)=
a[V(K-1)-V(K-2)]+
b[L(K-1)-L(K-2)]+
c[C(K-1)-C(K-2)]+d
(4)
式中Y(K),Y(K-1)分別為K時刻與K-1時刻的氧化鋁濃度;V(K-1),V(K-2)分別為K-1時刻與K-2時刻的槽狀態(tài);L(K-1),L(K-2)分別為K-1時刻與K-2時刻出鋁量;C(K-1),C(K-2)分別為K-1時刻與K-2時刻槽電阻值,由槽電壓除以系列電流可以得到,β(a,b,c,d)T相關(guān)系數(shù).針對某一電解槽,取其相關(guān)數(shù)據(jù),即:槽狀態(tài),出鋁量,槽電阻,用經(jīng)典的多元線性回歸法,求解模型的相關(guān)系數(shù).再將相關(guān)系數(shù)代入(3)式,對濃度變化進行預(yù)估,從而得到以后濃度的估計值.
模型中影響氧化鋁濃度最主要的兩個參數(shù)是出鋁量以及槽狀態(tài),本研究假定模型的輸入對輸出的影響是有一定時間限度的.定義這個時間限度為39 d,來進行相關(guān)系數(shù)的估計.以預(yù)估第42 d即K=42時的氧化鋁濃度Y(42)為例.首先對數(shù)據(jù)進行預(yù)處理,即按照公式(4),將K=3,4,…,41的數(shù)據(jù)分別代入,求得ΔY(K),ΔV(K),ΔL(K),ΔC(K),其中K=3,4,…,42.
構(gòu)造輸入矩陣:
Xorg(1)(K-I)=
Xorg(2)(K-I)=
?
Xorg(P)(K-I)=
?
Xorg(10)(K-I)=
(P=3,4,…,9;K=42,43,…)
I(I,I,…I)T
ΔV(K-39+P),…ΔV(K-11+P))T
ΔL(K-39+P),…ΔL(K-11+P))T
ΔC(K-39+P),…ΔC(K-11+P))T
(P=1,2,…10;K=42,43,…)
構(gòu)造輸出矩陣:
?
(P=3,4,…9;K=42,43,…)
?
…ΔY(K-11+P))T
其中(P=1,2,…10;K=42,43,…)
(5)
將輸入輸出矩陣作如下組合,構(gòu)造一個新的矩陣作為論文的預(yù)測對象.令:
(P=1,2,…10;K=42,43,…)
其中,矩陣Aorg(P)(K-I)應(yīng)該是一個5維方陣.觀察矩陣Aorg(P)(K-I),按此種結(jié)構(gòu),若P=11,則輸出矩陣中就包含了ΔY(K)元素,只要將此元素提取出來,即可通過Y(K)=Y(K-1)+ΔY(K)求的需要預(yù)測的氧化鋁濃度Y(K).
現(xiàn)將目標鎖定在求取矩陣Aorg(11)(K-I),將Aorg(11)(K-I)分解得到:
Aorg(11)(K-I)=
(6)
對矩陣Aorg(p)(K-I),(P=1,2,…10)中的10個元素同樣分解.則有:
Aorg(p)(K-I)=
G(p)(K-I)=
(P=1,2,…10)
并分別分別建立:
gQ(P)=φ(1,P,P2)T
(7)
(8)
其中(P=1,2,…10)
(9)
則能夠得到Y(jié)(K)的最小二乘估計為:
ΔC(K-1))(A4×4)-1B4×1
(10)
按照上面介紹的方法,選定任意電解槽參數(shù)按如下流程對氧化鋁濃度進行預(yù)測.
圖1 基于正交變換預(yù)測函數(shù)的流程圖
取貴鋁某電解車間127#槽6月7日至9月7日的生產(chǎn)數(shù)據(jù)作為仿真的對象.定義6月7日為第1 d,6月8日為第2 d,以此類推,則9月7日為第93 d.
現(xiàn)用第1 d到第41 d的生產(chǎn)數(shù)據(jù)來預(yù)測第42 d的氧化鋁濃度,用第2 d到第42 d的生產(chǎn)數(shù)據(jù)來預(yù)測第43 d的濃度,以此類推,一直預(yù)測到第93 d的氧化鋁濃度.然后根據(jù)第93 d濃度值驗證預(yù)測結(jié)果是否接近,若預(yù)測值與實際值相差較遠,則可以修改權(quán)系數(shù)重新預(yù)測,直到結(jié)果趨近實際值為止保存權(quán)系數(shù),供下一次與測使用.
預(yù)測結(jié)束后利用下面公示計算標準差,檢驗?zāi)P团c實際值的擬合程度:
(11)
式中,N為預(yù)測天數(shù).從第43 d到第93 d共計檢驗52 d的預(yù)測情況,故N=52.由公式(11)計算得到,127#槽的氧化鋁濃度基于正交變換的預(yù)測值與實際值的標準差為2.806 2,在修改了模型的修改權(quán)系數(shù)后得到標準差為1.263 4.仿真曲線如圖2、圖3所示.
圖2 未設(shè)定權(quán)系數(shù)時預(yù)測值與實際值曲線
圖3 設(shè)定權(quán)系數(shù)后預(yù)測值與實際值曲線
通過對比分析發(fā)現(xiàn),采用正交矩陣變換來預(yù)測氧化鋁濃度,在設(shè)定權(quán)系數(shù)前后預(yù)測值與實際值之間的擬合程度有了較大的改變.說明對氧化鋁濃度進行線性回歸預(yù)測時必須要對輸入?yún)?shù)進行一些必要的約束,使方程的解范圍縮小.因此研究給出的氧化鋁濃度預(yù)測方法是比較正確的,相對于傳統(tǒng)的槽電阻辨識法有了很大的改變.針對目前沒有準確的數(shù)學(xué)模型來檢驗算法適用性與否,筆者將此算法應(yīng)用于貴鋁160 kA些列電解槽上,通過大量從事鋁電解工作者的經(jīng)驗,以及試驗進行驗證該模型的效果,所以在這一方面還有大量的工作可以開展.
參考文獻:
[1]田應(yīng)甫.大型預(yù)焙電解槽生產(chǎn)實踐[M].長沙:中南大學(xué)出版社,2003.
[2]孫捷,邱竹賢,孫勇,等.工業(yè)鋁電解槽槽電阻-氧化鋁濃度曲線研制[J].輕金屬,1994(6):25.
[3]Han J,Kamber M.數(shù)據(jù)挖掘:概念與技術(shù)[M].范明,孟小峰譯.北京:機械工業(yè)出版社,2001.
[4]Agrawal R,Imielinski T,Swami A.Mining Association Rules between Sets of Items in Large Databases[C].In:Proceedings of the 1993 ACM SIGMOD international conference on Management of data.New York,NY,USA:ACM Press,1993:207-216.