伍飛云,楊坤德,童峰
(1. 西北工業(yè)大學航海學院,陜西 西安 710072;2. 西北工業(yè)大學海洋聲學信息感知工業(yè)和信息化部重點實驗室,陜西 西安 710072;3. 廈門大學水聲通信與海洋信息技術(shù)教育部重點實驗室,福建 廈門 361005)
水下無線傳感網(wǎng)絡(luò)涉及諸多領(lǐng)域,如水下數(shù)據(jù)監(jiān)測、污染控制、氣象預報等[1-3]。水下單載波水聲數(shù)據(jù)的遙測則為水下無線傳感網(wǎng)絡(luò)的一個分支和具體應(yīng)用,如水下自主航行器的控制、艦船噪聲監(jiān)測以及水聲通信等。由于觀測和記錄的數(shù)據(jù)時間長、容量大,加上無線通信帶寬有限,且與衛(wèi)星通信成本高,無線傳感器所攜帶的能量有限等問題,在設(shè)計水下單載波水聲數(shù)據(jù)的遙測系統(tǒng)時,不得不考慮數(shù)據(jù)壓縮問題,而數(shù)據(jù)壓縮越大,恢復精度必將受到影響,如何提高算法的恢復精度是本文研究的重點內(nèi)容。
傳統(tǒng)的數(shù)據(jù)壓縮方法諸如小波壓縮[4],能耗大且恢復精度有限。與小波壓縮方法不同,壓縮感知(CS, compressed sensing)采用稀疏二進制傳感矩陣[5],以降低能耗與成本。但 CS算法僅適用于能稀疏表達的信號[6-7],因此,對于處理時域非稀疏的水聲信號,則需考慮將水聲信號進行稀疏化表達。結(jié)合單載波水聲信號的頻域稀疏特性,本文考慮在離散余弦變換(DCT, discrete cosine transform)域?qū)嚎s的信號進行估計,并最終恢復出觀測的單載波信號。
基于 DCT框架,壓縮感知的核心目標是直接求最小l0范數(shù),然而該問題不可直接獲取[6-7],通常的辦法是采用最小l1范數(shù)進行代替,典型的算法包括基于最小l1范數(shù)的拉格朗日算法[8]和硬閾值迭代(IHT, iterative hard threshold)算法[9]。前者獲得的稀疏解精度有限,而后者不能保證所求解為稀疏解[10],改進的思路是在所求解中加入稀疏度的限制使其稀疏化。但這些方法不足以改善稀疏解的估計精度。貪婪算法作為廣泛采用的稀疏求解算法,具體包括匹配追蹤(MP, matching pursuit)算法[11]和正交匹配追蹤(OMP, orthogonal matching pursuit)算法[12]。然而這些算法是局部搜索最優(yōu),所獲得的解不是全局最優(yōu)。
本文將部分范數(shù)約束(PNC, partial-norm- constraint)引入優(yōu)化目標中,以取代直接對l1范數(shù)進行最小化策略。事實上,PNC首次應(yīng)用在有限長單位沖激響應(yīng)濾波器[13],隨后在范數(shù)自適應(yīng)算法[14]和自適應(yīng)零吸引因子算法設(shè)計中得以應(yīng)用[15],進一步地,PNC結(jié)合壓縮感知框架構(gòu)建了稀疏恢復算法[16]。然而,以上算法主要是在實數(shù)域中進行討論和設(shè)計。本文將PNC與拉格朗日乘子法結(jié)合,推導出DCT域的稀疏恢復算法。本文的創(chuàng)新點如下。
1) 結(jié)合壓縮感知框架對單載波水聲數(shù)據(jù)進行壓縮和恢復研究,在該框架下,數(shù)據(jù)的大量壓縮將有助于提高遙測系統(tǒng)的電池使用時間,降低網(wǎng)絡(luò)傳輸數(shù)據(jù)的負載。
2) 將部分范數(shù)約束添加到測量關(guān)系式中,并通過拉格朗日算子法得到解析式,從而導出基于部分范數(shù)約束下的稀疏求解策略。該算法的性能將在后續(xù)部分范數(shù)與傳統(tǒng)算法進行對比和分析。
對本文采用的數(shù)學符號做統(tǒng)一說明:上角標T表示向量或矩陣的轉(zhuǎn)置,上角標H表示共軛轉(zhuǎn)置,I表示單位矩陣,||θ||0表示向量的非零元素的個數(shù),||θ||1表示向量各元素的絕對值之和,||θ||表示向量的歐氏長度,E(di)表示第i列列向量 di的平均值。
其中,Φ表示MN×的測量矩陣,且MN<<,Φ隨機選取M列線性無關(guān)的向量,壓縮向量y和v維數(shù)都為1M×,由于MN<<,即y的維度遠小于原始數(shù)據(jù)x的維度,因此,y的存儲和傳輸比x的要求更低,在終端,基于合理選擇的Φ,CS算法可從壓縮信號y中重構(gòu)[17],且不需要任何先驗知識。本文選取隨機二進制矩陣作為測量矩陣。
實際應(yīng)用中,x雖然在時域表達不稀疏,但在變換域中可由一組正交基iψ表示為
其中,θ =< x,ψi> 是 N × 1 的向量,且 Ψ =[ψ1,…,ψN]為N×N的字典矩陣。本文采用DCT矩陣作為字典矩 陣 。 ψi( i = 1,… ,N )的 構(gòu) 成 如 下 : 設(shè) di=用 Matlab語言表示 變化 步長為 1, ci= di? E (di) ,0<i < N ,則。128128×維的Ψ如圖1所示。
若向量θ中有κ個非零元素,則稱θ為κ稀疏,若將噪聲影響融合到待壓縮的信號中,則模型(1)變?yōu)?/p>
其中, A = ΦΨ ,且 κ ≤M < N 。
圖1 128128×維的Ψ
經(jīng)測量矩陣Φ, 1N×的信號x壓縮為 1M×的信號y,由于測量矩陣是超完備的,即存在無數(shù)多個解,設(shè)計的目標是找出其中最稀疏的解。因此,優(yōu)化目標為
其中,0||||θ為θ的非零元素個數(shù),設(shè)該問題的解為θ~,則重構(gòu)信號x~可由以下獲得
一旦模型建立,余下的目標是為設(shè)計優(yōu)化算法求解稀疏解,優(yōu)化目標(4)是一個NP難問題,因此可轉(zhuǎn)化為
解決目標(6)的一個常用方法是IHT算法[9],其核心為
其中,閾值函數(shù) Hs( pi)定義為
其中, λs(p)為設(shè)置的閾值,具體設(shè)置辦法為:將向量 θl+ μ AH( y ? Aθl)中絕對值由大到小進行排序,選取排在第s個元素的絕對值作為閾值,即將接近零的元素值設(shè)置為零。該方法的設(shè)計因不需要求解逆矩陣,算法結(jié)構(gòu)簡單,運行速度快,但精度有限,且算法性能依賴于參數(shù)閾值 λs(p)和步長μ的選取。此外,還需要保證A是正則化的。換一種思路,嘗試采用拉格朗日乘子法求解如下問題
分別求偏導并置零,有
記
其中
其中,diag表示將向量進行對角化。交替代換,最終可得到解析解為
無論是IHT算法還是基于l1范數(shù)的拉格朗日算法,其核心都是圍繞最小化l1范數(shù)展開的,因此,獲得的精度有限,本文嘗試采用 PNC范數(shù)約束,構(gòu)建目標函數(shù)為
其中,PNC范數(shù) || θ||PNC定義詳見文獻[11,14](文獻中將其稱為非均勻范數(shù)NNC,此處為了避免混淆2種算法,故本文算法名稱采用 PNC)。分別求偏導并置零為
記
其中,G如式(11)所述,而F為
其中,σ為PNC算法的閾值,交替代換,可得
從而有
因此有
最終可得到解析解為
從式(22)可以看出,該算法表達式具有固定點算法的特征,因此具有和固定點算法相同的收斂性。值得注意的是,本文所提算法和作者之前的工作[13]有以下3點不同之處。
1) 之前的工作是將非均勻范數(shù)加在經(jīng)典最小均方誤差(LMS)的代價函數(shù)中,從而得到比經(jīng)典LMS多一項計算式的迭代表達式;本文工作則是將部分范數(shù)約束作為一個閾值處理器融入求解的解析式中。
2) 在算法的實際處理中,之前的工作導出的迭代式可引入重構(gòu)過程;而本文工作則引入了一個微小常量以避開病態(tài)運算。
3) 之前的工作是向量之間的運算,可實現(xiàn)在線模式進行處理;而本文工作方式是逐塊進行,是矩陣的運算形式,本文工作算法收斂對數(shù)據(jù)長度的要求低,且兩者的收斂策略也不同,前者是最陡梯度法,而本文采用的是拉格朗日算子法。
為了評估算法的性能,采用恢復信噪比(RSNR,recovery signal to noise ratio)對各算法的恢復精度進行評估。,其中,θ~是θ的重構(gòu)。因優(yōu)化算法的本質(zhì)是恢復稀疏信號,仿真實驗中設(shè)置 =40M , =100N ,矩陣A元素服從高斯分布,再進行正則化處理。稀疏度(即非零元素的個數(shù))設(shè)置為=10κ,稀疏信號中的非零抽頭隨機分布,測量信號y的信噪比設(shè)置為,本次仿真實驗中SNR=30 dB,
采用PNC、IHT、L1、MP、OMP算法對稀疏信號進行估計,得到的估計圖與原始圖對比情況如圖 2所示,采用PNC、IHT、L1、MP、OMP算法恢復結(jié)果計算得到的RSNR分別為28.84 dB、20.72 dB、25.46 dB、22.23 dB和25.25 dB。仿真實驗中,IHT算法參數(shù)設(shè)置為μ=0.95、κ=10,L1和PNC算法的迭代次數(shù)設(shè)置為40次,MP、OMP算法迭代次數(shù)為 40次,PNC算法中, σ = 0 .1||A?y||,其中,A?= AT( A AT)?1為A的偽逆矩陣。以上參數(shù)都是以RSNR最大化設(shè)置的??梢钥闯觯琁HT算法雖然結(jié)構(gòu)簡單,復雜度不高,但精度最低,OMP、L1算法雖比MP、IHT算法精度有所提升,但PNC算法的精度最高,這是因為其采用了 PNC范數(shù)約束而不是僅采用l1范數(shù)進行約束構(gòu)建代價函數(shù),而貪婪算法是局部最優(yōu)策略。此外,IHT算法必須要求A矩陣正則化才適用,這一要求限制了其廣泛應(yīng)用,而L1和PNC算法沒有此項限制。
圖2 原始稀疏信號與5種算法恢復結(jié)果對比
本次實驗數(shù)據(jù)取自2017年的東海實驗,聲源放置在水下30 m,水聽器放置在水下20 m,收發(fā)距離約為10 km,水深約為100 m。選擇一段16 s的單載頻接收信號如圖 3所示,中心頻率 fc=1kHz,采樣率 fs= 3 0kHz。實驗中選取的單載波信號具有典型意義,如該類型信號常用作模擬艦船噪聲檢測。從圖3(a)可以看出,單載波信號淹沒在噪聲中,時域信號無任何稀疏特征,因此先將信號轉(zhuǎn)為 DCT域。實驗中,數(shù)據(jù)被劃分為若干個相同長度的塊,每塊長度為 N = 100,再對這些數(shù)據(jù)進行壓縮,壓縮至M = 40,然后根據(jù)給定的 A = ΦΨ和壓縮信號y,采用不同優(yōu)化算法進行稀疏信號估計,再由這些估計結(jié)果和Ψ得到恢復信號。各算法參數(shù)設(shè)置如前,為了展現(xiàn)不同算法對信號的恢復性能細節(jié),取2 000個采樣點進行對比,如圖4所示。其中,PNC、IHT、L1、MP、OMP算法對應(yīng)的平均RSNR值分別為24.51 dB、14.25 dB、22.08 dB、18.52 dB、21.89 dB??梢钥闯?,PNC算法比IHT、L1、MP、OMP算法所獲得的精度分別高出10.26 dB、2.43 dB、5.99 dB、2.62 dB,這是因為PNC算法范數(shù)約束比l1范數(shù)約束更具適配性,更好地逼近l0范數(shù)的性能。而匹配追蹤算法是局部最優(yōu)策略,求解精度有限。
圖3 海試數(shù)據(jù)單載波信號
圖4 海試數(shù)據(jù)單載波原始信號和各算法恢復結(jié)果對比
為提高單載波水聲數(shù)據(jù)壓縮與重構(gòu)的估計性能,本文提出將時域非稀疏的水聲信號轉(zhuǎn)為 DCT域信號進行稀疏值估計。在分析討論IHT和L1算法的基礎(chǔ)上,引入PNC范數(shù)約束并提出了PNC算法,與IHT和L1算法不同,本文算法通過部分范數(shù)約束項,根據(jù)抽頭系數(shù)的大小而給予不同的約束,從而提高了其對不同稀疏度的適應(yīng)性。仿真和海試實驗中對比了PNC、IHT、L1、MP、OMP算法的處理結(jié)果,驗證了本文算法的優(yōu)越性。