搜索
您的当前位置:首页LEACH算法仿真结果

LEACH算法仿真结果

来源:智榕旅游


仿真一:在100*100的区域内随机生成100个节点

(matlab仿真代码: clear;

xm=100;%x轴范围

ym=100;%y轴范围

sink.x=0.5*xm;%基站x轴 50

sink.y=0.5*ym;%基站y轴 50

n=100;

E0=0.02;

for i=1:1:n

S(i).xd=rand(1,1)*xm;

S(i).yd=rand(1,1)*ym;

S(i).G=0;%每一周期结束此变量为0

S(i).E=E0;%设置初始能量为E0

S(i).type='N';%节点类型为普通

plot(S(i).xd,S(i).yd,'o');

hold on;

end

%设置SINK节点的坐标

S(n+1).xd=sink.x;

S(n+1).yd=sink.y;

plot(S(n+1).xd,S(n+1).yd,'*');%绘制基站节点

仿真结果图片: (‘O’代表随机散布的节点,‘*’代表SINK节点)

10090807060504030201000102030405060708090100

仿真二:LEACH分簇效果图(matlab代码见附件)

仿真结果:(p=0.1)

1、簇头个数14.

10090807060504030201000102030405060708090100

2、簇头个数:11

10090807060504030201000102030405060708090100

3、簇头个数:12

10090807060504030201000102030405060708090100

4、簇头个数:10

10090807060504030201000102030405060708090100

(p=0.05)

1、簇头=6

10090807060504030201000102030405060708090100

2、簇头=7

10090807060504030201000102030405060708090100

3、簇头=12

10090807060504030201000102030405060708090100

4、簇头=8

10090807060504030201000102030405060708090100

5、

LEACH分簇算法成簇效果图1009080706050403020100SINK节点y簇头普通节点01020304050x60708090100

仿真三:LEACH分簇算法第一个节点死亡的轮数

10090807060504030201000102030405060708090100

10090807060504030201000102030405060708090100

第一死亡节点出现的分布及轮数10090807060504030201000102030405060708090100簇头节点SINK节点普通节点死亡节点

第一死亡节点出现的分布及轮数100908070605040302010001020304050x60708090100SINK节点y死亡节点

第一死亡节点出现的分布及轮数1009080706050403020100010死亡节点SINK节点y20304050x60708090100

经过matlab仿真,LEACH分簇算法在第一个节点死亡时,已经运行的轮数分别为:

122、143、125、149、122、72.

仿真四:20%的节点死亡时分布及轮数

1、

20%的节点死亡时分布及轮数100908070605040302010001020304050x60708090100死亡节点y簇头节点普通节点SINK节点

2、

100908070605040302010001020304050x60708090100y

100908070605040302010001020304050x60708090100y

轮数:196、207、205、181.

因篇幅问题不能全部显示,请点此查看更多更全内容

Top