基于能耗与延迟优化的移动边缘计算任务卸载模型及算法
2022-08-18战俊伟
战俊伟,庄 毅
(南京航空航天大学计算机科学与技术学院,江苏 南京 211106)
0 引 言
随着移动互联网的发展,出现了越来越多的新型应用,例如虚拟现实、人脸识别、物联网等。这些新兴应用和设备往往对延迟和能耗具有较高的要求,若使用传统的云计算将任务上传到云端处理,具有较高的时延,影响执行效率。为了应对这一巨大的挑战,许多研究人员提出不同的解决办法,通过灵活分配计算,增加存储、带宽等手段来实现低延迟和低能耗[1]。
移动边缘计算作为一种新的5G网络架构,是指在移动终端附近部署高性能的边缘服务器,将边缘设备产生的任务部分卸载到边缘服务器执行,与本地计算相比具有节能作用,但同时也增加网络负载和传输延迟[2];与云服务器相比,边缘服务器具有更好的灵活性以及较低的延迟[3]。当前,学者们针对移动边缘计算任务卸载方面已有一些研究工作,主要包括对时延、能耗的优化以及考虑卸载代价和服务质量,同时也提出一系列任务卸载系统模型,主要有一对多、多对一、多对多卸载模型,一些学者结合启发式算法、机器学习算法进行求解[4]。考虑到边缘服务器的计算能力有限,并且在超密集网络中的边缘计算任务卸载会相互产生干扰,增大传输延迟,因此不能把所有的计算任务都卸载到边缘服务器上[5]。虽然本地计算不会产生传输延迟,但处理计算量较大的任务耗时过多,能耗较大,不宜将计算密集任务放在本地计算[6]。且本地移动设备电量有限,在不同电量下采用相同的卸载策略可能造成卸载失败。结合启发式算法求解的任务卸载决策时,算法收敛较快,易陷入局部最优解,具有局限性[7]。因此,有必要研究相关的任务卸载算法和模型,以提高卸载效率和可靠性。
本文的主要研究工作如下:
1)针对移动边缘计算系统建模问题,提出一个基于能量延迟优化的移动边缘计算任务卸载模型,包括网络、通信、时延和能耗等要素。本文采用加权和的方式来计算系统的总开销,并且将设备剩余电量引入到加权因子的定义中,用来改进设备在不同电量下的卸载决策。该模型具有延长设备使用时间,同时优化任务卸载时延和能耗的优点。
2)针对求解移动边缘计算任务卸载决策的算法问题,提出一种基于改进遗传算法的移动边缘计算任务卸载算法。该算法结合传统遗传算法,改进其交叉变异操作,以寻找最优卸载决策,改进了传统遗传算法交叉变异行为单一、前期收敛过快的缺点。改进后的任务卸载算法求解范围更大,能够避免局部最优解,利于寻找最优任务卸载决策。
最后,本文构建仿真实验平台,通过提出的模型和算法对比实验,验证本文算法的优越性;使用改进后的算法可计算不同场景下的系统时延、能耗以及总开销;为解决移动边缘计算任务卸载问题提供一种有效的方法。
1 相关研究工作
现有的移动边缘计算任务卸载问题,针对不同的卸载指标,可以分为最小化时延、最小化能耗以及时延能耗权衡等。
在移动边缘计算任务卸载中,以最小化时延为目标,已有Kiran等人[8]研究移动边缘计算中的资源分配和任务卸载问题,其提出减少边缘计算系统的延迟的模型,使用基于Q学习的强化学习方法来解决最小化时延问题,与传统强化学习方法相比,具有大幅减少时延的优点。Chen等人[9]建立超密集网络下的边缘计算模型,提出将最小化时延问题转化为2个子问题求解的方法,使用凸优化方法进行求解。该算法和传统随机卸载方案相比,优点是可以减少20%的任务时间,节省30%的能量消耗。Yang等人[10]研究多用户计算卸载和边缘云资源的调度,目标是为所有用户实现最小时延,设计一种离线启发式算法,优点在于算法复杂度不高易于实现,且性能较经典作业调度算法平均高10%。
以最小化能耗为目标,Zhao等人[11]研究异构云的移动边缘计算任务卸载,目标是在时延限制内最小化系统总能耗。其提出的离散化近似算法与任务在本地设备执行相比,可以减少82.9%能耗,不足之处在于卸载时延较大。Yu等人[12]研究基于移动边缘计算任务卸载和资源分配策略,提出一种基于梯度下降的迭代算法,与固定卸载比例算法相比优势明显,可以节约40%~60%的能耗。FANG等人[13]研究多用户随机任务边缘计算系统的任务卸载问题,提出通过合理分配本地资源来减少能耗的任务卸载的方法,该方法的优点在于考虑了CPU频率缩放以及设备发射功率分配,能耗较小,而且节约本地资源。
目前已有一些学者同时考虑能量消耗和执行延迟,如Dinh等人[14]提出联合优化任务卸载决策和SMD的CPU周期频率的方案,考虑了固定CPU频率和弹性CPU频率2种情况,使总任务执行延迟和边缘设备的能耗最小。Wang等人[15]提出同时优化计算卸载决策、物理资源块分配和MEC计算资源分配3个方面,在时间和能耗上使整个系统的总消耗最小。其优点在于考虑多方面因素,采用加权因子来定义能量消耗和延迟的加权总和作为研究目标。刘继军等人[16]综合考虑资源分配与卸载决策联合优化的问题,采用信道分配算法为卸载任务分配信道资源,并对卸载任务采用资源竞争算法来分配计算资源,能有效提高卸载任务的传输速率。然而以上文献的不足之处在于没有考虑设备剩余电量与时延与能耗权重因子之间的关系。
在移动边缘计算系统建模方面,可以分为一对多、多对一、多对多、D2D(Device to Device)等多种方式。Zhang等人[17]提出了建立多对一的移动边缘计算模型,考虑了多用户之间的网络干扰,权衡系统时延和能耗来以获取最优卸载决策。Liu等人[18]建立了多用户单服务器的移动边缘计算模型,考虑了多用户网络之间的干扰,将问题归纳为最小化用户代价和最大化MEC计算收益,并使用博弈论方法求解,有效解决任务卸载决策问题。Saleem等人[19]建模采用D2D的方式,考虑了边缘设备之间的任务卸载问题,提出联合任务卸载和资源分配的解决方式,其优势在于可以充分利用边缘设备上的闲置资源,但现实场景中较难实现。
在算法方面,Ezhilarasie等人[20]将粒子群算法和遗传算法相结合来求解任务卸载问题,提出新的惯性权重,利用遗传算法的探测能力和粒子群算法的开发能力,使算法较易实现且求解结果更加精确。Huang等人[21]提出了使用改进的遗传算法进行求解,考虑任务执行顺序、位置和安全性,并设计了相应的SEECO任务卸载策略,能够提高移动应用的能效和安全性。Wang等人[22]使用深度强化学习算法进行求解,优点是算法复杂度适中且求得的解较传统启发式算法好,但缺少训练模型。Zhuo等人[23]提出了一种基于改进遗传模拟退火算法的任务卸载策略,将遗传算法与模拟退火算法相结合,有效改善单一算法的不足,但该方法求解迭代次数较多。
综上所述,虽然以往任务卸载模型和算法研究较多,但仍存在不足,一方面模型未考虑部分场景边缘服务器较多,单用户的任务可选择多个服务器进行任务卸载的场景;另一方面任务卸载算法存在收敛过快、易陷入局部最优解的缺点。因此本文提出一种基于时延能耗优化的一对多的任务卸载模型,并设计基于改进遗传算法的任务卸载算法来进行求解。
2 系统模型和问题公式
移动边缘计算的关键是解决边缘设备产生的任务流,其中,对时延要求较高的任务适合留在本地处理,对能耗要求较高的任务可以卸载到边缘服务器处理。本文采用边缘服务器(Mobile Edge Computing, MEC)处理任务卸载,其不仅具有通信能力,还提供边缘计算能力。现有的任务卸载模型大多只考虑任务卸载的时延和能耗,忽略本地设备剩余电量对任务卸载的影响[24]。因此本文提出一种根据设备剩余电量动态改变权重因子的任务卸载模型,可减少任务卸载的总开销并提高设备的使用时长。
2.1 网络模型
考虑一个有N个独立任务的移动边缘设备(Mobile Device, MD),这些任务中的每一个都可以由移动边缘设备的CPU本地处理或者卸载到附近的任意一个边缘服务器上进行计算,并将计算产生的结果返回给设备,任务卸载框架如图1所示。
图1 任务卸载框架图
在用户的边缘设备上产生某一任务集tasks={1,2,3,…,N},各子任务之间相互独立,任务可卸载设备的CPU集合为CPUs={0,1,2,3,…,M},其中M为0时表示移动边缘设备的本地CPU,当M不为0时表示边缘服务器的CPU。边缘设备产生的任务集中的每一个任务需要决定留在本地计算还是卸载到MEC计算。
本文用元组{di,ci,timax}表示子任务i的各项数据,其中di为任务数据大小(bit),ci为处理任务所需的CPU周期数,timax表示每个子任务的最大容忍时延。假设在任何执行之前,要处理的数据量是已知的,数据量大小不规则,每个边缘服务器向边缘设备提供固定的CPU频率fk。本文中,使用二进制变量xik表示任务卸载决策,xik=1,任务在CPUk处理,若xik=0,任务不在CPUk处理。
卸载的任务需要通过无线传输到边缘服务器执行,在本文中假设用户采用彼此正交的无线信道,因此用户在计算卸载过程中不同的边缘服务器之间的信号不会互相干扰。边缘设备与边缘服务器之间的传输速率为rk表示如式(1)[25]所示:
(1)
其中,Bk是第k个边缘服务器分配给边缘设备的上行通道带宽,P为边缘设备的传输功率,hk为边缘服务器和边缘设备之间的上行通道增益,σ2是噪声功率。
2.2 时延模型
定义ti为某一任务的时延,fk(k∈(O,M))为CPU计算频率,当k=0时,f0为本地设备的CPU计算频率,当k≠0时,fk表示边缘服务器的计算频率。
因此,本地计算时延tl为:
(2)
当任务卸载到边缘服务器计算时,边缘服务器可以在接收完全部任务后开始处理所有任务,也可以在接收前几个任务后开始处理部分任务,同时可接收更多任务。第2种情况将使分析更加困难,因为任务在边缘服务器上的到达顺序极大地扩大决策域。因此,为了简单起见,本文假设MEC在接收完所有任务后开始处理任务。其中,任务卸载时延包括传输时延和MEC计算时延,计算时延tc为:
(3)
由于任务在边缘服务器计算后产生的结果通常很小,因此在本文中,忽略结果返回本地设备的时延,只考虑任务上传产生的传输时延tu为:
(4)
分子任务在本地处理的同时,剩余子任务会卸载到边缘服务器执行,因此,总的时延T为本地计算时延和卸载产生时延的最大值,可表示为:
T=max(tl,tc+tu)
(5)
2.3 能耗模型
任务在本地计算时,不同的CPU频率会影响本地计算的功率从而影响到本地能耗。在本文中,假设本地设备采用固定的CPU频率进行计算,本地计算能耗ei表示如式(6)[26]所示:
ei=κ(f0)2ci
(6)
其中,能耗系数κ是与移动设备的芯片结构相关的常数。本地任务的总能耗el为所有在本地处理的子任务产生的能耗之和,表示如式(7)所示:
(7)
由于本文忽略了任务结果返回的时延,因此也应忽略计算结果返回接收时的能耗,只需考虑任务卸载产生的能耗,传输能耗ec表示如式(8)所示:
(8)
本文中,假设无需考虑卸载任务在边缘服务器产生的计算能耗,只考虑本地计算能耗和传输能耗。因此,总能耗E为本地能耗与传输能耗之和,表示如式(9)所示:
E=el+ec
(9)
在任务执行过程中,边缘设备的执行延迟和能量消耗都是至关重要的,这与用户体验和边缘设备电池的能量限制有关,因此一般使用加权因子来研究能量消耗和延迟之间的权衡。加权因子可以由用户自行定义,以满足用户特定的需求。通过调整权重因子可以节省更多的能量或减少延迟。本文将电池的剩余能量率带入本文模型的权重因子中,定义见式(10):
(10)
其中,eres是边缘设备的剩余电量,etotal是总的电池容量。
本文使用时延能耗加权和来描述任务卸载的总开销,权衡时延和能耗对任务卸载的影响。定义时延能耗加权因子可使设备在电量充足时更多考虑时延因素,将多数任务在本地处理,充分发挥本地计算低延迟的优点,当设备电量不足时提高卸载任务的数量,减少边缘设备的能耗,提高设备的使用寿命。其中,剩余电量影响的时延加权因子wt定义为:
wt=ln[λ(ew-1)+1]
(11)
式(11)中,w是用户自定义的时延权重因子,例如当w=0.5时,表示时延和能耗因素对用户同等重要,wt则为考虑剩余电量因素后的修正时延权重因子,由于时延能耗权重之和为1,则能耗加权因子we为:
we=1-wt
(12)
系统总开销W即时延能耗加权和如式(13)所示:
W=wtT+weE
(13)
加权和法作为求解多目标优化的方法之一,因其简单易懂、易于实现而得到广泛应用。本文的边缘计算任务卸载问题可以看作求解多目标优化问题,本文中优化的目标是时延和能耗,使卸载方案在同时满足时延能耗需求的前提下达到总开销最小化。其中,时延和能耗的权重系数反映系统偏好,当系统对时延要求较高时,可以适当提高时延权重系数,当系统对节能要求较高时,可以提高能耗权重系数。例如,当用户只关心设备电量消耗时,可以设置wt=0,we=1。
本文的边缘计算任务卸载问题是寻找到最小化总开销的卸载策略,可以转化为公式(14)的求解:
C3:xik∈{0,1}
(14)
约束C1保证每个任务的执行时间不大于任务的最大容忍延迟;约束C2保证总的能耗不超过设备的剩余能量;约束C3表示任务只能卸载到边缘服务器或在本地执行。
由于本文移动边缘计算任务卸载问题是多目标组合优化问题,复杂度较高,可以采用启发式算法[23]求解该类问题,本文中采用改进的遗传算法求解。
3 基于改进遗传算法的任务卸载算法
移动边缘计算任务卸载可以结合传统启发式算法,遗传算法是常用算法之一。为了得到任务延迟满足任务要求、能量消耗较小、总开销较小的任务卸载算法,本文对传统的遗传算法进行改进,改进交叉变异行为,减缓遗传算法前期的收敛速度,从而提高解空间的搜索范围,并且有利于在种群进化后期跳出局部最优解,能更好地解决移动边缘计算任务卸载问题。
3.1 染色体编码与解码
染色体编码有很多种方式,可以采用二进制编码,也可采用实数编码。本文采用十进制的实数编码方式,若一个种群大小为s,任务总数为N,边缘服务器总数为M个,则初始化种群如下:随机生成s个染色体,染色体长度为N,每个染色体上的基因随机取,取值范围为[0,M]。
染色体C={c1,c2,ci,…,cN},其中当xik=1时ci=k,表示当任务i卸载到第k个边缘服务器时,染色体第i个位置的基因为k。例如C={1,0,2,…,1},表示任务1卸载到1号边缘服务器,任务2在本地计算,任务3卸载到2号边缘服务器,以此类推。
3.2 适应度评估
在遗传算法中,适应度是评价个体基因优劣的标准,通常选取适应度值较大的个体进行交叉变异从而将优秀的基因遗传到下一代,实现种群进化。
本文中评价边缘计算任务卸载策略的性能指标是所有任务的完成时间和边缘设备能耗的加权和,对于一种卸载策略,其总时延为T,总的能耗为E,总开销为W,因此总开销越小的个体其适应度越大,适应度li如式(15)所示:
(15)
3.3 选择操作
在进行交叉操作前,需要选择父代个体。本文采用基于适应度的轮盘赌选择法从父代中选取个体遗传到下一代,适应度越大的染色体被选择的概率越高,适应度较低的个体也有机会遗传自己的基因。
在本文的边缘计算任务卸载方法中,适应度越大的种群个体代表其任务卸载的总开销越小。假设种群中有s个个体,首先需要根据适应度函数计算种群中每个个体的适应度,然后计算出每个个体被选择的概率q(s),计算方式如式(16)所示:
(16)
3.4 交叉、变异操作
交叉的作用是保持种群的稳定性并使种群朝着最优解的方向进化,变异的作用是避免种群陷入局部最优解,提高种群的多样性。但是,传统的遗传算法交叉变异操作过于简单,前期收敛较快,种群容易陷入“早熟”,且算法局部寻优能力较差,难以寻找到全局最优解,使得进化结果并不理想。本文中,对交叉变异操作进行一系列改进,提出4种不同的交叉变异行为,并设置随种群进化动态变化的交叉变异概率来减缓种群前期收敛速度以提高解空间搜索范围,并提高种群后期寻优能力以寻找更优的卸载方案。
3.4.1 单体分解
发生单体分解的染色体分解后产生2个染色体,在原染色体C中随机选择一个分解点h1,新染色体C1保留原染色体C的{c0,c1,…,ch1}部分的基因,新染色体C2保留原染色体的{ch1,ch1+1,…,cN}部分的基因,C1和C2剩余的基因位随机生成,从而得到2个新的染色体,即产生2种新的卸载策略,如图2所示。单体分解随个体适应度的动态执行概率p1如式(17)所示:
图2 单体分解示意图
(17)
其中,lmax和lmin分别表示种群中的最大和最小适应度,表示当前个体的适应度。
新的染色体与原染色体在基因结构上差别较大,使得该过程能搜索更大的解空间,避免算法陷入局部最优解。
3.4.2 双体组合
双体组合是2个染色体进行染色体组合操作,选择2个染色体C1和C2,随机生成一个组合点h2,新染色体继承原染色体C1的{c0,c1,…,ch2}部分的基因和原染色体C2的{ch2,ch2+1,…,cN}部分的基因,生成一个新的染色体如图3所示。双体组合随种群进化的动态执行概率p2如式(18)所示:
图3 双体组合示意图
(18)
其中,ps2为初始执行概率值,pe2为结束执行概率值,Iter为当前种群进化代数,Itermax为算法最大迭代次数。
新染色体C极大地破坏原染色体的基因结构可产生染色体突变,这有利于使种群呈现多样化,极大地扩大解空间的搜索范围。
3.4.3 间隔互换
间隔互换是指2个染色体相互间交叉易位的操作过程。从原染色体C1和C2中选择多个交叉易位点h31、h32,交换对应点的基因,生成2个新的染色体,得到2种新的卸载策略,如图4所示。间隔互换随种群进化的动态执行概率p3如式(19)所示:
图4 间隔互换示意图
(19)
其中,l1与l2分别表示2个染色体的适应度。
交叉易位的染色体个数u1计算如式(20)所示:
(20)
新染色体与原染色体在结构上具有相似性,又吸收不同的基因,有利于在邻域空间内搜索最优解,跳出局部最优解,使得种群进化。
3.4.4 双体交叉
双体交叉是2个染色体相同位置连续的若干基因发生交叉换位。对于2个染色体C1和C2,随机选择一个交叉点h4,对交叉点后的基因位置互换,生成2个新的染色体如图5所示。双体交叉的动态执行概率p4如式(21)所示:
图5 双体交叉示意图
p4=1-p1-p2-p3
(21)
交叉易位的染色体个数计算如式(22)所示:
(22)
新生成的染色体包含原染色体的大部分的基因,并加入其它染色体的少数基因,有利于生成更好的个体,利于种群的进化,形成更好的卸载策略,但也有可能使新生成的个体适应度更差。
3.5 移动边缘计算任务卸载算法
基于改进遗传算法,本文设计移动边缘计算任务卸载算法,算法具体步骤如下:
Step 1初始化。
Step 1.1生成移动边缘设备产生任务的数据量大小,计算所需的CPU周期数、最大时延;
Step 1.2用户输入自定义时延权重因子和设备剩余电量;
Step 1.3初始化遗传算法,用户自定义遗传算法种群大小、迭代次数;随机初始化种群,生成一批任务卸载策略。
Step 2计算任务卸载策略时延。分别计算本地计算时延、边缘服务器计算时延、传输时延,根据式(5)求出总时延。
Step 3计算任务卸载策略能耗。分别计算本地能耗、传输能耗,根据式(9)求出总能耗。
Step 4计算系统总开销。分别计算时延、能耗加权因子,根据式(13)求出任务卸载总开销。
Step 5计算每个卸载策略是否满足式(14)的限制条件,若满足则保留对应的种群个体。
Step 6计算所有种群个体的适应度大小,并计算种群个体被选择的概率。
Step 7按轮盘赌选择法选出种群个体,计算各种交叉变异操作概率,根据概率选择要执行的操作。
Step 7.1对于选出个体,根据式(17)计算单体分解概率,根据式(18)计算双体组合的概率,根据式(19)计算间隔互换的概率,根据式(21)计算双体交叉的概率;
Step 7.2进行间隔互换的个体,根据式(20)计算互换基因个数;进行双体交叉的个体,根据式(22)计算交叉的基因个数。
Step 8循环Step7直到生成新的种群,更新边缘计算任务卸载策略。
Step 9重复执行Step2~Step8,达到算法迭代次数后,输出最终的移动边缘计算任务卸载决策和系统总开销。
算法1移动边缘计算任务卸载算法
输入:di,ci,timax,w,eres
输出:mobile edge computing task offloading strategy and the total overhead
1.initialize the popsize and iteration, generate the first chromosome population,then generate task offloading strategy
2.whilei 3.calculate total time based on(5) // local compute time,MEC compute time and transmission time 4.calculate total energy based on(9) // local and transmission energy 5.calculate total cost based on(13) 6.estimate the rationality of the offloading strategy by(14) 7.calculate the fitness of all chromosomes and calculate selectionprobabilities 8.whilei 9.select chromosomes by probabilities 10.calculate the probability ofp1by(17) 11.calculate the probability ofp2by(18) 12.calculate the probability ofp1by(19) and the value ofu1by(20) 13.calculate the probability ofp4by(21) and the value ofu2by(22) 14.crossover and variation based on probabilities to genarate new populations 15.end while 16.update the task offloading strategy 17.end while 18.return Strategies //Output the offloading strategy 本文考虑一个多任务-多边缘服务器的场景,某用户的设备上随机产生一批任务,任务大小在500~1000 kB,任务的最大容忍时延为0.3 s,任务可以留在本地设备上处理,也可以卸载到边缘服务器进行计算,其中本地设备计算能力为1.2 GHz,边缘服务器计算能力为6 GHz,网络带宽为30 MHz,具体实验参数如表1所示。 表1 实验数据 设计共有5种实验方案,方案1、方案2、方案3分别表示当时延权重为0.2、0.5、0.8的任务卸载策略,方案4为任务全部卸载到边缘服务器执行,方案5为任务全部在本地执行。 图6为时延与任务卸载方案的关系,图中横坐标表示系统随机产生的任务数量,纵坐标表示卸载方案的总时延。可以看出当所有任务都在本地执行或都卸载到边缘服务器执行时,时延较部分卸载方案大,这是由于部分卸载方案为并行计算,时延取本地和边缘计算时延的最大值,因此时延会比其它2种卸载方案小。在所有的部分卸载方案中,当任务数相同时,随着时延权重的增大,系统总的时延不断减小,权重越大,时延越小。 图6 时延与卸载方案关系图 图7为系统能耗与任务卸载方案的关系,可以看出当任务全部在本地执行时能耗最大,全部卸载的能耗最少。在所有的部分卸载方案中,随着能耗权重的增大,任务卸载能耗不断减少。当部分卸载能耗权重为0.8时,所有任务的能耗接近于全部卸载的能耗。用户可以通过调大能耗权重参数,来减少系统总能耗。 图7 能耗与卸载方案关系图 本文提出的边缘计算任务卸载模型中,引入剩余电量对任务卸载的影响,考虑一个有80个任务的边缘计算任务卸载过程,任务对时延的要求较高,因此用户初始自定义时延权重为0.8,设备的剩余电量为20%~80%。 在图8中,当设备剩余电量为80%时,任务处理的时延较低而能耗较高,符合用户最初对时延要求较高的期望。随着电量的降低,系统总的时延逐渐提高而能耗降低,设备电量越少时,能耗越低,满足设备在低电量下的运行需求。可以看出,时延权重因子的引入虽然使系统损耗部分时延性能,但可使设备更加节约能量。 图8 总代价与剩余电量关系图 在本文中,设计一种基于改进遗传算法的任务卸载算法,将本文算法与季子豪等人[27]算法比较,其使用基于精英策略的遗传算法求解任务卸载问题。图9显示本文任务卸载算法在种群进化时的优势,可增大种群进化前期的交叉变异概率,减缓算法收敛速度,增大解空间搜索范围。在几乎相同的迭代次数下,本文改进后的算法后期寻优能力更强,可避免传统遗传算法前期收敛较快,较早地收敛于局部最优解,难以寻找到全局最优解的缺点。 图9 适应度与迭代次数关系图 本文针对多任务多边缘服务器的移动边缘计算任务卸载问题,构建移动边缘计算任务卸载模型,研究边缘计算的时延和能耗优化问题,并考虑设备剩余电量对任务卸载的影响。为了使得系统总开销最小,本文提出一种基于改进遗传算法的任务卸载算法。该算法能够扩大解空间搜索范围,避免陷入局部最优解。仿真结果表明,改进后算法能够合理权衡时延和能耗,时延和能耗随着任务数增大而增大,随着权重因子的增大而减小。验证通过用户自定义权重因子,可以改变系统对时延或能耗的偏重程度,不同的权重在不同数量的任务下都能求出系统总开销最小的任务卸载方法。改进后的算法在迭代求解时,前期探索空间大,曲线波动较大,后期趋于稳定且能够寻得更优解。 本文为解决移动边缘计算任务卸载问题提供了一种合理的解决方案,可以帮助用户减少时延并节约能量。但本文未考虑多用户场景下的任务卸载问题,需要进一步研究,继续探索网络传输干扰以及资源分配等对任务卸载的影响。4 实验与结果分析
5 结束语