智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码
智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码
文章目录
- 智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码
- 1.无线传感网络节点模型
- 2.覆盖数学模型及分析
- 3.人工蜂鸟算法
- 4.实验参数设定
- 5.算法结果
- 6.参考文献
- 7.MATLAB代码
摘要:本文主要介绍如何用人工蜂鸟算法进行无线传感器网(WSN)覆盖优化。
1.无线传感网络节点模型
本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n Rn的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n Rn称为传感器节点的感知半径,感知半径与节点内置传感器件的物理特性有关,假设节点 n n n的位置坐标为 ( x n , y n ) (x_n,y_n) (xn,yn)在0-1感知模型中,对于平面上任意一点 p ( x p , y p ) p(x_p,y_p) p(xp,yp),则节点 n n n监测到区域内点 p p p的事件发生概率为:
P r ( n , p ) = { 1 , d ( n , p ) ≤ R n 0 , e s l e (1) P_r(n,p)=\begin{cases}1, \,d(n,p)\leq R_n\\ 0,\, esle \end{cases}\tag{1} Pr(n,p)={1,d(n,p)≤Rn0,esle(1)
其中 d ( n , p ) = ( x n − x p ) 2 + ( y n − y p ) 2 d(n,p)=\sqrt{(x_n-x_p)^2+(y_n-y_p)^2} d(n,p)=(xn−xp)2+(yn−yp)2为点和之间的欧式距离。
2.覆盖数学模型及分析
现假定目标监测区域为二维平面,在区域 A r e a Area Area上投放同型结构传感器节点的数目为N,每个节点的位置坐标值假设已被初始化赋值,且节点的感知半径r。传感器节点集则表示为:
N o d e { x 1 , . . . , x N } (2) Node\{x_1,...,x_N\} \tag{2} Node{x1,...,xN}(2)
其中 n o d e i = { x i , y i , r } node_i=\{x_i,y_i,r\} nodei={xi,yi,r},表示以节点 ( x i , y i ) (x_i,y_i) (xi,yi)为圆心,r为监测半径的圆,假定监测区域 A r e a Area Area被数字化离散为 m ∗ n m*n m∗n个像素点,像素点的坐标为 ( x , y ) (x,y) (x,y),目标像素点与传感器节点间的距离为:
d ( n o d e i , p ) = ( x i − x ) 2 + ( y i − y ) 2 (3) d(node_i,p)=\sqrt{(x_i-x)^2+(y_i-y)^2}\tag{3} d(nodei,p)=(xi−x)2+(yi−y)2(3)
目标区域内像素点被传感器节点所覆盖的事件定义为 c i c_i ci。则该事件发生的概率 P c i P{c_i} Pci即为像素点 ( x , y ) (x,y) (x,y)被传感器节点 n o d e i node_i nodei所覆盖的概率:
P c o v ( x , y , n o d e i ) = { 1 , i f d ( n o d e i , p ) ≤ r 0 , e s l e (4) P_{cov}(x,y,node_i)=\begin{cases}1, if\,d(node_i,p)\leq r\\ 0,\, esle \end{cases}\tag{4} Pcov(x,y,nodei)={1,ifd(nodei,p)≤r0,esle(4)
我们将所有的传感器节点在目标监测环境中的区域覆盖率 C o v e r R a t i o CoverRatio CoverRatio定义为传感器节点集的覆盖面积与监测区域的面积之比,如公式所示:
C o v e r R a t i o = ∑ P c o v m ∗ n (5) CoverRatio = \frac{\sum P_{cov}}{m*n}\tag{5} CoverRatio=m∗n∑Pcov(5)
那我们的最终目标就是找到一组节点使得覆盖率最大。
3.人工蜂鸟算法
人工蜂鸟算法原理请参考:https://blog.csdn.net/u011835903/article/details/128386612
该算法是寻找最小值。于是适应度函数定义为未覆盖率最小,即覆盖率最大。如下:
f u n = a r g m i n ( 1 − C o v e r R a t i o ) = a r g m i n ( 1 − ∑ P c o v m ∗ n ) (6) fun = argmin(1 - CoverRatio) = argmin(1-\frac{\sum P_{cov}}{m*n}) \tag{6} fun=argmin(1−CoverRatio)=argmin(1−m∗n∑Pcov)(6)
4.实验参数设定
无线传感器覆盖参数设定如下:
%% 设定WNS覆盖参数,
%% 默认输入参数都是整数,如果想定义小数,请自行乘以系数变为整数再做转换。
%% 比如范围1*1,R=0.03可以转换为100*100,R=3;
%区域范围为AreaX*AreaY
AreaX = 100;
AreaY = 100;
N = 20 ;%覆盖节点数
R = 15;%通信半径
人工蜂鸟算法参数如下:
%% 设定优化参数
pop=30; % 种群数量
Max_iteration=80; %设定最大迭代次数
lb = ones(1,2*N);
ub = [AreaX.*ones(1,N),AreaY.*ones(1,N)];
dim = 2*N;%维度为2N,N个坐标点
5.算法结果


从结果来看,覆盖率在优化过程中不断上升,表明人工蜂鸟算法对覆盖优化起到了优化的作用。
6.参考文献
[1] 史朝亚. 基于PSO算法无线传感器网络覆盖优化的研究[D]. 南京理工大学.
7.MATLAB代码
相关文章:
智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码
智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于人工蜂鸟算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.人工蜂鸟算法4.实验参数设定5.算法结果6.参考…...
视频中自监督学习:「我的世界」下指令理解与跟随
本文介绍了北京大学人工智能研究院梁一韬助理教授所带领的 CraftJarvis 团队在「我的世界」环境下探索通用智能体设计的新进展,题为“GROOT: Learning to Follow Instructions by Watching Gameplay Videos”。 GROOT 该研究的核心目标是探索能否摆脱文本数据的标…...
Spring基于xml半注解开发
目录 Component的使用 依赖注解的使用 非自定义Bean的注解开发 Component的使用 基本Bean注解,主要是使用注解的方式替代原有的xml的<bean>标签及其标签属性的配置,使用Component注解替代<bean>标签中的id以及class属性,而对…...
功能测试,接口测试,自动化测试,压力测试,性能测试,渗透测试,安全测试,具体是干嘛的?
软件测试是一个广义的概念,他包括了多领域的测试内容,比如,很多新手可能都听说:功能测试,接口测试,自动化测试,压力测试,性能测试,渗透测试,安全测试等&#…...
oracle 下载java之前版本
登录oracle官网:Oracle | Cloud Applications and Cloud Platform 点击resource 进入该页面 点击这个 出现之前版本...
LLM之Agent(四)| AgentGPT:一个在浏览器运行的Agent
AgentGPT是一个自主人工智能Agent平台,用户只需要为Agent指定一个名称和目标,就可以在浏览器中链接大型语言模型(如GPT-4)来创建和部署Agent平台。 PS:目前agentGPT仅支持chatgpt模型,暂时不支持本地llm模…...
AGM离线下载器使用说明
AGM专用离线下载器示意图: 供电方式: 通过 USB 接口给下载器供电,跳线 JP 断开。如果客户 PCB 的 JTAG 口不能提供 3.3V 电源,或仅需烧写下载器,尚未连接用户 PCB 时,采用此种方式供电。 或者:…...
viple与物理机器人(一):线控模拟
为了检测viple程序与物理机器人是否能顺利连接上 如果能顺利连接上,那么,可以通过内建事件从而控制物理机器人的前进、后退、左转、右转以及暂停。 如果不能连接上,首先,程序无法控制物理机器人,其次,当vip…...
Appium 并行测试多个设备
一、前置说明 在自动化测试中,经常需要验证多台设备的兼容性,Appium可以用同一套测试运例并行测试多个设备,以达到验证兼容性的目的。 解决思路: 查找已连接的所有设备;为每台设备启动相应的Appium Server;…...
高防IP是什么? 防护CC 对抗DDOS
什么是DDoS高防IP? DDoS(分布式拒绝服务)攻击是指攻击者通过利用大量恶意流量向目标服务器发送请求,导致目标服务器无法正常处理合法用户的请求。DDoS高防IP是一种通过技术手段来应对DDoS攻击的解决方案。它能够过滤掉恶意流量&a…...
使用消息队列遇到的问题—kafka
目录 1 分区2 消费者3 Kafka 如何保证消息的消费顺序?3.1 方案一3.2 方案二 4 消息积压 在项目中使用kafka作为消息队列,核心工作是创建生产者—包装数据;创建消费者----包装数据。 欠缺一些思考,特此梳理项目中使用kafka遇到的一…...
Linux系统---基于Pipe实现一个简单Client-Server system
顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 《LeedCode刷题》 键盘敲烂,年薪百万! 一、题目要求 Server是一个服务器进程,只能进行整数平方运算。Client要计算一个整数的平方的平方的平方,即…...
CentOS7安装最新版本git
CentOS7上的git是1.8.3.1,比较老,使用体验不好。下载源码来升级一下。 sudo yum -y install dh-autoreconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel sudo yum -y iinstall asciidoc xmlto docbook2X sudo yum -y in…...
Java项目-瑞吉外卖Day3
填充公共字段: 目的:由于某些属性,例如createdTime这些需要填充的字段会在多个地方出现,所以考虑使用公共字段自动填充的办法减少重复代码。 在对应属性上加入TableField注解。通过fill字段表明策略,是插入/更新的时候…...
Java集合框架之争:ArrayList vs LinkedList
友情提示:LinkedList其实就是数据结构中的双向链表,没学过的话可以学一下有关链表的知识,至于LinkedList中的源码其实大多数据结构的基本链表操作实现的,这里我就不多做说明了,有兴趣的话可自行看源码 由于ArrayList由…...
一个用于处理嵌入式系统中的 NAND Flash 存储器的工具 `kobs-ng`
一个用于处理嵌入式系统中的 NAND Flash 存储器的工具 kobs-ng kobs-ng 是一个用于处理嵌入式系统中的 NAND Flash 存储器的工具。它是 U-Boot(开源引导加载程序)中的一个子项目,用于擦除、写入和读取 NAND Flash 设备上的数据。 以下是 kob…...
【小白专用】MySQL查询数据库所有表名及表结构其注释
一、先了解下INFORMATION_SCHEMA 1、在MySQL中,把INFORMATION_SCHEMA看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权 限等。在INF…...
数据库中常用的锁
目录 1、数据库中常用的锁类型 2、常见的数据库 3、以MySQL为例 3.1 MySQL的事务 3.2 MySQL事务的四大特性 1. 原子性(Atomicity) 2. 一致性(Consistency) 3. 隔离性(Isolation) ⭐mysql中的事务隔…...
关于对向量检索研究的一些学习资料整理
官方学习资料 主要是的学习资料是, 官方文档 和官方博客。相关文章还是挺多 挺不错的 他们更新也比较及时。有最新的东西 都会更新出来。es scdn官方博客 这里简单列一些,还有一些其他的,大家自己感兴趣去看。 什么是向量数据库 Elasticse…...
软件开发流程分析
软件开发流程分析 相关概念1 原型设计2 产品设计3 交互设计4 代码实现详细步骤 相关概念 前端:自研API,调用第三放API 后端:自研API,第三方API 数据库:Mysql,数据采集,数据迁移 服务器…...
Qwen3.5-2B轻量化部署案例:中小企业私有化AI助手落地全流程
Qwen3.5-2B轻量化部署案例:中小企业私有化AI助手落地全流程 1. 为什么选择Qwen3.5-2B 对于中小企业而言,部署AI助手常常面临两大难题:一是硬件成本高,二是技术门槛高。Qwen3.5-2B作为一款轻量化多模态基础模型,完美解…...
Phi-4-mini-reasoning应用场景:科研助理——论文公式推导验证与符号计算辅助
Phi-4-mini-reasoning应用场景:科研助理——论文公式推导验证与符号计算辅助 1. 模型概述 Phi-4-mini-reasoning是一款由微软开发的轻量级开源模型,专注于数学推理和逻辑推导任务。这个3.8B参数的模型虽然体积小巧,但在强逻辑任务上表现出色…...
如何快速定制lightgallery.js画廊样式:SCSS变量终极指南
如何快速定制lightgallery.js画廊样式:SCSS变量终极指南 【免费下载链接】lightgallery.js Full featured JavaScript image & video gallery. No dependencies 项目地址: https://gitcode.com/gh_mirrors/li/lightgallery.js lightgallery.js 是一个功能…...
效率倍增器:OpenClaw+千问3.5-27B自动化邮件处理
效率倍增器:OpenClaw千问3.5-27B自动化邮件处理 1. 为什么需要自动化邮件处理 每天早晨打开邮箱,看到堆积如山的未读邮件时,那种窒息感我至今难忘。作为技术团队的接口人,我的邮箱常年保持着2000未读邮件的状态——重要需求埋没…...
SEO 实战培训班在哪里_SEO 优化师培训在哪里
SEO 实战培训班在哪里_SEO 优化师培训在哪里 在当今数字化时代,网站的流量和排名直接关系到企业的生存和发展。这就是为什么越来来越多的企业和个人希望掌握SEO优化技能,成为一名优秀的SEO优化师。SEO 实战培训班在哪里呢?SEO 优化师培训在哪…...
OpenClaw压力测试:千问3.5-9B持续运行24小时稳定性
OpenClaw压力测试:千问3.5-9B持续运行24小时稳定性 1. 为什么需要压力测试? 上周我在本地部署了OpenClaw千问3.5-9B组合,想用它自动处理一些日常文档整理工作。最初几小时运行很顺畅,但第二天早上发现系统卡死了——这让我意识到…...
第三届“数信杯”数据安全大赛wp之数据恢复
第三届“数信杯”数据安全大赛wp之数据恢复 缘起 先说实话,这道题比赛时没做出来😴 RSA题目一直是我的软肋,一般我都是放到最后去碰运气,这道题也是我第一次遇到,想借这次机会好好学习一下。 这里有2个基本概念&am…...
OpenClaw+Phi-3-mini-128k-instruct低成本方案:自建文本生成流水线
OpenClawPhi-3-mini-128k-instruct低成本方案:自建文本生成流水线 1. 为什么选择本地部署Phi-3-mini-128k-instruct 去年我开始尝试用AI辅助写作时,发现商用API存在两个痛点:一是长文本生成成本高得惊人,二是某些敏感内容会被平…...
全球不到3%的C++开发者掌握的量子模拟技巧:利用constexpr量子门编译期展开,启动速度提升41倍
第一章:量子计算 C 量子比特模拟示例在经典C环境中模拟量子比特行为,是理解量子门操作与叠加态演化的有效教学手段。本节基于线性代数原理,使用标准C17及以上特性(无需外部量子SDK),通过复数向量与酉矩阵实…...
基于Matlab的多自由度轴承静刚度计算之旅
基于Matlab的多自由度轴承静刚度计算 因分析静态下刚度结果,仅考虑重力作用,未考虑离心力的作用 深沟球轴承和圆锥轴承基本参数包括滚珠数量、滚珠直径、中称直径、曲率和材料参数 程序已调通,可直接运行在机械工程领域,深入了解轴…...
