当前位置: 首页 > news >正文

【WSN】基于LGNDO算法实现传感器物理路由优化附matlab代码

1 内容介绍

无线传感器网络(Wireless Sensor Networks,WSN)是基于数字电路,无线通信,微电机系统等学科发展起来的一个新的研究领域.它是由部署在检测区域内大量廉价的小型传感器节点组成,通过无线通信方式形成的一个自组织无线网络,其作用就是感知周围信息,采集和处理所感知对象的信息,并发送给用户. 

2 部分代码

function model=CreatModel(d,g)

    x = randi([0,g],1,d);         %node position

    

    y = randi([0,g],1,d);         %node position

    

    delay = randi([0,g],1,d);

    Energy = randi([0,g],1,d);

    

    n=numel(x);

    

    model.D=zeros(n,n);

    model.delay=zeros(n,n);

    model.Energy=zeros(n,n);

    

    % Calculate the node distance

    for i=1:n-1

        for j=i+1:n

            

            model.D(i,j)=sqrt((x(i)-x(j))^2+(y(i)-y(j))^2);

            

            model.D(j,i)=model.D(i,j);

            

          

            if rand >0.3 % 70%

                model.delay(i,j)=300*rand();

            else %30%

                 model.delay(i,j)=1000*rand();

            end

             model.delay(j,i)=model.delay(i,j);

             

              if rand >0.8 % 20%

                model.delay(i,j)=100*rand();

            else %80%

                 model.Energy(i,j)=20*rand();

            end

             model.Energy(j,i)=model.delay(i,j);

            

        end

    end

    

    

    

    model.n = n;

    model.x = x;

    model.y = y;

    

end

3 运行结果

4 参考文献

[1]于磊磊, 柴乔林. 基于网络拓扑优化的WSN最小跳路由算法[J]. 计算机应用, 2009(11):3.

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

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

相关文章:

  • 数据结构初步(六)- 复杂链表的分析与C语言实现
  • C语言-文件操作(最全)(二十一)
  • 时空数据挖掘五(城市计算)
  • mysql进阶:企业数据库安全防护方案
  • 会员营销体系构建需要满足的四个条件
  • C++----unordered_map unordered_set使用及模拟
  • R统计绘图-变量分组相关性网络图(igraph)
  • JUC并发编程系列详解篇五(线程基础理论进阶)
  • 设计模式 人类父母和猫孩子的关系理解观察者模式(发布订阅模式)
  • 【java核心技术】Java知识总结 -- 语法篇
  • Neo4j图数据库和GDS图算法应用
  • Hello, World
  • 蒋鑫鸿:9.10国际黄金原油最新外盘行情趋势点评附解一套技术指导
  • gem5 GPGPU-Sim 安装踩坑笔记
  • 【Linux私房菜】—— 远程登录与数据传输、Vim与Vi的基础用法、关机与重启、登录与注销、运行级别、root密码找回
  • Computed property XXX was assigned to but it has no setter
  • Java 多线程编程之:notify 和 wait 用法
  • Laravel核心解读--Facades
  • Linux学习笔记6-使用fdisk进行磁盘管理
  • PAT A1120
  • UMLCHINA 首席专家潘加宇鼎力推荐
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 配置 PM2 实现代码自动发布
  • 区块链分支循环
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • (c语言)strcpy函数用法
  • (Git) gitignore基础使用
  • (搬运以学习)flask 上下文的实现
  • (附源码)计算机毕业设计高校学生选课系统
  • (汇总)os模块以及shutil模块对文件的操作
  • (六)Hibernate的二级缓存
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)ORM
  • (转)程序员疫苗:代码注入
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET CF命令行调试器MDbg入门(三) 进程控制
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .net core 连接数据库,通过数据库生成Modell
  • .NetCore项目nginx发布
  • .net反编译的九款神器
  • .NET连接数据库方式
  • .NET微信公众号开发-2.0创建自定义菜单
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国
  • .w文件怎么转成html文件,使用pandoc进行Word与Markdown文件转化
  • @Service注解让spring找到你的Service bean
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [ SNOI 2013 ] Quare
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [AIGC] MySQL存储引擎详解