李歡歡
(牡丹江師范學(xué)院 圖書館,黑龍江 牡丹江 157011)
隨著生活水平的不斷提高,人們更加期望舒適、安靜的環(huán)境。但是如今的噪聲污染問(wèn)題使得這一任務(wù)變得更加艱巨。強(qiáng)烈的噪聲會(huì)對(duì)人們的聽力系統(tǒng)、神經(jīng)系統(tǒng)和消化系統(tǒng)等造成一定的損傷。我軍平戰(zhàn)時(shí)的數(shù)據(jù)表明:高炮兵、裝甲兵的聲損傷發(fā)病率約為23.5%~48.3%,因聲損傷致殘約占評(píng)殘總數(shù)一半[1]。為有效降低噪聲的影響,最初的解決方案是利用聲音與聲學(xué)材料或聲學(xué)結(jié)構(gòu)相互作用進(jìn)行噪聲控制,稱為被動(dòng)噪聲控制技術(shù)。在被動(dòng)噪聲控制中,吸聲材料的體積與噪聲波長(zhǎng)成正比。所以對(duì)于低頻噪聲,被動(dòng)噪聲控制裝置的體積就會(huì)變的極其龐大,增加了設(shè)備成本。此外,被動(dòng)噪聲控制技術(shù)的降噪頻帶比較窄,各頻率的吸聲系數(shù)固定,不具有自適應(yīng)特性,無(wú)法有效降低時(shí)變?cè)肼暋檫m應(yīng)更加復(fù)雜噪聲環(huán)境,提高降噪效果,主動(dòng)噪聲控制(active noise control, ANC)技術(shù)應(yīng)用而生。
ANC系統(tǒng)是基于聲波相消干涉原理的電聲學(xué)裝置,主要包含參考傳聲器、次級(jí)揚(yáng)聲器、誤差傳聲器和自適應(yīng)控制器[2-3]。參考傳聲器用來(lái)測(cè)量待處理的噪聲信號(hào),次級(jí)揚(yáng)聲器產(chǎn)生一個(gè)與待處理噪聲幅度相同、相位相反的聲音信號(hào),誤差傳聲器采集聲音疊加后的殘余誤差信號(hào),自適應(yīng)控制器用來(lái)控制次級(jí)揚(yáng)聲器產(chǎn)生合適的次級(jí)噪聲。隨著高速信號(hào)處理技術(shù)的不斷發(fā)展, ANC技術(shù)的應(yīng)用更加多樣化,各式各樣的ANC控制算法脫穎而出,其中基于線性有限脈沖響應(yīng)(finite impulse response, FIR)結(jié)構(gòu)的濾波-X最小均方誤差(filtered-X least mean square, FXLMS)算法就是最流行的算法之一[4-5]。但是在實(shí)際ANC系統(tǒng)應(yīng)用中,信號(hào)的傳輸路徑可能具有非線性特性[6],如電子器件老化、揚(yáng)聲器飽和、較強(qiáng)聲壓聲音在管道中傳播等。此時(shí),這種線性控制算法的降噪效果就會(huì)變差,甚至失效。因?yàn)镕IR濾波器不具備描述非線性模型的能力。
為了解決ANC的非線性問(wèn)題,許多優(yōu)秀的非線性控制方法被提了出來(lái)[7-8],主要分為兩類:人工神經(jīng)網(wǎng)絡(luò)和多項(xiàng)式濾波器,分別以函數(shù)鏈接人工神經(jīng)網(wǎng)絡(luò)(functional link artificial neural network, FLANN)[9-12]和基于沃爾泰拉(Volterra)濾波器的FXLMS(VFXLMS)算法為代表[13-14]。FLANN利用三角函數(shù)展開擬合非線性模型。這種擬合具有廣泛的適用性,但不具有明確針對(duì)性,限制了FLANN的收斂速度,需經(jīng)過(guò)較長(zhǎng)時(shí)間進(jìn)行精確擬合。Volterra濾波器為常見的非線性模型,可以完整表征多數(shù)非線性系統(tǒng),因此VFXLMS收斂速度較快。但是Volterra濾波器的拓展階數(shù)需要先驗(yàn)知識(shí)進(jìn)行設(shè)定,而實(shí)際的非線性系統(tǒng)模型階數(shù)往往是未知的,因此容易產(chǎn)生偏差,限制VFXLMS的降噪效果。此外,VFXLMS計(jì)算量偏大,很難滿足實(shí)際應(yīng)用需求。為了緩解VFXLMS中的缺陷,研究學(xué)者提出了基于雙線性(Bilinear)濾波器的FXLMS(BFXLMS)[15-17]。BFXLMS采用非線性遞歸結(jié)構(gòu),繼承了VFXLMS的收斂?jī)?yōu)勢(shì),但是不受拓展階數(shù)的限制,且計(jì)算量少。與FLANN算法相比,BFXLMS收斂速度快,但是降噪性能較差。
基于上述原因,本文對(duì)BFXLMS和FLANN進(jìn)行有效結(jié)合,提出了一種新的ANC算法——CBFLANN(combined bilinear FLANN)。在相同參數(shù)條件下,該算法同時(shí)繼承了BFXLMS收斂速度快和FLANN降噪量大的優(yōu)勢(shì)。
基于FLANN算法的非線性ANC系統(tǒng),如圖1所示。從圖中可以看出,在FLANN算法中,首先將輸入信號(hào)以正弦方式進(jìn)行非線性拓展。然后將拓展的結(jié)果利用線性濾波器組進(jìn)行處理,每組濾波器處理后的結(jié)果為yi(n),表示為
yi(n)=Hi(n)Vi(n)T,i=1,2,…,2P+1
(1)
式中,P為函數(shù)拓展的階數(shù),其中
Hi(n)=[hi,0(n),hi,1(n),…,hi,N(n)]
(2)
圖1 基于FLANN算法的非線性ANC系統(tǒng)Fig. 1 Nonlinear ANC system based on FLANN algorithm
V1(n)=[x(n),x(n-1),…,x(n-N)]
?
V2P(n)=[sin(Pπx(n)),…,sin(Pπx(n-N))]
V2P+1(n)=[cos(Pπx(n)),…,cos(Pπx(n-N))]
(3)
式中,N為濾波器存儲(chǔ)階數(shù)。次級(jí)輸出表示為
(4)
在FLANN算法中,線性濾波器組的權(quán)重更新為
(5)
(6)
e(n)=p(n)-d(n)
(7)
(8)
將式(1)~式(3)代入式(4)得
(9)
從式(9)可以看出,等式右邊第一項(xiàng)為線性控制,第二項(xiàng)為非線性控制。由三角函數(shù)的麥克勞林展開得
(10)
(11)
此時(shí),式(9)非線性控制部分可進(jìn)一步寫成
(12)
將式(9)式(12)代入式(8),此時(shí)次級(jí)噪聲可以表示為
(13)
在ANC系統(tǒng)中,初級(jí)路徑一般都是連續(xù)的函數(shù),因此總是可以通過(guò)Volterra模型表示為
(14)
式中:T(T>1)為非線性聲學(xué)路徑的階數(shù);hr(k1,…,kr)和K+1分別為第r個(gè)非線性多項(xiàng)式的系數(shù)和采樣長(zhǎng)度。對(duì)比觀察式(13)和式(14)可知,F(xiàn)LANN算法是利用三角函數(shù)的非線性展開擬合非線性初級(jí)噪聲。這種擬合具有廣泛的適用性,但不具有明確針對(duì)性,限制了FLANN的收斂速度,需經(jīng)過(guò)較長(zhǎng)時(shí)間進(jìn)行精確擬合。
由上述分析可知,在非線性ANC系統(tǒng)中,F(xiàn)LANN具有良好的降噪量,只是收斂速度欠佳。BFXLMS采用非線性多項(xiàng)式濾波器作為控制器,對(duì)初級(jí)噪聲中各非線性部分具有明確針對(duì)性,因此收斂速度較快。為了提高FLANN的收斂速度,利用自適應(yīng)混合參數(shù)將FLANN和BFXLMS進(jìn)行并行凸組合,提出了CBFLANN算法,如圖2所示。通過(guò)混合參數(shù)的調(diào)節(jié),使CBFLANN在收斂過(guò)程中降噪性能主要依賴于BFXLMS,而在接近穩(wěn)態(tài)時(shí),降噪性能主要依賴于FLANN。因此與FLANN相比,CBFLANN采用了BFXLMS的收斂速度,加快了收斂過(guò)程。提出的CBFLANN具體設(shè)計(jì)過(guò)程如下。
圖2 提出的CBFLANN算法Fig.2 Diagram of the proposed CBFLANN algorithm
在提出的CBFLANN中,次級(jí)輸出表示為
y(n)=λ(n)yb(n)+(1-λ(n))yf(n)
(15)
式中:yf(n)為FLANN的輸出;yb(n)為BFXLMS的輸出;λ(n)為[0,1]區(qū)間內(nèi)的自適應(yīng)參數(shù),其表達(dá)式為
(16)
FLANN的輸出yf(n)如式(1)~式(4)所示。Bilinear拓展表示為
G1(n)=[x(n),x(n-1),…,x(x-N)]
G2(n)=[y(n-1),y(n-2),…,y(n-N)]
(17)
其輸出為
yb(n)=A(n)G1(n)T+B(n)G2(n)T+C(n)G3(n)T
(18)
其中,
(19)
定義
H(n)=[H1(n),H2(n),…,H2P+1(n)]T
(20)
為FLANN權(quán)重向量
W(n)=[A(n)B(n)C(n)]T
(21)
為BFXLMS權(quán)重向量。
在CBFLANN算法中,權(quán)重向量H(n)和W(n)分別進(jìn)行獨(dú)立更新。定義
(22)
(23)
式中,E[·]為獲取信號(hào)的期望值。
(24)
為FLANN獨(dú)立作用時(shí)產(chǎn)生的估計(jì)誤差噪聲
(25)
(26)
其中,
(27)
xf(n)=[V1(n),…,V2P,V2P+1(n)]T
(28)
W(n)更新表達(dá)式為
(29)
其中,
(30)
xb(n)=[G1(n)G2(n)G3(n)]T
(31)
自適應(yīng)混合參數(shù)λ(n)通過(guò)調(diào)整α(n)進(jìn)行實(shí)時(shí)控制,以獲得更佳消噪效果。α(n)同樣通過(guò)LMS算法進(jìn)行更新。定義
ξ(n)=E[e2(n)]
(32)
式中,誤差信號(hào)e(n)表達(dá)如式(7)所示,不同的是此時(shí)次級(jí)輸出y(n)不再是單一的FLANN輸出,而是FLANN與BFXLMS的有效結(jié)合。α(n)通過(guò)式(33)更新
(33)
其中,
(34)
為FLANN與BFXLMS的次級(jí)路徑估計(jì)濾波差分輸出。
觀察式(15)、式(16)以及式(33)可知,混合參數(shù)λ(n)是一個(gè)實(shí)時(shí)變化的量,其取值決定于CBFLANN的總體誤差e(n)以及BFXLMS和FLANN的輸出差值yb(n)-yf(n),類似于一個(gè)軟開關(guān),通過(guò)改變BFXLMS和FLANN輸出的作用強(qiáng)度,得到最后輸出。這意味著CBFLANN的輸出通過(guò)混合參數(shù)在同一時(shí)刻趨向于選取BFXLMS和FLANN的最優(yōu)值,有望實(shí)現(xiàn)BFXLMS收斂性能和FLANN降噪量的有效結(jié)合。
以上分析表明,通過(guò)自適應(yīng)混合參數(shù)的調(diào)節(jié),提出的CBFLANN有望實(shí)現(xiàn)BFXLMS和FLANN的優(yōu)勢(shì)互補(bǔ),同時(shí)具有BFXLMS的收斂速度和FLANN的降噪量。為進(jìn)一步驗(yàn)證,在不同初級(jí)路徑與不同信噪比的參考噪聲環(huán)境下,將提出的CBFLANN與FXLMS,BFXLMS以及FLANN進(jìn)行比較,其中FLANN采用一階拓展,即P=1。比較結(jié)果采用歸一化均方誤差(NMSE)
(35)
S(z)=z-2+1.5z-3-z-4
(36)
次級(jí)路徑估計(jì)通過(guò)離線訓(xùn)練的方式獲得,訓(xùn)練的信號(hào)為高斯白噪聲,最終取其穩(wěn)態(tài)時(shí)3 000個(gè)點(diǎn)的均值作為次級(jí)路徑估計(jì)的系數(shù)。次級(jí)路徑估計(jì)時(shí)的參數(shù)設(shè)置如表1所示。
表1 次級(jí)路徑估計(jì)參數(shù)設(shè)置
在該仿真中,參考信號(hào)x(n)為200 Hz正弦信號(hào),信噪比為20 dB。初級(jí)路徑為
p(n)=x(n)+0.8x(n-1)+0.3x(n-2)+
0.4x(n-1)x(n-3)-
0.8x(n)x(n-1)+0.9x(n)x(n-2)+
0.7x(n)x(n-1)x(n-3)
(37)
各算法的降噪效果如圖3~圖5所示。其中:圖3為穩(wěn)態(tài)時(shí)的頻域結(jié)果;圖4為NMSE結(jié)果;圖5為各算法的誤差信號(hào)和參數(shù)λ(n)的控制曲線。觀察圖3可知,參考噪聲經(jīng)過(guò)初級(jí)路徑后可以產(chǎn)生200 Hz,400 Hz和600 Hz三種頻率。FXLMS只對(duì)200 Hz噪聲成分具有明顯消噪效果,對(duì)400 Hz和600 Hz噪聲成分沒有消噪作用。BFXLMS對(duì)200 Hz和400 Hz噪聲成分都具有明顯消噪效果,但是對(duì)600 Hz噪聲成分的降噪效果較弱。FLANN和CBFLANN對(duì)三個(gè)頻率成分都有明顯的降噪效果,且降噪量基本一致。這說(shuō)明提出的CBFLANN繼承了FLANN降噪量大的優(yōu)勢(shì)。這一結(jié)論在圖4和圖5中的穩(wěn)態(tài)結(jié)果中均有體現(xiàn)。觀察圖4和圖5中各算法的收斂特性,可知提出的CBFLANN具有與BFXLMS相同的初始收斂速度,比FLANN的收斂速度快。這說(shuō)明CBFLANN也繼承了BFXLMS收斂速度快的優(yōu)勢(shì),優(yōu)于FLANN。基于以上所述,F(xiàn)XLMS,BFXLMS,F(xiàn)LANN以及CBFLANN的降噪效果對(duì)比結(jié)果如表2所示。提出的CBFLANN既收斂速度快,又穩(wěn)態(tài)誤差小。
圖3 20 dB各算法頻域降噪結(jié)果Fig.3 De-noising performance of each algorithm for 20 dB in frequency-domain
圖4 20 dB各算法NMSE收斂曲線Fig.4 NMSE learning curve of each algorithm for 20 dB
表2 降噪效果比較
產(chǎn)生上述效果的原因可以通過(guò)觀察圖5中λ(n)的控制曲線得知。初始狀態(tài)時(shí),λ(n)的值趨近于1,觀察式(15)可知此時(shí)CBFLANN的降噪效果主要取決于BFXLMS。之后λ(n)的值逐漸接近于0,此時(shí)CBFLANN的降噪效果主要取決于FLANN。整個(gè)過(guò)程是根據(jù)誤差信號(hào)調(diào)節(jié)的自適應(yīng)過(guò)程,通過(guò)式(16)和(33)計(jì)算得到。同時(shí)由此可知,參數(shù)λ(n)的變化趨勢(shì)直接影響CBFLANN的收斂速度和最終的穩(wěn)態(tài)誤差。
圖5 20 dB各算法誤差信號(hào)及混合參數(shù)λ(n)的變化曲線Fig.5 Error noise of each algorithm and the learning curve of mixing parameter λ(n) in 20 dB
在該仿真中,參考信號(hào)頻率及初級(jí)路徑與仿真一設(shè)置相同,信噪比變?yōu)?0 dB。此時(shí),各算法的降噪效果如圖6、圖7和圖8所示,與仿真一結(jié)果類似。FLANN和CBFLANN擁有相同的穩(wěn)態(tài)誤差,優(yōu)于BFXLMS和FXLMS。但是CBFLANN的收斂速度卻明顯快于FLANN。在信噪比40 dB時(shí),與20 dB的降噪效果相比,各算法的降噪量都有極大提高。這說(shuō)明,在非線性ANC系統(tǒng)中,窄帶參考噪聲比寬帶參考噪聲更加容易實(shí)現(xiàn)噪聲消除。
觀察圖6可知,BFXLMS、FLANN以及CBFLANN的穩(wěn)態(tài)誤差頻譜中包含了目標(biāo)頻率成分以外的頻率,如800 Hz,1 000 Hz,1 200 Hz,1 400 Hz等。這是因?yàn)锽FXLMS中的乘積項(xiàng)x(n-i)y(n-j)和FLANN中的三角函數(shù)項(xiàng){sin(pπx(n)),cos(pπx(n))}都可展開成無(wú)限個(gè)非線性多項(xiàng)式。這種現(xiàn)象在一定程度上會(huì)影響非線性ANC系統(tǒng)的降噪效果。改變步長(zhǎng)參數(shù),該問(wèn)題會(huì)得到緩解,但卻無(wú)法根本消除。而且在不同信噪比參考噪聲中,該影響也不相同,如20 dB中BFXLMS和FLANN的降噪結(jié)果中這種高階非線性噪聲就明顯較少。
圖6 40 dB各算法頻域降噪結(jié)果Fig. 6 De-noising performance of each algorithm for 40 dB in frequency-domain
圖7 40 dB各算法NMSE收斂曲線Fig.7 NMSE learning curve of each algorithm for 40 dB
在該仿真中,參考信號(hào)為200 Hz正弦信號(hào),信噪比為40 dB。初級(jí)路徑的傳遞函數(shù)變?yōu)橐粋€(gè)三階多項(xiàng)式模型
p(n)=u(n-2)+0.08u2(n-2)-0.04u3(n-2)
(38)
式中:u(n)為參考信號(hào)x(n)與函數(shù)f(n)的卷積結(jié)果,f(n)為傳遞函數(shù)F(z)的脈沖響應(yīng),F(xiàn)(z)的表達(dá)式為
F(z)=z-3-0.3z-4+0.2z-5
(39)
圖8 40 dB各算法誤差信號(hào)及混合參數(shù)λ(n)的變化曲線Fig.8 Error noise of each algorithm and the learning curve of mixing parameter λ(n) in 40 dB
各算法仿真結(jié)果如9圖所示,其中圖9為NMSE結(jié)果,圖10為參數(shù)λ(n)的變化曲線。觀察圖9可知,在該仿真環(huán)境下,F(xiàn)XLMS收斂速度最快,但是降噪效果最差;BFXLMS收斂速度次之,降噪效果與FXLMS幾乎相同;FLANN收斂速度最慢,降噪效果最好;CBFLANN同時(shí)擁有BFXLMS的收斂速度和FLANN的降噪量。
通過(guò)以上三個(gè)仿真結(jié)果討論,可知提出的CBFLANN同時(shí)繼承了BFXLMS收斂速度快和FLANN降噪量大的優(yōu)勢(shì),解決了傳統(tǒng)算法快速收斂與低穩(wěn)態(tài)誤差二者不可兼得的問(wèn)題。
圖9 NMSE學(xué)習(xí)曲線Fig.9 NMSE learning curves
圖10 混合參數(shù)λ(n)的變化曲線Fig.10 Learning curve of mixing parameter λ(n)
本文介紹了FLANN在非線性ANC系統(tǒng)中的降噪原理,并分析了其收斂速度慢的原因。為有效提升FLANN的收斂性能,本文利用自適應(yīng)混合參數(shù)將BFXLMS和FLANN進(jìn)行并行凸組合,提出了CBFLANN算法。利用混合參數(shù)實(shí)時(shí)調(diào)節(jié)BFXLMS和FLANN的作用強(qiáng)度,使CBFLANN同時(shí)繼承了BFXLMS收斂速度快和FLANN穩(wěn)態(tài)誤差小的優(yōu)勢(shì)。不同參考信號(hào)和聲學(xué)路徑的仿真實(shí)驗(yàn)也充分驗(yàn)證了提出CBFLANN在非線性ANC系統(tǒng)中的降噪優(yōu)勢(shì)。CBFLANN的研究也為解決同一個(gè)ANC系統(tǒng)不能同時(shí)兼顧收斂速度和穩(wěn)態(tài)誤差的問(wèn)題提供了新思路。因?yàn)镃BFLANN是兩個(gè)獨(dú)立系統(tǒng)的并行組合,在實(shí)際應(yīng)用中可以采用雙核控制器進(jìn)行實(shí)現(xiàn),不會(huì)降低原有獨(dú)立系統(tǒng)的降噪效率。