面向无线传感器网络WSN的增强型MODLEACH设计与仿真(Matlab代码实现)

欢迎来到本博客❤️❤️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

本文目录如下:

目录

1 概述

2 运行结果

3 参考文献

4 Matlab代码及文献


1 概述

摘要:无线传感器网络( WSNs )有望在不久的将来获得广泛的应用和日益广泛的部署。
在本文中,我们提出了一个新的协议,阈值敏感协议
稳定选举协议( Stable Election Protocol,TSEP ),是一种采用三层异构性的反应式选举协议。与前摄型网络不同,反应型网络对感兴趣的相关参数的变化立即做出反应。我们针对一个简单的温度传感应用评估了该协议的性能,并与其他一些协议LEACH,DEEC,SEP,
 Esep和teen .并且从仿真结果可以观察到,协议在使用的传感节点的寿命方面优于其他协议。

能源效率是无线传感器网络 (WSN) 中的重新发送问题。分层路由或群集是降低 WSN 能耗的最佳解决方案。LICACH(低能耗自适应集群层次结构)是很好的分层协议。基于LIVEC引入了许多协议,但仍然存在能源效率问题。关于CH(簇头)选举算法,数据聚合,减少传输次数和不同功率水平的研究正在进行中。MODLEACH(改良浸出)使用三种传输功率级别,可降低网络中的能耗;此外,它还使用不同的集群头选择算法,其中节点的剩余能量大于阈值,它仍然是下一轮的集群头。MODLEACH中用于选举簇头的方程与LIVEC中使用的方程相同。我们通过在HEED(混合节能分布式聚类)中使用不同的簇头选择方程来增强MODLEACH,使其根据节点的剩余能量选择节点作为簇头。此外,我们还通过放置能量空洞去除机制来增强 MODLEACH,这样如果节点的能量低于阈值,它将节点置于睡眠模式。如果睡眠节点数大于 10,则将睡眠节点逐个置于活动模式。因此,我们的方法在第一个死节点、稳定期和数据包到基站 (BS) 或接收器方面延长了使用寿命。

2 运行结果

部分代码:

%[vx,vy]=voronoi(X,Y);
%%plot(X,Y,'r*',vx,vy,'b-');
% %hold on;
% voronoi(X,Y);
% axis([0 xm 0 ym]);
%STATISTICS.ALLIVE(r+1)
P3.PACKETS_TO_BS3(r+1)=packets_TO_BS3;

end
r=0:10000;
figure(1)

plot(r,DEAD3,'--b');
legend('TSEP');
xlabel('Number of rounds');
ylabel('Dead nodes');
title('Nodes dead during rounds');

figure(2)
%subplot(2,2,2);
plot(r,ALIVE3,'--b');
legend('TSEP');
xlabel('Number of rounds');
ylabel('Alive nodes');
title('Nodes alive during rounds');
figure(3)

plot(r,P3.PACKETS_TO_BS3,'--b');
legend('ESEP','TSEP', 'HSEP','ECRSEP');
xlabel('Number of rounds');
ylabel('Throughput');
title('Packets sent to the base station');

%[vx,vy]=voronoi(X,Y);
%%plot(X,Y,'r*',vx,vy,'b-');
% %hold on;
% voronoi(X,Y);
% axis([0 xm 0 ym]);
%STATISTICS.ALLIVE(r+1)
P3.PACKETS_TO_BS3(r+1)=packets_TO_BS3;

end
r=0:10000;
figure(1)

plot(r,DEAD3,'--b');
legend('TSEP');
xlabel('Number of rounds');
ylabel('Dead nodes');
title('Nodes dead during rounds');

figure(2)
%subplot(2,2,2);
plot(r,ALIVE3,'--b');
legend('TSEP');
xlabel('Number of rounds');
ylabel('Alive nodes');
title('Nodes alive during rounds');
figure(3)

plot(r,P3.PACKETS_TO_BS3,'--b');
legend('ESEP','TSEP', 'HSEP','ECRSEP');
xlabel('Number of rounds');
ylabel('Throughput');
title('Packets sent to the base station');

3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

4 Matlab代码及文献

你可能感兴趣的:(网络,matlab,开发语言)