一种基于布谷鸟算法和K-means算法的WSN路由协议方法

文档序号:27616074发布日期:2021-11-29 13:16阅读:239来源:国知局
一种基于布谷鸟算法和K-means算法的WSN路由协议方法
一种基于布谷鸟算法和k

means算法的wsn路由协议方法
技术领域
1.本发明涉及网络路由协议领域,特别涉及一种基于布谷鸟算法和k

means算法的wsn路由协议方法。


背景技术:

2.无线传感器网络(wireless sensor network,wsn)由大量廉价、功耗低的微型传感器节点组成。传感器节点通过无线通信方式形成自组织网络,可以感知监测信息,收集处理数据并将信息发送至汇聚中心或者基站,多应用于军事、工业、环境监测和航空等领域。但是由于网络节点能量有限且不可充电,如何延长网络生命周期是当前的关注热点。针对如何提高网络生命周期,人们提出了许多基于簇结构的层次性网络路由协议,并被证明是提高网络能量利用效率最有效的技术之一。基于簇结构的层次性网络路由协议将网络分为若干分簇,每个簇内选出一个簇首来接收融合簇内节点的监测数据,最后由簇首将数据发送至基站。基于簇结构的层次性网络路由协议的优点:1,数据融合简单。簇结构节点分为若干分簇,大量冗余数据可以由簇首处理后发送至基站,以减少数据发送量,增大节点生命周期。2,能量利用高效:相较于节点直接将感知数据发送至基站,基于簇结构的层次性网络路由协议中,节点首先将数据发送至对应簇首,再由簇首融合处理后发送至基站,减少了节点传输数据的距离,因而减少了节点能耗。目前常见的对于无线传感器网络分簇路由协议有leach(low energy adaptive clustering hierarchy)协议、leach

improve协议、dtk

means(dual cluster head selection algorithm based on k

means and dynamic trust degree in wsn,dtk

means)算法、beeswarm算法。
3.leach协议以循环的方式随机选择簇首,使各个节点都有机会成为簇首,然后依据最近原则进行网络分簇,簇内节点直接向簇首发送数据,簇首将融合后的数据直接发送至基站,但leach算法由于没有考虑簇首剩余能量及其地理位置因素,易造成极小、极大分簇,大小不一的分簇会加剧簇首的能耗,尤其是较大分簇内的簇首,由于极大簇内的簇首需要接受融合大量的数据,会导致该簇的簇首过早死亡,不利于网络能耗均衡。另外,当能量较低的节点选为簇首时,可能会使该分簇的簇首在数据传输进行到一段时间后因为能量透支发送中断,引起数据传输的不稳定。leach

improve协议将剩余能量因子,间距因子,密度因子融入到传统leach阈值计算公式中,使选举的簇首相对leach协议更为合理,延长了网络生命周期,协议在簇首选举时虽然考虑了簇首的剩余能量、地理位置因素,使选举的簇首较leach算法更为合理,但是由于簇首的选取并未考虑分簇的均匀性,仍旧会产生不均匀分簇,会加剧个别极大簇的簇首能量消耗和远离簇首的簇内节点的数据传输能耗,不利于均衡节点能耗。此外簇首以单跳形式向基站发送数据,当簇首距离基站较远时,会加剧簇首负载。dtk

means算法首先通过k

means算法进行网络分簇,然后利用节点剩余能量,距离等因素作为动态信任度选取双簇头,延长了网络生命周期,但是该算法忽略了k

means算法对初始聚类中心敏感性问题,易使k

means算法陷入局部最优,形成不均匀分簇。此外,该算法没有对远端簇首进行路由规划,长距离的数据传输会加剧簇首能耗。beeswarm算法在成簇阶
段结合节点能量、距离因素使用人工蜂群算法寻找最优簇首并成簇,在数据传输阶段,使用人工蜂群算法规划簇内节点到簇首的路径,簇首则直接与基站通信,beeswarm算法虽然得到了合理的簇首,也对簇内节点规划了路由,但是没有考虑中继节点的剩余能量,容易导致能量低的节点选为中继节点,使中继节点增大了早衰的可能性,影响数据传输的稳定性,此外该算法未对簇首规划路由,不利于均衡远端簇首的负载。


技术实现要素:

4.本发明的目的在于克服现有技术中所存在的上述不足,提供一种基于布谷鸟算法和k

means算法的wsn路由协议方法,采用布谷鸟算法优化k

means算法的初始聚类中心,避免k

means算法陷入局部最优,使网络分簇更加均匀,以均衡网络能耗,选举的簇首更具合理性,通过规划簇首路由降低了簇首因长距离传输数据消耗的能量。
5.为了实现上述发明目的,本发明提供了以下技术方案:
6.一种基于布谷鸟算法和k

means算法的wsn路由协议方法,以轮为单位运行,每轮包括:
7.一、成簇阶段:确定最优簇首数k,采用基于布谷鸟算法优化的k

means算法对网络内节点进行分簇,得到k个簇及每个簇内的节点,分簇包括以下步骤:
8.s10、随机初始化鸟巢位置,采用布谷鸟算法得到最优鸟巢位置;
9.s20、将步骤s10得到的最优鸟巢位置解码为优化后k

means的初始聚类中心;
10.s30、执行k

means算法;
11.s40、输出最优聚类中心及聚类结果,得到k个簇及每个簇内的节点;
12.二、簇首选举:对每个簇内的节点根据选举函数得到选举值,k个簇按照选举值选出每个簇的簇首,第一轮时所述簇首选择选举值最大的,第一轮后所述簇首采用如下方式进行判断:
13.f
ch
≤λf
max
(i)λ∈(0,1)
14.其中λ为网络系数,若上式成立,上一任簇首通知拥有最大选举值的节点i当选为新簇首,并交换簇内成员信息;否则不进行簇首的更新;
15.三、数据传输阶段:每个簇内的所述簇首接收、融合簇内节点数据,然后根据所述簇首到基站距离采用单跳或多跳的方式向基站发送数据;其中,所述簇首采用多跳发送数据时,利用布谷鸟算法为所述簇首规划路由,包括以下步骤:
16.a10、确定每个采用多跳的簇首的中继节点个数;
17.a20、初始化鸟巢位置维度,利用布谷鸟算法对候选中继节点进行迭代更新,输出的最优鸟巢的位置即为簇首路由。
18.本发明利用布谷鸟算法(cs算法)优化k

means聚类算法的初始聚类中心,首先使用cs算法对聚类中心的位置进行优化,然后利用cs算法最后的迭代结果作为k

means算法的初始聚类中心,k

means算法继续执行,直至得出最优聚类中心及聚类结果,得到k个簇及每个簇内的节点,避免k

means算法陷入局部最优,使网络分簇更均匀,以均衡网络能耗;再簇首选举阶段综合考虑节点能量、位置因素,使选举的簇首具有一定的合理性,在数据传输阶段根据簇首到基站距离采用单跳或多跳的方式向基站发送数据,多跳时,使用布谷鸟算法为簇首规划路由,均衡簇首负载。
19.进一步地,最优簇首数k的计算公式如下:
[0020][0021]
其中n表示wsn区域内存活节点数目;m表示wsn区域的边长;d
tobs
表示簇首到基站的平均距离。随着网络的运行,网络中存活节点n会减少,最优簇首数会随之发生改变,当最优簇首数发生改变时需要重新分簇,分簇是一个动态过程。
[0022]
进一步地,步骤s10的具体步骤为:
[0023]
s101、随机初始化鸟巢位置,设置种群规模、最大迭代次数等参数,得到每个鸟巢的适应度;
[0024]
s102、对每个鸟巢位置和状态进行更新;
[0025]
s103、对步骤s102更新后鸟巢位置得到新适应度,若新适应度更优,则替换旧的鸟巢位置,得到随机数r;
[0026]
s104、比较r与pa的大小,若r>pa,再次更新一次鸟巢位置,否则鸟巢位置不变;
[0027]
s105、计算每个鸟巢的适应度,若满足最大迭代次数或者适应度函数收敛,进行下一步,并输出最优鸟巢位置;否则返回到步骤s102。
[0028]
更进一步地,pa=0.25。
[0029]
进一步地,步骤s101中,鸟巢的适应度的计算公式为:
[0030][0031]
其中,dist表示欧式距离;c
j
表示第j个中心;k表示最优簇首数。在本发明中,适应度值越小越优。
[0032]
进一步地,步骤s102中,每个鸟巢的位置和状态进行更新的计算公式为:
[0033][0034]
其中表示第t代第c个解;α为步长因子,用来控制随机搜索范围;表示点对点乘法,是莱维飞行步长,在本发明中,每个鸟巢位置的更新可以看做布谷鸟寻找最优鸟巢,定义布谷鸟以莱维飞行的方式飞行,由一个鸟巢飞向另一个鸟巢即为该鸟巢的位置更新。更进一步地,步长因子α与莱维随机数levy(β)公式如下所示:
[0035][0036][0037][0038]
其中μ和ν服从标准正态分布,β=1.5,x
best
表示当前最优解;α0=0.001*t
max
*exp(

t/t
max
),t,t
max
分别表示当前迭代次数与最大迭代次数。
[0039]
进一步地,步骤s104中,更新一次鸟巢位置的计算公式为:
[0040][0041]
其中和表示第t代的两个随机解;ν是服从[0,1]上的均匀分布。
[0042]
进一步地,基于节点能量、距离因素选举簇首时,簇首选举引入选举函数,选举函数的计算公式如下:
[0043]
f(i)=a(i)*f1(i)+b(i)*f2(i)
[0044]
其中a(i),b(i)为动态权重系数,a(i)为b(i)为1

a(i),其中e
init
表示节点初始能量,e
res
(i)表示节点i剩余能量,f1(i)和f2(i)通过以下公式计算:
[0045][0046][0047]
n为簇j中节点总数;d(x
i
,cen
j
)表示簇j中的节点i到该簇中心cen
j
的距离;d
max
表示簇j内节点到簇中心的最大距离;d
min
表示簇j内节点到簇中心的最小距离。
[0048]
更进一步,网络初始阶段,a(i),b(i)分别为1/2,1/2。随着网络运行,节点能量普遍下降,节点剩余能量成为提高网络生命周期的关键因素,调节两个因素的所占比重。
[0049]
进一步地,为了避免因频繁选举簇首消耗的能量,选簇首选举采用如下方式进行判断:
[0050]
f
ch
≤λf
max
(i)λ∈(0,1)
[0051]
其中λ为网络系数,若上式成立,上一轮的簇首通知拥有最大选举函数值的节点i当选为新簇首,并交换簇内成员信息;否则不进行簇首的更新。λ的值会影响到簇首更新的速度,当λ值较大时,上成立的概率变大,那么簇首更新的速度会变快;反之,簇首的更新速度会变慢。为了均衡簇首更换速度,一般取λ为0.7。簇首确定后,簇内以单跳形式进行通信,并为簇成员分配tdma时隙。簇成员在其对应tdma时隙内向簇首发送数据。
[0052]
进一步地,步骤a10中,簇首i的中继节点个数为hop
i

1,hop
i
为簇首i传送数据到基站的路由跳数,hop
i
的计算公式如下:
[0053][0054]
最佳传输距离d'、簇首i到基站的距离d
i

bs
,其中round()为四舍五入。更进一步地,最佳传输距离d'取值为32m。
[0055]
进一步地,步骤a20中,寻优目标函数计算公式如下:
[0056][0057]
其中,mean(e
res
(1:(hop

1)))表示向基站发送数据路径上所有中继节点剩余能量平均值,hop表示传送数据到基站的路由跳数;χ,δ为权重系数,χ+δ=1,且χ>δ,e
total
为路由能量消耗,包括簇首向下一跳节点发送mbit数据消耗的能量e
ch
、中继节点接收融合来自上一跳节点的mbit数据及发送mbit数据至下一跳中继节点或者基站消耗的能量e
delaynode
,e
total
、e
ch
和e
delaynode
的计算公式如下:
[0058][0059]
[0060]
e
total
=e
ch
+(hop

1)*e
delaynode
[0061]
其中,d
ch_j
,d
nexthop
分别表示簇首到其下一跳中继节点j的距离,中继节点到下一跳的距离,e
elec
表示每传输1bit的数据需要消耗的能量,e
da
表示融合1bit数据消耗的能量,ε
fs
为自由空间信道模型的功放因子参数。由寻优目标函数可知,与路由能量消耗、中继节点剩余能量、中继节点负载三个因素有关;当路由能耗开销越小,中继节点剩余平均能量越大,中继节点的负载load越小,目标函数f的值就越小,那么结合cs算法得到的簇首路由就越合理。
[0062]
与现有技术相比,本发明的有益效果:
[0063]
1、本发明针对传统k

means算法对初始聚类中心敏感而陷入局部最优,采用布谷鸟算法寻找k

means算法的初始聚类中心,避免k

means算法陷入局部最优,使网络分簇更加均匀,以均衡网络能耗。
[0064]
2、本发明基于节点剩余能量、位置因素选举簇首,并根据节点剩余能量动态调整权重系数,使选举的簇首更具合理性,均衡节点负载。
[0065]
3、本发明的簇首向基站发送数据时需要根据簇首到基站距离采用单跳或多跳的方式向基站发送数据;其中,簇首采用多跳发送数据时,结合簇首路由能耗、中继节点剩余能量和中继节点负载基于布谷鸟算法规划簇首路由,通过规划的簇首路由来降低簇首因长距离传输数据消耗的能量,均衡簇首负载。
附图说明:
[0066]
图1是实施例1中本发明无线传感器网络节点分簇方案的流程示意图;
[0067]
图2是实施例1中基于leach协议的无线传感器网络分簇方案的簇域分布图;
[0068]
图3是实施例1中基于leach

improve协议的无线传感器网络分簇方案的簇域分布图;
[0069]
图4是实施例1中基于dtk

means算法的无线传感器网络分簇方案的簇域分布图;
[0070]
图5是实施例1中基于crcs

k算法的无线传感器网络分簇方案的簇域分布图;
[0071]
图6是实施例1中基于crcs

k算法的无线传感器网络的最优簇首路由效果图;
[0072]
图7是实施例1中基于leach协议、leach

improve协议、dtk

means和crcs

k算法的节点剩余能量对比图;
[0073]
图8是本发明实施例1中基于leach协议、leach

improve协议、k

means算法和crcs

k算法的存活节点数对比图;
具体实施方式
[0074]
下面结合试验例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
[0075]
实施例1
[0076]
一种基于布谷鸟算法和k

means算法的wsn路由协议方法,以轮为单位运行,每轮包括:
[0077]
一、成簇阶段:确定最优簇首数k,采用基于布谷鸟算法优化的k

means算法对网络
内节点进行分簇,得到k个簇及每个簇内的节点,分簇包括以下步骤:
[0078]
s10、随机初始化鸟巢位置,采用布谷鸟算法得到最优鸟巢位置;
[0079]
s20、将步骤s10得到的最优鸟巢位置解码为优化后k

means的初始聚类中心;
[0080]
s30、执行k

means算法;
[0081]
s40、输出最优聚类中心及聚类结果,得到k个簇及每个簇内的节点。
[0082]
首先,根据网络模型和能耗模型推算出最优簇首数k,最优簇首数k的计算公式如下:
[0083][0084]
其中n表示wsn区域内存活节点数目;m表示wsn区域的边长;d
tobs
表示簇首到基站的平均距离。随着网络的运行,网络中存活节点n会减少,最优簇首数会随之发生改变,当最优簇首数发生改变时需要重新分簇,分簇是一个动态过程。
[0085]
在使用cs算法优化k

means之前,基于网络最优簇首数对鸟巢进行编码,编码格式为{x1,y1…
x
k
,y
k
},其中x
i
,y
i
表示聚类中心在监测区域中的位置,可表示为
[0086][0087]
其中x
min
,y
min
,x
max
,y
max
分别表示区域边界;rand()为0到1之间的随机数。
[0088]
图1为分簇方案的流程示意图,首先使用cs算法对聚类中心的位置进行优化,然后利用cs算法最后的迭代结果作为k

means算法的初始聚类中心,步骤s10的具体步骤为:
[0089]
s101、随机初始化鸟巢位置,设置种群规模、最大迭代次数等参数,得到每个鸟巢的适应度;
[0090]
s102、对每个鸟巢位置和状态进行更新;
[0091]
s103、对步骤s102更新后鸟巢位置得到新适应度,若新适应度更优,则替换旧的鸟巢位置,得到随机数r;
[0092]
s104、比较r与pa的大小,若r>pa,再次更新一次鸟巢位置,否则鸟巢位置不变;
[0093]
s105、计算每个鸟巢适应度,若满足最大迭代次数或者适应度函数收敛,进行下一步,并输出最优鸟巢位置;否则返回到步骤s102。其中pa=0.25。
[0094]
步骤s101中,鸟巢的适应度的计算公式为:
[0095][0096]
其中,dist表示欧式距离;c
j
表示第j个簇的中心;k表示最优簇首数,x为第j个簇内的样本。在本发明中,适应度值越小越优。
[0097]
步骤s102中,每个鸟巢的位置和状态进行更新的计算公式为:
[0098][0099]
其中表示第t代第c个解;α为步长因子,用来控制随机搜索范围;表示点对点乘法,是莱维飞行步长,在本发明中,每个鸟巢位置的更新可以看做布谷鸟寻找最优鸟巢,定义布谷鸟以莱维飞行的方式飞行,由一个鸟巢飞向另一个鸟巢即为该鸟巢的位置更新。更进一步地,步长因子α与莱维随机数levy(β)公式如下所示:
[0100][0101][0102][0103]
其中μ和ν服从标准正态分布,β=1.5,x
best
表示当前最优解;α0=0.001*t
max
*exp(

t/t
max
),t,t
max
分别表示当前迭代次数与最大迭代次数,目的提高算法的局部搜索性能。
[0104]
步骤s104中,更新一次鸟巢位置的计算公式为:
[0105][0106]
其中和表示第t代的两个随机解;ν是服从[0,1]上的均匀分布。
[0107]
k

means算法的详细步骤为:
[0108]
步骤1:假设有n个节点在监测区域内,将网络内节点分为k个簇,将步骤s10得到的最优鸟巢位置解码为优化后k

means算法的初始聚类中心;
[0109]
步骤2:由步骤1得到的初始聚类中心,计算监测区域内所有节点到所有聚类中心的距离,根据节点距离哪个聚类中心近,将节点加入到哪个聚类中心,得到k个聚类;
[0110]
步骤3:更新每个聚类的聚类中心,更新方式为:通过计算该聚类内所有节点的平均坐标作为新的聚类中心;
[0111]
步骤4:对步骤3更新后的每个聚类按照鸟巢的适应度表示其聚类效果,得到聚类的适应度值越小表示聚类效果越好。若适应度函数收敛或聚类的聚类中心不再变化时表明聚类效果已达到最优,否则返回第二步骤,继续相同的计算步骤。
[0112]
二、簇首选举:对每个簇内的节点根据选举函数得到选举值,k个簇按照选举值选出每个簇的簇首,第一轮时所述簇首选择选举值最大的,第一轮后所述簇首采用如下方式进行判断:
[0113]
f
ch
≤λf
max
(i)λ∈(0,1)
[0114]
其中λ为网络系数,若上式成立,上一轮的簇首通知拥有最大选举值的节点i当选为新簇首,并交换簇内成员信息;否则不进行簇首的更新;λ的值会影响到簇首更新的速度,当λ值较大时,上成立的概率变大,那么簇首更新的速度会变快;反之,簇首的更新速度会变慢。为了均衡簇首更换速度,一般取λ为0.7。簇首确定后,簇内以单跳形式进行通信,并为簇成员分配tdma时隙,簇成员在其对应tdma时隙内向簇首发送数据,其他时间保持休眠状态,以降低节点的能耗。
[0115]
无线传感器网络分簇完成后,需要选举出合理的簇首,簇首担任簇内数据的接收,融合,转发任务,能量消耗较簇内其它节点多,故选择一个剩余能量相对较高,距离簇内节点较近的候选节点作为簇首以均衡网络能量负载,提高网络生命周期。
[0116]
基于节点能量、距离因素选举簇首时,选举函数的计算公式如下:
[0117]
f(i)=a(i)*f1(i)+b(i)*f2(i)
[0118]
其中a(i),b(i)为动态权重系数,a(i)为b(i)为1

a(i),其中e
init
表示节点初始能量,e
res
(i)表示节点i剩余能量,f1(i)和f2(i)通过以下公式计算:
[0119][0120][0121]
n为簇j中节点数;d(x
i
,cen
j
)表示簇j中的节点i到该簇中心cen
j
的距离;d
max
表示簇j内节点到簇中心的最大距离;d
min
表示簇j内节点到簇中心的最小距离。网络初始阶段,a(i),b(i)分别为1/2,1/2。随着网络运行,节点能量普遍下降,节点剩余能量成为提高网络生命周期的关键因素,调节两个因素的所占比重。
[0122]
三、数据传输阶段:每个簇内的所述簇首接收、融合簇内节点数据,然后根据所述簇首到基站距离采用单跳或多跳的方式向基站发送数据;其中,所述簇首采用多跳发送数据时,利用布谷鸟算法为所述簇首规划路由,包括以下步骤:
[0123]
a10、确定每个采用多跳的簇首的中继节点个数;
[0124]
a20、初始化鸟巢位置维度,利用布谷鸟算法对候选中继节点进行迭代更新,输出的最优鸟巢的位置即为簇首路由;
[0125]
步骤a10中,簇首i的中继节点个数为hop
i

1,hop
i
为簇首i传送数据到基站的路由跳数,hop
i
的计算公式如下:
[0126][0127]
最佳传输距离d'、簇首i到基站的距离d
i

bs
,其中round()为四舍五入。更进一步地,最佳传输距离d'取值为32m。
[0128]
计算出簇首中继节点个数后便可以对鸟巢进行位置编码。基于簇首i的路由跳数hop
i
,鸟巢位置编码为,其中x
ch_i
,y
ch_i
表示簇首i位置;表示簇首i的第hop
i

1个候选中继节点位置;x
bs
,y
bs
表示基站位置。鸟巢位置初始化阶段,在监测区域内随机选取hop
i

1个节点(排除簇首i)作为候选中继节点。
[0129]
步骤a20中,鸟巢位置初始化后,cs算法仅对候选中继节点进行迭代更新,簇首和基站位置固定不变。在cs算法多次迭代后,输出的最优鸟巢的位置即为簇首路由,cs算法在为簇首规划路由时,寻优目标函数作为标准评价路由的优劣,以得到最优簇首路由。寻优目标函数计算公式如下:
[0130][0131]
其中,mean(e
res
(1:(hop

1)))表示向基站发送数据路径上所有中继节点剩余能量平均值,hop表示传送数据到基站的路由跳数;χ,δ为权重系数,χ+δ=1,且χ>δ,e
total
为路由能量消耗,包括簇首向下一跳节点发送mbit数据消耗的能量e
ch
、中继节点接收融合来自上一跳节点的mbit数据及发送mbit数据至下一跳中继节点或者基站消耗的能量e
delaynode
,e
total
、e
ch
和e
delaynode
的计算公式如下:
[0132][0133]
[0134]
e
total
=e
ch
+(hop

1)*e
delaynode
[0135]
其中,d
ch_j
,d
nexthop
分别表示簇首到其下一跳中继节点j的距离,中继节点到下一跳的距离,e
elec
表示每传输1bit的数据需要消耗的能量,e
da
表示融合1bit数据消耗的能量,ε
fs
为自由空间信道模型的功放因子参数。由寻优目标函数可知,路由能量消耗、中继节点剩余能量、中继节点负载三个因素决定的,当路由能耗开销越小,中继节点剩余平均能量越大,中继节点的负载load越小,寻优目标函数f的值就越小,那么结合cs算法得到的簇首路由就越合理。此外,中继节点拥有充足的剩余能量是路由数据稳定传输的关键;为了降低中继节点被过度开发的可能性,计算其充当中继节点的次数作为负载load,负载越小,路由能耗越均衡。
[0136]
本实施例还提供了使用matlab对本发明所述的路由协议进行仿真。假设将100个传感器节点随机布设在100m*100m的监测区域内,节点布设后不再移动,仿真过程中参数设置如表1。
[0137]
表1基于布谷鸟算法和k

means算法的wsn路由协议方法仿真过程参数
[0138]
参数取值监测区域100m*100m节点个数100基站坐标(50,50)数据长度4000bit最佳传输距离d'32me00.5je
elec
50nj/bite
da
5nj/(bit
·
packet
‑1)ε
fs
10pj/(bit
·
m
‑2)ε
mp
0.0013pj/(bit
·
m
‑4)χ、δ、λ0.8,0.2,0.8
[0139]
通过仿真,图2、图3、图4和图5分别是基于leach协议、leach

improve协议、dtk

means算法和crcs

k算法无线传感器网络分簇方案的簇域分布图,通过对比可以明显看出布谷鸟算法优化的k

means算法(crcs

k算法)相对leach、leach

improve、dtk

means算法进行的分簇更加均匀,更有利于均衡网络节点能耗。图6为基于crcs

k算法的无线传感器网络的最优簇首路由效果图,体重白点表示非簇首节点,星号加圈的表示簇首,并标注有数字,中心星号表示基站,圆圈为半径为32m的界限,簇首在圈内的采用一跳直接将数据发送至基站,圆圈外的簇首需要计算有几个中继,由布谷鸟算法寻找簇首路由,再将数据发送至基站。结合簇首路由能耗、中继节点剩余能量和中继节点负载基于布谷鸟算法规划簇首路由,减轻了远端簇首因长距离传输数据消耗的能量,进一步均衡簇首负载。图7和图8为基于leach协议、leach

improve协议、dtk

means算法和crcs

k算法的节点剩余能量对比图和存活节点数对比图,可以看出采用本发明的路由协议有效降低了节点能耗、延长了网络生命周期。
[0140]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1