首页 > 行业资讯 > 【优化选址】基于粒子群算法求解无线传感器WSN部署优化问题含Matlab源码

【优化选址】基于粒子群算法求解无线传感器WSN部署优化问题含Matlab源码

时间:2022-02-23 来源: 浏览:

【优化选址】基于粒子群算法求解无线传感器WSN部署优化问题含Matlab源码

天天Matlab 天天Matlab
天天Matlab

TT_Matlab

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。

收录于话题

1 简介

无线传感器网络是将大量的传感器感知节点散布在监测区域中,通过节点之间的无线信息传输形成的自组网。由于无线传感器网络工作环境复杂,传感器节点更换电源不便,网络的覆盖控制问题成为研究核心,它决定了无线传感器网络对监测区域的覆盖率和网络的整体寿命,直接反映出了无线传感器网络的监测质量。采用合理的覆盖策略,可以对节点进行优化部署,以达到对无线传感器网络的有效利用。本文主要研究无线传感器网络感知节点的部署覆盖问题,以标准粒子群算法为切入点,建立起无线传感器网络覆盖模型,提出通过动态调节传感器节点位置来达到提高网络覆盖率,降低能耗,保证覆盖质量的目的。

2 部分代码

function fugailv=fitness(x)%覆盖率待优化; % (xx1,yy1)分别为网格点的横纵坐标; % x为传感器节点的坐标, r为传感器节点的感知半径; % k1为求被覆盖的格点,summ为被覆盖的格点数; [P,N,N1] = size(x);%x是三维数组,N=40 XMAX = 1000;%区域总长度 XMIN = 0;%区域总长度 YMAX = 1000;%区域总宽度 YMIN = 0;%区域总宽度 deta = 2; r = 120; re = 2; x1 = XMIN:deta:XMAX; y1 = YMIN:deta:YMAX; [xx,yy] = meshgrid(x1,y1); [n,m] = size(xx); K = m*n; %总的网格点数目 a = zeros(m,n);%a是m*n阶零矩阵 b = zeros(m,n);%b是m*n阶零矩阵 for i=1:N M = find(x1==2*round(x(1,i,1)/2)); p1 = M-60; p2 = M+60; if p1<1 p1 = 1; end if p2>501 p2 = 501; end N = find(y1==2*round(x(1,i,2)/2)); q1 = N-60; q2 = N+60; if q1<1 q1 = 1; end if q2>501 q2 = 501; end for u=p1:p2 for v=q1:q2 if a(u,v)<1 D = sqrt((x1(u)-x(1,i,1))^2+(y1(v)-x(1,i,2))^2); %网格点与传感器节点间的距离 if (D<=r-re) %在圆盘内可靠范围里的网格点,探测概率为1 a(u,v) = 1; end if(r-re<D< = r+re) %在圆盘内可靠范围外,外可靠范围里的网格点,探测概率为0.85 a(u,v) = 0.75; end if(D>r+re) %外可靠范围外的网格点,探测概率为0 a(u,v) = 0; end if a(u,v)<=b(u,v) a(u,v) = 1-(1-a(u,v))*(1-b(u,v)); end end end end b = a; end summ = sum(sum(a)); fugailv = summ/K;

3 仿真结果

4 参考文献

[1]史朝亚. 基于PSO算法无线传感器网络覆盖优化的研究[D]. 南京理工大学.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐