💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
无线传感器网络(Wireless Sensor Networks, WSNs)是一种由大量传感器节点组成的网络系统,这些节点能够感知、收集并处理环境中的信息,然后通过无线信号的方式将信息发送给用户。在WSNs中,能量效率是一个非常重要的考量因素,因为传感器节点通常是由电池供电的,而且在大多数情况下,更换电池是不现实的。因此,如何延长网络的生命周期,提高能量效率,就成为了WSNs研究中的一个核心问题。
LEACH(Low-Energy Adaptive Clustering Hierarchy),LEACH-C(LEACH-Centralized),和TS-I-LEACH(Two-Level Hierarchy LEACH Improved)是三种旨在提高无线传感器网络能效的协议。它们都采用了层次化的方法来组织网络,通过不同的策略来降低能量消耗,从而延长网络的生命周期。下面是对这三种协议的比较研究:
### 1. LEACH
LEACH是一种典型的自组织、自适应的层次型网络协议。它通过随机选举节点作为簇首(Cluster Heads, CHs),并以此为中心建立簇。非簇首节点将数据发送给簇首,簇首再将数据汇总后发送给基站。LEACH的关键特点在于其簇首的随机选举机制和局部数据聚合,这能有效减少通信所需的能量。但LEACH的随机性也可能导致簇首选举的不均匀,影响网络的整体能效。
### 2. LEACH-C
LEACH-C是LEACH的一个改进版本,它引入了一个中心控制算法来优化簇首的选举过程。在LEACH-C中,所有的节点首先将自己的位置和能量信息发送给基站,基站然后根据这些信息计算出最佳的簇首分布,并将簇首身份分配给选定的节点。这种中心化的簇首选举方法能够更加合理地平衡能量消耗,从而延长网络的生命周期。然而,这种方法增加了系统的复杂性,且对基站的依赖较高。
### 3. TS-I-LEACH
TS-I-LEACH是对LEACH协议的进一步改进,它采用了两级簇首制度来优化能量消耗。在TS-I-LEACH中,选举出的簇首将进一步选出一个或多个次级簇首,形成一个两级的簇首体系。这种方法旨在减少簇首与基站之间的直接通信距离,通过在簇内部进行更多的数据聚合来降低能量消耗。TS-I-LEACH通过这种两级簇首机制,既保持了LEACH协议的自组织和自适应特性,又进一步优化了能量消耗,延长了网络的生命周期。
### 结论
LEACH、LEACH-C和TS-I-LEACH都是旨在提高无线传感器网络能效的协议,它们通过不同的方法来减少能量消耗和平衡能量消耗。LEACH简单有效,但可能存在簇首选举不均的问题;LEACH-C通过中心化的方式优化簇首的选举,能更好地平衡能量消耗,但复杂度和对基站的依赖性增加;TS-I-LEACH通过引入两级簇首制度,进一步优化了能量效率,是一种兼顾自组织自适应性和能效优化的方案。根据不同的应用场景和需求,可以选择最合适的协议来部署无线传感器网络。
📚2 运行结果
部分代码:
IniEng=0.5;%0.5; % Initial Energy of Every Node
NetSize=200; % Network Size
NoOfNode=200; % Number of Node
NoOfRound=1500; % Number of Round
cluster_head_percentage=0.1;
[STATISTICS1,FD1,TD1,AD1]=leach(IniEng,NetSize,NoOfNode,NoOfRound,cluster_head_percentage);%% Leach
[STATISTICS2,FD2,TD2,AD2]=Leach_Centralized(IniEng,NetSize,NoOfNode,NoOfRound,cluster_head_percentage); %% Centralized Leach
[STATISTICS3,FD3,TD3,AD3]=TSILEACH(IniEng,NetSize,NoOfNode,NoOfRound,cluster_head_percentage); %% Improved Leach IICT, BUET
r=0:NoOfRound;
plot(r,STATISTICS1.DEAD,'k:',r,STATISTICS2.DEAD,'m-',r,STATISTICS3.DEAD,'r-.','LineWidth',2);
legend('LEACH','LEACH-C','TS-I-LEACH','Location','SouthEast');
xlabel('x(time)');
ylabel('No of Dead Nodes');
title('No of Allive Nodes Over Time');
figure
plot(r,STATISTICS1.ALLIVE,'k:',r,STATISTICS2.ALLIVE,'m-',r,STATISTICS3.ALLIVE,'r-.','LineWidth',2);
legend('LEACH','LEACH-C','TS-I-LEACH');
xlabel('x(time)');
ylabel('No of Allive Nodes');
title('No of Dead Nodes Over Time');
figure;
plot(r,STATISTICS1.PACKETS_TO_BS,'k:',r,STATISTICS2.PACKETS_TO_BS,'m-',r,STATISTICS3.PACKETS_TO_BS,'r-.','LineWidth',2);
legend('LEACH','LEACH-C','TS-I-LEACH','Location','SouthEast');
xlabel('x(time)');
ylabel('No of Packets');
title('Number of packets send to Sink Node');
figure;
plot(r,STATISTICS1.TotalEnergy,'k:',r,STATISTICS2.TotalEnergy,'m-',r,STATISTICS3.TotalEnergy,'r-.','LineWidth',2);
xlabel('x(time)');
ylabel('Total Energy of Network in (Joule)');
title('The total Remaining Energy of the System in (J)');
figure;
bargraph=[FD1,FD2,FD3;TD1,TD2,TD3;AD1,AD2,AD3];
bar(bargraph,'group');
legend('LEACH','LEACH-C','TS-I-LEACH','Location','NorthWest');
title('The Time when First node die, Tenth node die and All nodes die');
xlabel('FIRST DEATH TENTH DEATH ALL DEATH');
ylabel('Number of rounds');
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]胡钢,谢冬梅,吴元忠.无线传感器网络路由协议LEACH的研究与改进[J].传感技术学报, 2007, 020(006):1391-1396.
[2]井泉.基于LEACH的无线传感器网络路由协议的研究[D].东北大学,2012.DOI:10.7666/d.J0124954.
[3]韦小铃,王玉斌,余兴超,等.无线传感器网络LEACH路由协议的研究与改进[C]//广西计算机学会2010年学术年会.0[2024-04-01].DOI:ConferenceArticle/5a9fbe30c095d72220573d8c.
[4]王林,赵绍英.无线传感器网络LEACH路由协议的研究与改进[J].计算机工程与应用, 2012.DOI:CNKI:SUN:JSGG.0.2012-02-023.