⛄一、人工蜂群算法求解无线网络传感覆盖优化问题简介

1 WSN覆盖模型
1.1 问题描述

在WSN中, 要实现较高的无线网络传感器节点覆盖率从而减少监测盲点的出现, 就必须加大无线网络传感器节点的分布密度。但是一旦无线网络传感器节点的分布密度太大, 势必产生冗余节点, 甚至导致数据传输发送冲突, 使节点能量过多消耗, 最终使得WSN的生存周期过短。就单个传感器节点来说, 如果该节点的监测区域可以被其他传感器节点覆盖, 那么这个节点就被视为冗余节点, 当其他传感器节点工作时, 该节点可以处于休眠状态。通过相应的算法判断出冗余节点, 在保证网络覆盖率的条件下, 使WSN中的工作节点最少, 降低整体网络的能量消耗。因此, 在WSN的初始化阶段, 工作节点的数目和节点能量的消耗需要结合考虑, 这就出现了工作节点数目和网络覆盖率之间的矛盾。

1.2 覆盖模型
网络覆盖率f1和节点休眠率函数f2分别定义为

式中, |S|为部署传感器节点总数, |Si|为工作传感器节点数。

考虑到网络的能耗均衡, 引入区域能量Ek和能量均衡系数Ea两个定义具体为

式中, Eki表示第k个网格中节点i的剩余能量, mk表示第k个网格中的节点个数。

Ea反应网络能耗均衡度, 其值越大表示能耗越不均匀, 反之能耗越均匀[8]。

由于无线传感器网络覆盖优化与网络能耗密切相关, 为此增加一个能量均衡系数子函数, 即令f3=Ea。因此, WSN覆盖优化为综合工作节点数、覆盖率和能量均衡, 使网络覆盖率在满足实际应用需求的基础上, 尽可能多的冗余节点进入休眠状态, 从而节省能量消耗。因此, WSN覆盖优化目标数学模型为

式中, w1、w2和w3为权值w1+w2+w3=1。为了找到最优WSN覆盖方案, 采用人工鱼群算法进行求解。

2 无线传感器网络覆盖优化算法
2.1 混沌人工蜂群算法

人工蜂群算法 (Artificial Bee Colony Algorithm, ABC) 属于一种元启发式智能算法, 是一种非数值计算的组合优化算法。人工蜂群算法虽然算法简单, 但易陷入局部极值点, 优化的后期收敛速率慢。由于混沌运动具有遍历性、对初始条件的敏感性、随机性等特点, 为了提高蜂群搜索的遍历性和种群的多样性, 本文将混沌思想加入人工蜂群算法中, 从而提高人工蜂群算法的收敛速度和精度, 改善算法摆脱局部极值点的能力。由于Logistic映射较其他混沌迭代映射计算量小、使用方便, 用其来产生混沌序列如:

式中, δ为控制参量, 取δ=4, 设0≤z0≤1, 式 (6) 完全处于混沌状态, 并可由此迭代出一个确定的时间序列。

本文混沌融入人工蜂群算法, 基本思想主要体现在以下两方面:

(1) 蜂群的位置采用混沌序列初始化, 既不改变初始化时位置所具有的随机性, 又提高了搜索的遍历性和蜂群的多样性, 以初始群体为样本, 从中择优生成初始群体。

(2) 在当前每个观察蜂和采蜜蜂搜索到的最优位置的基础上产生混沌序列, 从而实现领域小范围的随机搜索, 并且在迭代中产生局部最优解的众多领域点, 由此促进最优解的搜寻。

2.2 基于CABC的WSN覆盖优化步骤
基于混沌人工蜂群算法的的WSN覆盖优化流程如图1所示。根据式 (5) 得到优化后的目标函数, 结合改进的混沌人工蜂群算法, 具体优化步骤如下:
(1) 参数初始化, 如维数、种群数、最高循环代数、阈值等。其中观察蜂和采蜜蜂各占一半, 侦查蜂设为1个;
(2) 产生n个初始解, 从而形成初始蜂群;
(3) 计算起始覆盖率;
(4) 更新节点 (蜜源) 位置;
(5) 计算更新后节点的覆盖率 (适度值) , 与当前值比较保留相对优质节点值;
(6) 以当前蜜源为局部最优解, 并记忆;
(7) 循环次数加1;
(8) 如果终止条件满足 (一般为达到目标适应度值或最大循环代数) 则终止, 进而返回最佳适应度值, 则返回步骤 (2) 继续进行。

图1 基于混沌人工蜂群算法的覆盖优化流程图

⛄二、部分源代码

%% 初始化
clear
close all
clc

⛄三、运行结果

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]文政颖,翟红生.基于混沌人工蜂群算法的无线传感器网络覆盖优化[J].计算机测量与控制. 2014,22(05)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

【优化覆盖】基于matlab人工蜂群算法求解无线网络传感覆盖优化问题【含Matlab源码 1097期】相关推荐

  1. 【优化选址】基于人工蜂群算法求解无线网络传感覆盖优化问题含Matlab源码

    1 简介 近年来,物联网技术,人工智能技术的兴起使传感器网络分布覆盖检测区域的研究以及最大限度地提高传感器网络的覆盖率变得尤为必要.人工蜂群算法在无约束条件的数值优化问题上能取得较好的收敛效果.通过人 ...

  2. 【Matlab优化覆盖】虚拟力算法求解无线网络传感覆盖优化问题【含源码 1187期】

    一.代码运行视频(哔哩哔哩) [Matlab优化覆盖]虚拟力算法求解无线网络传感覆盖优化问题[含源码 1187期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1 ...

  3. MATLAB人工蜂群算法求解超市物流配送选址问题代码实例

    MATLAB人工蜂群算法求解超市物流配送选址问题代码实例 MATLAB人工蜂群算法求解超市物流配送选址问题代码实例 人工蜂群算法编程问题实例: 在范围为(0,0)到(100,100)的矩形区域内,散布 ...

  4. MATLAB人工蜂群算法求解数据拟合和多参数优化问题代码实例

    MATLAB人工蜂群算法求解数据拟合和多参数优化问题代码实例 MATLAB人工蜂群算法求解数据拟合和多参数优化问题代码实例 1.基本概念 人工蜂群算法是模仿蜜蜂行为提出的一种优化方法,是集群智能思想的 ...

  5. 【Matlab指纹识别】指纹识别匹配门禁系统【含GUI源码 587期】

    一.代码运行视频(哔哩哔哩) [Matlab指纹识别]指纹识别匹配门禁系统[含GUI源码 587期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

  6. 人工蜂群算法求解TSP问题

    人工蜂群算法求解TSP问题 [标签] ABC TSP Matlab data:2018-10-19 author:怡宝2号 [总起]利用人工蜂群算法(Artificial Bee Colony Alg ...

  7. 【Matlab图像加密】正交拉丁方置乱算法图像加解密【含GUI源码 182期】

    一.代码运行视频(哔哩哔哩) [Matlab图像加密]正交拉丁方置乱算法图像加解密[含GUI源码 182期] 二.matlab版本及参考文献 一.代码运行视频(哔哩哔哩) [Matlab图像处理]自动 ...

  8. ​【优化求解】基于人工蜂群算法求解无刷直流电机PID控制matlab代码

    1 简介 高精度的精密微位移系统在近代尖端工业生产和科学研究领域内占有极其重要的地位.它广泛应用于航空航天.微型机械制造.超精密加工.医学.生物工程等领域.纳米级位移定位技术已经成为推动科技发展的前进 ...

  9. 【智能优化算法】基于人工蜂群算法求解多目标优化问题附matlab代码

    1 简介 人工蜂群算法(Artificial Bee Colony Algorithm, 简称ABC算法)是一个由蜂群行为启发的算法,在2005年由Karaboga小组为优化代数问题而提出.​ 2 部 ...

最新文章

  1. 对RPM软件包的查询操作
  2. 开关电源过流保护-打嗝模式
  3. 使用java实现面向对象编程试题答案,面试题+笔记+项目实战
  4. [BZOJ3932][CQOI2015]任务查询系统(差分+主席树)
  5. netty获取玩家chanel_Netty4.X 获取客户端IP
  6. 新俊飞六合一口红机完整源码
  7. 发短信的简单实现——C#版
  8. bypass最新版d盾mysql_Bypass D盾_IIS防火墙SQL注入防御(多姿势) | CN-SEC 中文网
  9. ofo 押金被强制理财?黄章回应 OPPO 涉嫌抄袭;三星华为折叠手机重名 | 极客头条...
  10. 【Mac】Mac 使用 zsh 后, mvn 命令无效
  11. [转]Handsontable对单元格的操作
  12. formidable词根词缀_托福词汇-重点词根词缀总结(二)
  13. Linux IP代理筛选系统(shell+proxy)
  14. Visio中插入Mathtype公式
  15. 初级网络工程师这30道面试题一定得会,建议小白收藏!
  16. RFM模型(用户分析)
  17. 【今日CV 计算机视觉论文速览 第135期】Mon, 24 Jun 2019
  18. 协同过滤系统基于用户的评分预测
  19. 2019第三届金融科技与金融安全峰会北京站来袭!
  20. 深圳大学超级计算机,Intel CMP活动之“超算习堂”走进深圳大学

热门文章

  1. 简单的android音乐播放器
  2. 统计字符数组中26个英文字母的个数
  3. 在grub中加入win7启动项
  4. Android身份证识别demo,文字识别
  5. 阿里巴巴客户端开发工程师offer面经
  6. 打印机清洁墨盒的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  7. 3GPP R16码本(Enhanced Type2 Codebook)的构造方式
  8. 对象生死劫 - 构造函数和析构函数的异常
  9. Tensorflow之Mnist入门
  10. 使用documentElement.classList.add()给元素添加动画或样式