本發明屬于無線傳感器網絡和多源信息融合
技術領域:
,具體涉及一種多目標情景中無線傳感器網絡的節能分簇方法,廣泛應用于多智能體分布式協同中。
背景技術:
:近年來,在目標感知無線傳感器網絡中,多源信息融合技術得到了較為廣泛的應用。同時,在實際應用中,考慮到無線傳感器網絡中節點能量,傳輸帶寬以及計算資源的有限性,相關學者提出了一系列方法來優化傳感器網絡能量消耗,從而達到延長網絡壽命,獲得更好的實際應用效果的目的。在無線傳感器網絡中,分簇算法是一種常用且有效的網絡能量優化方法。分簇方法通過將傳感器網絡中的節點劃分為多個簇,并在每個簇中設定局部的簇頭節點來負責簇內信息的協調和融合工作。一般來講,在采用分簇方法進行優化的無線傳感器網絡中,各節點的通信對象主要集中在簇內,通信負載和融合負載上都相對減少,能量消耗相對均衡,網絡壽命相對較長。然而,雖然現有的分簇方法可以有效地改善無線傳感器網絡的性能,但目前大多數的分簇方法都是針對單目標問題的,很少有針對多目標情景設計的網絡分簇方法。故有必要針對多目標問題設計相應的的網絡分簇方法。技術實現要素:有鑒于此,本發明的目的是提供一種多目標情景中無線傳感器網絡的節能分簇方法,結合多目標情景下的實際需求,使得融合精度和網絡壽命可以得到充分的保證。一種多目標情景中無線傳感器網絡的節能分簇方法,包括如下步驟:步驟一、目標相關的簇生成過程,具體包括以下步驟:step1:當無線傳感器網絡中的任意一個節點發現一個目標時,該節點將會廣播發送發現目標消息,網絡中每個節點根據其是否收到其它節點發送的發現目標消息來確定是否有其他節點已經發起了針對同一目標的組網申請:若沒有收到針對同一目標的發現目標消息,則該節點會向其它節點廣播發出一個clustermsg申請,發起組網申請;若收到針對同一目標的發現目標消息,該節點不動作;step2:每個收到clustermsg申請信息的節點按照式(1)給出的形式判斷自身是否適合參與該簇;其中,ecur和emax表示當前節點的能量值和網絡中能量的最高值;||z2-z1||表示當前節點觀測到的軌跡與當前簇對應的目標軌跡之間的跟蹤誤差,emax表示誤差上限;α為時變參數;如果ptch>ptch0,其中ptch0表示設定的閾值,則該節點會向發起組網的節點發出membermsg信息來申請加入簇;如果ptch≤ptch0,節點不發出membermsg信息;步驟二、分布式簇頭選舉過程,具體為:step1:當前簇中每個節點基于式(2)計算出ωhead,并廣播發送包含ωhead的比較消息comparemsg;其中,i,j=1,2,...,n且i≠j,n表示簇內節點個數,clusteri表示該節點i從屬于的簇,δi表示節點i已經成為的簇頭數,degi表示節點i的度,dij表示節點i與簇內鄰居節點j之間的通信距離;step2:每個收到comparemsg消息的節點均將收到的ωhead與本地計算的ωhead進行比較,若本地的ωhead較小,則向發來comparemsg消息的節點回復一條要求對方退出簇的消息quitmsg,收到消息quitmsg的節點退出簇頭的競爭;step3:最后沒有退出簇的節點發送成員信息headmsg給所有簇內節點,通知其他節點它成為簇頭,從而結束簇頭的選舉過程;步驟三、簇拓撲的裁剪過程,具體為:step1:確定當前簇內每個節點關聯的目標數targetnum,然后判斷目標數targetnum是否大于上限,如果是,該節點則發送帶有退簇參數ρleave的退簇消息leavemsg給簇頭節點;其中,dis代表其與簇頭節點的距離;如果否,該節點不發送退簇消息;step2:收到退簇消息leavemsg的簇頭節點開始查看簇內成員是否過多,若簇內成員過多,則簇頭開始退簇應答,具體為:首先,根據每個發送退簇消息節點對應的退簇參數ρleave計算節點對應的冗余判據δleave:δleave=ρleave×e-angle(4)其中,angle表示申請退簇節點和與其具有最相似觀察的節點形成的夾角,該具有最相似觀察的節點與申請退簇節點與目標之間的夾角最小;然后,將計算的冗余判據δleave按從大到小的順序進行排序;最后,依據冗余判據δleave的排序來確定節點的退簇順序,并發送退簇允許信息allowmsg以使對應的節點退簇,完成該簇的拓撲裁剪;以此類推,完成其它簇的拓撲裁剪,即完成整個網絡的拓撲裁剪工作。本發明具有如下有益效果:本發明提出了多目標情景下,在無線傳感器網絡中使用分布式分簇方法形成融合拓撲的一種可行方案,且融合精度和網絡壽命可以得到充分的保證。其有益效果具體體現為在分布式分簇方法的三個階段均體現了對延長網絡壽命和保證融合精度的考慮:在簇生成階段,目標關聯的簇生成方法可以有效篩選與目標相關的節點加入簇,并將能量較低的節點排除,保證了網絡的融合精度和網絡壽命;在簇頭選舉階段,簇頭節點可以保證簇內的通信總消耗最優,同時防止單個節點成為多個簇的簇頭,避免了個別節點負擔過重快速消亡的問題;最后在拓撲裁剪的過程中,通過有效均衡節點的通信連接數來保證網絡壽命,同時在削減拓撲時考慮到對融合精度的影響,盡可能減小精度損失。總體來講,本發明中分布式分簇方法的實際應用價值集中體現如下:(1)在傳感器網絡跟蹤多目標的多源信息的問題情境中,采用本分簇方法可以實現網絡中能量消耗的均衡,從而充分利用網絡中的資源,延長網絡的壽命,提升該融合框架的實用性。(2)本發明中的分簇方法在進行能量優化的過程中,充分地考慮優化對融合效果產生的影響,保證了在分布式的框架下,多源融合的精度和效果基本不受影響,保證了該融合框架的應用價值。附圖說明圖1為本發明的angle和dis的定義;圖2為本發明的初始分簇拓撲圖;圖3為本發明的裁剪后的分簇拓撲圖;圖4為本發明的整體跟蹤效果圖;圖5為本發明的三種方法的融合效果對比結果;圖6為本發明的三種方法的網絡壽命對比結果。具體實施方式下面結合附圖并舉實施例,對本發明進行詳細描述。一、目標相關的簇生成過程在目標相關的簇生成方法中,每個節點基于自身的觀察結果和鄰居信息確定是否發起或參與一個簇;在合適的時間段內,每個節點通過自主選擇形成初步簇的結構,具體要求如下:(1)要求加入簇的節點的剩余能量相對較高,即將消亡的節點不會成為簇成員,從而保證了整個網絡的有效壽命。(2)簇的形成與目標分布和數量密切相關。具體來講,每一個簇對應一個目標,相應的,簇內的成員都是觀察到相同或相近目標的節點,未觀察到相似目標的節點一般不會在同一個簇內。進一步,我們給出節點對簇的適應度ptch,形式見公式(1),以此確定節點是否參與加入到該簇中:其中,ecur和emax表示當前節點的能量值和網絡中能量的最高值;||z2-z1||表示當前節點觀測到的軌跡與當前簇對應的目標軌跡之間的跟蹤誤差,emax表示誤差上限,兩者之間的比值用于衡量節點觀測量與簇所對應的目標的符合程度,該比值越大,表示觀測量與簇對應的目標越相似;α是一個時變參數,隨著時間增長α會逐漸增加,從而保證能量降低后,也可以由足夠的節點加入到簇中。基于對式(1)的初步分析,我們可以得出以下初步結論:1、只有能量相對較高的節點才可能成為簇成員。2、觀察到同一目標的節點基本上都會被劃分到同一個簇中。3、由于加入了平衡參數α,基本可以保證整個過程中都有足夠的簇成員參與。基于以上給出的方法,我們給出具體的方法流程:step1:當無線傳感器網絡中的任意一個節點發現一個目標時,該節點將會廣播發送發現目標消息,網絡中每個節點根據其是否收到其它節點發送的發現目標消息來確定是否有其他節點已經發起了針對同一目標的組網申請:若沒有收到針對同一目標的發現目標消息,則該節點會向其它節點廣播發出一個clustermsg申請,發起組網申請;若收到針對同一目標的發現目標消息,說明已經有節點早于當前節點發現了該同一目標,該節點不動作;step2:每個收到clustermsg申請信息的節點都會按照式(1)給出的形式判斷自身是否適合參與該簇;如果ptch>ptch0(其中ptch0代表設定的ptch的閾值),代表該節點符合該簇對于目標一致和能量的要求,則該節點會向發起組網的節點發出membermsg信息來申請加入簇,節點的鄰居列表neighbourlist也會隨之更新;如果ptch≤ptch0,節點不發出membermsg信息此外,我們設定了簇形成的時間限制clustertime,從而保證了簇的合適大小。其中,各節點的鄰居節點是指在同一簇中的節點。二、分布式簇頭選舉工作基于目標關聯的簇形成方法,我們得到了與目標相對應的簇,以下我們需要選取合適的節點承擔簇頭工作。出于對節點通信代價和計算負載的考慮,我們重點需要保證簇頭具有以下特點:(1)出于對通信消耗的考慮,簇頭節點應保證整個網絡的總通信負載維持在一個較低的水平,同時簇頭節點應具有充足的能量保證簇的正常工作。(2)出于對節點負載的考慮,簇頭節點所關聯的目標應有限,具體來講,應該避免同一個節點成為多個簇的簇頭。基于以上的要求,我們給出節點i的分布式簇頭選舉判據ωhead,形式如式(2)所示,其中ωhead作為簇頭選舉判據,值越小表明該節點越適合成為簇頭。clusteri表示該節點i從屬于的簇,δi表示該節點已經成為的簇頭數,degi表示節點的度,dij表示節點i與簇內鄰居節點j之間的通信距離。基于對式(2)的分析,我們可以認為基于該方法選舉出的簇頭具有最優的通信能量消耗,同時避免了個別節點負載過重的情況,基本滿足上文中對簇頭節點提出的需求,以下給出簇頭選舉的方法流程:step1:基于式(2)中給出的判據,當前簇中每個節點都基于鄰居列表neighbourlist計算出ωhead,并廣播發送包含ωhead的比較消息comparemsg,開始分布式競爭過程。step2:每個收到comparemsg消息的節點均將收到的ωhead與本地計算的ωhead進行比較,若本地的ωhead較小,說明自身更適合成為簇頭,則向發來comparemsg消息的節點回復一條要求對方退出簇的消息quitmsg,收到quitmsg的節點將會退出競爭。step3:經過一段時間的分布式競爭(競爭時間設定為comparetime),最后沒有退出簇的節點顯然為最優節點,該節點將會發送成員信息headmsg給所有簇節點,通知其他節點它成為簇頭的結果,從而結束簇頭的選舉過程。三、簇拓撲的裁剪過程在基于簇形成和簇頭選舉方法形成的拓撲網絡的基礎上,我們在綜合考慮能量節約和融合效果的前提下,進一步提出針對均衡負載的簇拓撲裁剪策略,進一步對網絡進行優化,具體來講,優化目標在于使網絡拓撲達到以下要求:(1)出于對簇頭節點的負擔考慮,限制簇內成員的數量,對簇內成員進行裁剪。(2)出于對簇成員節點的負擔考慮,限制節點同時參與簇的數量,對相應拓撲進行裁剪。(3)在拓撲裁剪的同時,需要考慮到拓撲裁剪對融合結果的影響,即優先選擇重復度較高,對融合結果影響不大的連接進行裁剪。綜合以上考慮,我們給出簇頭節點和簇成員節點的冗余度判據,見式(3)和(4),其中式(3)中ρleave為簇成員的冗余判據,用于決定該成員節點是否發出退簇申請;式(4)中δleave為簇頭的冗余判據,用于決定簇頭是否同意簇頭發來的退簇申請。δleave=ρleave×e-angle(4)具體來講,(3)式中targetnum表示該成員節點關聯的目標數(等同于加入的簇的數量),sid代表其與簇頭節點的距離,ecur表示節點的當前能量,三者共同描述了該節點對于退簇的需求。(4)式中,ρleave即為簇頭接收到的簇節點的退簇申請個數,如圖1所示,angle定義為申請退簇的節點和與其具有最相似觀察(即兩個節點與目標之間的夾角最小)的節點形成的夾角,用于描述節點在簇中的獨特性,該值越大,表示該節點對目標的觀測不易被其他節點代替,即該節點具有獨特性。基于以上分析,我們給出拓撲裁剪的方法流程如下:step1:每個節點基于檢測目標數targetnum判定自身負擔是否過重。若節點負擔過重,即targetnum>maxtargetnum(maxtargetnum為單個節點同時檢測目標上限),則節點則會發送帶有退簇參數ρleave的退簇消息leavemsg給簇頭節點。step2:收到退簇消息leavemsg的簇頭節點會開始查看簇內成員是否過多,若簇內成員過多,即membernum>maxmembernum(maxmembernum為合理的簇內成員最大數),則簇頭會開始退簇應答,具體為:首先,根據每個發送退簇消息節點對應的退簇參數ρleave計算節點對應的冗余判據δleave:δleave=ρleave×e-angle(4)然后,將計算的冗余判據δleave按從大到小的順序進行排序;最后,依據冗余判據δleave的排序來確定節點的退簇順序,并發送退簇允許信息allowmsg以使對應的節點退簇,完成該簇的拓撲裁剪;以此類推,完成其它簇的拓撲裁剪,即完成整個網絡的拓撲裁剪工作。下面給出軟件仿真結果:本實驗的仿真以visualstudio2015作為仿真環境,試驗平臺的處理器為i7-4710mq。仿真場景為傳感器網絡進行多目標跟蹤,在該情景下驗證該分簇方法在延長網絡壽命,保證融合跟蹤效果上的有效性,實驗場景的具體參數設定見表1:表1仿真實驗參數設定實驗參數參數設定場景大小(m2)1000×1000傳感器數量20探測半徑(m)400初始能量(j)40數據包長度(byte)2000接收能量消耗(nj/bit)50直接傳輸消耗(pj/bit×m2)10間接傳輸消耗(pj/bit×m4)0.0013融合消耗能量(mj/bit×signal)0.05(1)分簇效果驗證:在以上的仿真環境中,我們給出一個基于目標關聯的分簇算方法的典型結果,其中未經過裁剪的拓撲和經過裁剪的拓撲分別如圖2和圖3所示,通過對圖2結果的分析,我們可以得出以下結論:1、分簇結果與目標密切相關,簇的數量與目標的相同,且同一個簇的成員均關聯到相近的目標,從而實現了分簇效果與目標關聯的目標。2、簇頭的分布相對均勻,對于目標比較密集的地區,即使某一個傳感器節點觀測到了多個目標,也不成為多個簇的簇頭,從而一定程度上減少了個別節點的大量能量消耗。進一步,我們可以通過對圖3進行分析得到拓撲裁剪的效果。我們可以看出,相對于未優化的拓撲,優化后的拓撲中,簇成員的關聯數量targetnum和簇頭的成員數量membernum均被調節至合理的范圍內,較大程度上減少了網絡的能量消耗。至此,目標關聯的分簇方法的有效性得到了初步的驗證。(2)融合效果驗證:針對基于以上方法形成的拓撲網絡,我們可以利用一致濾波器作為工具進行多源信息融合。以下我們對融合效果進行驗證,整體的融合效果如圖4所示:可以看到,基于該拓撲的網絡可以有效地進行融合和跟蹤。進一步,我們進行融合誤差的定量分析工作,圖5中給出了三種拓撲結構(傳統集中式拓撲,未優化的分簇拓撲,優化后的分簇拓撲)的融合效果圖,同時表(2)中給出了定量分析。表2三種方法的融合效果(誤差)對比融合框架類型平均融合誤差(m)集中式方法14.65未優化的分簇方法18.23優化后的分簇方法19.96基于表(2)和圖5我們可以看出,優化的分簇方法在融合精度上基本能夠達到要求。(3)網絡壽命驗證:本方法中重點針對網絡能量進行優化,故需要對網絡壽命進行對比分析,圖6中給出了三種方法的平均網絡壽命對比。基于對圖6的分析,我們可以看出由于方法中對各節點負載的均衡和通信消耗的節約,優化的分簇網絡中能量消耗更慢更均衡,相對與其他兩種構架而言,網絡的壽命就更長。綜上所述,我們通過實驗驗證了優化分簇方法在融合精度和網絡壽命上的效果,首先,由于在生成的簇與目標密切關聯,并在拓撲裁剪過程中考慮到了精度問題,使得該方法可以一定程度上保證融合效果;更重要的是,由于在簇生成,簇頭選舉和拓撲優化過程中,均考慮了能量優化問題。故本方法在網絡壽命上具有突出的優勢,有效地延長了網絡的壽命。綜上所述,以上僅為本發明的較佳實施例而已,并非用于限定本發明的保護范圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。當前第1頁12