本发明涉及计算机,具体涉及多无人机辅助mec网络中的协同计算卸载和充电调度方法。
背景技术:
1、近年来,移动边缘计算(mec)作为一种新兴技术,在5g网络中发挥着重要的作用。通过在接近用户的边缘服务器上执行计算任务,mec可以实现更快的数据处理和更好的用户体验。然而,随着6g网络的发展和接近,移动用户(mus)对低延迟和高带宽通信服务的需求持续增加,传统的mec方案无法提供快速的数据处理速度、降低网络拥塞和令人满意的服务质量(qos)。
2、此外,由于基站(bs)的固定位置、高建设成本和长建设周期,传统的基站mec解决方案的通信效率和灵活性相对较低,特别是在受自然灾害或军事攻击影响的地区。幸运的是,装备有边缘服务器的无人机(uav)由于其可移动性和灵活性已成为mec的热门选择。装有各种传感器和设备的无人机可以收集并传输实时数据,并飞往不同的地点,如受灾山区和密集城市环境,为用户提供按需计算资源。随着任务数量和规模的增加,单个无人机很难满足所有计算需求,导致qos下降。针对这一挑战,使用多个无人机进行协作计算近年来已成为高度热门的研究热点。
3、之前大量的多无人机辅助mec的研究集中在优化整体系统的延迟、能量消耗或任务完成数量,而没有考虑到无人机的能量和计算资源是有限的。对于它们来说,在没有充电的情况下可持续完成所有任务是困难的,因为它们的有限电池容量可能在长时间悬停和连续任务处理后耗尽。
技术实现思路
1、本发明的目的是为了解决现有多个无人机在进行协作工作时,没有将无人机的能量和计算资源进行统筹考虑,从而导致多个无人机协同工作整体系统效用不佳的技术问题,而提出的多无人机辅助mec网络中的协同计算卸载和充电调度方法。
2、为了解决上述技术问题,本发明采用的技术方案为:
3、多无人机辅助mec网络中的协同计算卸载和充电调度方法,包括以下步骤:
4、步骤s1:由mu及uav的计算任务参数、位置数据、信噪比,获取mu和uav之间的传输速率、uav和uav之间的传输速率,并通过能耗公式以及时延公式,获取uav消耗的能耗以及mu任务处理完成的总时延,同时计算出每一轮uav的剩余电量;
5、步骤s2:计算出每台uav的效用值,并结合uav的剩余电量,减去时延的敏感度,得到系统总效用,将最大化系统总效用作为优化目标,建立优化目标函数;
6、步骤s3:确定步骤s2所述优化目标函数的最优策略,包括u2u卸载策略、计算资源分配策略以及最优充电调度决策。
7、在步骤s1中,包括以下步骤:
8、步骤1-1:一方面,首先根据uavj和mu i的位置计算出los链路传输概率和nlos链路传输概率,然后计算出mu i和uavj之间的路径损耗,再将所获得的损耗代入信号增益公式,以求得mui和uavj之间的信道增益,然后将所获得的信道增益代入速率公式获得m2u的传输速率;
9、另一方面,首先根据不同uav的位置计算出los链路传输概率,然后计算出uavj和uav k之间的路径损耗,再将所获得的损耗带入信道增益公式里,求得uavj和uav k之间的信道增益,然后将所获得的信道增益代入速率公式,求得u2u的传输速率;
10、步骤1-2:根据时延公式求得传输时延,计算任务总时延;
11、步骤1-3:根据能耗公式,计算出传输能耗和计算能耗,同时算上无人机悬浮能耗,计算无人机剩余电量。
12、在步骤1-1中,获取u2u的传输速率和m2u的传输速率的步骤如下:
13、步骤1-1-1)计算出mui和uavj之间的los信道传输的概率以及uavj和uavk之间的los信道传输概率分别为:和1;其中,wα和wβ是与通信环境相关的固定系数,θi,j(t)是mu i和uav j之间的仰角,它是一个准恒定的值;
14、i指的是移动用户mui,j指的是无人机uav j,losi,j指的是移动用户mui和无人机uavj之间的可视距链路;t指的是第t个时隙;
15、步骤1-1-2)计算出mui和uavj之间的nlos信道传输的概率以及uavj和uavk之间的nlos信道传输概率分别为:和0;
16、nlosi,j指的是移动用户mui和无人机uavj之间的不可视距链路;
17、步骤1-1-3)计算出mui和uavj之间的平均路径损耗和uavj和uavk之间的平均路径损耗分
18、别为:
19、
20、
21、其中,和分别是与los和nlos通信信道相关的额外路径损失;是mu i和uav j之间的自由空间路径损耗,是mu i和uav j之间的距离,fc是载波频率,vc是光速;fsplj,k(t)指的是mu i和uav j之间的自由空间路径损耗,指的是mui和uavj之间的los链路通信的额外路径损耗;
22、步骤1-1-4)分别计算出mu i和uav j,uavj和uav k之间的信道增益为:
23、
24、
25、步骤1-1-5)计算计算出mu i和uav j,uavj和uav k之间的传输速率为:
26、
27、
28、其中,bi,j=bj/nj
29、其中,bi,j指的是表示由uav j分配给mu i的传输带宽,pi,j指的是mui和uav j之间的上行传输功率,n0指的是噪声功率谱密度,pj,k指的是uavj和uav k之间的上行传输功率。
30、在步骤1-2中,计算任务总时延的步骤如下:
31、步骤1-2-1)计算出mu i到uav j的传输时延为其中,si(t)指的是任务的数据大小;
32、步骤1-2-2)计算出uav j到uav k的传输延迟为
33、步骤1-2-3)计算出uav j或uav k处理移动用户mu i的任务所需的计算延迟可以表示为:其中和分别是uav j和uav k分配给移动用户mu i的计算资源,fi,j(t)∈[0,1]和fi,k(t)∈[0,1]是它们的计算资源分配决策;其中,ci(t)指的是任务所需要的计算资源,fj(t)指的是无人机uavj所拥有的计算资源总数,fi,j(t)指的是无人机uavj给来自用户mui的任务的计算资源分配决策,fk(t)指的是无人机uavk所拥有的计算资源总数,fi,k(t)指的是无人机uavk给来自用户mui的任务的计算资源分配决策,k指的是无人机uavk;
34、步骤1-2-4)计算出任务总时延为:
35、
36、;其中,指的是该系统由具有计算、通信和充电功能的j架无人机组成,表示为ai,j是通信指示符,它表示mu i和uav j之间的通信关系,指的是uavj和uavk之间的通信卸载决策,指的是mu i到uav j的传输延迟,指的是uavj到uavk的传输延迟,指的是uav k处理mu i任务的计算延迟,指的是uavj的卸载决策,指的是uav j处理mu i任务的计算延迟,指的是i个具有计算任务的移动用户设备,表示为i={1,2,...,i,...,i}。
37、在步骤1-3中,在能量消耗和无线充电模型中,将无人机(uav)视为系统的核心,因此不考虑移动用户(mu)的传输能量消耗,其中,系统的总能量消耗,主要包括无人机的传输、计算和悬停能量消耗,并根据总能耗计算它们的剩余电池能量,计算无人机剩余电量的步骤如下:
38、步骤1-3-1)计算出uavj和uavk之间的传输能耗为其中pj,k(t)表示它们之间的传输功率;
39、步骤1-3-2)计算出uavj的计算能耗为其中μ为芯片电容系数;
40、步骤1-3-3)计算出uavj的悬停能耗为其中是uav j的悬停功率,τ是悬停时间;
41、步骤1-3-4)计算出uavj的总能耗为:
42、
43、ai,j(t)指的是通信指示符,它表示mu i和uav j之间的通信关系,指的是在时隙t,无人机uavk和无人机uavj的通信卸载决策;
44、步骤1-3-5)计算出uavj每一时隙获取的充电电量为:其中κ是充电传输效率,是充电功率;其中,指的是充电时间;
45、步骤1-3-6)假设uav j在系统运行开始时有初始能量uav j的剩余能量是上一个时隙t-1中的剩余能量减去当前时隙t的总能量消耗,再加上能量补充,根据前式计算出uavj的剩余电量为其中,指的是无人机uavj在t时刻的剩余电量,j指的是无人机uavj,ej(t)指的是无人机uavj在t时刻消耗的总能耗,指的是无人机uavj在t时刻的充电能量。
46、在s2中,包括以下步骤:
47、步骤2-1:获得每一台uav的效用值;
48、步骤2-2:获得所有任务总时延,获得所有uav总剩余电量;
49、步骤2-3:将所有uav的效用值加上总剩余电量减去总时延,获得系统总效用,确定目标函数;
50、在步骤2-1中,每一台uav的效用值可以计算如下:
51、
52、其中,是uav j的计算资源单位价格,是uav间任务转移的单位价格,是电力的单位价格;指的是在时隙t,无人机uavk和无人机uavj的通信卸载决策;
53、为了实现更高的资源利用率,引入基于价格的激励机制,uav j的效用由三部分组成:1)处理mu任务所获得的收入;2)将任务转移给其他uav时产生的开销;3)向cs支付的无线充电电费;
54、在步骤2-3中:根据前面步骤得到的剩余电量和总时延以及无人机的效用值,系统总效用可以计算为其中uj(t)指的是无人机uavj在t时刻的效用值,指的是无人机uavj在t时刻的剩余电量,di(t)指的是用户mui的任务在t时刻处理完成所需要的总时延;为了满足用户的qos要求,将所有mu的延迟和所有uav的剩余电池电量总和纳入整体效用函数中,其中o1表示对任务完成延迟的敏感程度。
55、步骤s3是确定步骤s2所述优化目标函数的最优u2u卸载策略、计算资源分配策略以及最优充电调度决策;
56、在s3中,包括以下子步骤:
57、步骤3-1:初始化网络参数,以及对应的目标网络参数,同时初始化重放缓冲区b;
58、步骤3-2:从重放缓冲区随机抽取一批元组来更新网络参数;
59、步骤3-3:使用目标actor网络计算下一个状态s’中的下一个动作a';
60、步骤3-4:使用两个目标critic网络来预测q值;
61、步骤3-5:计算时间差分td目标值,使用这个td目标值来通过最小化损失函数来更新critic网络1和2;
62、步骤3-6:更新了两个critic网络d次后,我们开始通过计算当前状态s下的新动作来更新actor网络;
63、步骤3-7:使用critic网络1来计算状态-动作对的评估值,并通过梯度上升来最大化来更新actor网络;
64、步骤3-8:更新目标网络。
65、在步骤3-1中,使用随机参数θ1、θ2、φ初始化两个critic网络和一个actor网络,以及它们对应的目标网络:θ1′、θ2′、φ′,同时初始化重放缓冲区b;其中,θ1具体的物理含义是critic1网络的参数,θ2具体的物理含义是critic2网络的参数,φ具体的物理含义是actor网络的参数;
66、在步骤3-2中,随机抽取一批元组(s,a,r,s′)来更新网络参数;其中,s指的是当前状态,a指的是根据当前状态s做出来的动作,r指的是获得的奖励,s′指的是下一状态;
67、在步骤3-3中,使用目标actor网络计算下一个状态s′中的下一个动作a′:
68、其中,φ'指的是目标actor网络的参数,ε指的是探索噪声,
69、指的是根据下一状态和目标actor网络的参数计算出动作值;
70、在步骤3-4中,使用两个目标critic网络来预测q值为其中,θξ'指的是目标critic网络的参数,ξ指的是目标critic网络1或者2,指的是基于目标critic网络的参数,下一状态和下一动作,预测q值;
71、在步骤3-5中,计算时间差分(td)目标值y:y=r+γmin{q'1,q'2},使用这个td目标值来通过最小化损失函数来更新critic网络1和2:
72、其中,r指的是所获得的奖励,γ指的是折扣因子,用于衡量未来奖励的重要性,γ越接近1,越重视长期奖励;γ越接近0,越重视即时奖励,q'1指的是根据目标critic网络1计算出来的q值,q'2指的是根据目标critic网络2计算出来的q值,θξ指的是critic网络的参数,指的是根据critic网络,输入当前状态s和动作a计算出来的q值,yk指的是时间差分(td)目标值k等于1,2,3……n;
73、在步骤3-6中,更新了两个critic网络d次后,开始通过计算当前状态s下的新动作来更新actor网络为其中,φ指的是actor网络的参数,指的是根据actor网络,输入当前状态,计算出当前动作数值;
74、在步骤3-7中,使用critic网络1来计算状态-动作对的评估值,并通过梯度上升来最大化来更新actor网络:其中,θ1指的是critic网络1的参数,指的是计算状态-动作对(当前状态s,上式计算出来的新动作值anew)的评估值;
75、在步骤3-8中,使用软更新来更新目标网络:θ'ξ←ρθξ+(1-ρ)θ'ξ,φ'←ρφ+(1-ρ)φ';其中,ρ指的是软更新参数,φ'指的是目标actor网络的参数,符号“←”指的是根据后面的公式,基于当前目标网络参数,计算出新的目标网络参数。
76、一种基于td3算法的目标网络更新方法,包括以下步骤:
77、步骤1)初始化网络参数,以及对应的目标网络参数,同时初始化重放缓冲区b;
78、步骤2)从重放缓冲区随机抽取一批元组来更新网络参数;
79、步骤3)使用目标actor网络计算下一个状态s’中的下一个动作a';
80、步骤4)使用两个目标critic网络来预测q值;
81、步骤5)计算时间差分td目标值,使用这个td目标值来通过最小化损失函数来更新critic网络1和2;
82、步骤6)更新了两个critic网络d次后,我们开始通过计算当前状态s下的新动作来更新actor网络;
83、步骤7)使用critic网络1来计算状态-动作对的评估值,并通过梯度上升来最大化来更新actor网络;
84、步骤8)更新目标网络。
85、在步骤1)中,使用随机参数θ1、θ2、φ初始化两个critic网络和一个actor网络,以及它们对应的目标网络:θ1′、θ2′、φ′,同时初始化重放缓冲区b;其中,θ1具体的物理含义是critic1网络的参数,θ2具体的物理含义是critic2网络的参数,φ具体的物理含义是actor网络的参数;
86、在步骤2)中,随机抽取一批元组(s,a,r,s′)来更新网络参数;其中,s指的是当前状态,a指的是根据当前状态s做出来的动作,r指的是获得的奖励,s′指的是下一状态;
87、在步骤3)中,使用目标actor网络计算下一个状态s′中的下一个动作a′:
88、其中,φ'指的是目标actor网络的参数,ε指的是探索噪声,
89、指的是根据下一状态和目标actor网络的参数计算出动作值;
90、在步骤4)中,使用两个目标critic网络来预测q值为其中,θ'ξ指的是目标critic网络的参数,ξ指的是目标critic网络1或者2,指的是基于目标critic网络的参数,下一状态和下一动作,预测q值;
91、在步骤5)中,计算时间差分(td)目标值y:y=r+γmin{q'1,q'2},使用这个td目标值来通过最小化损失函数来更新critic网络1和2:
92、其中,r指的是所获得的奖励,γ指的是折扣因子,用于衡量未来奖励的重要性,γ越接近1,越重视长期奖励;γ越接近0,越重视即时奖励,q'1指的是根据目标critic网络1计算出来的q值,q'2指的是根据目标critic网络2计算出来的q值,θξ指的是critic网络的参数,指的是根据critic网络,输入当前状态s和动作a计算出来的q值,yk指的是时间差分(td)目标值k等于1,2,3……n;
93、在步骤6)中,更新了两个critic网络d次后,开始通过计算当前状态s下的新动作来更新actor网络为其中,φ指的是actor网络的参数,指的是根据actor网络,输入当前状态,计算出当前动作数值;
94、在步骤7)中,使用critic网络1来计算状态-动作对的评估值,并通过梯度上升来最大化来更新actor网络:其中,θ1指的是critic网络1的参数,指的是计算状态-动作对(当前状态s,上式计算出来的新动作值anew)的评估值;
95、在步骤8)中,使用软更新来更新目标网络:θ'ξ←ρθξ+(1-ρ)θ'ξ,φ'←ρφ+(1-ρ)φ';其中,ρ指的是软更新参数,φ'指的是目标actor网络的参数,符号“←”指的是根据后面的公式,基于当前目标网络参数,计算出新的目标网络参数。
96、与现有技术相比,本发明具有如下技术效果:
97、1)现有技术中的多无人机辅助mec的研究集中在优化整体系统的延迟、能量消耗或任务完成数量,而没有考虑到无人机的能量和计算资源是有限的,本发明考虑了无人机有限的计算资源和能耗,更加高效、实用。
98、2)本发明所提出的td3算法能更加快速得到最优解,本发明进行了广泛的仿真实验来验证td3的有效性,结果表明所提出的td3算法在各种情况下都显著优于其他基准方法。