A new Energy Aware Cluster Based Multi-hop Energy Efficient routing protocol for Wireless Sensor Net

A new Energy Aware Cluster Based Multi-hop Energy Efficient routing protocol for Wireless Sensor Networks

创新点在于,提出的阈值公式能够考虑到对应几点的传感器能量,通过对能力的考量,大大增加了网络稳定性和生命周期更长等特点。

无线传感器面临的诸多问题和挑战

 

以上有图是算法实现的示意图,其中可以看到相应的三种节点,分别为高级、中级和普通级别,对应的,通过引进的能量考量的阈值公式,使得网络组织成簇装结构。那么主要的流程就是簇头建立,并且簇头和其他子节点进行成簇的过程,接着是簇头和基站,簇头和子节点之间的通信,簇头将子节点的所有消息包进行聚合,再一并发送给基站。当然,如果中间发现某个簇头不是最近的簇头,则他会根据距离基站最近的簇头来进行通信,也是根据距离最短的方式来进行通信。

另外可以看到,会有一个子簇的存在,因为这个簇头的数量是固定的,所以很有可能会有一些节点是不在覆盖网络之内,所以算法就会在这些覆盖的簇成员和未覆盖的成员之间,组成一个子簇,然后进行相应的通信。不过子簇头类似于其中一个簇成员,交给目前的簇头,然后再根据簇头来进行和基站之间的通信。

细节就是,首先要固定簇头,一开始,我们每个节点都有一个0-1的随机数,通过判断是否这个值小于阈值,来确定最终的簇头,一旦一个节点确定自己是簇头之后,那么他就会进行载波侦听多路访问协议尽心广播,让传感器感知对应的有簇头给自己发消息了。此时,簇头处于接受状态,就是接受其他节点的加入信息。而对应的节点选择簇头也是有依据的,就是通过节点收到簇头的接受信号强度来选择簇头,当然是选择信号最强的,效果肯定最好,那么确定之后,节点就会给自己中意的簇头附送加入的请求消息,然后进行确认。

那么节点和簇头形成一个簇之后,簇头根据加入的节点数量来进行TDMA的调度,所有的节点服从簇头分配的时隙来进行通信。

由于有些传感器没有加入簇,则最终形成子簇头和对应的簇头进行交互,以实现和基站间的通信。

 

 这个阈值公式如下,

 

对应的概率公式如下,因为有三种不同的等级的节点,不同节点间的能力是有所差别的,所以可以看到高级和中级的节点都有二外的权重,自己要是因为他们能力更强,所以肩负的使命也不一样。 

 

 这里再介绍一下流程。首先是这个图呢太长了,所以把他横着截断了一下,但是不影响理解

首先第一轮的时候,我们确定好N个簇头,并且用阈值公式确定每个节点自己是不是簇头,如果是新的Ch,则进行广播,然后下一步是所有其他节点接受CH的ACK消息,簇头发完ACK之后,就要处于接受状态,接受对应的簇成员想要加入的簇头和对应的簇成员id,和簇成员对应的目前能量,以成员的身份加入到簇中去。

CH对已经组建了一个簇,就要开始设置TDMA分配时隙,在这一轮内,CH开始汇聚对应的簇成员的消息了,如果在簇头的覆盖范围,那么直接发送给簇头就行,那么可能有些节点,他们不再覆盖范围,他们只能通过自己组建子簇来进行对应的数据汇总,然后由子簇头把消息一并交给簇头,这样就是完整的汇聚过程。

汇聚完之后,就是CH和BS之间的通信了,如果CH和BS之间的距离足够小,在一定的阈值范围之内,那么就可以直接发送,相应的,那如果达不到直接发送的阈值,就把这些包发送给相邻的距离BS更近的簇头,来实现多跳传播,这个过程一直重复,指导最后把包发给基站(BS)为止。

发送完之后,这就是一轮的工作,那么接下来要检查这个簇头是否能量还足够,如果能量不是很足可,就要相应的通过阈值公式再重新选择新的簇头,否则让其继续保持,这样就完成了一轮的工作

 

最后实验呢,是基于matlab的仿真模拟。这里是考察最红网络的存活节点个数,再1000m*1000m的范围内,随机摆放500个节点,通过时间和存活节点数来观察效果,可以看到,随着时间轮数的流逝,本算法依然能够做到存活率极高的效果 

 

 第二个实验室对于簇头数量的考察,簇头的选择和确定因该是数量尽量稳定,尽量平均会更好,可以看到本算法一直维持再一个教好的水平上

 

这里考察的是法宝的数量,可以看到本算法的发包效率特别高,效果也不错。 

 

相应的,这里是考察节点能量消耗的数量,可以看到随着时间的流逝,本算法都要优于其他算法,消耗的速度明显更低。 

猜你喜欢

转载自blog.csdn.net/Willen_/article/details/85037148