基于路徑能量消耗及節(jié)點剩余能量的多層分簇算法
【技術領域】
[0001] 本發(fā)明涉及了一種基于路徑能量消耗及節(jié)點剩余能量的多層分簇算法,屬于無線 傳感器網絡技術領域。
【背景技術】
[0002] 無線傳感器網絡(Wireless sensor network,WSN)就是由部署在監(jiān)測區(qū)域內大量 廉價微型傳感器節(jié)點組成,通過無線通信方式形成的一個多跳的自組織的網絡系統(tǒng),其目 的的協(xié)作地感知、采集和處理網絡覆蓋區(qū)域中感知對象的信息,并且發(fā)送給接收者。WSN廣 泛應用于環(huán)境保護與監(jiān)控、戰(zhàn)場敵情監(jiān)測、水下環(huán)境探測以及地震預警等環(huán)境艱苦以及人 力無法到達的場景。WSN具有非常廣泛的應用前景,并且具有巨大的研宄價值。
[0003] 無線傳感器網絡區(qū)別于傳統(tǒng)的網絡,具有以下的特點:①監(jiān)測區(qū)域內節(jié)點分布不 均勻,而且數目眾多,分布很稠密。②每個傳感器節(jié)點使用電池提供能量,這就導致了節(jié)點 的計算能力、能量以及存儲的空間等資源是受到制約的。③由于傳感器節(jié)點工作的環(huán)境很 惡劣,傳感器節(jié)點失效的概率會很高。因此傳統(tǒng)網絡的網絡拓撲路由不能夠應用于無線傳 感器網絡中。這就需要針對WSN的特點來研宄新的算法來滿足WSN的需求。能量是制約 WSN能否正常工作的一個重要參考標準。無線傳感器網絡在有限的能量下,延長WSN的網絡 生命周期成為了研宄的重要內容。因此在研宄WSN網絡拓撲協(xié)議時,如何節(jié)省節(jié)點的能量 損耗顯得尤為重要。
[0004] LEACH (Low Energy Adaptive Clustering Hierarchy)作為一種層次型拓撲路由 協(xié)議被提出,并且它的分層思想被廣泛的應用于其他的分層協(xié)議中。LEACH算法周期性地 執(zhí)行,執(zhí)行的過程主要分為簇的建立以及數據傳輸兩個階段。節(jié)點在簇頭選舉之前隨機的 產生〇~1的隨機數,如果隨機數小于閾值,則此節(jié)點發(fā)出自己成為簇頭的消息。對于當選過 簇頭的節(jié)點,在以后的選舉中就不會成為簇頭。監(jiān)測區(qū)域的節(jié)點當選為簇頭后,向周圍的節(jié) 點發(fā)送自己已經成為新簇頭的消息。非簇頭節(jié)點在收到消息后,加入到離自己最近的簇頭 所在的簇中,并告知簇頭。當簇頭接收到非簇頭節(jié)點加入的消息后,產生一個TDM定時消 息。為了避免簇之間的信號干擾,簇頭向簇內的其他節(jié)點分配一個CDM編碼。簇頭節(jié)點通 過數據融合算法將簇內普通節(jié)點發(fā)送的數據進行融合后,再把融合后的數據發(fā)送到匯聚節(jié) 點(Sink)〇
【發(fā)明內容】
[0005] 本發(fā)明的目的在于提供一種基于路徑能量消耗及節(jié)點剩余能量的多層分簇算法, 其可以均衡無線傳感器網絡能耗,減少能量消耗,延長網絡的生命周期。
[0006] 本發(fā)明的技術方案是這樣實現的:基于路徑能量消耗及節(jié)點剩余能量的多層分簇 算法,包括無線傳感器節(jié)點組,匯聚節(jié)點,其特征在于:無線傳感器節(jié)點組由200個無線傳 感器節(jié)點,分別用Node⑴表示,i=l,2,…,200。Node⑴隨機分布在200米*200米的 區(qū)域中,Fi)分別表示無線傳感器節(jié)點Node(i)在平面坐標系上的X軸坐標和y坐標, i=l, 2,…,200 ;匯聚節(jié)點平面坐標系上的X軸坐標和y坐標(100米,100米)。
[0007] 具體完成步驟如下: 1、對于無線傳感器節(jié)點Node(i),它的初始能量用£"^(〇表示,它的當前能量用 Eetimat(〇表示,它的功率放大器的能耗用(〇表示,它的自由空間消耗的能量用ε ft(i〕 表示,它的發(fā)射電路消耗的能量Eeteet(i'),i=l,2,…,200 ;構造向量flag,flag⑴為flag 中的第i個元素,flag(i)=l,i=l, 2,…,200 ;設變量r=l。
[0008] 2、匯聚節(jié)點2將自己在平面坐標系下的X軸坐標和y軸坐標下的坐標發(fā)送給向無 線傳感器節(jié)點組1中的每個無線傳感器節(jié)點,然后無線傳感器節(jié)點組1內的每個無線傳感 器節(jié)點記錄下匯聚節(jié)點2的位置消息。
[0009] 3、對于無線傳感器節(jié)點組1中無線傳感器節(jié)點Node (i),根據公式
【主權項】
1.基于路徑能量消耗及節(jié)點剩余能量的多層分簇算法,包括無線傳感器節(jié) 點組,匯聚節(jié)點,其特征在于:無線傳感器節(jié)點組由200個無線傳感器節(jié)點,分別 用Node(i)表示,i=l,2,…,200;Node(i)隨機分布在200米*200米的區(qū)域中, ,?〇分別表示無線傳感器節(jié)點Node(i)在平面坐標系上的x軸坐標和y坐標, i=l, 2,…,200 ;匯聚節(jié)點平面坐標系上的x軸坐標和y坐標(100米,100米);具體完成 步驟如下: 1) 、對于無線傳感器節(jié)點Node(i),它的初始能量用民此?表示,它的當前能量用 ⑴表示,它的功率放大器的能耗用e_PW表示,它的自由空間消耗的能量用efBCd 表示,它的發(fā)射電路消耗的能量Eeleet(f),i=l,2,…,200 ;構造向量flag,flag⑴為flag中的第i個元素,flag(i)=l,i=l, 2,…,200 ;設變量r=l; 2) 、匯聚節(jié)點2將自己在平面坐標系下的x軸坐標和y軸坐標下的坐標發(fā)送給向無線 傳感器節(jié)點組中的每個無線傳感器節(jié)點,然后無線傳感器節(jié)點組內的每個無線傳感器節(jié)點 記錄下匯聚節(jié)點的位置消息; 3)、對于無線傳感器節(jié)點組1中無線傳感器節(jié)點Node(i),根據公式
計算D(i),i=l,2,...,200; 4) 、根據公式
式中i=l,2,…,200,n的值為大于等于3000并且小于等于4000的整數,計算無線傳 感器節(jié)點Node(i)到匯聚節(jié)點2能量消耗,用First_Energy(i)表示,i=l, 2,…,200; 5) 、根據公式
計算出所有無線傳感器節(jié)點到匯聚節(jié)點的能量消耗和,用Energy_Sink表示; 6) 、根據公式
計算出無線傳感器節(jié)點Node(i)到匯聚節(jié)點的能量消耗在所有無線傳感器節(jié)點Node(i)到匯聚節(jié)點能量和所占的比例,用RateSink(i)表示,i=l,2,???JOO; 7) 、根據公式
計算無線傳感器節(jié)點Node(i)當前剩余能量和無線傳感器節(jié)點Node(i)初始能量的比 率,用Ratel(i)表示,i=l,2,...,200; 8) 、構建隨機數向量M,M(i)為向量M中的第i個元素,M(i)為隨機產生的數字,其值 大于0并且小于等于1,i=l,2,…,200; 9) 、根據公式
計算無線傳感器節(jié)點Node(i)的閾值,用T(i)表示,i=l, 2,…,200; 10) 、如果M(i)小于T(i),那么flag(i)等于0,i=l,2,???JOO;設向量flag中等于0 的元素的個數為k,依次判斷,如果flag(i)等于0,那么Node(i)為一級簇頭向量C中的元 素,i=l,2,…,200;C(m)為向量C中的第m個元素,m=l,2,…,k;設(xm,表示C(m) 在平面坐標系中x軸坐標和y軸坐標;構造k個向量,分別用W_m表示,W_m中的第一個元 素為C(m),m=l,2,...,k; 11) 、根據公式
其中m=l,2,...,k,i=l,2,...,200; 構造矩陣length_C,length_C(m,i)為16叩1:11_(]矩陣中第m行第i列元素; 12) 、對于i=l, 2,…,200,如果length_C(m,i)為矩陣length_C中第i列中的第一個 最小值,那么無線傳感器接節(jié)點Node(i)為向量W_m中的元素,W_m中元素的個數用U_m 表示,其中m=l,2,…,讓;
是W_m(i)在平面坐標系中的X軸坐標和Y軸坐標,其中i=l,…,U_ m;m=l,2,...,k; 13)、根據公式
構建k個向量,分別用D_m表示,D_m⑴為向量D_m第i個元素,m=l, 2,…,k,i=l,… ,U_m; 14)、根據公式
構建k個向量,分別用Sec:ond_Energy_m表示,Seeond_Energy_ifi(i)為向量 Seamd_Energy_m第i個元素,i=l,???,U_m;m=l, 2,???,k;n值為大于等于 3000 并且小 于等于4000的整數; 15) 、根據公式
計算向量Second_Energy_m內所有元素的和Energy_Cluster_m,其中,m=l, 2,…,k; 16) 、根據公式
構建向量k個向量,分別用Rate_m表示,Rate_m(i)為向量Rate_m內第i個元素,其 中m=l,2,...,k,i=l,...,U_m; 17)、根據公式
構建k個向量,分別用Rate2_m表示,Rate2_m⑴表示為向量Rate2_m內第i個元素, 其中m=l,2,...,k,i=l,…,U_m; 18)、構建隨機數向量N_m,N_m⑴為向量N中的第i個元素,N_m⑴為隨機產生的數 字,其值大于〇并且小于等于1,m=l,2,???,k,i=l, 19) 、根據公式
計算無線傳感器節(jié)點Node(i)的閾值,用T_m(i)表示,i=l,,m=l,2,…,讓; 20)、如果N_m(i)小于T_m(i),那么flag_m(i)等于0,設向量flag_m中等于0的元素 的個數為 a, i=l,,m=l,2,…,讓; 依次判斷,如果flag_m⑴等于0,那么Node_m⑴為二級簇頭向量C_S中的元素, i=l,…,U_a;C_S(b)為向量C_S中的第b個元素,b=l,2,…,a;設(、,表示C_S(b) 在平面坐標系中x軸坐標和y軸坐標;構造a個向量,分別用M_b表示,M_b中的第一個元 素為C_S(b),b=l,2,…,a; 21) 、根據公式
其中b=l, 2,…,a,i=l, 2,…,U_m,構造矩陣length_C_S,〖ength_C_S(b,i)為矩陣 length_C_S中第b行第i列元素; 22) 、對于i=l, 2,…,U_m,如果】ength_C_S(b,i)是矩陣length_C_S中第i列中的第一 個最小值,那么無線傳感器節(jié)點Node(i)為向量M_b中的元素,b=l,2,"^a;設r=r+l; 23) 、依次執(zhí)行步驟2到步驟22,直到r=2001。
【專利摘要】本發(fā)明涉及一種基于路徑能量消耗及節(jié)點剩余能量的多層分簇算法,包括無線傳感器節(jié)點組,匯聚節(jié)點,其特征在于:無線傳感器節(jié)點組由200個無線傳感器節(jié)點,分別用Node(i)表示,i=1,2…,200。Node(i)隨機分布在200米*200米的區(qū)域中,分別表示無線傳感器節(jié)點Node(i)在平面坐標系上的x軸坐標和y坐標,i=1,2,…,200;匯聚節(jié)點平面坐標系上的x軸坐標和y坐標(100米,100米)。其可以均衡無線傳感器網絡能耗,減少能量消耗,延長網絡的生命周期。
【IPC分類】H04W84-18, H04W52-02, H04W40-10
【公開號】CN104780583
【申請?zhí)枴緾N201510181827
【發(fā)明人】馮欣, 劉壯, 韓成, 張劍飛, 張昕, 李騰, 王雁龍, 張晶晶, 楊文龍
【申請人】長春理工大學
【公開日】2015年7月15日
【申請日】2015年4月17日