謝喜云 李宏民 李 文 曾 靖
1(湖南理工學院信息與通信工程學院 湖南 岳陽 414006)2(湖南理工學院物理與電子學院 湖南 岳陽 414006)
短時傅里葉變換(STFT)是分析非平穩(wěn)信號的常用方法,其基本思路是給信號加等長的時間窗,但窗長度難以確定,太長導致時間分辨率差,太短造成頻率分辨率低。針對STFT處理非平穩(wěn)信號中的不足,具有多分辨率分析特點的小波變換技術應運而生。小波變換是一種分析與處理非平穩(wěn)信號的理想工具,被廣泛應用于信號處理領域。傳統(tǒng)小波變換采用數(shù)字方法實現(xiàn),但其存在運算量大而難以滿足實時性要求,同時需要A/D轉換,造成功耗高等缺點。為滿足低功耗、低電壓和實時性等應用要求需要,研究模擬電路實現(xiàn)小波變換具有重要意義。
文獻[1-7]已利用模擬電路技術實現(xiàn)了小波變換,其首要任務是小波函數(shù)的逼近,逼近精度決定電路實現(xiàn)的質量。可以直接得到頻域傳遞函數(shù)的頻域逼近法在實際應用中較簡便,但逼近方法少。時域逼近法較多,獲得的逼近函數(shù)經過H(s)變換后獲得頻域函數(shù)。文獻[8]提出了基于Pade變換的小波函數(shù)逼近法,該方法簡單且在頻域逼近中應用廣泛。但存在以下問題,限制了其實用性:(1) Pade逼近法難以確定最優(yōu)逼近點s0,如果未選擇到合適的逼近點,會導致逼近效果差;(2) 有理函數(shù)的分子和分母中,多項式的次數(shù)不易選擇,難以確保逼近系統(tǒng)的穩(wěn)定性;(3) 時域和頻域的誤差精度無法同時保證。文獻[9]提出了基于L2的時域逼近法,該法在很多程度上克服了Pade逼近法現(xiàn)有的諸多缺陷,在時域優(yōu)化中,可以獲得較好精度的小波逼近函數(shù)。但該方法也存在不足:(1) 計算比較復雜;(2) 采用了局部最優(yōu)算法最小二乘法,初始值的選擇比較關鍵,否則容易陷入局部最優(yōu)。
針對上述文獻中小波函數(shù)逼近法出現(xiàn)的問題,文獻[2]提出了混合遺傳算法的小波逼近,不僅加快了收斂速度且在一定程度上提高了精度;文獻[6]提出基于改進差分算法的小波逼近方法,但對于多峰值的小波函數(shù)而言,逼近效果較差。為了進一步豐富小波逼近方法,得到更高精度的小波逼近函數(shù),本文提出基于混合蟻群算法的小波逼近法?;旌舷伻核惴ㄊ墙鉀Q全局優(yōu)化問題的有效方法之一,該算法以一種用于快速全局優(yōu)化的蟻群算法[10]搜索全局最優(yōu)值,將該值作為SQP(序列二次規(guī)劃)的初始值,再用SQP精細搜索得到最優(yōu)解。利用混合蟻群算法,逼近的小波函數(shù)具有更好的精度。
設小波基函數(shù)為ψ(t),輸入信號f(t)∈L2(R),及f(t)為平方可積函數(shù),那么f(t)的連續(xù)小波變換(CWT)定義為:
(1)
式中:ψ*(t)是ψ(t)的復共軛,可以看出,小波變換包含兩個連續(xù)變量a和τ。其中:a為尺度因子,控制小波函數(shù)的伸縮,縮放得窄對應高頻,提供隱藏在信號中的詳細信息,擴展得寬對應低頻并提供信號的全局信息;τ為平移因子,控制小波函數(shù)的平移。即尺度a對應于頻率信息,平移量τ對應于時間信息。根據(jù)模擬濾波器理論可知,式(1)可以看成是信號f(t)與小波基ψ(t)的卷積運算。
只有小波變換逆變換存在時,小波變換(WT)才有意義,因此母小波要滿足容許條件:
(2)
從容許條件可推出Ψ(0)=0,即式(2)的同等條件為:
(3)
式中:Ψ(w)是ψ(t)的傅里葉變換。式(3)說明小波基函數(shù)必為震蕩波形且ψ(t)的平均值為零,這就是ψ(t)被稱為“小波”的原因。從頻域中看,容許條件的約束使得小波基的傅里葉變換具有帶通性質,即小波函數(shù)在頻域相當于帶通濾波器。如果輸入信號f(t)經過濾波器后,相當于f(t)與濾波器沖激響應h(t)做卷積運算,得到的輸出信號可表示為:
(4)
為清晰觀察和對比式(1)和(4),對兩式做一定的數(shù)學變換,式(4)中,t和τ都表示連續(xù)變量,只是寫法不同,沒有本質區(qū)別,因此將兩變量調換得:
(5)
同時,式(1)可以寫成:
(6)
從式(5)和式(6)可知,不同尺度a下的小波變換可看成是信號f(t)通過沖激響應為h(t)的小波濾波器后的輸出:
(7)
只有滿足因果性的系統(tǒng)才可以用模擬電路實現(xiàn)。通常小波基函數(shù)都無因果性,因此必須將小波基做時移操作,使其具有因果性。模擬電路實現(xiàn)小波變換是一個近似的結果,誤差大小取決于對時延小波基函數(shù)的逼近程度,因此尋找小波基逼近函數(shù)非常關鍵。
(8)
式(8)的最小化即最小均方誤差準則下的連續(xù)時間模型:
(9)
根據(jù)線性系統(tǒng)理論可知,在時域中,有限階n的因果線性濾波器可以由脈沖響應函數(shù)h(t)表示,其拉普拉斯變換為H(s)。對于具有不同極點的穩(wěn)定系統(tǒng),一般情況下,沖激響應h(t)可以寫成衰減指數(shù)信號和和指數(shù)衰減諧波信號線形組合的形式。因而對于低階次的系統(tǒng)而言,采用通用的h(t)表達式便于逼近小波函數(shù)。例如,N階濾波器沖激響應h(t)可以寫成以下形式:
k+2m=N,t≥0
(10)
式中:ai,bi,cj,dj,fj和wj為實數(shù),在式(3)中,已描述了小波函數(shù)的積分為零,即:
(11)
因此,逼近的小波函數(shù)也要滿足該條件,即對于逼近小波函數(shù)而言,需加上附加的約束條件:
(12)
(13)
式中:n表示采樣點數(shù),M為采樣點總數(shù),Δt為采樣時間間隔。由式(13)可知,這是一個非線性優(yōu)化問題,文獻[9]提出的最小二乘法對初值敏感易收斂,且容易陷入局部最優(yōu),難以獲得全局最優(yōu)。智能優(yōu)化算法在求解復雜優(yōu)化問題表現(xiàn)得尤為強大,因此,采用混合蟻群算法來求解模型式(13)最優(yōu)解是一個很好的選擇。
意大利學者M.Dorigo等在20世紀90年代提出的蟻群算法(ACO)是一種基于種群的啟發(fā)式隨機搜索算法。這個算法的基本原理是:當螞蟻尋找食物時,它們會在通過的路徑上釋放一種特殊的物質,該物質稱為信息素,螞蟻通過信息素進行交流,根據(jù)殘留在路徑上信息素的多少,找到離蟻穴路徑最短的食物源。蟻群算法采用分布式計算,魯棒性強且易與其他算法相結合,因此被廣泛應用于解決優(yōu)化問題。文獻[10]針對蟻群算法不適合求解連續(xù)問題,易陷入局部極值的缺點,提出了一種快速全局優(yōu)化的蟻群算法。該改進蟻群算法采用的是在最優(yōu)解螞蟻附近進行搜索且將本次獲得的最優(yōu)解作為起始解的搜索方式,用來擴大搜索的范圍,避免陷入局部最優(yōu)。主要的不同在于將螞蟻移動的規(guī)則分成兩部分:(1) 將上次循環(huán)中未尋到最優(yōu)解的螞蟻往最優(yōu)解方向移動;(2) 讓尋得最優(yōu)解的螞蟻在最優(yōu)解附近進行搜索,以便在以后的搜索中得到更加精確的解。其中,針對規(guī)則一設置轉移概率公式如下:
(14)
式中:t(i)為螞蟻i處的信息素,t(best)為螞蟻在最優(yōu)解處的信息素。針對規(guī)則二,移動公式如下:
(15)
式中:xbest為上次循環(huán)獲得最優(yōu)解,xtbest為當前最優(yōu)解。在按照上述規(guī)則搜索后,對螞蟻i處的信息素更新,規(guī)則如下:
t(i)=ρ×t(i)+Δt(i) 0<ρ<1
(16)
Δt(i)=ka-f(xi)
式中:ρ為信息素揮發(fā)系數(shù),f(xi)表示目標函數(shù)的最小值。
雖然改進蟻群算法全局搜索能力得到改善,但是它仍然是一個隨機搜索方法,其局部搜索能力有限,而SQP算法有很強的局部搜索能力,可在很短的時間內搜索到局部極值點。但對于多極值復雜的函數(shù),SQP對初值非常敏感,易陷入局部最優(yōu)難以獲得全局最優(yōu)。因此,我們將改進蟻群算法與SQP算法結合,形成互補的混合蟻群算法,該算法由兩部分組成:(1) 對優(yōu)化問題,用改進蟻群算法求解得到全局解;(2) 將該全局解作為SQP的初始值,啟用該算法進一步搜索精確值,得到全局最優(yōu)解。
為了驗證構造的小波逼近函數(shù)模型和混合蟻群算法的優(yōu)化性能,本文以常見的小波為例進行驗證。
(1) 高斯一階導數(shù)母小波為:
ψ(t)=-2(2/π)1/4te-t2
(17)
為了獲得因果系統(tǒng),需要對小波函數(shù)進行時移操作,時移的選擇需要在能量損失和延遲之間進行平衡。在這里,對小波系統(tǒng)函數(shù)向右平移兩個單位,時移后的高斯一階導數(shù)母小波為:
ψ(t-2)=-2(2/π)1/4(t-2)e-(t-2)2
(18)
采用2.1節(jié)介紹的方法構造逼近模型,在實際應用中,階數(shù)越高會使電路設計變得復雜,階數(shù)低會降低逼近精度。因此,逼近階數(shù)和逼近精度之間要進行綜合考慮,這里取逼近階數(shù)為5,則ψ(t-2)的5階逼近模型h(t)為:
h(t)=b1eb2t+b3eb4tsin(b5t)+b6eb4tcos(b5t)+
b7eb8tsin(b9t)+b10eb8tcos(b9t)
(19)
式中:bi(i=1,2,…,10)為待定系數(shù),為了確保系統(tǒng)的穩(wěn)定,要求bi<0(i=2,4,8)。t∈[0,8],定義h(t)與ψ(t-2)之差的平方L2范數(shù)為:
(20)
在t∈[0,8]等間隔取400個點,那么,h(t)與ψ(t-2)的逼近誤差平方和為:
(21)
式中:Δt為時間間隔,其值設為0.02。
根據(jù)式(13)建立數(shù)學模型:
(22)
這是一個復雜且?guī)в屑s束的10維度的非線性優(yōu)化問題,采用混合蟻群算法求解該模型。在混合的蟻群算法中,設定螞蟻個數(shù)為100,最大迭代次數(shù)為1 000,變量取值范圍為bi∈[-4,0],i=2,4,8,其余參數(shù)設置為[-4,4],信息素揮發(fā)系數(shù)ρ設置為0.9。經過10次實驗,選出最優(yōu)的全局最優(yōu)解,將該最優(yōu)解作為SQP的初始值,執(zhí)行SQP算法,迭代次數(shù)設置為10。其搜索的最優(yōu)結果如表1所示。
表1 高斯小波逼近函數(shù)的最優(yōu)系數(shù)
將表1中的10個優(yōu)化參數(shù)代入式(19),獲得小波逼近函數(shù)h(t),并將h(t)進行拉氏變換,獲得H(s)為:
(23)
采用本文方法求得的5階時域逼近函數(shù)波形與理想高斯小波的對比如圖1所示,混合蟻群算法的逼近誤差和為2.905×10-4。
圖1 高斯小波函數(shù)逼近
(2) 研究Morlet小波,其表達式為:
ψ(t)=cos(5t)e-0.5t2
(24)
由式(24)可知,實Morlet小波是一個偶函數(shù),反褶以后的函數(shù)是本身,為了得到因果系統(tǒng),將其平移3個單位,則預處理后的Morlet小波函數(shù)為:
ψ(t-3)=cos[5(t-3)]e-0.5(t-3)2
(25)
在這里取N=5,其有理逼近分式在時域中可寫成:
h(t)= [k1ek2t+k3ek4tsin(k5t)+k6ek4tcosk(k5t)+
k7ek8tsin(k9t)+k10ek8tcos(k9t)]cos[5(t-3)]
(26)
式中:ki(i=1,2,…,10)為待定系數(shù),為保證系統(tǒng)的穩(wěn)定,待定系數(shù)k2、k4和k8必須小于零,在區(qū)間t∈[0,12]等間隔采樣600個點,h(t)與ψ(t-3)的逼近誤差平方和定義為:
(27)
式中:Δt=0.02,采樣點數(shù)為600,建立優(yōu)化逼近模型為:
(28)
采用混合蟻群算法進行優(yōu)化求解,獲得逼近函數(shù),求得的最優(yōu)解如表2所示,此時誤差為3.790×10-4。文獻[2]是在區(qū)間[0,6]取600點,用混合遺傳算法求解模型,逼近誤差為2.842 9×10-4,若采用混合蟻群算法求解,逼近誤差降低至3.066 7×10-5。在此區(qū)間內,小波逼近函數(shù)都可以很好地擬合Morlet小波,但小波逼近函數(shù)未產生衰減。
表2 Morlet小波逼近函數(shù)的最優(yōu)系數(shù)
將表中的參數(shù)代入時域逼近函數(shù),并做拉普拉斯變換,獲得H(s)為:
(29)
式中:
A0=8.276 4×106A1=1.524 7×106A2=1.966 5×106
A3=0.261 9×106A4=0.172 5×106A5=0.016 1×104
A6=0.007 1×106A7=423.364 4A8=137.089 2
A9=4.007 9B0=1.403 2×105B1=-1.787 2×104
B2=1.556 8×104B3=0.355 2×104B4=-0.028 1×104
B5=0.032 9×104B6=-0.003 9×104B7=7.197 3
B8=-0.476 32B9=0.034 1
小波逼近函數(shù)與理想Morlet小波對比如圖2所示??梢钥闯觯疚牟捎玫男〔ê瘮?shù)逼近方法能有效逼近小波基函數(shù)。
圖2 Morlet小波函數(shù)逼近
為了突出本文方法優(yōu)勢,現(xiàn)與已有的幾種方法構造的小波基函數(shù)對比,結果如表3、表4所示??梢钥闯?,混合蟻群算法逼近誤差均小于Pade逼近法、L2逼近法和混合遺傳算法[2],其中,Pade法逼近誤差最大。因此,本文采用的混合蟻群方法優(yōu)于L2逼近法、Pade逼近法和混合遺傳算法。
表3 不同方法逼近小波基函數(shù)誤差比較1
表4 不同方法逼近小波基函數(shù)誤差比較2
為了在模擬電路中實現(xiàn)小波變換,提出了一種逼近小波基函數(shù)的新方法。首先,建立逼近小波基函數(shù)的數(shù)學模型。然后,采用混合蟻群算法求解優(yōu)化問題。由于快速全局優(yōu)化的蟻群算法本身是一種求解優(yōu)化問題的最有效方法之一,具有收斂速度快,尋優(yōu)精度高,有更好的優(yōu)化結果,再把最優(yōu)結果作為QSP算法的初值,啟用QSP精細搜索得到最優(yōu)解。該方法克服了Pade逼近法和L2逼近法中的不足,能夠有效地逼近小波基函數(shù),且逼近精度優(yōu)于pade法、L2逼近法和混合遺傳算法。