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

  👨‍🎓个人主页

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

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

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

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

目录

💥1 概述

📚2 运行结果

🎉4 参考文献

 🌈4 Matlab代码、文章下载


💥1 概述

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

1. 引言  
无线可充电传感器网络(WRSN)由于其通过无线充电网络提供持续电力供应的优势,以及从环境中获取能量(如太阳能和风能),在智慧城市的城市生活中发挥着重要作用。WRSN已应用于许多领域,例如长期环境监测和车辆交通控制。然而,部署在难以进入的户外环境中的传感器网络(如山区降水分析和水质监测)可能会增加无线充电器的部署和维护成本。此外,在许多传感应用中(如桥梁下的结构监测和土壤条件监测),使用太阳能电池和/或风能从环境中获取能量存在困难。传感器可以从嵌入无人机或无人驾驶飞行器(UAV)的无线充电器中获取能量,并将其存储在自身的容量中。已有研究探索了使用能够无线传输能量的无人机为传感器充电的可行性,并使用无人机携带的专用充电器飞越传感器网络,通过射频信号将能量传输给传感器。这种基于无人机的WRSN无线充电可以在不部署和维护无线充电网络的情况下,为部署在难以进入的户外环境中的传感器持续补充电量。

由于电池容量有限,无人机需要返回地面充电站为其自身补充电量。这增加了无人机飞行的能量消耗,并降低了充电效率。由于能量容量有限,无人机难以在广阔区域为传感器充电。如何高效地为无人机充电是一个有趣且重要的问题,已经引起了广泛关注。最新的研究[13]提出了一种通过乘坐公交车为无人机充电的解决方案,以便在城市区域从大量兴趣点(PoIs)持续收集和传输视频流。[14]设计了一种新的电动汽车充电系统,通过整合在线电动汽车(OLEV)系统[15]和微波功率传输(MPT)系统,利用城市区域的公交网络。通过利用公交网络,无人机不仅可以乘坐公交车补充电量,还可以扩展充电服务的范围。同时,公交车配备了大容量电池,可以从OLEV系统或其燃油发动机持续获取能量,因此有足够的能量为无人机充电。此外,由于公交网络在城市区域的高普及率和广泛覆盖,公交车为无人机提供了广泛的充电机会。

然而,现有研究分别研究了用于WRSN的无人机无线充电[12]和利用公交车为无人机充电的无人机调度[13]。实际上,WRSN、无人机和公交车之间的能量应该高效传输,形成一个闭环无线充电系统。因此,我们提出了一个用于城市区域WRSN的公交网络辅助无人机无线充电系统。在设计的系统中引入公交网络,不仅可以加速无人机的能量补给,还可以减少无人机为WRSN充电的飞行能量消耗。我们充电系统的示例如图1所示。系统中有一架无人机、两辆公交车和三个传感器。无人机可以从任何传感器和一组公交车路线上的固定位置(称为着陆点)起飞。公交车有自己的常规时间表,并且可以在无人机乘坐公交车时为其充电。传感器可以由无人机充电。然后,WRSN和公交网络共同形成了一个由传感器、连接公交车路线的着陆点路段以及传感器和着陆点之间的飞行段组成的综合网络。无人机通过最近的着陆点乘坐公交车,从公交车处为其自身补充电量,并在有足够的能量时离开公交车前往下一个传感器的某个着陆点进行充电。然后,无人机为传感器充电,并飞回最近的着陆点。因此,在这个综合网络中,无人机在任意两个着陆点之间获取能量,并在任意传感器和着陆点之间消耗能量。

在设计的系统中,无人机的充电效率和WRSN的可持续性在很大程度上取决于无人机的调度。据我们所知,目前还没有现成的用于为WRSN充电的公交网络辅助无人机调度。我们根据传感任务的不同需求考虑了两种无人机调度场景。对于第一种场景,我们认为传感任务可以容忍一些数据丢失,并允许传感器进入休眠状态以节省能量。因此,在这种情况下,无人机调度仅受无人机能量的限制。在第二种场景中,传感任务需要连续的传感数据(如车辆交通控制应用[5]和实时环境监测[16]),因此,传感器的死亡或休眠将大大降低传感质量。因此,无人机调度受到无人机能量和传感器传感任务截止时间的双重限制。

为WRSN的可持续充电调度公交网络辅助无人机是一个非常具有挑战性的问题。首先,由于我们的目标是仅调度无人机访问传感器,因此无法通过直接在WRSN和公交网络整合的综合网络上求解旅行商路径问题(TSPP)来获得无人机的行驶路径。其次,在综合网络中,从一个传感器到下一个传感器的公交车乘坐过程中,找到无人机的能量受限最短路径是困难的。这是因为无人机在任意两个传感器之间可能存在放电和充电的混合过程。因此,受限最短路径算法[17]不能直接用于找到我们的能量受限最短路径,因为受限最短路径算法要求受限度量应为非负值。此外,无人机的调度必须确保每个路段/飞行段满足无人机的能量约束,即无人机在路段/飞行段起点的剩余能量不小于通过该段所消耗的能量。然而,无人机的剩余能量取决于之前选择的路段/飞行段。

我们的主要贡献可以总结如下:

  • 我们设计了一个通过城市区域公交网络辅助无人机的WRSN无线充电系统。据我们所知,我们是首次研究这种综合无线充电系统的无人机调度问题。

  • 我们制定了无人机调度与公交网络(DSB)问题,以在无人机能量约束下最小化无人机为所有传感器充电的时间成本,并提出了一个近似算法——无人机调度算法(DSA),以解决能量受限的DSB问题。

  • 考虑到WRSN的连续传感任务,我们进一步制定了带截止时间的无人机调度与公交网络(DDSB)问题,以在无人机能量和传感器截止时间的双重约束下最大化充电传感器的数量,并提出了一个近似算法——带截止时间的无人机调度算法(DDSA),以解决能量受限的DDSB问题。

  • 我们对设计的算法进行了广泛的仿真和实地实验。仿真结果表明,与贪婪补充电量算法相比,DSA可以将总时间成本降低84.83%,并且平均最多使用最优解总时间成本的5.98倍。然后,DDSA与带截止时间的贪婪补充电量算法相比,可以将传感器的存活率提高51.95%,并平均达到最优解77.54%的存活率。

本文的其余部分安排如下:我们在第2节回顾了相关研究。我们在第3节介绍系统模型,制定DSB问题,并提出解决能量受限DSB问题的近似算法。我们在第4节制定DDSB问题,并提出解决能量受限DDSB问题的近似算法。我们在第5节和第6节分别进行仿真和实地实验。我们在第7节总结这项工作。

7. 结论  
在本文中,我们为城市区域的传感器设计了一种由公交网络支持的无人机无线充电系统。公交车通过OLEV系统或其燃油发动机持续充电,拥有足够的能量为无人机充电。传感器则由无人机充电。我们制定了无人机调度与公交网络(DSB)问题,以在无人机能量约束下,最小化无人机的总时间成本,确保所有传感器都能被无人机恰好充电一次,并提出了一个近似算法来解决能量受限的DSB问题。为了考虑传感器的截止时间,我们进一步制定了带截止时间的无人机调度与公交网络(DDSB)问题,以在无人机能量和传感器截止时间的双重约束下最大化无人机充电的传感器数量,并提出了一个近似算法来解决能量受限的DDSB问题。理论分析、数值仿真和实地实验验证了所提算法的效率和有效性。仿真结果显示,与GRE算法相比,DSA可以将总时间成本降低84.83%,并且平均最多使用最优解总时间成本的5.98倍。此外,结果还表明,与DGRE算法相比,DDSA可以将传感器的存活率提高51.95%,并平均达到最优解77.54%的存活率。

详细文章见第4部分下载。

📚2 运行结果

 

部分代码:

function [mypath,cost]=dijkstra(a,sb,db)
% 输入:a—邻接矩阵(aij)是指i到j之间的距离,可以是有向的
% sb—起点的标号, db—终点的标号
% 输出:mydistance—最短路的距离, mypath—最短路的路径
cost=0;
n=size(a,1); visited(1:n) = 0;
distance(1:n) = inf; % 保存起点到各顶点的最短距离
distance(sb) = 0; parent(1:n) = 0;
for i = 1: n-1
   temp=distance;
   id1=find(visited==1); %查找已经标号的点
   temp(id1)=inf; %已标号点的距离换成无穷
   [t, u] = min(temp); %找标号值最小的顶点
   visited(u) = 1; %标记已经标号的顶点
   id2=find(visited==0); %查找未标号的顶点
  for v = id2
    if a(u, v) + distance(u) < distance(v)
      distance(v) = distance(u) + a(u, v); %修改标号值
      parent(v) = u;
    end
  end
end
mypath = [];
if parent(db) ~= 0 %如果存在路!
   t = db; 
   mypath = [db];
   while t ~= sb
     p = parent(t);
     mypath = [p mypath];
     t = p;
   end
end
mydistance = distance(db);
disp('dijkstra执行完毕')
return
end

function [mypath,cost]=dijkstra(a,sb,db)
% 输入:a—邻接矩阵(aij)是指i到j之间的距离,可以是有向的
% sb—起点的标号, db—终点的标号
% 输出:mydistance—最短路的距离, mypath—最短路的路径
cost=0;
n=size(a,1); visited(1:n) = 0;
distance(1:n) = inf; % 保存起点到各顶点的最短距离
distance(sb) = 0; parent(1:n) = 0;
for i = 1: n-1
   temp=distance;
   id1=find(visited==1); %查找已经标号的点
   temp(id1)=inf; %已标号点的距离换成无穷
   [t, u] = min(temp); %找标号值最小的顶点
   visited(u) = 1; %标记已经标号的顶点
   id2=find(visited==0); %查找未标号的顶点
  for v = id2
    if a(u, v) + distance(u) < distance(v)
      distance(v) = distance(u) + a(u, v); %修改标号值
      parent(v) = u;
    end
  end
end
mypath = [];
if parent(db) ~= 0 %如果存在路!
   t = db; 
   mypath = [db];
   while t ~= sb
     p = parent(t);
     mypath = [p mypath];
     t = p;
   end
end
mydistance = distance(db);
disp('dijkstra执行完毕')
return
end

🎉4 参考文献

部分理论来源于网络,如有侵权请联系删除。

 🌈4 Matlab代码、文章下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值