【无线可充电传感器网络(WRSN)】公交网络辅助的无人机调度,用于无线可充电传感器网络的可持续充电(Matlab代码实现)

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

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

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

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

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、数据、文章


💥1 概述

摘要:无线可充电传感器网络(WRSN)被广泛应用于环境和交通监测、视频监控和医疗护理等领域,有助于提高城市生活质量。然而,在建筑物、土壤或其他难以从环境中获取能量的地方部署传感器,为其提供可持续能源是具有挑战性的。为解决这一问题,我们设计了一种新的无线充电系统,利用城市区域的公交网络辅助无人机。我们根据这一新的无线充电系统制定了无人机调度问题,以最小化无人机的总时间成本,同时满足无人机能够在能量约束下为所有传感器充电。然后,我们提出了一种逼近算法DSA来解决能量受限的无人机调度问题。为使WRSN的任务可持续进行,我们进一步制定了带有传感器截止日期的无人机调度问题,并提出了逼近算法DDSA,以找到在截止日期前由无人机充电的传感器数量最大的无人机调度。通过大量模拟,我们证明DSA相对于贪婪补充能量算法可以将总时间成本降低84.83%,并且平均使用的总时间成本最多是最优解的5.98倍。然后,我们还证明DDSA相对于截止日期贪婪补充能量算法可以将传感器的存活率提高51.95%,并且平均可以获得77.54%的最优解存活率。

关键词:无线可充电传感器网络、公交网络、无人机调度、旅行推销员路径问题、子模取向问题

📚2 运行结果

部分代码:

%主函数
tic
%U=5;%传感器的充电请求wh
distance_sl=10;%统一设置传感器与其最近起落点的距离为20km
dis_G=load('G.txt');%由landing points以及它们的边构成的无向图,权值是距离km
n_lpmax=length(dis_G);%起落点的个数
%fid=fopen('C:\codes\Figure12\b\result\6.txt','a');
fid=fopen('/code/Figure12/b/result/6.txt','a');
%%%%%%%%%%%%%%phase 1, construct undirected graph G
n_lp=n_lpmax-2;%传感器的个数
tao=6;
n_sensor=11;
 G1=zeros(n_sensor,n_sensor);
for U=5:3:20
[Gt,Gc,dis_SL]=construct1(n_sensor,distance_sl,n_lp);
%%%%%%%%%%%%%第二阶段:求解两个传感器之间的满足能量约束的最短路和构造有向图G1
for i=1:n_sensor
    for j=1:n_sensor
        if i==j
             G1(i,j)=0;
        else
             G1(i,j)=energy_sp(i,j,Gt,Gc,dis_SL,U,distance_sl,n_lp);%返回传感器i与传感器j之间路径的时间 
        end
    end
end
%%%%%%%%%%%%%%%第三阶段:求解ATSPP问题
final_srs= allpath(G1,n_sensor,tao);
disp('输出DOPT算法的最终解');
fprintf(fid,'%d %7.4f\r\n ',U,final_srs);
end
fclose(fid);
disp('输出DOPT算法的运行时间');
toc

%U=5;%传感器的充电请求wh
distance_sl=10;%统一设置传感器与其最近起落点的距离为20km
dis_G=load('G.txt');%由landing points以及它们的边构成的无向图,权值是距离km
n_lpmax=length(dis_G);%起落点的个数
%fid=fopen('C:\codes\Figure6\a\result\2.txt','a');
fid=fopen('/code/Figure6/a/result/2.txt','a');

%%%%%%%%%%%%%%phase 1, construct undirected graph G
n_sensor=100;%传感器的个数
n_lp=n_lpmax;
G1=zeros(n_sensor,n_sensor);
for U=5:3:20
[Gt,Gc,dis_SL]=construct1(n_sensor,distance_sl,n_lp);
%%%%%%%%%%%%%第二阶段:求解两个传感器之间的满足能量约束的最短路和构造有向图G1
for i=1:n_sensor
    for j=1:n_sensor
        if i==j
             G1(i,j)=0;
        else
             G1(i,j)=energy_sp(i,j,Gt,Gc,dis_SL,U,distance_sl,n_lp);%返回传感器i与传感器j之间路径的时间 
        end
    end
end
%%%%%%%%%%%%%%%第三阶段:求解ATSPP问题
final_time=zeros(1,n_sensor);
for i=2:n_sensor
    disp('输出第1个传感器到第i个传感器的final solution of ATSPP');
    i
    final_time(i)= ATSPP(G1,1,i,n_sensor);
end
final_time(final_time==0)=[];
disp('输出DSA算法的最终解');
final_solution=min(final_time)
fprintf(fid,'%d %7.4f\r\n ',U,final_solution);
end

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

🌈4 Matlab代码、数据、文章

  • 25
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值