最大距離和最小距離,d(si,DS) 為節(jié)點(diǎn)到匯聚節(jié)點(diǎn)的距離,<為最大簇頭競(jìng)爭(zhēng)半徑,c是控制取值范圍的參數(shù),取0~1之 間的值;
[0042] 在競(jìng)爭(zhēng)過(guò)程中,如果候選簇首^宣布其競(jìng)選獲勝,則處于其競(jìng)選半徑中的其他候 選族頭競(jìng)選失敗,不能成為最終族頭;
[0043] 簇頭選擇算法分為3步:①每一輪開(kāi)始時(shí)計(jì)算權(quán)值矩陣P,將所有候選簇頭按照權(quán) 值P的大小排序;②在候選簇頭集合中選擇P值最大的節(jié)點(diǎn)為最終節(jié)點(diǎn),假設(shè)節(jié)點(diǎn)i為候 選簇頭集合中P值最大的節(jié)點(diǎn),則i為最終節(jié)點(diǎn),節(jié)點(diǎn)i競(jìng)爭(zhēng)區(qū)域內(nèi)的其他候選節(jié)點(diǎn)放棄競(jìng) 爭(zhēng),成為普通節(jié)點(diǎn);③更新候選簇頭集合,將步驟②中選擇的最終簇頭i以及i競(jìng)爭(zhēng)范圍內(nèi) 的其他所有節(jié)點(diǎn)從候選簇頭集合中去掉,重復(fù)步驟②,直到候選簇頭集合變?yōu)榭占?br>[0044] 偽代碼如下:
[0045]
[0046] 在偽代碼中S.TentativeHead為候選簇頭集合,node(i).p_E為節(jié)點(diǎn)i的當(dāng)前剩 余能量,Einit為節(jié)點(diǎn)的初始能量。
[0047] 在選定簇頭節(jié)點(diǎn)之后,算法為普通節(jié)點(diǎn)分配簇頭,成員節(jié)點(diǎn)分配簇頭是在最終簇 頭集合中選擇與成員節(jié)點(diǎn)之間權(quán)值最大的最終簇頭為該節(jié)點(diǎn)的簇頭;
[0048] 運(yùn)行時(shí)間以"輪"為單位,一輪分為兩個(gè)階段,成簇階段和通信階段,簇頭競(jìng)爭(zhēng)算法 由匯聚節(jié)點(diǎn)執(zhí)行;
[0049] 本協(xié)議下,當(dāng)每一輪每個(gè)節(jié)點(diǎn)都有數(shù)據(jù)發(fā)送,并且數(shù)據(jù)包長(zhǎng)度固定,匯聚節(jié)點(diǎn)在傳 感器節(jié)點(diǎn)初始能量的情況下,根據(jù)每輪的分簇情況估計(jì)出傳感器節(jié)點(diǎn)的剩余能量。
[0050] 簇頭選擇算法由匯聚節(jié)點(diǎn)執(zhí)行;在成簇階段,匯聚節(jié)點(diǎn)向網(wǎng)絡(luò)中的所有節(jié)點(diǎn)發(fā)送 分簇信息,分簇信息包括節(jié)點(diǎn)是不是簇頭,若是簇頭,還應(yīng)包括該簇頭的下一跳路由信息, 若是成員節(jié)點(diǎn),分簇信息應(yīng)該表明其簇頭節(jié)點(diǎn)是哪一個(gè)節(jié)點(diǎn);
[0051] 在通信階段,成員節(jié)點(diǎn)向簇頭節(jié)點(diǎn)報(bào)告采集到數(shù)據(jù),簇頭與匯聚節(jié)點(diǎn)之間以多跳 的方式通信。
[0052] 如果簇頭距離匯聚節(jié)點(diǎn)的距離小于屯,則簇頭與匯聚節(jié)點(diǎn)之間直接通信,否 貝1J,簇頭在下一跳路由候選集合中選擇距離自己最近的兩個(gè)簇頭,然后在這兩個(gè)簇頭 中選擇剩余能量最大的簇頭作為下一跳路由;簇頭i的下一跳路由候選集合Si. 1^ = {Sj|d(Sj,DS)<d以,DS)},其中DS為匯聚節(jié)點(diǎn),d(Sj,DS)為簇頭j到匯聚節(jié)點(diǎn)的距離, cKSpDS)為簇頭i到匯聚節(jié)點(diǎn)的距離。
【主權(quán)項(xiàng)】
1. 一種基于剩余能量與通信代價(jià)的無(wú)線傳感器網(wǎng)絡(luò)分簇路由協(xié)議,其特征是:該路由 協(xié)議中將所有的節(jié)點(diǎn)看作是候選簇頭,再?gòu)暮蜻x簇頭中選擇最終的簇頭,簇頭選擇方法如 下: 首先定義權(quán)值矩陣P 定義1 :權(quán)值矩陣P的元素,p[i, j]表示節(jié)點(diǎn)i作為節(jié)點(diǎn)j的簇頭的權(quán)值,節(jié)點(diǎn)i的權(quán) 值為矩陣P第i行的和; P [i,j] = 1/log (Efs*dis (i,j) ~2*10~ 12+10) *exp (node (i) · p_E/Einit)(公式 2-1) P [i,j] = 1/log (Emp*dis (i,j) ~4*10~ 12+10) *exp (node (i) · p_E/Einit)(公式 2-2) 上式中,Efs是自由空間放大電路能耗系數(shù),Emp是多路徑衰減空間放大電路能耗系 數(shù),dis(i, j)是節(jié)點(diǎn)i和節(jié)點(diǎn)j之間的距離,node⑴.p_E是節(jié)點(diǎn)i當(dāng)前的能量,Einit是 節(jié)點(diǎn)的初始能量; 權(quán)值矩陣P采用公式2-1或公式2-2計(jì)算;如果節(jié)點(diǎn)i與節(jié)點(diǎn)j之間的距離小于do, 則采用公式2-1計(jì)算,否則用公式2-2計(jì)算;式中:d。表示為距離常數(shù); 定義2:節(jié)點(diǎn)的競(jìng)爭(zhēng)半徑R。,競(jìng)爭(zhēng)半徑R。是指一個(gè)節(jié)點(diǎn)的競(jìng)爭(zhēng)范圍所覆蓋的區(qū)域的最大 半徑:式中:dmax和dmin分別為網(wǎng)絡(luò)中節(jié)點(diǎn)到匯聚節(jié)點(diǎn)的最大距離和最小距離,d(si,DS)為節(jié) 點(diǎn)到匯聚節(jié)點(diǎn)的距離,,為最大簇頭競(jìng)爭(zhēng)半徑,c是控制取值范圍的參數(shù),取0~1之間的 值; 在競(jìng)爭(zhēng)過(guò)程中,如果候選簇首^宣布其競(jìng)選獲勝,則處于其競(jìng)選半徑中的其他候選簇 頭競(jìng)選失敗,不能成為最終簇頭; 簇頭選擇算法分為3步:①每一輪開(kāi)始時(shí)計(jì)算權(quán)值矩陣P,將所有候選簇頭按照權(quán)值P 的大小排序;②在候選簇頭集合中選擇權(quán)值矩陣P值最大的節(jié)點(diǎn)為最終節(jié)點(diǎn),假設(shè)節(jié)點(diǎn)i為 候選簇頭集合中權(quán)值矩陣P值最大的節(jié)點(diǎn),則i為最終節(jié)點(diǎn),節(jié)點(diǎn)i競(jìng)爭(zhēng)區(qū)域內(nèi)的其他候 選節(jié)點(diǎn)放棄競(jìng)爭(zhēng),成為普通節(jié)點(diǎn);③更新候選簇頭集合,將步驟②中選擇的最終簇頭i以及 i競(jìng)爭(zhēng)范圍內(nèi)的其他所有節(jié)點(diǎn)從候選簇頭集合中去掉,重復(fù)步驟②,直到候選簇頭集合變?yōu)?空集; 在選定簇頭節(jié)點(diǎn)之后,算法為普通節(jié)點(diǎn)分配簇頭,成員節(jié)點(diǎn)分配簇頭是在最終簇頭集 合中選擇與成員節(jié)點(diǎn)之間權(quán)值最大的最終簇頭為該節(jié)點(diǎn)的簇頭; 運(yùn)行時(shí)間以"輪"為單位,一輪分為兩個(gè)階段,成簇階段和通信階段,簇頭競(jìng)爭(zhēng)算法由匯 聚節(jié)點(diǎn)執(zhí)行。2. 根據(jù)權(quán)利要求1所述的基于剩余能量與通信代價(jià)的無(wú)線傳感器網(wǎng)絡(luò)分簇路由協(xié)議, 其特征是:本協(xié)議下,當(dāng)每一輪每個(gè)節(jié)點(diǎn)都有數(shù)據(jù)發(fā)送,并且數(shù)據(jù)包長(zhǎng)度固定,匯聚節(jié)點(diǎn)在 傳感器節(jié)點(diǎn)初始能量的情況下,根據(jù)每輪的分簇情況估計(jì)出傳感器節(jié)點(diǎn)的剩余能量。3.根據(jù)權(quán)利要求1所述的基于剩余能量與通信代價(jià)的無(wú)線傳感器網(wǎng)絡(luò)分簇路由協(xié)議, 其特征是:所述的簇頭選擇算法由匯聚節(jié)點(diǎn)執(zhí)行;在成簇階段,匯聚節(jié)點(diǎn)向網(wǎng)絡(luò)中的所有 節(jié)點(diǎn)發(fā)送分簇信息,分簇信息包括節(jié)點(diǎn)是不是簇頭,若是簇頭,還應(yīng)包括該簇頭的下一跳路 由信息,若是成員節(jié)點(diǎn),分簇信息應(yīng)該表明其簇頭節(jié)點(diǎn)是哪一個(gè)節(jié)點(diǎn); 在通信階段,成員節(jié)點(diǎn)向簇頭節(jié)點(diǎn)報(bào)告采集到數(shù)據(jù),簇頭與匯聚節(jié)點(diǎn)之間以多跳的方 式通信; 如果簇頭距離匯聚節(jié)點(diǎn)的距離小于Cltl,則簇頭與匯聚節(jié)點(diǎn)之間直接通信,否則, 簇頭在下一跳路由候選集合中選擇距離自己最近的兩個(gè)簇頭,然后在這兩個(gè)簇頭中 選擇剩余能量最大的簇頭作為下一跳路由;簇頭i的下一跳路由候選集合S i. Rra= {Sj I d (Sj, DS) <d (Si, DS)},其中DS為匯聚節(jié)點(diǎn),d (Sj, DS)為簇頭j到匯聚節(jié)點(diǎn)的距離, (KSi, DS)為簇頭i到匯聚節(jié)點(diǎn)的距離。
【專利摘要】一種基于剩余能量與通信代價(jià)的無(wú)線傳感器網(wǎng)絡(luò)分簇路由協(xié)議,屬于無(wú)線傳感器網(wǎng)絡(luò)分簇路由協(xié)議。該路由協(xié)議中所有的節(jié)點(diǎn)均為候選簇頭,從候選簇頭中選擇簇頭,當(dāng)每一輪每個(gè)節(jié)點(diǎn)都有數(shù)據(jù)發(fā)送,匯聚節(jié)點(diǎn)在傳感器節(jié)點(diǎn)初始能量的情況下,根據(jù)每輪的分簇情況估計(jì)出傳感器節(jié)點(diǎn)的剩余能量;簇頭選擇算法由匯聚節(jié)點(diǎn)執(zhí)行;在成簇階段,匯聚節(jié)點(diǎn)向網(wǎng)絡(luò)中的所有節(jié)點(diǎn)發(fā)送分簇信息,分簇信息包括節(jié)點(diǎn)是不是簇頭,是簇頭時(shí),簇頭的下一跳路由信息;是成員節(jié)點(diǎn),分簇信息表明簇頭節(jié)點(diǎn)是哪一個(gè)節(jié)點(diǎn);在通信階段,成員節(jié)點(diǎn)向簇頭節(jié)點(diǎn)報(bào)告采集到數(shù)據(jù),簇頭與匯聚節(jié)點(diǎn)之間以多跳的方式通信;簇頭的選擇保證了網(wǎng)絡(luò)能量消耗的均勻分布,延長(zhǎng)了無(wú)線傳感器網(wǎng)絡(luò)的生存時(shí)間。
【IPC分類】H04L12/715, H04W40/10, H04W84/18
【公開(kāi)號(hào)】CN104883301
【申請(qǐng)?zhí)枴緾N201510298668
【發(fā)明人】陳偉, 周軍娜, 姜小榮, 王珂
【申請(qǐng)人】中國(guó)礦業(yè)大學(xué)
【公開(kāi)日】2015年9月2日
【申請(qǐng)日】2015年6月3日