基于DBO算法的WSN节点覆盖优化

news2024/11/13 8:43:16

先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年提出的新型智能优化算法,并附MATLAB代码。

覆盖问题是无线传感器(Wireless Sensor Networks, WSN)节点配置首先面临的基本问题,因为传感器节点可能任意分布在配置区域,它反映了WSN某区域被监测和跟踪的状况,涉及到通信质量、网络寿命等问题,直接影响整个网络的服务质量。受传感器自身体积大小的限制,传感器的电池非常有限。在满足一定的覆盖条件下,合理地利用节点的能量,延长网络的生命周期是非常有必要的。因此,如何利用有限数量的传感器节点实现最大程度的网络覆盖成为传感器节点部署的一个关键问题。

01
基础理论

1.1 相关理论

无线传感器网络是由部署在监测区域内的传感器节点通过自组织和多跳的方式构成的无线网络,可以对监测对象的信息进行实时感知、采集和处理。图1是一个典型的WSN系统结构。传感器节点在WSN中充当数据采集者、数据中转站或簇头节点的角色。监测区域内的节点负责采集自身覆盖范围内的数据,经过簇头节点的数据融合后发送给汇聚节点,最后经过互联网交给用户。因此,覆盖问题是WSN网络配置面临的最基本问题,它直接影响网络的服务质量。

图片

图1 无线传感器网络模型

1.2 WSN覆盖分类

根据WSN应用场景的不同,覆盖的需求也不一样。如图2所示,根据监测对象的不同,WSN的覆盖可以分为点覆盖、区域覆盖和栅栏覆盖三种类型。根据传感器节点部署方式的不同,可以分为静态部署和动态部署。

1. 按监测对象分类

(1)点覆盖。这种类型的覆盖又称为目标覆盖。它的目的是在附近传感器节点的帮助下监测物联网中的任何特定目标,如图2(a)中的蓝色三角形即为目标监测点。显而易见,这种类型的覆盖消耗的能量较少,因为被监测的是一些特定的目标,而不是整个物联网区域。

(2)区域覆盖。区域覆盖又称为面覆盖,它的目的是通过网络内的传感器节点集合来监视整个物联网。如图2(b)所示,监测区域被传感器节点全部覆盖,这种情况称为全覆盖,这是区域覆盖的一个特例。区域覆盖又可以进一步分为单覆,盖和多覆盖。在单覆盖中,物联网区域内的每个目标点都必须至少被一个传感器节点所覆盖。多覆盖中物联网区域内的每个目标点至少要被k个节点覆盖,因此通常称为k覆盖。

(3)栅栏覆盖。栅栏覆盖也称为屏障覆盖,这种类型的覆盖的主要目的是监测在屏障旁边发生的任何突破或入侵行为。如图2(c)所示,传感器节点的设置是为了检测物联网区域中的任何入侵行为,当物体穿越传感器所构筑的屏障时,这种入侵行为将被传感所捕获。屏障覆盖可以进一步划分为两种类型,即弱屏障覆盖和强屏障覆盖。在弱屏障覆盖中,存在少数覆盖孔或未覆盖区域,这可能导致目标未被发现。而强屏障覆盖保证了目标会被传感器节点更准确地扫描到,图2(c)所示覆盖类型即为强屏障覆盖。

图片

图2 WSN覆盖类型

2. 按部署方式分类

(1)静态部署

(2)动态部署

(这里不详细展开,具体内容自己去查阅文献,参考文献:肖航.基于改进海洋捕食者算法的三维无线传感器网络覆盖优化研究[D].江西理工大学,2023.)

02
2D环境WSN覆盖模型

当一个移动用户进入WSN网络中,其移动范围受网络覆盖范围的影响,因此,在部署WSN网络节点时,需首先通过网络覆盖模型对网络覆盖率进行分析。一般地,可以通过0/1感知模型和概率感知模型对网络覆盖率进行定义并量化。

0/1感知模型也叫布尔模型。因为大多数文献使用的都是布尔模型来计算覆盖率,因此这里也只介绍基于布尔模型的覆盖率计算方法。

图片

(图片截自参考文献:胡小平,曹敬.改进灰狼优化算法在WSN节点部署中的应用[J].传感技术学报,2018,31(05):753-758)

这里举个例子,如图3所示。就是说把目标区域分成m*n个点(小格子),然后监测每个小格子能否被检测到。所以,也就不难理解为什么也叫0/1感知模型了。对一个点(小格子),能够被检测即为1,不能被覆盖到,就为0。那么,覆盖率就是能够被覆盖的小格子的数量除以小格子的总数,即:所有1的和÷m*n。至于m和n分别取多大,可以自己定义。分得越细,覆盖率就越精确,但计算量也越大。

图片

图3
 

有朋友可能会有疑问,为什么不直接计算面积?就是说计算覆盖到的面积,再除以矩形的面积。理论上当然是可以的,并且这才是真正的覆盖率。但是,不同的传感器的覆盖区域可能会有重叠。就是说圆与圆之间会有交叉。举个例子,如图4所示。这个问题大家可以去了解一下:两个圆的重叠面积,是可以计算的。但多个圆的重叠面积,数学界的世纪难题!

因此,我们才会采用上面的方法做近似计算~

图片

图4

03
编码方式

如果利用蜣螂优化(DBO)算法求解这个问题,目标函数是不难计算的。统计被覆盖的点(小栅格)的数量,然后除以点(小栅格)的总数即可。最主要是如何去编码,即DBO的个体的表达方式。

因为我们讨论的是2D环境,因此可以使用矩阵编码,即每个个体表示成一个2行K列的矩阵,K为传感器网络的节点个数。那么矩阵第一行对应每个传感器的横坐标,矩阵第二行对应每个传感器的纵坐标,由此便确定了每个传感器节点的圆心位置。

当然,也可以不用这么复杂,直接把横坐标和纵坐标拉通,放在一起组成一个2*K维数组。

以上两种方式都可以,但不同的编码方式,也会使算法的处理不同。

04
实验仿真

使用DBO算法来优化WSN的节点覆盖率。种群规模NP设置为30,最大迭代次数T等于1000。

首先测试节点数较少的情况:m*n=100×100、覆盖节点数K=20、通信半径R=10。覆盖情况如图5所示:

图片

图5 DBO优化2D覆盖(K=20,R=10)

可以看到,DBO算法基本可以将这些节点完全铺开。这也是检测算法性能的一种方式。对于节点少的情况,如果一个算法的优化结果存在圆与圆之间有重叠,那么性能并不理想。很明显,所有圆铺开,没有重叠时,覆盖率才最大。因此,并不是优化节点数多的情况才能检验算法性能。

其次,测试节点数较多的情况:m*n=100×100、覆盖节点数K=40、通信半径R=10。覆盖情况如图6所示:

图片

图6 DBO优化2D覆盖(K=40,R=10)

这里不再对图6进一步分析。只能说DBO这个算法确实可以,在没改进的情况下,这个效果已经胜过许多改进算法了~
 

05
推广到3D环境

基于布尔模型的3D环境下的WSD节点覆盖优化,其实就是2D环境的推广。如图7所示,点P为目标监测点,点S为传感器节点,Rs为传感器的感知半径。所以距离计算公式改为三维空间中的距离计算公式即可,即计算(xi,yi,zi)与(x,y,z)之间的距离。类似地,2D环境是划分成m*n个点(小栅格),3D环境则划分成m*n*h个点(小栅格)即可。(懒得敲公式了~)

图片

图7 3D布尔感知模型

同样,利用DBO算法来进行优化。

首先测试节点数较少的情况:m*n*h=80×80*80、覆盖节点数K=15、通信半径R=10。覆盖情况如图8所示:

图片

图8 DBO优化3D覆盖(K=15,R=10)

3D环境下,DBO算法仍然可以把所有节点铺开,即球与球之间没有重叠,视觉角度而已,在MATLAB手动旋转一下就能观察清楚了。

其次,测试节点数较多的情况:m*n*h=80×80*80、覆盖节点数K=40、通信半径R=10。覆盖情况如图9所示:

图片

图8 DBO优化3D覆盖(K=40,R=10)

06
MATLAB代码

这里介绍的WSN覆盖优化只是一个算法应用。实际中,需要考虑很多因素,例如障碍物、WSN能耗等。但现在很多改进算法的文章,算法应用做的都是工程优化,例如压力容器设计、拉伸/压缩弹簧设计、焊接梁设计等。太多、太泛。可以换一换应用,先改进算法,再数值实验,然后做个2D的WSN覆盖优化,然后再推广到3D。这是我的个人看法~

2D环境下的WSN覆盖优化MATLAB代码

基于差分进化(DE)的WSN覆盖优化(2D)关注公众号,里面有链接
基于粒子群(PSO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于灰狼优化(GWO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于正余弦算法(SCA)的WSN覆盖优化(2D)关注公众号,里面有链接
基于鲸鱼优化算法(WOA)的WSN覆盖优化(2D)关注公众号,里面有链接
基于哈里斯鹰优化(HHO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于麻雀搜索算法(SSA)的WSN覆盖优化(2D)关注公众号,里面有链接
基于非洲秃鹫优化算法(AVOA)的WSN覆盖优化(2D)关注公众号,里面有链接
基于白鲸优化(BWO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于蜣螂优化(DBO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于沙猫群优化(SCSO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于蛇优化(SO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于指数分布优化器(EDO)的WSN覆盖优化(2D)关注公众号,里面有链接
基于星鸦优化算法(NOA)的WSN覆盖优化(2D)关注公众号,里面有链接

3D环境下的WSN覆盖优化MATLAB代码

基于差分进化(DE)的WSN覆盖优化(3D)关注公众号,里面有链接
基于粒子群(PSO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于灰狼优化(GWO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于正余弦算法(SCA)的WSN覆盖优化(3D)关注公众号,里面有链接
基于鲸鱼优化算法(WOA)的WSN覆盖优化(3D)关注公众号,里面有链接
基于哈里斯鹰优化(HHO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于麻雀搜索算法(SSA)的WSN覆盖优化(3D)关注公众号,里面有链接
基于非洲秃鹫优化算法(AVOA)的WSN覆盖优化(3D)关注公众号,里面有链接
基于白鲸优化(BWO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于蜣螂优化(DBO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于沙猫群优化(SCSO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于蛇优化(SO)的WSN覆盖优化(3D)关注公众号,里面有链接
基于星鸦优化算法(NOA)的WSN覆盖优化(3D)关注公众号,里面有链接

可通过下方链接下载代码清单,在里面寻找需要的算法代码,然后去对应的链接获取。清单会同步更新,一旦有新的代码,就可以在清单里找到。清单里面有部分代码是开源获取的。可随时免费下载。

链接:https://pan.baidu.com/s/1SFDMplrL7tiqGZlrpOSGYg

提取码:8023

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1203057.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++编程爬虫代码全过程分享

以下是使用C编写一个爬虫程序的基本步骤和代码示例&#xff1a; 1、首先&#xff0c;我们需要包含必要的库文件。在这个例子中&#xff0c;我们将使用<iostream>、<string>和<curlpp/cURLpp.hpp>库。 #include <iostream> #include <string> #i…

shell 语法介绍

大家好&#xff0c;我是蓝胖子&#xff0c;在日常开发中或多或少都会接触到shell脚本&#xff0c;可以说会shell脚本是一位后端开发的基本功&#xff0c;今天我将会花上一篇文章总结下常见的shell的语法&#xff0c;学完本篇&#xff0c;相信简单的shell脚本就能够看懂了&#…

世微 降压恒流 12V 5A 一切一双灯 LED汽车大灯驱动方案 AP5191

AP5191是一款PWM工作模式,高效率、外围简 单、内置功率MOS管&#xff0c;适用于4.5-150V输入的高 精度降压LED恒流驱动芯片。输出功率150W&#xff0c; 电流6A。 AP5191可实现线性调光和PWM调光&#xff0c;线性调 光脚有效电压范围0.55-2.6V. AP5191 工作频率可以通过RT 外部…

想要检测TikTok网络是否安全?这五个网站请收好

Tiktok目前在海外大火&#xff0c;越来越多的人想要进入TikTok的海外市场并捞一桶金。然而&#xff0c;成功并非易事。想要在TikTok中立足&#xff0c;我们必须保证我们的设备、网络环境和网络节点完全符合官方的要求&#xff0c;并且没有任何异常或风险。那么我们该如何设置、…

MAC地址注册的原理和应用

MAC地址注册是指在网络设备中&#xff0c;将设备的物理地址&#xff08;即MAC地址&#xff09;与设备的IP地址进行关联和注册的过程。MAC地址是以太网卡硬件上的独特标识符&#xff0c;用于在局域网中标识网络设备。 MAC地址注册在网络管理中起到重要作用&#xff0c;它可以帮助…

Python 框架学习 Django篇 (十) Redis 缓存

开发服务器系统的时候&#xff0c;程序的性能是至关重要的。经过我们前面框架的学习&#xff0c;得知一个请求的处理基本分为接受http请求、数据库处理、返回json数据&#xff0c;而这3个部分中就属链接数据库请求的响应速度最慢&#xff0c;因为数据库操作涉及到数据库服务处理…

2011年12月21日 Go生态洞察:了解Go社区

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

无人地磅称重系统|自助过磅 料仓联动 自助卸料

上海思伟无人地磅系统 自助过磅、 自助卸料 、料仓联动 智能、省人、安全 无人监管过磅 对地磅及其相关的所有硬件进行配置和管理&#xff1b; 支持红外、道闸、车牌识别、AI分析、拍照存档、LED语音播报一体机等设备&#xff1b; 实现稳定可靠的无人监管称重功能&#xf…

软件测试之蚂蚁金服面试题,含答案

对于想要去面试的小伙伴们看过来&#xff0c;小编为大家总结了蚂蚁的面试题&#xff0c;其实很多面试题很多公司都差不多。主要看自己如何灵活回答&#xff0c;大家可以灵活回应。希望对大家有所帮助。 一&#xff1a;基础部分&#xff1a; Q1. 什么是软件测试&#xff1f; 答…

rhcsa-权限

文件目录 r 读取权限 可以列出目录下的文件 w 修改权限 可以进行创建和删除等操作 x 执行权限 能进入到该目录/切换到该目录 - 没有权限 没有权限 chmod change mod 作用&#xff1a;修改文件或目录的权限 语法&…

远程办公方案

员工通过传统的VPN登录或端口映射方式从互联网访问内网应用存在诸多的安全及体验不佳等问题&#xff0c; 通过身份云基于零信任网络架构的应用网关&#xff0c;可以完全替换传统的vpn方案&#xff0c;让您的员工随时随地安全、便捷、高效访问内网应用。 企业面临的挑战 企业出…

圆形承重钢管用在线直线度测量仪实时检测品质!

关于直线度尺寸的检测&#xff0c;相信你听说过很多诸如直线法、直尺法、激光准直法等的离线检测方式&#xff0c;那你听说过在线直线度测量仪吗&#xff1f;它是可安装在产线上进行实时在线检测的设备。本文就跟随小编一起来简单的了解一下。 在线直线度测量仪的测量方法 直…

SDL2 加载图片

1.简介 在SDL中&#xff0c;本身只支持加载BMP格式的图片SDL_LoadBMP&#xff0c;如果想要加载别的格式图片&#xff0c;需要编译SDL_image库。 SDL_image库中IMG_Load和都是IMG_LoadTexture用于加载图片的函数&#xff0c;但是它们的使用方式和返回值有所不同。 IMG_Load和…

ChIP在植物领域中的应用

01 什么是ChIP&#xff1f; 染色质免疫共沉淀技术&#xff08;Chromatin Immunoprecipitation assay&#xff0c;ChIP&#xff09;是研究体内DNA与蛋白质相互作用的方法。其基本原理是在细胞生理状态下固定蛋白质-DNA复合物&#xff0c;将其随机打断为一定长度范围内的染色质小…

腾讯云优惠券如何领取?腾讯云服务器怎么买便宜?

腾讯云深知用户对价格的重视&#xff0c;因此在每年的618、双11、双12等大型促销活动中推出了大量优惠活动。这些优惠活动包括打折、满减、买赠等形式&#xff0c;让用户在购买腾讯云主机服务器时能够享受到更多的实惠。特别是在这些促销活动期间&#xff0c;用户可以通过领取优…

虚拟人高清视频渲染宝藏工具:RenderHare飞兔渲染软件

在数字时代&#xff0c;品牌为了抢占年轻人群体&#xff0c;纷纷涌入虚拟人IP赛道&#xff0c;通过虚拟人IP运营模式&#xff0c;构建独特的虚拟人IP记忆符号&#xff0c;向粉丝输出品牌潮流、年轻化的价值观&#xff0c;扩散虚拟IP影响力&#xff0c;让品牌真正与消费者玩在一…

WampServer下载安装并结合内网穿透实现本地服务的公网访问

文章目录 前言1.WampServer下载安装2.WampServer启动3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的 人工智能学习网站&#xff0c;…

智慧城市井盖选择,智能井盖传感器特点介绍

在不断发展的智慧城市技术领域&#xff0c;创新的过程一直是永无止境的。 顺应科学技术的发展潮流&#xff0c;一项惠民的举措正在悄然改变人们的生活。智能井盖传感器看似是不起眼的设备&#xff0c;但是它们就在我们脚下&#xff0c;正在悄无声息的完善城市基础设施和城市生命…

游戏本地化翻译,如何确保翻译质量?

游戏本地化翻译是一项颇为复杂的任务&#xff0c;涉及的细节和要求颇多&#xff0c;尤其是需要符合行业特定的规范&#xff0c;才能提升游戏翻译的专业水准。那么&#xff0c;如何确保游戏本地化翻译的品质呢&#xff1f; 业内人士普遍认为&#xff0c;要达到专业水准&#xff…

Structure-Inferred Bi-level Model for Underwater Image Enhancement论文小结

背景 随着水下机器人的发展&#xff0c;水下图像增强引起了计算机视觉界越来越多的关注。然而&#xff0c;由于光线在水中传播时会被散射和吸收&#xff0c;水下捕捉到的图像往往存在偏色和能见度低的问题。现有的方法依赖于特定的先验知识和训练数据&#xff0c;在缺乏结构信…