彭 昇,赵建保,魏敏捷
(1.上海电力大学 电子信息工程学院,上海 201306;2.国网信息通信产业集团有限公司,北京 102200;3.上海电力大学 电气工程学院,上海 201306)
随着移动通信技术的迅速发展,物联网中的终端设备(例如智能手机、智能家居、智能汽车等)都可以通过互联网来进行相互连接[1]。近年来,移动设备类型及数量呈指数增长,目前移动设备往往为了具备便携性与简易性,而缺乏足够的计算能力及容量来满足应用的服务质量要求。移动边缘计算(Mobile Edge Computing,MEC)是物联网边端设备执行计算请求的方法[2],移动网络运营商与云服务提供商在边端服务器中部署丰富的计算资源,在边端中对移动终端设备所产生的大量数据进行计算处理。
边缘计算资源调度的核心观点是通过优化移动边缘计算来提高计算资源与能力从而满足用户的需求。网络运营商开始普遍构建5G 架构的超密集组网(Ultra-Dense Network,UDN)多基站协同服务场景[3]。在UDN中通过部署宏基站(Macro-cell Base Station,MBS)与多个微基站(Small-cell Base Station,SBS)实现极高的频率复用,极大提高了覆盖地区的系统容量与计算能力。
粒子群优化算法(Particle Swarm Optimization,PSO)是指粒子在运动中不断更新空间内的个体最优解与全局最优解。Wang 等人[4]使用基于PSO 和博弈论的MEC 分配策略来最小化时间延迟;Guo 等人[5]提出一种基于遗传算法和计算资源分配算法,结果表明该算法最大限度地降低用户设备地能耗;Chen 等人[6]研究了网络中边缘服务器的数据存放问题,通过基于遗传粒子群优化算法改进降低设备数据的放置成本。本文提出二进制粒子群优化算法(Binary Particle Swarm Optimization,BPSO),通过对设备发射功率不断优化找到问题的最优解,使每台移动设备达到最小化能耗;然后,建模联合请求卸载和资源调度问题,提出一种新的启发式粒子群优化算法(JROPSO),在保证收敛的同时,提高系统的效用值。
UDN 网络由一个MBS 与多个SBS 构成。假设当前部署的每个SBS 所覆盖的是MBS 的局部区域,移动终端设备U 通过无线链路与SBS 连接。同时MBS 通过无线通信链路与多个SBS 相连接来统计任务信息,计算边端服务器属性状态和资源容量,具体的系统模型如图1所示。
图1 系统模型
分别用U=1,2,…,u和N=1,2,…,n表示移动终端设备u和微基站n的集合。
定义从移动设备u发射到SBSn的发射功率pun为P={pun|u∈U,q∈Q|}。移动设备u到SBSn的上行链路速率vun(t)为:
其中,B表示带宽,n0表示高斯白噪声功率,gun(t)表示信道功率增益[7],定义为:
其中,g0表示当距离为1 m 时且发射功率Pun=1W 时的信道功率增益,H表示基站的高度。
完成计算任务的总能耗包括上行传输、MEC 服务器上任务性能、返回数据的能耗。在本研究中,从用户角度考虑,忽略与MEC 服务器上相关的能耗,只考虑上行传输能耗[8]。这一假设是合理的,因为现有研究已经使用了这一假设[9−12],并允许MEC 服务器使用电网供电来运行。此外,与原始传输计算任务所需要的功率相比,将结果传输回设备的所需的功率较小[13−15]。
卸载决策决定了计算任务的具体的卸载位置(MBS或SBS),本文将计算卸载决策分为两个阶段:(1)设备向基站进行任务卸载请求;(2)在SBS 或MBS 中执行任务。
在UDN 网络中,不同移动设备的请求会卸载到微基站或者宏基站中进行处理,通过对相关值的定义来构建系统效用值。基于文献[16],定义q的系统效益kq。
定义系统处理请求q的系统代价:
其中,E0表示微基站的初始能量,表示微基站在时间t时的剩余能量,β是使cq处于[0,1]的自定义值。
当微基站的资源容量不够处理计算请求时,移动设备将会发送请求至宏基站,所以卸载到宏基站的额外成本为:
其中,η是一个自定义常数,表示系统效益与能耗的相对性。由上述定义,系统总效用值可以定义为:
本节首先描述了发射功率分配问题,证明发射功率与能耗的函数是一个拟凸函数,并提出标准二进制粒子群优化算法(Binary Particle Swarm Optimization,BPSO)。针对资源调度与请求卸载问题,提出一种基于PSO 的算法联合优化资源分配和请求卸载问题(PSO based Joint Request Offloading,JROPSO)。
等式(1)、(2)可以具体表示为:
约束条件为:0 ≤pun(t) ≤pmax,∀u∈U,n∈N。其中Iu表示终端设备u的任务量。假设一个特定的区域,等式(9)表示为pun与E的关系:
粒子位置XK={Xm1,Xk2,…,Xkm,…,XkM}表示所有任务卸载到相应MEC 服务器。粒子速度VK={Vk1,Vk2,…,Vkn,…,VkM}表示任务卸载到其他服务器的时间跨度。其中,k表示k个粒子的群,m是移动设备总数。
其中,Lk代表粒子的最佳单个位置,G代表粒子的最佳全局位置,ω为恒定惯性重量,c1、c2表示两个加速度系数,r1、r2表示(0,1)中的随机变量。
通过使用sigmoid 函数将速度转换为[0,1]内的概率:
该粒子位置根据以下规则转换为二进制变量:
通过定义自适应度函数来评估解的可行性。Fit(Xk)表示每个粒子在Xk处的自适应度,定义自适应度函数为:
算法1:标准二进制粒子群优化算法(BPSO)
所以以上可以分为两个问题:请求卸载问题与资源调度问题。
请求卸载问题:
资源调度问题:
将粒子群规模K设置为25,迭代次数设置为5000次,设置参数ω=2,c1=c2=2。JROPSO 算法如下。
算法2:基于粒子群优化算法的联合资源分配和计算卸载决策算法(JROPSO)
输入:粒子群大小K,最大迭代次数Tmax,收敛标准ζ,参数ω、c1、c2;
输出:全局最优个体。
为了评估所提出算法的有效性,本文在Matlab R2019-b 中进行仿真实验。本次仿真场景由多个移动设备、一个宏基站、多个微基站构成,根据移动设备所在的位置确定进行边缘计算的区域,与其对应的微基站进行关联。具体仿真参数见表1。
表1 仿真参数
本文将BPSO 和JROPSO 算法性能与以下具有代表性的方法进行比较:模拟退火算法(SAPA)[17]、基于多区域随机调度请求卸载策略算法(ROGS)[18]和基于二分法的调度优化策略改进算法(HOBS)[19]。
3.2.1 BPSO 算法
收敛曲线展示两种算法迭代结果后的收敛情况,绘制得到的两种算法的收敛曲线如图2 所示。
图2 算法能耗值优化收敛曲线
BPSO 算法与经典模拟退火(SAPA)算法比较表明,BPSO 算法不仅能耗优于SAPA 算法,同时BPSO 的收敛效果也较好,可以在短时间内达到最小能耗。
在U={12,20,32,40,60}且pmax=5 W 的情况下不同算法的能耗值对比图如图3 所示。设定不同的pmax参数,BPSO 的能耗如图4 所示。
从图3 可知,总体能耗随着移动设备数量增加而提高,BPSO 的能耗在不同移动设备数量情况下始终小于SAPA,说明BPSO 起到了更好的优化作用。从图4 可知,pmax越大,能耗越大。因为系统设定最大功率越大,设备传输的平均传输功率增加,所造成系统能耗增加。
图3 能耗与移动设备数量关系图
图4 能耗与最大功率关系图
3.2.2 JROPSO 性能评估
假设系统中所有微基站的计算能力相同,fn=70 GHz,并且移动设备的卸载请求是相同的,Cq=1 500 MHz,Dq=700 KB,Tgq=0.5 s,Tbq=0.65 s。不同工作负载在移动设备数量U={12,20,32,40,60}时的效用值曲线如图5所示。
图5 不同工作负载与系统效用值关系
从图5 可知,系统效用值随着设备增多而增加。当设备数量一定时,工作负载增加,效用值降低。因为系统中计算资源有限,当工作负载增加会占用计算资源,而导致效用值降低。
据工作负载的输入大小来比较JROPSO 的性能,可以得到不同Cq值下的系统效用值,绘制得到的关系图如图6 所示。
图6 不同工作负载下的效用值
由图6 可知,在(U=60,Dq=700 KB)不同工作负载的情况下,JROPSO 的性能总是优于其他算法的性能。
定义系统的响应率为请求容忍延迟内完成计算数量与请求总数的比值,由于微基站计算能力相同,因此假设微基站中的平均功率PSBS相同,因此可以转换为实际消耗能耗与总消耗能耗的比值。在U=60,Dq=700 KB 的情况下,不同工作负载产生系统响应率曲线如图7 所示。
由图7 可知,JROPSO 响应率曲线高于另外两种算法。随着工作负载的增加,系统效用值降低,响应率减少,但是随着工作负载的增加,JPOPSO 响应率下降速度加快,而HOBS 响应率下降速度保持稳定,可见HOBS 在高工作负载情况下表现较好。
图7 不同工作负载与响应率关系
不同算法分别在不同请求数据下得到的效用值关系与响应率曲线如图8 和图9 所示。
图8 不同请求数据下的效用值
图9 不同请求数据下的响应率
JROPSO在效用值方面略优于ROGS,但是不及HOBS。JROPSO 的响应率表现最好,在优化过程中降低了系统效用率来提高系统响应率。并且随着请求负载的增加,大量数据的输入增加了系统的传输延迟,导致系统响应率的降低。
边缘计算已经成为5G 网络中的前沿技术,边缘计算能够将计算任务从移动设备卸载到边缘服务器,来解决特定于移动设备的限制。本文开发了一种高效算法,用于5G 网络中多边缘服务器体系结构的计算卸载策略。本文提出BPSO 算法,通过优化发射功率使系统传输能耗最小化;然后研究资源分配与计算卸载决策策略,开发了JROPSO 算法,得到了在不同请求数据和请求负载下相较ROGS、HOBS 算法更好的效果。未来拟对于资源分配与计算卸载双重决策问题进一步深入研究,寻求更优化的解决方案。