为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

这篇具有很好参考价值的文章主要介绍了为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

随着无线传感器网络(Wireless Sensor Network,WSN)的广泛应用,业界开始应用环境能量收集技术解决传感器节点的能量补充问题。而这类网络被统称为能量收集型无线传感器网络(Energy Harvesting Wireless Sensor Network,EH-WSN)。在能量收集型无线传感器网络中感知数据的可靠传输是值得研究的问题。

📚2 运行结果

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

主函数部分代码:

clear all
close all
​
% Declaración de los elementos del texto para el split
comillas=char(34);
barra=char(47);
coma=char(44);
pcoma=char(59);
dpuntos=char(58);
novalinea=newline;
guio=char(45);
fle=char(62);
p1=char(40);
p2=char(41);
​
%%% Format fitxer PM10 i soroll
% Se abre el fichero y se obtienen los datos de cada elemento, son 8
fileID=fopen('dades_soroll_pm10.txt','r');
formatSpec=['%d' barra '%d' barra '%d'  '%d' dpuntos '%d' dpuntos '%d' pcoma '%d' pcoma '%d'];
C=textscan(fileID,formatSpec);
fclose(fileID);
​
% Se guarda cada elemento en su correspondiente variable
any=C{1}; 
mes=C{2};
dia=C{3};
hora=C{4}+14;
a=find(hora>=24);
hora(a)=double(hora(a)-24);
minut=C{5}+27;
a=find(minut>=60);
minut(a)=double(minut(a)-60);
​
%%% Transformació dels valors analògics a dBs
soroll=C{8}; %Ruido en analógico
y1=30;
x1=0;
y2=78.8;
x2=3326;
pendent=(y2-y1)/(x2-x1);
​
%%% Variables para transmitir
pm10=double(C{7}); %Contaminación atmosférica
soroll_dbs=double(pendent.*(soroll-x1)+y1); %Contaminación acústica
​
%%
%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%%
%%
%
%%%
%%%
%%%
%%%
%%%
%%%
%%            PRUEBAS            %
%%%
%%%
%%%
%%%
%%%
%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
​
% ESCENARIO IV: Multi-armed Bandit
%Obtenemos el periodo de muestreo mas optimo para cada hora del dia
m = length(pm10); %total de muestras
T = [2 3 5 10]; %periodos posibles
rewards = zeros(24, length(T)); %tabla de recompensas para cada hora y periodo
epsilon = 0.2; %epsilon con valor estandar
vr1 = pm10; %copia del vector de datos pm10
vr2 = soroll_dbs; %copia del vector de datos ruido
j = 1; %variable iniciada en 1 para el bucle e-greedy (posicion actual del vector)
ja = j; %variable para almacenar la posicion anterior en el bucle e-greedy y calcular la recompensa
rewards(1:24) = 0; %iniciamos el algoritmo con periodo 2
c_acciones = zeros(24, length(T)); %cantidad de veces que escoge una accion por hora
c_greedy = zeros(2,1); %cantidad de veces que decide explotar/explorar
c_rewards = zeros(24, length(T)); %cantidad de veces que sale cada recompensa
r_total = 0;
​
for i=1:100 %iteraciones de aprendizaje
​
    %recorremos vector explorando/explotando 
    while j<m
​
        if rand < 0.05
            %explorar
            c_greedy(1) = c_greedy(1) + 1;
            [~,t] = max(rewards(hora(j)+1,:)); %obtenemos el periodo con mayor recompensa
            T2 = T(T~=T(t)); %los sacamos para explorar otra opcion
            t = T2(randi(length(T2))); %nuevo periodo
            c_acciones(hora(j)+1, find(T==t)) = c_acciones(hora(j)+1, find(T==t)) + 1;
        else
            %explotar
            c_greedy(2) = c_greedy(2) + 1;
            [~,t] = max(rewards(hora(j)+1,:)); %cogemos el periodo con mayor recompensa acumulada
            t = T(t); %nuevo periodo
            c_acciones(hora(j)+1, find(T==t)) = c_acciones(hora(j)+1, find(T==t)) + 1;
        end
​
        %cogemos muestra
        ja = j; %guardamos posicion anterior
        j = j + t; %nueva posicion
        if j <= m
            %calculamos recompensa: se comprueban las muestras intermedias entre dos
            %transmisiones, si no superan el umbral se suma 1 a la recompensa,
            %si lo supera no se suma nada
            r_total = 0;
            for k=ja+1:j-1
                %%%%%%%%UMBRALES PM10%%%%%%%%               
                %if abs(vr1(k)-pm10(j)) == 0 %sin umbral
                %if abs(vr1(k)-pm10(j)) <= 1 %umbral minimo
                %if umbral_pm(vr1(k),pm10(k)) == 0 %umbral adaptado
                %%%%%%%%UMBRALES RUIDO%%%%%%%%
                if abs(vr2(k)-soroll_dbs(j)) == 0 %sin umbral
                %if abs(vr2(k)-soroll_dbs(j)) <= 3 %umbral minimo
                %if abs(vr2(k)-soroll_dbs(j)) <= 10 %umbral maximo
                    r_total = r_total + 1;
                end
            end

🎉3 参考文献

​[1]高昊德. 恶劣环境下EH-WSN中数据可靠传输相关研究[D].内蒙古大学,2022.

部分理论引用网络文献,若有侵权联系博主删除。文章来源地址https://www.toymoban.com/news/detail-472293.html

🌈4 Matlab代码实现

到了这里,关于为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 无线传感器网络WSN覆盖优化问题

    无线传感器网络WSN覆盖优化问题

    无线传感器网络 (Wireless Sensor Networks,WSNs)是一种分布式传感网络,嵌入了传感器的智能设备感测、通信、处理、收集数据,然后通过互联网将数据传输给监测者进行进一步分析,是通过无线通信方式形成的一个多跳自组织网络,可用于大规模物联网应用。由于其传感器通

    2024年02月05日
    浏览(7)
  • 无线传感器网络底层平台的深层研究

    无线传感器网络应用一般需要无线操作系统的支撑,才能有效地管理和调度资源,提高系统的效率。无线传感器网络的底层平台是连接上层软件和底层硬件的桥梁,是无线操作系统研究的重要技术之一。合理的底层平台能够提高系统的兼容性、稳定性、可移植性和开发效率。

    2024年02月07日
    浏览(7)
  • 浅谈无线传感器网络的特点和挑战

    无线传感器网络中所有传感器节点地位对等,并构成一个对等式网络的无线传感网络的特点如下:   硬件资源有限:每个节点由于受价格、体积和功耗的限制,其计算能力、程序空间和内存空间等硬件资源有限,因此协议层次不能太复杂。 电源容量有限:在无线传感器网络

    2024年02月09日
    浏览(4)
  • 无线传感器网络数据压缩与融合及安全机制的matlab仿真

    目录 一、理论基础 二、案例背景 三、MATLAB程序 四、仿真结论分析

    2023年04月09日
    浏览(12)
  • 智能优化算法应用:基于社交网络算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    智能优化算法应用:基于社交网络算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用社交网络算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器

    2024年02月20日
    浏览(9)
  • 智能优化算法应用:基于斑马算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    智能优化算法应用:基于斑马算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用斑马算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器节点

    2024年02月03日
    浏览(10)
  • 智能优化算法应用:基于厨师算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    智能优化算法应用:基于厨师算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用厨师算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器节点

    2024年01月19日
    浏览(11)
  • 智能优化算法应用:基于浣熊算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    智能优化算法应用:基于浣熊算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用浣熊算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器节点

    2024年02月03日
    浏览(14)
  • 智能优化算法应用:基于野马算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    智能优化算法应用:基于野马算法3D无线传感器网络(WSN)覆盖优化 - 附代码

    摘要:本文主要介绍如何用野马算法进行3D无线传感器网(WSN)覆盖优化。 本文主要基于0/1模型,进行寻优。在二维平面上传感器节点的感知范围是一个以节点为圆心,半径为 R n R_n R n ​ 的圆形区域,该圆形区域通常被称为该节点的“感知圆盘”, R n R_n R n ​ 称为传感器节点

    2024年02月02日
    浏览(7)
  • 基于无线传感器网络的LC-DANSE波束形成算法matlab仿真

    基于无线传感器网络的LC-DANSE波束形成算法matlab仿真

    目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1LC-DANSE算法原理 4.2 LCMV算法原理 5.完整程序         在无线传感器网络中,通过MATLAB对比LC-DANSE波束形成算法和LCMV波束形成算法。对比SNR,mse等指标。 MATLAB2022a版本运行        无线传感器网络

    2024年02月20日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包