1.一种协作移动边缘计算系统的优化方法,其特征在于,包括以下步骤:第一步:中央控制器收集所有子载波信道状态信息、用户端任务信息以及用户端、协作节点和AP处的MEC服务器的计算资源信息;
第二步:基于第一步中的信息,以最小化用户端及协作节点的计算能耗和卸载能耗为目标,并结合多载波技术和NOMA技术进行任务卸载,建立基于多载波非正交多址接入的协作移动边缘计算系统优化问题;
第三步:中央控制器根据建立的移动边缘计算系统,将优化问题转换为基于二维黄金分割法的连续凸逼近优化问题,通过优化算法,确定子载波分配方案、用户端和协作节点以及MEC服务器的计算任务分配方案、各个子载波的功率分配方案、任务卸载时间和计算时间分配方案;
第四步:中央控制器将优化的资源分配结果传输至用户端、协作节点和AP,用户端、协作节点和MEC根据优化的资源分配策略进行任务卸载和计算;在确定协作节点和MEC服务器处的计算任务完成后,协作节点和AP把计算结果反馈至用户端;
所述第二步中的具体内容如下:
S1、建立任务卸载能耗模型,设AP先解码协作节点的信号,然后解码用户的信号;记每个子载波的频率带宽为B,则在 的子载波上,用户传输到AP的任务数据量可表示为:协作节点传输到AP的任务数据量可表示为:当用户端在 的子载波上传输用户直接卸载流至AP和传输用户间接卸载流至协作节点时,协作节点会在每个子载波上对用户间接卸载流进行解码,并消除用户直接卸载流对其造成的干扰;
在 的子载波上,用户端卸载至AP的任务数据量可表示为:用户端传输至协作节点的任务数据量可表示为;
第一个时隙用户端用于任务卸载的能耗可通过下式得到:在第二个时隙,用户端和协作节点在每个子载波上均传输用户直接卸载流和协作转发流至AP,用户端发送至AP的用户直接卸载流任务数据量可表示为:协作节点转发至AP的协作转发流任务数据量可表示为:该时隙中用户端和协作节点用于任务卸载的能耗可通过下式得到:S2、建立任务计算能耗模型,用户端和协作节点的计算任务数据量分别为lU比特和lH比特,用户和协作节点处任务计算所消耗的能量可分别计算如下:设fA,k为MEC服务器第k个周期的CPU频率,那么MEC服务器的计算时间为 公式(2)中的时间分配约束可改写为:S3、问题建模,根据上述能耗模型,用户端和协作节点的总能耗可表示为:令 l={lU,lH,lA},τ={τ1,τ2}和则本文所研究的系统优化问题可表示为:s.t.
τ1,τ2≥0公式(16‑5);
lU+lH+lA=LU+LH公式(16‑10);
lU,lH,lA≥0,公式(16‑11);
lA=LU‑lU+LH‑lH公式(16‑14);
其中pU,max和pH,max分别表示用户端和协作节点的最大发射功率,在问题(P0)中,(16‑3)是第一个时隙子载波分配的整数约束,(16‑5)是时间分配的非负约束,(16‑6)是用户端和协作节点的发射功率非负约束,(16‑7)和(16‑8)是在第一个时隙用户端和协作节点的最大发射功率限制,(16‑9)是在第二个时隙用户端和协作节点的最大发射功率限制,(16‑11)是对用户端、协作节点和AP任务分配的非负约束,(16‑12)确保协作节点分配给MEC服务器的计算任务量不能大于第一个时隙协作节点发送至AP的最大可达数据量,(16‑13)确保用户端分配给MEC服务器的计算任务量不能大于第一个时隙和第二个时隙用户端发送至AP的最大可达数据量之和,(16‑14)表示MEC服务器计算任务量等于用户需执行的计算任务量减去本地计算的任务量与协作节点需执行的计算任务量减去本地计算的任务量的和,(16‑15)是对AP处MEC服务器CPU频率的限制;
AP处MEC服务器的最优CPU频率为其最大值,即 当问题(P0)取得最优解时,时间分配约束公式(17)是起作用的,即以下等式成立:问题(P0)简化为;
s.t.(16‑2),(16‑3),(16‑5)‑(16‑14),(17)公式(18);
其中fA不再是优化变量。
2.根据权利要求1所述的一种协作移动边缘计算系统的优化方法,其特征在于:所述中央控制器需要收集的信息包括用户至协作节点、用户至AP和协作节点至AP的信道增益和 用户端和协作节点的CPU有效电容系数κU和κH,用户端、协作节点和MEC服务器计算每比特计算任务所需的CPU周期数ξU、ξH和ξA,用户端、协作节点和MEC服务器的最大CPU频率fU,max、fR,max和fA,max,总任务大小L和任务完成时间T。
3.根据权利要求1所述的一种协作移动边缘计算系统的优化方法,其特征在于:所述第三步的具体内容如下:S1、问题转换,子载波分配涉及的整数规划和式(4)‑(7)中发射功率与子载波分配指示子耦合导致问题P1非凸的问题,把式(4)、(5)、(6)和(7)分别改写为:令
以及
则问题P1的目标函数,即Etotal可改写为:同时,约束(16‑7)和(16‑8)可以分别改写为:而约束(16‑12)和(16‑13)可分别改写为:其中
采用大M表达法对公式(23)‑(24)进行等价变换,考虑公式(16‑3)中的整数约束,约束(23)可以等效地表达为:当ab=UA时,s=U;
当ab=UH时,s=H;
对ab∈{UA,UH},约束(24)可以等效地表达为:问题P1可以等效地表示为:
s.t.(16‑2),(16‑3),(16‑5),(16‑6),(16‑8)‑(16‑11),(16‑14),(26)‑(31)公式(32);
其中
为处理问题P2中约束(28)和(29)的非凸性,引入松弛变量和 则约束(28)和(29)可等价地表达为式(33)‑(37):其中
因此P2可以等效地改写为:
s.t.(16‑2),(16‑3),(16‑5),(16‑6),(16‑8)‑(16‑11),(16‑14),(26),(27),(30),(31),(33)‑(37)公式(38);
S2、分层优化
在问题P3的目标函数和约束条件(33)‑(34)中,τ与ε或S是耦合的,根据式(17),令P3中的目标函数 可重写为:并且式(38)可改写为:
基于式(39)‑(40),问题P3可通过分层优化方法分解为一个内嵌子问题和一个外部主问题,固定优化变量τ1和lA,剩余的优化变量则可表示为Υ={S,ε,Ω,P,lH,lU};
约束(16‑11)改写为下式:
lU, lH≥0 公式(41);
可得内嵌子问题为:
s.t.(16‑2),(16‑3),(16‑6),(16‑8)‑(16‑10),(16‑14),(25),(26),(29)‑(31),(33),(35)‑(37),(40),(41) 公式(42);
*
基于内嵌子问题P4定义的F(τ1,lA),外部主问题是求解问题P3中τ1和lA的最优解,其表示为:S3、求解内嵌子问题P4,由于约束(35)‑(37)是非凸的,而且(16‑3)是整数约束,应对约束(35)‑(37)的非凸性,有以下不等式:令 和 是第r次迭代时一阶泰勒展开点,式(35)‑(37)可分别表达为:
对于整数约束(16‑3),其可等效地表达为:以约束(44)‑(46)替换式(35)‑(38),以约束(47)‑(48)替换式(16‑3),内嵌问题P4等效地改写为;
s.t.(16‑2),(16‑3),(16‑6),(16‑8)‑(16‑10),(16‑14),(26),(27),(30),(31),(33),(40),(41),(44)‑(48);
在问题P6中,约束(48)不等式的左边是两个凸函数之差,除约束(48)外,目标函数和其他约束都是凸的;
将式(48)的左侧作为惩罚项引入问题P6中的目标函数中,即将问题P6重写为:s.t.(16‑2),(16‑3),(16‑6),(16‑8)‑(16‑10),(16‑14),(26),(27),(30),(31),(33),(40),(41),(44)‑(47)公式(50);
其中μ>0是惩罚因子,存在μ0>0,当μ>μ0时,问题P5等价于问题P6;
利用SCA方法,求解问题P7,在第r次迭代中,给定 时,把问题P7目标函数的惩罚项一阶泰勒近似表示为:基于问题P7,可得到第r次迭代所求解的凸优化问题如下:s.t.(16‑2),(16‑3),(16‑6),(16‑8)‑(16‑10),(16‑14),(26),(27),(30),(31),(33),(40),(41),(44)‑(47)公式(52);
*
问题P8是凸问题,通过内点法求解,计算问题P4 F (τ1,lA)的方法算法1所示;其中,求解外部主问题P5,式(39)中的 是变量τ1和lA的凸函数,问题P5通过二维黄金分割法求解,当lA给定而求解τ1的最优解时,可得内嵌子问题为:而外部主问题则是求解lA的最优解,其可表示为:基于求解嵌入子问题P4的算法1和以二维黄金分割法求解外部主问题P5,可得问题P3的求解步骤。
4.根据权利要求3所述的一种协作移动边缘计算系统的优化方法,其特征在于:所述算法1包括以下内容:(0) (0)
初始化S 、 Ω 、 迭代次数r=0和迭代精度参数ε;
1)循环;
(r) (r) *(r) * (r)
2)用S , Ω 和 求解问题P8,得到Υ 和F(τ1,lA) ;
3)r=r+1;
* (r+1) * (r)
4)until目标值的变化小于ε,即|F(τ1,lA) ‑F(τ1,lA) |≤ε;
* *
7)获得最优解Υ 和F(τ1,lA)。
5.根据权利要求3所述的一种协作移动边缘计算系统的优化方法,其特征在于:所述问题P3的求解步骤包括以下步骤:初始化迭代精度参数ε;
1)令
2)while do
3)
4)
5)
6)令
7)while do;
8)
9)
10)以 和 分别执行算法1计算得到 和
11)if then;
12)
13)else;
14)
15)end if;
16)end while;
17)计算
18)令
19)令
20)while do;
21)
22)
23)以 和 分别执行算法1计算得到 和
24)If then;
25)
26)else;
27)
28)end if;
29)end while;
30)计算
31)If then;
32)
33)else;
34)
35)end if;
36)end while;
*
37)计算 和 然后用 和 执行算法1得到最优解Υ 。