1.1 什么是分簇路由算法

在无线传感器网络路由算法中,分簇路由算法具有能量消耗低、稳定性高和扩展性好等优点。分簇路由算法中分簇就是分组,即按照特定的应用要求将网络中的所有节点分成不同的小组,每个小组就是一个簇。每个簇由一个簇头和多个簇内成员节点组成。分簇路由算法的工作原理可以简单的概括为:首先簇内成员节点将监测到的数据发送到簇头,然后簇头将监测到的数据和接收到的所有数据进行数据融合后发送给下一跳节点或者基站。

1.2 分簇路由算法的优点

分簇路由算法具有以下优点:

(1)能耗低。一方面,簇头融合成员节点数据后再转发,减少了数据冗余量与传输量,相应降低了节点能耗;另一方面,簇内通信引入了休眠机制,簇内成员节点在不发送数据时可以处于休眠状态,一定程度上也降低了能耗。

(2)稳定性高。通过成簇形成的子网络比较稳定,使得网络拓扑结构的变化对网络的影响降低。

(3)扩展性好。分簇能使网络动态适应拓扑结构变化,可扩展性高,比较适合大规模网络。

2.1 LEACH 算法(Low Energy Adaptive Clustering Hierarchy)

LEACH算法是由MIT的Heinzekman等人提出的第一个WSN分簇路由算法,是具有代表性的分簇、数据融合的成簇路由算法,后来大多数基于分簇的路由算法都是借鉴LEACH分簇的思想发展而来。LEACH的基本思想是:通过等概率周期性的轮换选举出簇头,减少节点与基站(BS)直接通信的个数。提出了以“轮”为整个算法的工作周期,每一轮中都会选举出新的簇头,将整个网络的能量负载平均到每一个节点上,从而达到降低网络通信能耗、延长整个网络生命周期的目的。基于LEACH的无线自组网分簇网络路由协议的网络架构如图所示。

LEACH算法选举簇头的基本过程是:网络中每个节点在0到1的随机数间任意选择一个数,如果在当前轮中随机选择的这个数值小于设定的阈值T(n),则在该轮中这个节点被选举为簇头。T(n)的计算公式如下:

式中,p为网络中每个节点被选举为簇头的概率,r为当前轮数,G为1/p轮内没有被选举为簇头的节点集合。当T(n)置为0时,网络中所有节点将重新开始选举簇头。簇头节点选举完成后,簇头节点向全网广播自己成为簇头的消息,广播过程采用了CSMA MAC协议来避免发生冲突。网络中所有的非簇头节点根据接收到的信号强弱度来判断应该加入哪个簇并告知相关的簇头,簇的建立完成。LEACH分簇路由算法具有独特的逻辑层次结构,所以能够更好的支持数据融合、安全机制等其他WSN重要技术。

2.2 LEACH算法的缺点

LEACH算法仍存在以下缺点:簇头能耗难以均衡。在簇头选举过程中,LEACH路由算法并没有考虑到节点剩余能量,由于每个节点成为簇头的概率相同,因此会导致能量过低的节点被选举为簇头,从而加速该节点的死亡,影响整个网络性能。距离基站远的簇头能耗过大。从LEACH路由算法采用的网络能耗模型可以看出,基站与簇头之间的距离存在一个阈值,当这个距离大于阈值时,簇头发送消息的能耗将变成与这个距离的四次方成正比,导致距离基站远的簇头能量消耗过快。

2.3 LEACH算法仿真

2.3.1 簇头分布

2.3.2簇头个数与其他算法比较

 2.3.3 生命周期与其他算法比较

 2.3.4 剩余能量与其他算法比较

 2.3.5 数据包梁与其他算法比较

 2.3.6 节点密度对算法的影响

分簇路由算法 LEACH算法相关推荐

  1. 【WSN通信】基于最佳簇半径的无线传感器网络分簇路由算法附matlab代码

    1 内容介绍 无线传感器网络(WirelessSensorNetwork,WSN)是由若干个分布在被监控范围内的传感器节点构成的网络,这些节点以随机或者确定位置分布的形式布置在被监测范围内,可以收集温 ...

  2. 基于最佳簇半径的无线传感器网络分簇路由算法

    文章目录 一.理论基础 1.能耗模型 2.基于最佳簇半径的分簇路由算法 (1)分簇优化 (2)簇间通信 二.仿真实验 三.参考文献 一.理论基础 1.能耗模型 本文采用一阶无线电模型作为能量消耗模型. ...

  3. 【LEACH协议】基于matlab最佳簇半径的无线传感器网络分簇路由算法【含Matlab源码 2087期】

    ⛄一. 数据融合的LEACH协议简介 1 基于自适应数据融合的LEACH协议 1.1 基本定义和概念 无线传感器网络中的一个簇可以用一个无向加权全连通图G=(V,E)来表示,V是簇中所有传感器节点的集 ...

  4. 【LEACH协议】基于matlab蝴蝶优化算法WSN安全分簇路由设计【含Matlab源码 2567期】

    ⛄一.蝴蝶优化算法(MBO)简介 1 介绍 蝴蝶优化算法(butterfly optimization algorithm, BOA)是Arora 等人于2019年提出的一种元启发式智能算法.该算法受 ...

  5. leach分簇功能实现matlab,一种改进的LEACH分簇层次路由算法的制作方法

    本发明涉及无线传感器网络领域,属于leach路由通信 技术领域: . 背景技术: :物联网技术飞速发展,无线传感器网络(wirelesssensornetworks,wsn)也逐渐成为互联网研究领域的 ...

  6. LEACH分簇算法实现和能量控制算法实现

    一.前言 1.在给定WSN的节点数目(100)前提下,节点随机分布,按照LEACH算法,实现每一轮对WSN的分簇.记录前K轮(k=10)时,网络的分簇情况,即每个节点的角色(簇头或簇成员).标记节点之 ...

  7. 几种无线传感器分簇算法

    现在跟着导师做无线传感器网络方向,由于刚开始接触这一方面,打算记录一下自己的学习过程,看书过程中做了一些笔记,如果哪里有错误或者描述不准确的地方欢迎大家在评论区批评指正,大家一起学习进步~~~ 1.l ...

  8. leach算法改进思路

    Leach算法是一种用于无线传感器网络中的分簇协议,它使用轮流担任簇首的方法来平衡网络中每个节点所承担的负载.尽管Leach算法在传感器网络中表现出良好的性能,但它仍然可以通过以下几种方式进行改进: ...

  9. 基于分代的垃圾回收算法

    以下均为摘要,摘要书籍<深入分析javaweb技术内幕> 1.如何检测垃圾 2.基于分代的垃圾回收算法 hotspot中使用的基于分代的垃圾收集方式 ------------------- ...

  10. python实现连续变量最优分箱详解--CART算法

    今天小编就为大家分享一篇python实现连续变量最优分箱详解–CART算法,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 关于变量分箱主要分为两大类:有监督型和无监督型 对应的分箱方 ...

最新文章

  1. python画仿真图-Python数据分析:绘图可视化之matplotlib入门
  2. 硬件框图分析、核心元器件参数选定和核心元器件参数选择
  3. 如何去使用Python爬虫来爬取B站的弹幕数据?
  4. 微信app公众平台开发
  5. java变量传递给asp,我应该如何将多个参数传递给ASP.Net Web API GET?
  6. excel怎么并排查看两个工作表
  7. 舆情监测平台TOOM
  8. 推荐视频:线性代数的本质
  9. 康托尔点集matlab实数,康托尔(Cantor)是如何证明实数集是不可数的
  10. matlab 求约当阵,矩阵约当标准化的一个新方法
  11. 用OneNote从图片提取文字
  12. HTML如何返回上一页
  13. Windows CMD 访问UCN路径
  14. 修改无法启动的容器中的配置文件(elasticsearch)
  15. POI操作excel基础用法详解
  16. 如何秒下单?python的淘宝秒杀抢购下单源码参考
  17. 新型的火灾报警系统设有多个设备联动的模式,其能够服务于智能化以及化的火灾报警
  18. 在台式电脑上完美安装Mac OS X操作系统的解决方案
  19. 按键助手 多线程 源码
  20. MFC控件使用说明书

热门文章

  1. freeSHHd+puttygen搭建Sftp
  2. 阿里互联网一线大厂 Java 岗面试题库(2022 年版)
  3. 什么是全栈工程师,为什么全栈开发用Python,Python web全栈开发究竟有多高薪?
  4. java和eova的关系_Eova 1.2 正式版,Java Web 快速开发平台
  5. k3c官改刷openwrt_斐讯K3刷OpenWrt(Lede)
  6. iTerm2安装Zmodem工具支持rz和sz命令
  7. w3c 菜鸟mysql_W3C 教程 | 菜鸟教程
  8. http状态码大全整理
  9. 逻辑函数卡诺图法化简(一)
  10. 如何在word中的图片上画圈标注_word文字下怎么画圈标记