![智能系统](https://wfqqreader-1252317822.image.myqcloud.com/cover/234/32375234/b_32375234.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.5 实验:WSN——节点分簇聚合模拟
2.5.1 实验目的
(1)了解Python的基本编程环境。
(2)了解Python程序的基本框架。
(3)对于Python如何实现一个WSN——对节点分簇聚合有整体认识。
(4)运行程序,查看结果。
2.5.2 实验要求
(1)熟悉Python的基本编程环境。
(2)用代码实现WSN——节点分簇聚合功能。
2.5.3 实验原理
(1)实验场景:给定WSN的节点数目,节点随机分布,根据 LEACH算法实现每轮对WSN的分簇。
(2)记录前k轮(本实验k=10)或绘制第k轮网络的分簇情况,即每个节点的角色(是簇头还是簇成员)及其关系,如果是簇成员,则标记其所属的簇头。
(3)实验中需要注意,节点数目不宜过小,本实验N=100;每轮只完成分簇,不考虑通信过程;每轮结束可以以定时器确定,也可以以完成当轮分簇为准。
(4)簇成员在寻找簇头时,以距离作为接收信号强弱的判断依据;约束条件为当选为簇头的节点在以后几轮的分簇中不再成为簇头。
2.5.4 实验步骤
本实验的实验环境为Python 2.7的环境。代码如下。
1.主程序
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_16.jpg?sign=1739341505-92zJpMjCHoeVIdR9YbM93gOpTRh23CLA-0-e6b425f0f915467f2e18ee7fa8bf45c3)
2.判断距离函数
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_17.jpg?sign=1739341505-KRS3jbwqHiRWxTpnOvqcHwRW1nGdnWtx-0-1b8b8e282aed4905002a1af8ae0d0de5)
3.生成随机节点集
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_18.jpg?sign=1739341505-UhxTbnibF2q4Lye6W2Wdr7DLZCWaIvS6-0-995e8f112a1baff395baae79423d026c)
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_19.jpg?sign=1739341505-rIRNPYD504qvkQmYsbHYsxR0Xo82V6J8-0-524b42bd4845d459fb9a60f3b8d8b18a)
4.根据LEACH算法选择簇头节点
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_20.jpg?sign=1739341505-XjyetRJvr3iCw49DrQMvUkNaJGZmZkg4-0-c98a5a12bcd4cf881ec5f65215b745d5)
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_21.jpg?sign=1739341505-k60JbQYw6VlNJxOMC4dQBV8BX4aXybWO-0-e4e01cd295596956156c82513d2b9c7c)
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_22.jpg?sign=1739341505-0pYK1QKgoVSpwHnmv6CAlhF5j2KsfGeA-0-b56a304db08487bdc958a8dd70001f28)
5.节点分簇算法
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_23.jpg?sign=1739341505-gVyFofJu7A0jVxJYz4fcPgCVqKBLLGXg-0-feb9b72d2f9f03dfa816a52972946403)
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_24.jpg?sign=1739341505-Pp2p3FzAMSnDW0XeFqVVULHo97bVARJc-0-ffdbe4683239322e2f9d605d6ddf3e88)
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_25.jpg?sign=1739341505-IK7MV2NKyGDkVhuB9gGRbjMykeqHYNS8-0-ed4a779662ee75843d745fbeadd5e5e8)
6.绘制分类图
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_26.jpg?sign=1739341505-o1Td7dS3XNYc910etv7BvHJsg2IG9ZGQ-0-8348e4d1ab25c7678285911c350ab95c)
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_27.jpg?sign=1739341505-27J5kOU8AyJBA826XFGAFQopCzEZZBde-0-606c2d2853b489b84bd618f10f474bed)
2.5.5 实验结果
实验运行结果如图2-16所示。
![](https://epubservercos.yuewen.com/7ECA84/17493186607061806/epubprivate/OEBPS/Images/txt002_28.jpg?sign=1739341505-XtYvNFz99YimWhWU2WVaS0VD2uXfrBfp-0-1f314b53631e21af463b81612016dca6)
图2-16 实验运行结果