APP下载

基于角度聚类的无线传感器网络分簇路由算法

2019-07-12赵小强

西安邮电大学学报 2019年2期
关键词:灰狼路由基站

赵小强, 张 琳

(1. 西安邮电大学 通信与信息工程学院, 陕西 西安 710121; 2. 陕西省信息通信网络及安全重点实验室, 陕西 西安 710121)

无线传感器网络(wireless sensor networks,WSN)由大量小型、廉价、低功耗的传感器节点组成,这些传感器的能量主要由电池供给,故其能量有限,且更换电池困难[1-2]。布设WSN的主要挑战是平衡网络负载及降低传感器节点的能量消耗,从而延长网络的生命周期[3-4]。

分簇路由协议能有效均衡节点能耗,延长网络生存时间[5-6],其簇首的产生有基于随机选举及基于节点能量选举两种方式[7]。低功耗自适应分簇(low energy adaptive clustering hierarchy, LEACH)[8]是在WSN中被最早提出的基于随机选举簇首的分簇路由协议,但其在选取簇首时未能考虑节点的剩余能量,易导致簇首能耗不均,影响网络的生命周期。稳定选举协议(stable election protocol,SEP)[9]考虑了节点的能量异构性,优化了簇首的选择方法,但簇首在网络空间中仍存在分布不均的现象。基于适应值的改进灰狼优化器(fitness value-based improved grey wolf optimizer, FIGWO)[10]引入节点距基站的距离信息及节点的剩余能量信息改进灰狼优化器,再进行簇首选取,但却忽略了空间方向信息,无法使初始簇首在网络的每个方向均匀分布。

本文将针对WSN分簇路由协议,给出一种基于角度聚类及灰狼优化器(angle-based clustering and grey wolf optimizer,AC_GWO)算法。先根据节点与基站间的角度计算各节点的角度信息,用以改进模糊C均值聚类算法中的初始隶属度矩阵,从而选取初始簇首,形成初始簇,再利用灰狼优化器在各初始簇中迭代选取最终簇首并形成最终簇,完成数据传输。

1 基于角度聚类的分簇路由算法

1.1 节点角度信息

将整体区域按方向划分为C个区域,第j(j=1,2,…,C)个区域的角度范围定义为W(j),满足

将节点i与基站间的角度定义为

其中,(xi,yi)表示第i个节点的位置,(x0,y0)表示基站的位置。

1.2 初始簇首选取

以节点角度信息作为特征,通过对模糊C均值聚类(fuzzy c-means,FCM)算法[11]初始隶属度矩阵的重新定义,得出隶属度矩阵的改进方法。

初始化节点i相对于区域j的初始隶属度值,即

C=floor [(N+9)/10],

floor为向下取整函数。

计算各类的聚类中心

其中,m是参数,通常值为2;xi为节点i的值。

计算出聚类中心cj后,更新隶属度矩阵,即取

计算新的目标函数值

对聚类中心及隶属度矩阵进行迭代更新,直至满足

|Ft-Ft-1|<ε。

其中,t指当前迭代轮次,ε是迭代终止阈值[12]。

迭代终止时,输出当前聚类中心。由此可得C个聚类中心{cj:j=1,2,…,C}。然后,选择距离每个聚类中心最近的节点作为初始簇首,从而得到C个初始簇首{Hj:j=1,2,…,C}。

1.3 最终簇的形成

计算各节点与每个初始簇首Hj(j=1,2,…,C)间的欧氏距离,各节点加入距离最近的簇首形成C个初始簇。

以节点剩余能量及其与基站之间的距离为特征,使用灰狼算法在簇内选取实际簇首[10]。对于同一簇内的所有节点,按照特征值的大小进行排序,选取前3个节点作为α、β及δ狼,根据灰狼算法中的捕猎行为[13],选取最终簇首并形成最终簇。

1.4 网络能耗

网络能耗主要发生在数据发送及数据接收时段[14]。当节点传输k比特数据时,发送数据的能耗为

接收数据的能耗为

ER(k)=kE1。

所给AC_GWO分簇路由算法将在此种能耗模式下持续工作直至节点能量全部耗尽。

2 实验与分析

验证AC_GWO算法的有效性,使用MATLAB将其与LEACH、SEP及FIGWO进行仿真比较。仿真参数如表1所示[15]。

表1 仿真参数

2.1 剩余能量分布图

比较LEACH、SEP、FIGWO和AC_GWO算法运行至第800轮和第1 300轮节点的剩余能量分布情况,实验结果如图1和图2所示。其中节点附近的数字表示节点剩余能量的百分比。从图1可见,AC_GWO算法各节点的剩余能量明显大于其余算法,且能量消耗相对均衡。从图2可见,LEACH和SEP算法的大部分节点能量已经消耗殆尽,FIGWO算法已经开始有节点死亡,而AC_GWO算法还没有节点死亡。因此,AC_GWO算法可以使节点的能耗更加均衡,确保不加速消耗某节点的能量。

图1 第800轮时的能量分布

图2 第1 300轮时的能量分布

2.2 网络总能耗及节点剩余能量差

对网络总能耗进行仿真实验,结果如图3所示。从中可见,AC_GWO算法的总体能量较其余算法消耗速度较慢,表明该算法在相同初始能量下,可运行更长的时间,即AC_GWO算法可以有效降低网络的整体能耗,是一种有效的分簇路由算法。

图3 平均剩余能量

为了进一步分析节点能量的变化,对所有节点的能量差进行计算,以判断算法在运行过程中各节点的能量消耗是否均衡。实验结果如图4所示。从中可见,所有算法的节点能量差先增大后减小,峰值出现在首个节点死亡之时。与其他算法相比,AC_GWO算法具有最低的峰值及低增长率。这表明所给算法节点间的能量差相对较小,进而证明了其能耗更均衡。

图4 平均能量差

2.3 网络稳定传输期

各算法运行过程中节点的死亡情况如图5所示。从中可见,AC_GWO算法首个节点的死亡时间及最后一个节点的死亡时间均晚于其他算法。

关键节点死亡时间统计结果如表2所示。从中可见,AC_GWO算法保障了1%的节点、50%的节点及100%的节点的死亡时间均晚于其他算法,且使网络稳定传输期较其他算法都有明显改善。这表明所给算法的网络生命周期比其他算法更长。

图5 网络稳定传输期

表2 关键节点死亡时间

算法死亡轮次1%节点50%节点100%节点稳定传输期增长率AC_GWO1 2961 6422 057-FIGWO1 1941 5441 92763.4%SEP9601 3121 69335.0%LEACH7931 2001 4238.6%

3 结语

在分簇路由协议中,均匀选取簇首是一大挑战。若将网络视为整体,则可通过在网络各方向上选择簇首来优化能耗。所给基于模糊C均值聚类和灰狼优化器的混合路由协议,使用节点和基站间的角度信息来构造初始隶属度矩阵,保障了簇首的均匀分布。仿真结果表明,与LEACH、SEP、FIGWO相比,所给算法在稳定传输期和节点能耗方面有显著改善,网络稳定传输期分别增加了63.4%,35.0%和8.6%,而节点剩余能量分别增加了50.0%,47.2%和8.0%。所给算法可有效均衡节点能耗,延长网络生命周期。

猜你喜欢

灰狼路由基站
灰狼和山羊
铁路数据网路由汇聚引发的路由迭代问题研究
多点双向路由重发布潜在问题研究
一种基于虚拟分扇的簇间多跳路由算法
谷谷鸡和小灰狼
路由重分发时需要考虑的问题
灰狼的大大喷嚏
基于移动通信基站建设自动化探讨
可恶的“伪基站”
灰狼照相