LEACH算法仿真结果

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

仿真一:在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节点)

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

仿真结果:(p=0.1) 1、簇头个数14.

0102030405060708090100

2、簇头个数:11

3、簇头个数:12

0102030405060708090100

4、簇头个数:10

10

20

30

40

50

60

70

80

90

100

(p=0.05) 1、簇头=6

10

20

30

40

50

60

70

80

90

100

2、簇头=7

3、簇头=12

4、簇头=8

10

20

30

40

50

60

70

80

90

100

5

010203040

5060708090

100

102030405060708090100x

y

LEACH 分簇算法成簇效果图

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

10

20

30

40

50

60

70

80

90

100

0102030405060708090

100

10

20

30

40

50

60

70

80

90

100

0102030405060708090100

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

x

y

0102030405060708090100x

y

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

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

1、

y

x 2、

y

x

y

0102030405060708090100

x

轮数:196、207、205、181.

相关文档
最新文档