楊海斌
(湖南理工職業(yè)技術(shù)學(xué)院,湘潭 411004)
當(dāng)一個(gè)系統(tǒng)的脈沖響應(yīng)系數(shù)中有一小部分具有顯著值,而其他系統(tǒng)的系數(shù)接近于零時(shí),則該系統(tǒng)被歸類為稀疏系統(tǒng)。對(duì)于這樣的系統(tǒng)來說,系統(tǒng)辨識(shí)算法是一個(gè)具有挑戰(zhàn)性的任務(wù)。仿射投影算法在識(shí)別稀疏系統(tǒng)時(shí)性能較差。在文獻(xiàn)[1]中引入的比例仿射投影算法,通過采用與相應(yīng)的系數(shù)大小成比例的步長(zhǎng)調(diào)節(jié)矩陣來解決這個(gè)問題。這種算法盡管在初始階段有很好的收斂速度,但在整個(gè)自適應(yīng)過程期間無法保持這種速度。文獻(xiàn)[2]中引入的改進(jìn)PAPA算法(MPAPA),使用非線性關(guān)系來調(diào)整其系數(shù),使所有的系數(shù)收斂于最優(yōu)值的一個(gè)界。但MPAPA中激活因子對(duì)所有系數(shù)都是共有的,并且依賴于自適應(yīng)濾波器系數(shù)向量的瞬時(shí)無窮范數(shù),這種計(jì)算激活因子的方法導(dǎo)致自適應(yīng)濾波器系數(shù)之間的增益分布不完全符合比例化的概念,其在更新非活動(dòng)系數(shù)時(shí)收斂速度會(huì)受到影響。為解決此問題,文獻(xiàn)[3]利用個(gè)體激活因子替代全局激活因子,提出了IAF-MPAPA算法,其比MPAPA算法提供了更好的增益分配。在IAF-MPAPA算法中,需要對(duì)格拉姆矩陣求逆,為了避免計(jì)算困難,常用一個(gè)稱為正則化因子來對(duì)矩陣進(jìn)行正則化,文獻(xiàn)[4]指出更大的正則化因子導(dǎo)致更小的穩(wěn)態(tài)狀態(tài),但收斂速度較慢。具有固定正則化因子的IAF-MPAPA需要在快速收斂速度和低穩(wěn)態(tài)失調(diào)之間進(jìn)行權(quán)衡。針對(duì)此問題,文獻(xiàn)[5]通過對(duì)IAF-MPAPA的穩(wěn)態(tài)分析,將正則化因子與穩(wěn)態(tài)分析的關(guān)系用數(shù)學(xué)形式表示出來,然后,在進(jìn)化方法的推動(dòng)下,提出了具有進(jìn)化正則化的IAF-MPAPA算法(ERIAF-MPAPA)。但由于ERIAF-MPAPA算法在整個(gè)自適應(yīng)過程中將非活動(dòng)系數(shù)的增益轉(zhuǎn)換為活動(dòng)系數(shù)的增益,降低了穩(wěn)態(tài)過程中不活躍系數(shù)的收斂速度。為此本文提出了一種改進(jìn)的ERIAF-MPAPA算法(MERIAF-MPAPA),其使用一種新的增益分配策略來更新濾波器系數(shù)。該策略在活躍系數(shù)接近收斂時(shí)增加分配給非活躍系數(shù)的增益,且每當(dāng)學(xué)習(xí)過程中跨越一個(gè)預(yù)定義的閾值時(shí),會(huì)執(zhí)行一個(gè)新的增益分配,而不是像ERIAF-MPAPA算法那樣將增益與系數(shù)大小成正比。新算法使能量在整個(gè)學(xué)習(xí)過程中得到了更好的分配,可以更快的收斂。
圖1是回聲消除系統(tǒng)的原理框圖,圖中遠(yuǎn)端信號(hào)x(k)通過回聲信道h產(chǎn)生回聲yˉ(k),近端信號(hào)d(k)是由回聲yˉ(k)混和得到。通過使用FIR自適應(yīng)濾波器w來模擬回聲信道h,可以使所得y(k)逼近回聲信號(hào),進(jìn)而達(dá)到回聲消除的目的。
圖1 回聲消除系統(tǒng)
在回聲路徑識(shí)別方面,由于脈沖響應(yīng)時(shí)間長(zhǎng)且稀疏,NLMS等傳統(tǒng)的自適應(yīng)算法性能相對(duì)較差。PNLMS類型算法通過為每個(gè)濾波器數(shù)分配步長(zhǎng)提高了NLMS算法性能。在PNLMS中,實(shí)際回波路徑脈沖響應(yīng)及其估計(jì)和濾波器輸入矢量定義為h=[h1h2…,hN]Tw(k)=[w1(k),w2(k),…,wN(k)]T,x(k)=[x(k)x(k-1),…,x(k-N+1)]T,其中N是自適應(yīng)濾波器的長(zhǎng)度,k是時(shí)間指標(biāo)。并定義d(k)、e(k)表示所需的響應(yīng)和誤差信號(hào)。即:
其中v(k)表示近端噪聲信號(hào)。PAPA類型算法是PNLMS類型算法的多維推廣,其通過采用“數(shù)據(jù)重用”方法對(duì)一段數(shù)據(jù)中的元素進(jìn)行多次利用改進(jìn)了PNLMS算法的收斂性能。其輸入X(k)為由P個(gè)輸入信號(hào)向量組成的矩陣[6]:
P為數(shù)據(jù)重用因子(又可稱之為投影階數(shù))。并分別記D(k)、E(k)和ε(k)為k時(shí)刻的前P個(gè)期望輸出、先驗(yàn)估計(jì)誤差和后驗(yàn)估計(jì)誤差所構(gòu)成的向量,即:
式(3-4)中:
ERIAF-MPAPA算法系數(shù)更新過程可表示為:
式中β為步長(zhǎng)參數(shù),δn是防止被零整除保證穩(wěn)定的正則化因子,其計(jì)算過程如下:令:
式(5)中Q(k)=diag{q0(k)q1(k)...qL-1(k)}是一個(gè)對(duì)角矩陣,以更新每個(gè)濾波器的估計(jì)系數(shù),根據(jù)對(duì)角元素qi(k)計(jì)算式中活化因子fi(k)的區(qū)別,PAPA類型算法可分為 IPAPA、MPAPA、IAF-PAPA、ERIAF-MPAPA 等,對(duì)于ERIAF-MPAPA,對(duì)角元素qi(k)按照如下遞歸關(guān)系式進(jìn)行計(jì)算:
式(11)中fi(k)初始值fi(0)=10-4。
與IPAPA、MPAPA算法相比,ERIAF-MPAPA算法通過fi(k)將部分非活動(dòng)系數(shù)增益轉(zhuǎn)移到活動(dòng)系數(shù)增益,提供了更好的增益分布使得穩(wěn)態(tài)前的收斂速度和跟蹤能力都得到了很大的提高;但它減緩了穩(wěn)態(tài)階段不活動(dòng)系數(shù)的收斂速度。針對(duì)此問題,本文提出一種新的自適應(yīng)系數(shù)增益計(jì)算策略。該方法的基本思想是:因?qū)σ呀?jīng)達(dá)到收斂的自適應(yīng)系數(shù)分配較大的增益實(shí)際上對(duì)全局收斂沒有影響,所以EIAF-MPAPA算法的比例原理不需要在整個(gè)自適應(yīng)過程中應(yīng)用。在增益分配的新策略中,目標(biāo)是當(dāng)?shù)趇個(gè)系數(shù)達(dá)到其最優(yōu)值wi,opt的鄰近點(diǎn)ε時(shí),重新設(shè)計(jì)一個(gè)新的策略來分配自適應(yīng)性增益,目標(biāo)函數(shù)定義為[8]:
其中wi(ki)是第i個(gè)系數(shù)的估計(jì)值,ki是第i個(gè)系數(shù)達(dá)到最優(yōu)值所需的迭代次數(shù),η為預(yù)定義的閾值。η的范圍可由誤差信號(hào)E2(k)的期望值E(E2(k))來確定,E(E2(k))計(jì)算如下:
對(duì)于MERIAF-MPAPA算法,考慮系數(shù)在k次迭代時(shí)達(dá)到最優(yōu)值的鄰近點(diǎn)ε,于是有:
假設(shè)X(k)和V(k)是不相關(guān)的信號(hào),得到:
于是,式(15)可寫為:
因增益分布的變化必須在達(dá)到穩(wěn)態(tài)之前發(fā)生,因此η的值必須大于(k)。因此可以用下式來確定η的范圍:
從式(12)可看出,在ki迭代時(shí)刻,第i個(gè)系數(shù)幾乎已經(jīng)收斂,因此,這個(gè)系數(shù)不再需要獲得與其幅度成正比的增益。這樣,以前分配給這個(gè)系數(shù)的部分增益現(xiàn)在可以重新分配給沒有達(dá)到最優(yōu)值鄰近點(diǎn)的系數(shù),從而加快它們的收斂速度。因此,考慮到閾值條件(12),每個(gè)系數(shù)的單個(gè)增益被重寫為:
上式中,對(duì)已收斂到最優(yōu)值的系數(shù),則分配最小增益γi(k)。在式(18)中,我們注意到這種增益分配策略需要事先知道wi,opt的值。但在實(shí)際應(yīng)用中,系數(shù)的最優(yōu)值不是先驗(yàn)知道的。因此引入如下的瞬時(shí)平方誤差的平滑函數(shù)ψ(k):
其中0<α<1是平滑因子。因此,在MEIAF-MPAPA算法中,考慮到全局閾值條件,第i個(gè)系數(shù)的增益表示為:
于是可得增強(qiáng)的MERIAF-MPAPA算法完整遞推公式為:
為驗(yàn)證本文算法性能,針對(duì)一個(gè)高度稀疏的回聲消除系統(tǒng),通過蒙特卡羅模擬(平均100次獨(dú)立運(yùn)行)比 較 MPAPA、IAF-MPAPA[2014]、ERIAF-MPAPA[2017]和MERIAF-MPAPA算法的性能。四種算法中數(shù)據(jù)重用因子P=2,為模擬回波路徑脈沖響應(yīng),首先定義如下以指數(shù)方式衰減的Lu維向量:
其中τ>0是衰變常數(shù)。利用方程(21),得到脈沖響應(yīng)為:
在所有的模擬實(shí)驗(yàn)中,輸入信號(hào)是一個(gè)相關(guān)的、方差為=1的2階零均值自回歸過程,即:
其中b1和b2是過程系數(shù)。并采用歸一化失調(diào)(misalignment)作為性能比較標(biāo)準(zhǔn),其定義為:
從圖2可以看出,在所有算法中,本文提出的算法收斂最快。
圖2 算法收斂性能比較
本文提出了一種改進(jìn)的ERIAF-MPAPA算法(MERIAF-MPAPA),該算法在學(xué)習(xí)過程中使用了一種增益再分配策略,以增加分配給非活動(dòng)系數(shù)的增益,因?yàn)榛顒?dòng)系數(shù)趨于收斂。其次,當(dāng)達(dá)到閾值時(shí),通過對(duì)所有自適應(yīng)系數(shù)分配相等的增益來實(shí)現(xiàn)這種再分配。仿真結(jié)果表明,該算法的收斂速度明顯提高。