宋念龍,張新雨,徐 璐
(西安理工大學自動化與信息工程學院,西安710048)
傳感器是一種檢測裝置,它能夠感受被測量的信息,并將檢測感受到的信息按一定規(guī)律變換成電信號的形式輸出,以滿足信息的傳輸、處理、存儲、顯示、記錄和控制等要求。傳感器的靜態(tài)特性是指對靜態(tài)的輸入信號,傳感器的輸出量與輸入量之間所具有的相互關系。通常情況下,例如,電渦流位移傳感器、紅外測溫傳感器、二極管測溫傳感器、光電測距傳感器等,傳感器的實際靜態(tài)特性具有較強的非線性問題。其主要的特性均是與物理量之間的較強的非線性和單調關系。為了使儀表具有均勻的刻度讀數(shù),需要對傳感器進行細致、多次的標定,但對于有些物理量測量的傳感器例如溫度傳感器而言生產標定存在一定的不便性,因此需要對靜態(tài)特性曲線進行分析找出能夠代表特性的關鍵特征點,在生產過程中只需要對特征點進行校準即可達到所需的精度要求。將得到的特征點數(shù)據(jù)存儲在單片機中,經過單片機的處理,利用線性插值可以估計出被檢測物理量。以最少的信息量建立電參數(shù)和物理量的對應關系,從而減少對單片機內存的占用和降低校正的工作量[1-3]。
基于如何找出曲線的關鍵點(聚類中心點),本文對差動式結構的雙線圈脈沖電渦流傳感器的輸出電壓與位移之間存在非線性問題,提出了一種改進的模糊C-均值曲線擬合算法,通過輸出電壓來估計位移量。該方法利用改進的粒子群優(yōu)化算法對聚類中心點初始化,其中在改進的粒子群優(yōu)化算法中主要采用Logistic混沌映射式產生混沌初始粒子建立種群,解決了以往模糊C-均值算法容易陷入局部最優(yōu)的問題。該方法算法簡單、精度高、可靠性好、應用方便,有效的減少了單片機內存的占用空間,并提高了電渦流位移傳感器的測量精度[4]。
由于電渦流傳感器本身的特性,電渦流傳感器輸出的是一組電壓信號,而電壓信號與實際位移量存在非線性關系。為了減少對傳感器的標定次數(shù)及單片機內存的占用量,需要對電壓信號及位移量進行曲線擬合,智能傳感器便可以通過電壓信號來估計位移量[5-8]。
本文通過改進模糊C-均值聚類算法尋找中心點,這些中心點作為智能傳感器的標定點,再經過線性化計算將電壓信號轉換為位移量。聚類算法是將數(shù)據(jù)按照一定的關系分配到不同的簇中的分類方法,在同一簇中的數(shù)據(jù)具有極高的相似性,而在不同簇中數(shù)據(jù)具有極高的相異性。每一個簇中都有一個中心點,這個點相對于這個簇中的其他數(shù)據(jù)點具有極高的信息量,因此可以用這個中心點所擁有的信息代替這個簇中的其他點所擁有的信息,從而減少數(shù)據(jù)量[9]。與以往的等間距線性擬合算法相比,改進模糊C-均值聚類算法重視每個樣本點所攜帶信息的重要性,根據(jù)實際情況有效的分配中心點的位置,用最少的中心點來描述曲線特征,對不同的傳感器具有更強的自適應性。
在采用模糊C-均值聚類算法找中心點時,需要對聚類中心點進行初始化,當初始化不合理時,聚類中心點的最優(yōu)解很可能成為局部最優(yōu)解,因此算法中對聚類中心點的初始化是至關重要的。常用的初始化方法是采用減法聚類算法,聚類中心點的數(shù)目由算法的參數(shù)決定,當給定參數(shù)達到一定值時,初始中心點的數(shù)目將會飽和,很難有明顯的變化,因此該算法對初始聚類中心點的數(shù)目有一定的約束性,并且不能直觀地確定初始聚類中心點的數(shù)目[10]。
本文提出了一種用改進的粒子群優(yōu)化算法對模糊C-均值算法中的聚類中心點進行初始化的方法。該算法中聚類中心點的數(shù)目即為粒子群優(yōu)化算法中種群的維數(shù),而種群的維數(shù)可以為任意值,因此有效地解決了傳統(tǒng)初始化算法中對中心點數(shù)目的約束問題,并且該算法將傳統(tǒng)的粒子群優(yōu)化算法與混沌搜索法相結合,利用混沌的遍歷性、隨機性和對初始條件的極度敏感性[11-12],能夠按其自身規(guī)律不重復的遍歷所有可能的聚類中心初始點,從而有效地避免了陷入局部最優(yōu)問題[13]。
設在一個N維的搜索空間中,由m個粒子組成的種群 X={x1,x2,…,xm},其中第 i個粒子的位置為 xi={xi1,xi2,…,xiN},表示所求問題的可能解,其對應的速度 vi={vi1,vi2,…,viN}。該算法根據(jù)式(1)、式(2)更新各個粒子的速度與位置。
其中,γ1和 γ2是(0,1)之間的隨機數(shù),c1和 c2是學習因子,present表示當前的粒子位置,PBest={pBest1,pBest2,…,pBestm}表示各個粒子目前為止搜索到的最優(yōu)位置,gBest表示種群目前為止搜索到的最優(yōu)位置,ω為慣性權重,本文采用線性遞減權值[14],如式(3)所示:
其中,ωmax為初始慣性權值,ωmin為終止慣性權值,k為當前的迭代數(shù),T為總的迭代數(shù)。
具體實現(xiàn)步驟如下:
(1)選擇適當?shù)膮?shù),設定聚類中心點的數(shù)目N和種群的粒子數(shù)m,隨機產生N個[0,1]上的隨機數(shù)作為第一個粒子x1。根據(jù)Logistic混沌映射式產生混沌初始粒子建立種群[15],如式(4)所示:
(2)將所有粒子按式(5)映射到變量的取值范圍[α,β]內。
(3)對各個粒子的速度進行初始化,計算各個粒子所對應的適應度函數(shù)值fi,其中適應度函數(shù)為所要優(yōu)化的目標函數(shù)。并對PBest和gBest進行初始化,其對應的適應度函數(shù)值分別為Pf={pf1,pf2,…,pfm}和 gf。
(4)根據(jù)式(1)、式((2)更新粒子的位置和速度,計算對應的適應度函數(shù)值fi。根據(jù)pfi和fi的大小對pBesti和pfi進行更新,同時更新gBest和gf。
(5)當滿足最大迭代次數(shù)時,得到的gBest為最優(yōu)的聚類中心初始點。
模糊C-均值算法通過引入隸屬度矩陣來描述各個樣本點對各個簇的隸屬程度,進而得到目標函數(shù)式(6)的最小值,通過不斷的更新聚類中心矩陣和隸屬度函數(shù)矩陣而獲得目標函數(shù)的最小點,目前該算法的收斂性已得到證明[16]。
設樣本為X={x1,x2,…,xn},將樣本分為C 類,C個聚類的聚類中心為 V={v1,v2,…,vC},利用改進的粒子群優(yōu)化算法對聚類中心進行初始化,其迭代次數(shù)L=0,dij=‖xi-xj‖表示樣本空間第j個元素與第i個元素之間的歐幾里得距離,由于每個元素對分類結果的影響不同,因此給每一個元素賦予一個權值wi,這個權值反應了該元素對分類結果的貢獻程度,其表達式為式(7)所示:
在模糊C-均值算法中,隸屬度矩陣U(c×n)(L)為重要的運算變量,當dij=0時,則表示樣本空間第j個元素對第i個元素的隸屬度uij=1,否則其隸屬度為式(8)所示
其中,m為模糊指數(shù),m∈(1,∞),一般情況下取m=2。
當?shù)玫匠醪降碾`屬度矩陣后,需要對隸屬度矩陣U(c×n)(L)進行修正,使每一個元素對聚類中心點的隸屬程度更加明確。設第i個元素的最大隸屬度為uai,其第二大隸屬度為ubi,則進行修正后最大隸屬度變?yōu)槭?9)
其第二大隸屬度變?yōu)槭?10)所示
其中,α 為吸引力抑制因子,α∈[0,1]。
用得到的隸屬度矩陣U(c×n)(L)重新計算聚類中心點,如式(11)所示,實現(xiàn)對聚類中心點的更準確計算。隨后進行不斷的迭代,當滿足終止條件式(12)時,停止對聚類中心點的迭代過程,并得到最終結果。
具體實現(xiàn)步驟如下:
步驟1 選擇適當?shù)膮?shù),根據(jù)改進的粒子群優(yōu)化算法對聚類中心點矩陣V={v1,v2,…,vc}進行初始化。
步驟2 根據(jù)式(8)、式(9)、式(10)得到隸屬度矩陣 U(c×n)(L),此時 L=0,并根據(jù)式(6)得到最小目標函數(shù)值。
步驟3 根據(jù)式(11)更新聚類中心點矩陣V,并且使L=L+1。
步驟4 由更新后的聚類中心點計算當前的隸屬度矩陣U(c×n)(L)和最小目標函數(shù)值。
步驟5 根據(jù)式(12)判斷迭代是否繼續(xù)。
步驟6 當滿足步驟5條件時,終止對聚類中心點矩陣的更新,否則回到步驟3,繼續(xù)迭代。
本文采用在線查表,離線計算的方法進行試驗。首先對實驗數(shù)據(jù)進行采集,得到一組完備的數(shù)據(jù)集,然后對實驗數(shù)據(jù)進行預處理。通過模糊C-均值算法建立輸出電壓與位移量的擬合模型,最后在智能傳感器中利用線性插值法得到與實際輸出電壓對應的理論位移量。將本文方法應用于電站鍋爐空氣預熱器密封間隙控制系統(tǒng)中,此時位移量表示預熱器的密封間隙距離,其仿真及實驗結果如下:
(1)用等間距線性擬合算法得到擬合曲線,當中心點數(shù)目分別為N=5、15、25時對實驗數(shù)據(jù)進行估計,其對應的位移誤差如表1所示。
表1 等間距線性擬合算法得到的誤差值 0.01 mm
由表1可以看出,誤差量隨中心點數(shù)目的增加而減小。
(2)利用聚類算法得到擬合曲線,首先確定聚類中心點的數(shù)目N,并對其進行初始化。傳統(tǒng)的初始化方法采用減法聚類算法,根據(jù)迭代過程中對終止條件參數(shù)δ的設置,間接的確定中心點的數(shù)目N,表2為終止條件參數(shù)δ與中心點數(shù)目N的對應關系。
表2 參數(shù)δ與N的對應關系
由表2可知,當終止條件參數(shù)δ足夠小時,聚類中心的數(shù)目N將達到飽和,不再因δ的變化而變化,因此這種方法對中心點數(shù)目的確定存在一定的約束性。而改進的粒子群算法對中心點的確定則是任意的。
(3)改進粒子群算法與減法聚類算法對中心點初始化結果相比較
減法聚類算法對中心點進行初始化時,中心點的數(shù)目很可能會達到飽和狀態(tài),此時對中心點的初始化將很可能失去它的有效性,因此減法聚類算法只能對一定數(shù)目的中心點進行初始化。針對位移傳感器的輸出電壓與位移量的對應關系,利用減法聚類算法得到的中心點的數(shù)目取值將在9左右浮動。取N=9時分別用減法聚類算法和改進粒子群算法對中心點進行初始化得到擬合曲線,并對實驗數(shù)據(jù)進行估計,得到的誤差結果如表3所示。
表3 兩種初始化方法的誤差對比結果
由此可知,當中心點數(shù)目要求不大于9時,兩種方法均可對其初始化,但改進粒子群算法要比減法聚類算法更有優(yōu)勢;當中心點數(shù)目要求大于9時,減法聚類算法就無法對其初始化,而改進粒子群算法則可以滿足要求。
(4)采用本文算法進行實驗,令粒子群的迭代次數(shù)T=30,選取的粒子數(shù)為10,聚類中心點的數(shù)目取N=15。圖1(a)為得到的擬合曲線,并根據(jù)該擬合曲線估計與實際輸出電壓對應的理論位移量。圖1(b)為其對應的誤差曲線。
由圖1(a)可知,聚類中心點并不是均勻分布的點,而是根據(jù)周圍的實驗數(shù)據(jù)所包含信息的差異程度分布的,從而提高了該算法的自適應能力,并保證用最少的點對輸出電壓與間隙距離的對應關系進行曲線擬合。在應用到單片機時,不僅減少了存儲空間,而且提高了查表效率,降低了單片機的計算復雜度。
圖1 聚類中心點數(shù)目為15時的實驗結果
由圖1(b)可知,由于電渦流效應本身的特性,擬合曲線兩端的誤差較大,但都在精度要求的范圍內。根據(jù)聚類中心點的數(shù)目不同,可以得到不同的擬合曲線,其對應的精度也有所不同,表4列出了不同的擬合曲線對實驗數(shù)據(jù)進行估計后得到的誤差值。由表4可知,當聚類中心點數(shù)目增加時,其對應的精度也有所提高,隨著中心點數(shù)目的增加,精度提高的幅度將有所減小。
表4 不同中心點數(shù)目的誤差值
比較表1和表4可知,利用相同數(shù)目的中心點對曲線進行擬合時,本文提出方法的擬合結果要明顯優(yōu)于傳統(tǒng)的等間距擬合算法,從而更加驗證了本文所提算法對曲線擬合更具自適應性。
圖2 N=5、15、25對應的收斂速度
(5)圖(2)為聚類中心點數(shù)目N取不同值時,聚類算法所對應的收斂速度。擬合精度的提高是以犧牲收斂速度為代價的,中心點越多,收斂的速度相對越慢,但目標函數(shù)的穩(wěn)定值將會越小。目標函數(shù)值隨迭代次數(shù)的增加而迅速減小,當?shù)螖?shù)L大于8時,目標函數(shù)趨于穩(wěn)定,由此提高了系統(tǒng)的快速性和實時性。
本文基于差動式結構的雙線圈脈沖電渦流傳感器,針對傳感器輸出電壓與位移量之間存在非線性問題,利用改進粒子群和模糊C-均值相結合的方法對脈沖電渦流位移傳感器的實驗數(shù)據(jù)進行曲線擬合,從而使得傳感器能夠根據(jù)實際的輸出電壓值估計出理論的位移量。通過實驗證明,該方法簡單、易實現(xiàn),很好的解決了輸出電壓與位移量存在的非線性問題,大大節(jié)省了單片機的存儲空間和查表時間,提高了傳感器的檢測精度和靈敏度,增強了對不同電渦流傳感器特性的自適應性。本方法在國內和印度、印尼等多個國家的熱電廠電站鍋爐空預器間隙控制系統(tǒng)的電渦流傳感器中進行了推廣使用,投入使用率達到90%以上,并且測量精度和控制效果有了進一步提高,從而驗證了該方法的有效性。
[1] 賀安之,閻大鵬.現(xiàn)代傳感器原理及應用[M].北京:宇航出版社,1995,100-101.
[2] 任吉林.渦流檢測技術近20年的進展[J].無損檢測,1998,20(5):121-125.
[3] 宋念龍,李琦,張新雨,等.基于紅外傳感器陣列的智能溫度傳感器研究[J].傳感技術學報,2010,23(12):1713-1717.
[4] 王媛媛.耐高壓電渦流位移傳感器的研究[D].杭州:浙江大學,2006:1-74.
[5] LI Q,ZHANG T,SONG N L,et al.Research On Differential Pulsed Eddy Current Gap Sensor[C]//2010 International Conference on Electrical and Control Engineering,2010:5490-5493.
[6] 鄭崗,趙亮.金屬厚度的脈沖渦流無損檢測研究[J].傳感器與微系統(tǒng),2006,25(4):35-36.
[7] 夏春林,丁凡.雙金屬材料電渦流差動測厚方法及應用[J].傳感器技術學報,2007,20(8):1930-1933.
[8] 郎家峰,楊明,吳曉林,等.基于雙渦流傳感器的金屬材質動態(tài)檢測系統(tǒng)設計[J].計算機測量與控制,2005,13(5):426-427.
[9] 范九倫.模糊聚類新算法與聚類有效性問題研究[D].西安:西安電子科技大學,1998:1-43.
[10]孫志海,孔萬增,朱善安.基于減法聚類算法的視頻運動目標定位[J].光電工程,2008,35(7):12-16.
[11]梁炎明,劉丁,任海鵬,等.基于自適應陷波的直拉單晶直徑跟蹤[J].儀器儀表學報,2010,31(7):1441-1447.
[12]唐巍,郭鎮(zhèn)明,唐嘉亨,等.復雜函數(shù)優(yōu)化的混沌遺傳算法[J].哈爾濱工程大學學報,2000,21(5):1-5.
[13]呂振肅,侯志榮.自適應變異的粒子群優(yōu)化算法[J].電子學報,2004,32(3):416-420.
[14]陳貴敏,賈建援,韓琪.粒子群優(yōu)化算法的慣性權值遞減策略研究[J].西安交通大學學報,2006,40(1):53-56.
[15]張浩,張鐵男.Tent混沌粒子群算法及其在結構優(yōu)化決策中的應用[J].控制與決策,2008,23(8):857-862.
[16] GAMES R A,CHAN A H.A Fast Algorithm for Determining the Linear Complexity of a Pseudorandom Sequence with Period 2n[J].IEEE Trans Inf Theory,1983,IT-29(1):144-146.