基于能量均衡的无线传感器网络算法的改进
分析此式可以看出,由于节点的剩余能量总是小于其初始能量的,所以改进后的门限值一定比原T(n)值要小。虽然降低了剩余能量少的节点成为簇头节点的可能性,但同时也减小了整个网络中能够担当簇头节点的机会。针对这一现象,本文将节点当前剩余能量和当前网络平均能量
两个参数综合考虑进去。
式中,是节点当前的剩余能量,
是当前网络平均能量。这样一来,即保证了节点被选为簇头节点的可能性与其剩余能量的多少相关,又保证了一轮中选举出来的簇头节点数与期望数相同。
在许多文献中已经证实,网络中簇头的个数也是影响网络寿命一个的重要因素,因此本文也将簇头个数的优化方案融入了改进的协议。本文当中的簇头最优个数是采用中的方法确定的,如式(4)所示。
式中,是无线传感器网络覆盖区域面积, N 是区域内节点数量,
是信号放大器的放大倍数,
是每发送或接收1比特数据,电路自身消耗的能量,
是簇头节点的最远覆盖距离。
2.2 改进算法的具体实现
算法进行优化后详细描述如下。
1)在簇的建立阶段,簇头由所有节点自主决定,在每一轮中自行生成k 个簇。k 的值由(4)式决定。
2)将每个节点的剩余能量与上一轮中预计的当前网络平均能量进行比较,若剩余能量大于网络的当前平均能量,则有资格成为簇头候选节点;否则只能等待簇头广播簇类信息。
3)能量大于当前网络平均能量的节点,判断自己生成的随机数是否小于门限值T(n)(即上文中已作改进的(3)式),若小于则成为簇头节点;若大于门限值则为成员节点,等待簇头发送告知信息 。至此,簇头的选举阶段完成。
4)成为簇头的节点,要以一定的功率发送簇头告知信息,但不是全网广播。该消息只包括簇头节点的ID 和消息标识符。在此之后簇头将等待簇成员的加入信息。
5)成员节点根据接收到的ADV 消息的信号强弱来选择一个信号强的簇头节点,并向其发送一个请求加入的消息,该消息只包括节点的ID 和簇头节点的ID。
6)簇头花费一定时间来等待接收成员节点的加入簇信息,之后将停止接收并根据所收到的信息数量来安排簇内节点发送消息的TDMA 时隙。簇头将TDMA 时隙以最小功率发送给簇内成员,以确保成员节点与簇头节点通信时不会产生冲突。这样网络中某一轮的簇就已建立起来。图1 为改进后的簇建立阶段算法流程图。
7) 簇建立好后,开始进行数据的传输阶段。每个节点按照既定规则在自己的 TDMA 时隙内发送收集到的信息。基站在收到各个簇头发送来的整合信息后,分析传感到的数据并反应到上层人机交流界面上。根据信息中包含的簇头和节点的ID 以及其发送信息时的功率强度,估计下一轮发送消息时网络中节点的平均能量,并将此信息广播到网络,为下一轮循环做准备。至此,本轮结束。
图 1 改进后的簇建立阶段算法流程图
评论