葉 永,陳建峰,張 竹,冷 欣
(西北工業(yè)大學(xué)航海學(xué)院,陜西西安710072)
隨著無(wú)線(xiàn)傳感器網(wǎng)絡(luò)技術(shù)的興起,聲源定位技術(shù)[1,2]與無(wú)線(xiàn)傳感器網(wǎng)絡(luò)技術(shù)[3]相結(jié)合,產(chǎn)生了聲源分布式定位系統(tǒng)。目前,測(cè)向交叉定位法在聲源分布式定位系統(tǒng)中有廣泛的應(yīng)用,如低空聲目標(biāo)定位[4]、水下監(jiān)視[5]、機(jī)器人聽(tīng)覺(jué)系統(tǒng)以及智能雷場(chǎng)[6]等。
測(cè)向交叉定位法需要每個(gè)傳感器節(jié)點(diǎn)獲得目標(biāo)的方位信息[7]和傳感器陣列節(jié)點(diǎn)布署位置信息,經(jīng)過(guò)三角計(jì)算,就可以得出目標(biāo)的位置。該定位方法計(jì)算量小,實(shí)時(shí)性強(qiáng),易于工程實(shí)現(xiàn)。當(dāng)采用測(cè)向交叉定位法進(jìn)行節(jié)點(diǎn)信息融合時(shí),為使估計(jì)誤差盡可能小,人們提出了最大似然估計(jì)法[8],但其計(jì)算復(fù)雜,運(yùn)算量大,在實(shí)際中難以得到應(yīng)用。而最小二乘估計(jì)算法[9]則通過(guò)數(shù)學(xué)上的近似,減少了非線(xiàn)性運(yùn)算量,當(dāng)區(qū)域內(nèi)可用節(jié)點(diǎn)數(shù)目較多時(shí),也能有效的保證定位精度,因此,應(yīng)用比較廣泛。
當(dāng)使用最小二乘估計(jì)算法時(shí),會(huì)出現(xiàn)距離聲源越遠(yuǎn)的節(jié)點(diǎn)對(duì)定位精度影響越大的現(xiàn)象,這與實(shí)際應(yīng)用相矛盾。如果優(yōu)先選取距目標(biāo)聲源較近的節(jié)點(diǎn)進(jìn)行運(yùn)算以提高定位精度,又勢(shì)必會(huì)造成未參與運(yùn)算的節(jié)點(diǎn)定向信息的浪費(fèi)。為了解決這些矛盾,本文嘗試?yán)梅蔷€(xiàn)性規(guī)劃理論建立測(cè)向交叉定位法的非線(xiàn)性規(guī)劃模型,通過(guò)與最小二乘估計(jì)算法比較,分析其定位精度,并給出實(shí)際條件下的算法優(yōu)選建議。
分布式麥克風(fēng)陣列的測(cè)向交叉定位模型如圖1所示,探測(cè)區(qū)域內(nèi)有若干個(gè)節(jié)點(diǎn) N1,N2,…Nn。節(jié)點(diǎn) Nk,k∈(1,n)獲得的目標(biāo)方向角為α^k,理想情況下,各個(gè)節(jié)點(diǎn)同一時(shí)刻對(duì)同一聲源目標(biāo)的估計(jì)結(jié)果連線(xiàn)的交點(diǎn)即為目標(biāo)的位置。
實(shí)際應(yīng)用時(shí),由于測(cè)量誤差、系統(tǒng)誤差的影響,各節(jié)點(diǎn)估計(jì)出的方向角連線(xiàn)不會(huì)交匯于一點(diǎn),可能是一塊區(qū)域,這就需要選取適當(dāng)?shù)乃惴▽?duì)聲源目標(biāo)位置進(jìn)行融合估計(jì)。
圖1 測(cè)向交叉定位法基本模型Fig 1 Basic model of direction finding cross localization
最小二乘估計(jì)是一種數(shù)學(xué)優(yōu)化技術(shù),它通過(guò)使誤差的平方和最小來(lái)尋找數(shù)據(jù)的最佳函數(shù)匹配。在解決分布式聲定位問(wèn)題時(shí),出現(xiàn)了多種最小二乘模型[10~13],現(xiàn)在介紹一種應(yīng)用較為廣泛的模型——改進(jìn)的偽線(xiàn)性最小二乘算法模型[14]。
假設(shè)目標(biāo)的估計(jì)位置為(^x,^y),探測(cè)區(qū)域內(nèi)共有n個(gè)節(jié)點(diǎn),Nk(xk,yk),k∈[1,n]表示第k個(gè)節(jié)點(diǎn)的坐標(biāo),^αk,k∈[1,n]表示第 k個(gè)節(jié)點(diǎn)的定向角度,dk,k∈[1,n]表示聲源目標(biāo)到第k個(gè)節(jié)點(diǎn)的距離,則可以得到如下方程
由式(1)可得
令
其中,C為n×1的矩陣,H為n×2的矩陣,帶入式(2)可得目標(biāo)的估計(jì)位置坐標(biāo)
非線(xiàn)性規(guī)劃是具有非線(xiàn)性約束條件或目標(biāo)函數(shù)的數(shù)學(xué)規(guī)劃,它主要研究一個(gè)n元實(shí)函數(shù)在一組等式或不等式的約束條件下的極值問(wèn)題,且目標(biāo)函數(shù)和約束條件至少有一個(gè)是未知量的非線(xiàn)性函數(shù)。
由1.1節(jié)的數(shù)學(xué)模型出發(fā),假設(shè)目標(biāo)的估計(jì)位置為(^x,^y),探測(cè)區(qū)域內(nèi)共有n個(gè)節(jié)點(diǎn),Δ^α為節(jié)點(diǎn)的測(cè)量偏差,^αk,k∈[1,n]表示第 k個(gè)節(jié)點(diǎn)的定向結(jié)果。對(duì)于任意節(jié)點(diǎn)Nk(xk,yk),k∈[1,n]來(lái)說(shuō),構(gòu)建模型如下
兩邊同時(shí)取正切,令δ=tanΔ^α,可得
化簡(jiǎn)式(6)可以得到
或
將不等式左邊項(xiàng)分解后可以發(fā)現(xiàn),左邊是含有δ,x,y,δx,δy的三元二次代數(shù)式,屬于非線(xiàn)性規(guī)劃范疇,可以用非線(xiàn)性規(guī)劃法解決。因此,分布式聲源定位可以看成由δ,x,y三變量決定,由2k個(gè)不等式約束的非線(xiàn)性規(guī)劃問(wèn)題。即可以得到如下非線(xiàn)性規(guī)劃模型
或
其中,式(9)為目標(biāo)函數(shù),式(10)或式(11)為線(xiàn)性約束條件,將目標(biāo)函數(shù)與線(xiàn)性約束條件相結(jié)合,運(yùn)用一定的優(yōu)化方法,就可以確定目標(biāo)聲源的位置。
以上建立的非線(xiàn)性規(guī)劃模型問(wèn)題可以利用數(shù)學(xué)軟件Matlab求解。在運(yùn)用Matlab軟件對(duì)以上模型的定位誤差進(jìn)行求解時(shí),使用到了Fmincon函數(shù)。該函數(shù)提供了大型優(yōu)化算法和中型優(yōu)化算法。默認(rèn)時(shí),如果Fun函數(shù)提供了梯度,并且只有上下界存在或者只有等式約束的時(shí)候,F(xiàn)mincon函數(shù)將選擇大型算法。當(dāng)既有等式約束又有梯度約束時(shí),使用中型算法。Fmincon函數(shù)的中型算法使用的是序列二次規(guī)劃(SQP)法,其在每一步迭代都是求解一個(gè)二次規(guī)劃問(wèn)題,并更新拉格朗日Hessian矩陣,直到趨近于最優(yōu)值。
由于最小二乘估計(jì)會(huì)造成離聲源目標(biāo)距離越遠(yuǎn)的節(jié)點(diǎn)對(duì)定位結(jié)果的影響反而越大,而非線(xiàn)性規(guī)劃法中假設(shè)各節(jié)點(diǎn)的定位偏差Δ^α是統(tǒng)一的,并根據(jù)節(jié)點(diǎn)距聲源目標(biāo)的距離而做出相應(yīng)的調(diào)整,當(dāng)δ一定時(shí),距離目標(biāo)聲源遠(yuǎn)的節(jié)點(diǎn)對(duì)估計(jì)坐標(biāo)的變化沒(méi)有近節(jié)點(diǎn)敏感,即遠(yuǎn)節(jié)點(diǎn)對(duì)定位精度的影響比近節(jié)點(diǎn)小,消除了最小二乘估計(jì)算法的矛盾現(xiàn)象。為驗(yàn)證此理論進(jìn)行以下仿真。
如圖2所示,4個(gè)節(jié)點(diǎn)的位置坐標(biāo)分別為 N1(350,100 m),N2(550,100 m),N3(350,300m)和 N4(550,300m),Q為4個(gè)節(jié)點(diǎn)所包圍的誤差較小的監(jiān)測(cè)區(qū)域?,F(xiàn)將節(jié)點(diǎn)N4以為單位往東北方向平移,觀察區(qū)域Q內(nèi)系統(tǒng)定位誤差的平均值。仿真結(jié)果如表1所示。其中,ε為N1,N2,N33個(gè)固定不動(dòng)的節(jié)點(diǎn)通過(guò)最小二乘算法求得的系統(tǒng)定位誤差平均值,ε1為所有4個(gè)點(diǎn)通過(guò)最小二乘算法求得的系統(tǒng)定位誤差平均值,ε2為4個(gè)點(diǎn)通過(guò)非線(xiàn)性規(guī)劃法求得的系統(tǒng)定位誤差平均值。
圖2 四節(jié)點(diǎn)布局示意圖Fig 2 Layout diagram of four nodes
表1 遠(yuǎn)節(jié)點(diǎn)對(duì)定位精度的影響Tab 1 Effect of remote nodes on positioning precision
由表1的數(shù)據(jù)可以看出:隨著節(jié)點(diǎn)N4的遠(yuǎn)離,在4節(jié)點(diǎn)的情況通過(guò)最小二乘算法得到的系統(tǒng)定位誤差平均值顯著增加,當(dāng)N4處于(750,500m)時(shí)定位誤差和3節(jié)點(diǎn)的情況相近,再向外平移之后,則定位效果反而不如3節(jié)點(diǎn)的情況。而非線(xiàn)性規(guī)劃模型下,雖略有增加,但增幅很小。距離遠(yuǎn)的節(jié)點(diǎn)對(duì)定位結(jié)果的影響比使用最小二乘算法時(shí)要小得多。
在2.1節(jié)中,假設(shè)分布式麥克風(fēng)陣列4個(gè)節(jié)點(diǎn)布放形式已知。但實(shí)際應(yīng)用中,往往節(jié)點(diǎn)的位置是隨機(jī)的,而且參與定位的有效節(jié)點(diǎn)的數(shù)目也會(huì)不確定,這里將重點(diǎn)分析節(jié)點(diǎn)位置隨機(jī)的情況下節(jié)點(diǎn)數(shù)目對(duì)算法穩(wěn)健性的影響。
如圖3所示,在200 m×200 m的監(jiān)測(cè)區(qū)域內(nèi)以正東為x軸正方向,正北為y軸正方向建立直角坐標(biāo)系,假設(shè)單個(gè)聲源Q位于該監(jiān)測(cè)區(qū)域內(nèi),且真實(shí)坐標(biāo)為(100,100 m)。各定向節(jié)點(diǎn)位置隨機(jī),即節(jié)點(diǎn)的x,y坐標(biāo)值為0~200 m之間的隨機(jī)數(shù),且符合均勻分布。每個(gè)節(jié)點(diǎn)除了固有的定向離散誤差外,還受到背景白噪聲的影響,假設(shè)背景白噪聲對(duì)第k個(gè)節(jié)點(diǎn)的定向結(jié)果施加的影響n(yōu)k(弧度),且nk~N(0,σ2),現(xiàn)利用最小二乘估計(jì)算法和非線(xiàn)性規(guī)劃法對(duì)聲源Q的位置進(jìn)行估計(jì),以測(cè)量1000次定位誤差的平均值為基準(zhǔn)進(jìn)行比較,結(jié)果如圖4~圖6所示。
圖4 3個(gè)節(jié)點(diǎn)隨機(jī)布放時(shí)定位誤差與噪聲方差的關(guān)系Fig 4 Relationship between positioning error and noise variance when three nodes are distributed randomly
圖5 10個(gè)節(jié)點(diǎn)隨機(jī)布放時(shí)定位誤差與噪聲方差的關(guān)系Fig 5 Relationship between positioning error and noise variance when ten nodes are distributed randomly
圖6 20個(gè)節(jié)點(diǎn)隨機(jī)布放時(shí)定位誤差與噪聲方差的關(guān)系Fig 6 Relationship between positioning error and noise variance when twenty nodes are distributed randomly
圖4為3個(gè)節(jié)點(diǎn)隨機(jī)布放在監(jiān)測(cè)區(qū)域的情況。由圖可知,當(dāng)背景白噪聲較小時(shí),2種算法的定位精度相似。而隨著背景噪聲影響不斷加強(qiáng),二者的定位性能出現(xiàn)變化,但非線(xiàn)性規(guī)劃法始終占優(yōu)。說(shuō)明3個(gè)節(jié)點(diǎn)的情況下,非線(xiàn)性規(guī)劃法在存在背景噪聲時(shí)更加穩(wěn)健。
由圖4至圖6對(duì)比可知,當(dāng)監(jiān)測(cè)區(qū)域內(nèi)只有3個(gè)可用節(jié)點(diǎn)時(shí),非線(xiàn)性規(guī)劃法的定位性能有明顯優(yōu)勢(shì);當(dāng)有10個(gè)可用節(jié)點(diǎn)時(shí),2種算法的定位性能相近;當(dāng)可用節(jié)點(diǎn)數(shù)目增加為20個(gè)時(shí),最小二乘法的定位精度反而更高。
1)使用非線(xiàn)性規(guī)劃模型進(jìn)行定位時(shí),距離遠(yuǎn)的節(jié)點(diǎn)對(duì)定位結(jié)果的影響比使用最小二乘算法時(shí)小得多;
2)存在背景噪聲,節(jié)點(diǎn)數(shù)目不同且位置隨機(jī)擺放的情況下,2種方法呈現(xiàn)不同的優(yōu)劣:在節(jié)點(diǎn)數(shù)目較少(如5個(gè)和5個(gè)以下)的情況下,非線(xiàn)性規(guī)劃法占有較大的優(yōu)勢(shì);最小二乘算法比非線(xiàn)性規(guī)劃法更適合在節(jié)點(diǎn)分布密集的情況下使用。因此,在實(shí)際應(yīng)用中要根據(jù)區(qū)域內(nèi)可用節(jié)點(diǎn)的數(shù)目情況選取不同的算法。
[1]高 為.無(wú)源定位技術(shù)研究[D].上海:上海交通大學(xué),2006.
[2]Fallon M F,Godsill SJ.Acoustic source localization and tracking of a time-varying number of speakers[J].IEEE Transactions on Audio,Speech,and Language Processing,2012,20(4):1409-1415.
[3]周新宇,楊風(fēng)暴,吉琳娜,等.一種多傳感器信息融合的可能性關(guān)聯(lián)方法[J].傳感器與微系統(tǒng),2012,31(4):33-35.
[4]馬馳州,滕鵬曉,楊亦春,等.分布式實(shí)時(shí)被動(dòng)聲定位系統(tǒng)研究[J].探測(cè)與控制學(xué)報(bào),2007,29(1):18-22.
[5]王 彪,李 宇,黃海寧.水聲傳感器網(wǎng)絡(luò)目標(biāo)協(xié)同定位方法研究[J].系統(tǒng)仿真學(xué)報(bào),2009,21(19):6174-6177.
[6]孫 勇,趙俊渭,張銀兵,等.一種多基地聲納的聯(lián)合估計(jì)定位算法[J].魚(yú)雷技術(shù),2009,17(2):33-36.
[7]程 萍,陳建峰,馬 馳,等.十字陣短時(shí)寬帶聲源實(shí)時(shí)定向算法[J].應(yīng)用聲學(xué),2012,31(2):123-129.
[8]Chen JC,Hudson R E,Yao Kung.Maximum-likelihood source localization and unknown sensor location estimation for wideband signals in the near-field[J].IEEE Transactions on Signal Processing,2002,50(8):1843-1854.
[9]Yan Yongsheng,Wang Haiyan,Wang Xuan.A novel least-square method of source localization based on acoustic energy measurements for UWSN[C]∥IEEE International Conference on Signal Processing,Communications and Computing(ICSPCC),2011.
[10]李 淳,劉聰峰,廖桂生,等.約束最小二乘無(wú)源定位算法的求解與分析[J].系統(tǒng)工程與電子技術(shù),2012,34(2):221-226.
[11]劉若辰,王英民,張 群.基于線(xiàn)性最小二乘估計(jì)的雙基地聲納定位優(yōu)化算法[J].魚(yú)雷技術(shù),2011,19(6):428-432.
[12]張小鳳,應(yīng) 歡.基于加權(quán)最小二乘的多基地聲納定位算法研究[J].計(jì)算機(jī)仿真,2011,28(8):393-396.
[13]張曉芳,李國(guó)徽,王 娟.無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中的節(jié)點(diǎn)自適應(yīng)周期定位[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(29):117-120.
[14]徐建華,任 超.基于傳感器網(wǎng)絡(luò)的水下聲音源定位方法研究[J].計(jì)算機(jī)測(cè)量與控制,2011,19(7):1681-1683.