一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种智能车辆边缘计算网络的资源分配方法与流程

2021-10-24 06:41:00 来源:中国专利 TAG:网络资源 计算机信息 边缘 分配 车辆


1.本发明涉及一种智能车辆边缘计算网络的资源分配方法,属于计算机信息技术领域。


背景技术:

2.随着车辆应用,移动设备和物联网的发展,开发出一种有效的架构来处理车联网中的大数据(iov)已成为未来智慧城市的关注热点。移动边缘计算(mec)是5g以及6g的关键技术之一,它将计算和存储资源迁移到终端用户附近,以克服云计算中数据集中处理的固有缺陷。之前的文献中研究了协作边缘计算的体系结构,其中分布式mec服务器(mecs)以一种有效协同的方式为本地用户提供服务。此外,mecss的集成促成了需要mec服务器彼此之间协同工作的应用,特别是在大数据和物联网中的应用。从这个角度来说,我们展示了一些协作边缘计算(cec)的具体应用。例如,移动性支持和服务迁移,多源数据采集,分布式计算和存储以及多路径数据传输。
3.然而,静态地配置一对mecs之间的映射,使得车辆系统难以适应交通负载的变化[7]。因此,协作架构出现了新的挑战:负载分布不均匀时mecss的负载均衡。通过将计算工作负载从过载的mecss卸载到空闲的mecss的并行处理,iov网络的非均匀分布式数据量可以很好的平衡,因此减少了任务响应时间。此外,经过mecs中配置的虚拟机(vm)进行工作负载重新分配和动态重置之后,优化了cec网络中计算资源的利用率。
[0004]
负载均衡的主要应用场景包括服务器和链接的负载均衡。之前的一些文献中研究了服务器的协作以提高系统性能,例如,tam et al.调查了考虑了有限回程能力下的联合负载均衡和干扰管理策略;oueis et al.提出了一种聚类算法,在保证通信能量消耗较低的情况下最大化用户的满意度;li et al.开发了一种工业移动无线网络中的动态自适应负载均衡算法。在这些文献中,工作负载迁移发生在具有较大负载和较小负载的服务器之间,而忽略了响应时间阈值,以至于导致了频繁且不必要的负载均衡操作。
[0005]
为了克服云计算中数据集中处理的固有缺陷,移动边缘计算(mec)将数据存储和计算带到了更靠近终端用户的边缘位置,引起了广泛关注。然而,访问车辆的不均匀分布以及大量的计算数据导致各种移动边缘计算服务器(mecss)之间的工作负载多样性。


技术实现要素:

[0006]
针对上述现有技术存在的问题,本发明提供一种智能车辆边缘计算网络的资源分配方法,从而解决上述技术问题。
[0007]
为了实现上述目的,本发明采用的技术方案是:一种智能车辆边缘计算网络的资源分配方法,包括以下步骤;
[0008]
步骤一:采用cec

iov的分层资源管理模型,其中多个mecss的qos感知资源管理被标记为负载均衡问题;
[0009]
步骤二:为全局负载均衡问题开发了一种快速、可扩展的迭代mlml算法,其中负载
的迁入和迁出分别发生在欠载和过载情况下;
[0010]
步骤三:考虑到单个mecs的聚合负载,我们提出了一种qos感知资源管理方案和能量感知资源管理方案,通过优化配备在mecs的一组vms的工作负载和服务速率来最小化功耗;利用kkt条件解决制定的能效优化问题,获得了最佳解决方案的半封闭表达式;
[0011]
步骤四:与基准方案相比,数值结果验证了所提出的qos感知和能量感知资源管理方案的性能和优越性。
[0012]
进一步的,所述步骤一中cec

iov资源管理包括两个方面;
[0013]
qos,主要由cec

iov系统中的服务器时间决定;资源管理可以由全局协调器执行,通过将拥塞mecs的一部分业务到达率分配给空闲mecs来平衡负载;当工作负载平衡时,系统延迟会降低;
[0014]
能源效率,考虑mecss中数据通信和处理的能效优化,而不考虑mecss中的无线通信能量消耗。
[0015]
进一步的,所述步骤三中qos感知资源管理方案具体为mecss向协调服务器报告它们的工作状态,协调服务器会告知过载的mecss将一部分工作负载分配给空闲的mecss;通过控制访问控制路由器中的数据流可以实现该外层资源管理操作,并且mecs的vms中的操作保持不受干扰。
[0016]
进一步的,所述步骤三能量感知资源管理方案具体为在虚拟化mecss中,分配给每个vm负载的大小由自适应负载调度器控制,每个vm的服务速率可使用dvfs技术调节;而通过与外层资源管理合作,可以最小化内层资源管理获得的功耗;
[0017]
首先计算托管一组虚拟机虚拟化mecs的计算和通信成本;引入了一个数学优化问题来捕获mecs内部的主要操作以最小化功耗,并利用kkt条件来解决由此产生的凸问题;
[0018]
a能量消耗
[0019]
假设一个mecs附属的n
k
个虚拟机分别表示为v1,v2,

,v
c
,并且由于尺寸约束,它们的计算能力有限;然而分配给每个vm的工作负载大小可以由本地调度器根据总工作负载动态调整;此外,通过dvfs技术,每个vm都能够以经济高效的方式调整其服务速率以适应硬件和外部环境。
[0020]
虚拟化计算平台的总功耗:
[0021]
p
mecs
=p
comm
p
comp
p
tran
ꢀꢀꢀ
(19)
[0022]
其中p
comm
是由于mecs中的内部通信过程而消耗的能量,p
comp
是计算的功耗,p
tran
代表了从输出缓冲区传输数据的功耗;
[0023]
通信能量:从输入缓冲器到vm v
c
数据通信的能量消耗[22,23]可以表示为计算负载的函数ξ
c

[0024][0025]
其中γ是恒定比例因子;因此,可以得出
[0026][0027]
计算能量:对于vm v
c
,分配的工作负载表示为ξ
c
,最高服务率为umax c;当v
c
处于空闲状态时,其功耗为pidle c,并且当v
c
完全负载时,其最大功耗为pmax c;根据文献
[22],可以估计计算的功耗:
[0028][0029]
其中pidle c表示vm v
c
空闲状态消耗的静态能量,vm v
c
的动态能量因子pdyn c可由下式计算:
[0030][0031]
其中pidle c是vm v
c
能泄露的最大能量;α
c
是负载相关系数[27],表示为
[0032][0033]
其中u
c
∈[0,umax c]是可调整以适应mecs工作负载的vm v
c
服务速率,umax c是vm v
c
的最大处理速率;
[0034]
传输能量:令z表示输出缓冲区的传输速度,ζ表示服务器工作负载;我们假设z由来自输入缓冲区的总工作负载线性确定:
[0035][0036]
其中,η是一个常数。从输出缓冲器传出数据的功耗可以近似为[22,23]:
[0037]
p
tran
=ρ(ηζ)2ꢀꢀꢀ
(26)
[0038]
其中,ρ是一个恒定的缩放因子;
[0039]
因此,将mecs的总功耗重新表示为
[0040][0041]
b工作负载重新分配和服务速率缩放
[0042]
通过优化分配到每个vm v
c
的工作负载ξ
c
和其服务速率u
c
,可以最小化mecs的功耗:
[0043][0044]
其中c1中的(全局)约束保证了整个工作被划分为多个并行任务;约束条件c2保证vm v
c
在δ秒内执行分配的任务;
[0045]
公式(27)中的hessian矩阵[24]是正定的,分别为ξ
c
和u
c
,因此,(28)是一个凸优化问题

因此,公式(28)的优化问题具有零对偶间隙并满足slater约束条件[24]’零对偶间隙的结果提供了一种途径来获得方程(28)中原始问题的最优解,该问题由相应的对偶问题导出

为此,我们首先给出原始问题方程(28)的拉格朗日函数:
[0046][0047]
其中拉格朗日乘子μ用于约束c1,ω=ω
c
,c=1,2,...,n
kt
是c2的延迟约束,ω
c
表示vm v
c
的计算时间代价不超过所需的最大完成时间;事实上,这些乘法器是目标函数的惩罚因素,使其在相应的约束下向最优演化;这使用后续方法解决lagrangian

dual问题可以得到μ和ω
c
;原始问题(28)的对偶问题如下所示:
[0048][0049]
公式(30)中的对偶问题可以通过使用分层优化分解(lod)方法分解为两个子问题[25];第1级,公式(30)中的内部最小化是主要问题;第2级,公式(30)的外部最大化有助于找到最优解;需要注意的是公式(30)中的优化问题是凸的,等式之间存在零对偶间隙(28)和(30);因此,我们可以通过kkt条件[24]求解(30);
[0050]
设(ξ*c,u*c)和(μ*c,ω*c)是1级和2级问题的最佳解决方案;然后,根据kkt条件,得出下列表达式:
[0051][0052][0053]
结合公式(31)和(32),(ξ*c,u*c)的最优解可以写成
[0054][0055][0056]
公式(30)中的第2级问题可用次梯度法求解;对于给定的ξ*c和u*c集合,我们可以更新一组lagrange乘法算子:
[0057][0058]
ω
c
(k 1)={ω
c
(k) θ(k)[ξ
c
(k)

u
c
(k)δ]}

ꢀꢀꢀ
(36)
[0059]
其中,索引k>0是迭代索引,是正的迭代步长;然后,更新拉格朗日乘数在方程(35)和(36)可用于更新公式(33)和(34)中的功率感知资源管理方案,由于原始问题对优化变量是联合凸的,只要不断递减步长序列满足[24],[26],不管初始拉格朗日乘子是什么,都可以保证通过迭代求解一级和二级问题得到原始最优解;
[0060]
由于原问题对优化变量是联合凸的,只要满足一个递减步长序列[24],[26]
就可以通过迭代求解一级和二级问题得到原最优解,不管初始拉格朗日乘子是什么,都可以保证通过迭代求解一级和二级问题得到原始最优解。算法3说明了这个过程;
[0061][0062]
进一步的,所述步骤三中用于mecs的聚合负载的方案基于响应时间与总工作负载的变化对过载和空闲mecss进行了详细地判断,利用mecss上传的周期性,全局协调器可以默认已知资源管理的基本信息,如输入/输出缓冲区大小,流量到达速率,队列长度和输入/输出缓冲区的传输速率;方案首先计算每个mecs的响应时间,包括服务时间和网络延迟,而系统延迟由mecss的最大响应时间决定;然后,以迭代方式获得响应时间阈值;基于响应时间阈值,通过优化从过载mecss到空闲mecss的迁移负载来制定系统延迟最小化问题。
[0063]
进一步的,所述服务时间采集方法具体为考虑时间的不同请求,我们假设mecs k
的域流量速率根据到达率为l
k
的泊松过程随机到达;然后,通过下式计算mecs k的服务密度ρ
k

[0064]
ρ
k
=l
k
/n
k
u
c
ꢀꢀꢀ
(1)
[0065]
mecs k的服务器时间tser k为:
[0066][0067]
其中tser k(l
k
)是tser k对应l
k
的函数,tque k表示平均排队时间,tsc k表示代表平均服务时间;根据排队论,平均排队时间tque k:
[0068][0069]
平均服务时间:
[0070][0071]
排队系统保持稳定,例如,任务速度接近无穷大时,排队长度不能变成无穷大,否则无法保证mecs的延迟要求;稳定的m/g/n排队系统的充要条件是服务强度ρ小于1。
[0072]
进一步的,所述网络延迟时间因为不同mecss的交通到达率可以明显不同,故部分mecss可能发生阻塞,而另外的而一些mecss可能未被充分利用所导致的时间;
[0073]
两种类型的服务器分别表示为过载mecss和空闲mecss;d
th
表示响应时间阈值,在此基础上,mecss被划分为两个集合,v
s
表示过载mecss集:
[0074]
v
s
={i|t
iser
(l
i
)>d
th
}
ꢀꢀꢀ
(5)
[0075]
v
t
表示空闲mecss集:
[0076][0077]
假设所有mecss都可以彼此到达,每个过载的mecs i可以将其工作负载的一小部分分配给空闲的mecs j,因此产生了通信时延tcom ij;
[0078]
d
ij
表示从过载的mecs i到空闲mecs j路径的通信延迟;因此,当迁出工作负载从过载的mecs i卸载到空闲mecs j时,相应的通信时延tcom ij可由下式计算得出:
[0079][0080]
假设mecs只能同时与一个mecs通信,之后在空闲mecs中发生网络延迟tnet j为:
[0081][0082]
网络延迟仅在空闲mecss处发生,因为空闲的mecs j在过载mecss卸载任务之后再处理迁移负载;但是,没有将负载迁移到过载的mecss,所以tnet i=0.
[0083]
系统延迟:结合公式(2)和(8),mecs k的响应时间dres k可由下式计算:
[0084][0085]
其中表示mecs k产生的超载负载,是dres k相对于的函数;对于过载的mecs i和空闲mecs j,超载部分的负载分别表示为
[0086][0087][0088]
系统延时:系统时延d
sys
由系统中mecss的最大响应时间决定:
[0089][0090]
b.响应时间阈值;
[0091]
为了找到响应时间阈值d
th
和每个mecs的迁入/迁出负荷数量,我们估计了d
th
的值,并迭代精确d
th
的值直至d
th
和每个mecss的服务器时间tser k的差值在给定范围θ内;
[0092]
首先检查d
th
值的范围,令值的范围,令指定d
th
=(t
max
t
min
)/2为初始值,然后将mecss根据公式(5)和(6)分别划分为两个集合,即过载mecss v
s
和空闲mecss v
t

[0093]
对于每个过载和空闲的mecss,我们需要确定迁出工作负载φ
i
和迁入工作负载φ
j
,使得服务器时间满足:
[0094][0095][0096]
其中ε是给定的阈值。
[0097]
一旦确定了迁出和迁入工作负载,就可以获得具有最小网络延迟成本的迁移负载λ={λ
ij
|i∈v
s
,j∈v
t
};
[0098]
从过载mecss迁移负载到空闲mecss将在空闲mecss上产生网络延迟;因此,我们需要进一步调整以至于每个空闲mecs的响应时间都近似于d
th
,即dres j≈d
th
;然后,令如果d

和d
th
的差值低于给定阈值θ,则获得满足条件的d
th
;否则,通过d
th

(d
th
d

)/2选择d
th
,然后更新φ
i
,φ
j
,λ
ij
,和d

,以此得到更新后的d
th
;这个过程一直循环到|d
th

d

|≤θ为止;
[0099]
c延时最小化的工作负载均衡
[0100]
为了能够通过优化迁移负载来最小化系统延时,所以将负载平衡问题表示为
[0101][0102]
其中约束条件c1表示从过载的mecs i分配给所有空闲mecss的迁移负载应该等于
过载mecs i的预定义的迁出负载;约束条件c2表示从所有过载mecs迁移到空闲mecs j的迁移负载应等于空闲mecss j的预定义迁入负载;约束条件c3表示施加在过载mecs i和空闲mecs j之间的每个通信路径的负载都应该小于相应的迁出和迁入负载。
[0103]
进一步的,所述负载平衡问题通过算法一实现具有不均匀域流量速率的mecss的工作负载均衡;首先,基于初始响应时间阈值d
th
,分别获得过载mecss集和相应的迁出负载,以及空闲mecss集和相应的迁入负载;然后,通过算法2获得最佳迁移负荷;工作负载迁移完成后,动态调整d
th
,直到满足给定的精度范围θ;最后,协同边缘计算系统中的所有mecss都具有大致相同的响应时间;
[0104]
[0105]
[0106][0107]
算法2 hungarian迁移负载算法
[0108]
[0109]
[0110][0111]
d迁移负载匹配
[0112]
确定每个过载的mecs的迁出工作负载φ
i
和每个空闲mecs的迁入工作负载φ
j
,通过求解以下问题,可以得到通信代价最小的最优迁移负载λ
ij

[0113][0114]
使用多项式时间中的hungarian算法有效地解决,hungarian算法是一种组合优化方法,可以解决多项式时间中的分配问题;
[0115]
要将问题(16)转换为标准分配问题,我们首先进行以下定义:
[0116][0117]
因此,标准分配问题由下式给出:
[0118]
[0119]
其中z
ij
表示从过载mecs i的空闲mecs j的分配,z
ij
=1表示已分配,否则z
ij
=0;由于约束矩阵是完全幺模的,因此随着z
ij
的松弛存在一个最优整数解;为了说明用于解决问题(18)的hungarian算法,我们不失一般性地考虑|v
s
|=5和|v
t
|=3的简单情况;因为成本矩阵的行|v
s
|应该等于它的列|v
t
|,所以我们添加了两个额外的虚拟的空闲mecs 4和5;可以从图形角度看待上述问题:五个过载的mec,三个空闲mecs和两个虚拟空闲mecs;从过载mecs i到空闲mecs j的行表示成本d
ij
c
ij
的值,所有d
i4
c
i4
和d
i5
c
i5
都设置为0;不失一般性地将成本矩阵定义为n
×
n矩阵;
[0120][0121]
进一步的,所述hungarian算法的基本思想:从成本矩阵c的行和列中减去一个常数,将c约化为包含n个位于不同行和不同列中的零元素;然后,我们得到了与原成本矩阵中n个项的位置相对应的零的最优分配;最后,n个项的总和就是最小成本;对于分配问题,在成本矩阵c的任意行(或列)上加(或减)一个相同的数后,新的成本矩阵的最优解对于原成本矩阵也是最优的[21];因此,在构建n
×
n成本矩阵之后,我们提出算法2以找到最佳分配;为了清楚地解释用于解决(18)的算法2,我们不失一般性地演示了矩阵变换过程;
[0122]
详细步骤如下,
[0123]
步骤1:从每一行中减0并找到每个列的最小元素;
[0124]
步骤2:每列减去其最小元素,即,分别从列1,列2和列3中减去35,55和45,并从列4和列5中减去0;
[0125]
步骤3:用最少的水平线或垂直线覆盖行和列中的所有零;因为n大于覆盖线的数量,我们发现没有被任何一行覆盖的最小项数是10;
[0126]
步骤4:从没有覆盖线的所有行中减去10,并将10添加到具有覆盖线的所有列中;
[0127]
步骤5:用最小水平和垂直线条覆盖行和列中的所有零。由于覆盖线的数量为5,因此获得了零的最佳分配;从最少0个元素的行或列开始,圈出所有的零,然后划掉相同行和列中剩余的零;
[0128]
步骤6:圈出与圆圈位置对应的原始成本矩阵的元素;因此,最佳任务分配是z*12=z*22=z*34=z*45=z*51=1,最小成本为145;
[0129]
在获得(18)的最佳分配之后,(18)中的相应参数被更新,然后,制定新的任务分配问题(18);类似地,为了得到两组大小相等且代价相同的节点,添加附加的伪mecss以形成n
×
n成本矩阵。再应用hungarian算法解决(18),获得最佳分配,并且参数继续在(18)中更新。重复此过程,直到将所有未处理的工作负载从重载的mec发送到空闲mecs。
[0130]
本发明的有益效果是:在本文中提出了一种基于协作的边缘计算智能车辆网络(cec

iov)服务质量(qos)感知和能量感知资源分配的分层模型,并且分别优化了mecss的系统时延和能源效率。特别考虑了更改响应时间与mecss的工作负载,针对多个mecss之间的工作负载均衡问题提出最小延迟负载迁移(mlml)方案。通过同时从过载mecss和闲置
mecss中选择适当的响应时间阈值和迁移负载,很好地解决了具有不平衡工作负载的多个mecss的负载均衡问题。另一方面,通过在mecss的并行计算平台上执行工作负载重新分配和动态重置,将虚拟机(vm)置于mecs上的并行计算平台上,在保证对处理时延qos要求的同时优化了能量效率。利用kkt条件,将带有时延约束的能量最小化问题表述为一个凸问题,并获得了vms工作负载和处理速率最佳解决方案的半封闭形式。数值结果表明,与基准方案的性能相比,本发明的资源管理方案实现了更低的系统时延和更高的能效。
附图说明
[0131]
图1为本发明的cec

iov的分层资源管理示意图;
[0132]
图2为本发明的工作负载从过载mecss i到空闲mecss j示意图;
[0133]
图3为本发明的成本矩阵变换结构示意图;
[0134]
图4为本发明的收敛性比较示意图;
[0135]
图5为本发明的非合作算法响应时间分布示意图;
[0136]
图6为本发明的启发式算法响应时间分布示意图;
[0137]
图7为本发明的mlml算法响应时间分布示意图;
[0138]
图8为本发明的系统延迟与协作mecs的数量示比较意图;
[0139]
图9为本发明的系统延迟与平均通信延迟比较示意图;
[0140]
图10为本发明的系统延迟与平均流量到达率比较示意图;
[0141]
图11为本发明的算法3的收敛性比较示意图;
[0142]
图12为本发明的功耗与服务器工作负载比较示意图。
具体实施方式
[0143]
为使本发明的目的、技术方案和优点更加清楚明了,下面通过附图及实施例,对本发明进行进一步详细说明。但是应该理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限制本发明的范围。
[0144]
除非另有定义,本文所使用的所有的技术术语和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同,本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
[0145]
本发明为一种智能车辆边缘计算网络的资源分配方法,包括以下步骤;
[0146]
步骤一:采用cec

iov的分层资源管理模型,其中多个mecss的qos感知资源管理被标记为负载均衡问题;
[0147]
步骤二:为全局负载均衡问题开发了一种快速、可扩展的迭代mlml算法,其中负载的迁入和迁出分别发生在欠载和过载情况下;
[0148]
步骤三:考虑到单个mecs的聚合负载,我们提出了一种qos感知资源管理方案和能量感知资源管理方案,通过优化配备在mecs的一组vms的工作负载和服务速率来最小化功耗;利用kkt条件解决制定的能效优化问题,获得了最佳解决方案的半封闭表达式;
[0149]
步骤四:与基准方案相比,数值结果验证了所提出的qos感知和能量感知资源管理方案的性能和优越性。
[0150]
参照图1,步骤一中cec

iov资源管理包括两个方面;
[0151]
qos,主要由cec

iov系统中的服务器时间决定;资源管理可以由全局协调器执行,通过将拥塞mecs的一部分业务到达率分配给空闲mecs来平衡负载;当工作负载平衡时,系统延迟会降低;
[0152]
能源效率,考虑mecss中数据通信和处理的能效优化,而不考虑mecss中的无线通信能量消耗。
[0153]
步骤三中qos感知资源管理方案具体为mecss向协调服务器报告它们的工作状态,协调服务器会告知过载的mecss将一部分工作负载分配给空闲的mecss;通过控制访问控制路由器中的数据流可以实现该外层资源管理操作,并且mecs的vms中的操作保持不受干扰。
[0154]
步骤三能量感知资源管理方案具体为在虚拟化mecss中,分配给每个vm负载的大小由自适应负载调度器控制,每个vm的服务速率可使用dvfs技术调节;而通过与外层资源管理合作,可以最小化内层资源管理获得的功耗;
[0155]
首先计算托管一组虚拟机虚拟化mecs的计算和通信成本;引入了一个数学优化问题来捕获mecs内部的主要操作以最小化功耗,并利用kkt条件来解决由此产生的凸问题;
[0156]
a能量消耗
[0157]
假设一个mecs附属的n
k
个虚拟机分别表示为v1,v2,

,v
c
,并且由于尺寸约束,它们的计算能力有限;然而分配给每个vm的工作负载大小可以由本地调度器根据总工作负载动态调整;此外,通过dvfs技术,每个vm都能够以经济高效的方式调整其服务速率以适应硬件和外部环境。
[0158]
虚拟化计算平台的总功耗:
[0159]
p
mecs
=p
comm
p
comp
p
tran
ꢀꢀꢀ
(19)
[0160]
其中p
comm
是由于mecs中的内部通信过程而消耗的能量,p
comp
是计算的功耗,p
tran
代表了从输出缓冲区传输数据的功耗;
[0161]
通信能量:从输入缓冲器到vm v
c
数据通信的能量消耗[22,23]可以表示为计算负载的函数ξ
c

[0162][0163]
其中γ是恒定比例因子;因此,可以得出
[0164][0165]
计算能量:对于vm v
c
,分配的工作负载表示为ξ
c
,最高服务率为umax c;当v
c
处于空闲状态时,其功耗为pidle c,并且当v
c
完全负载时,其最大功耗为pmax c;根据文献[22],可以估计计算的功耗:
[0166][0167]
其中pidle c表示vm v
c
空闲状态消耗的静态能量,vm v
c
的动态能量因子pdyn c可由下式计算:
[0168][0169]
其中pidle c是vm v
c
能泄露的最大能量;α
c
是负载相关系数[27],表示为
[0170][0171]
其中u
c
∈[0,umax c]是可调整以适应mecs工作负载的vm v
c
服务速率,umax c是vm v
c
的最大处理速率;
[0172]
传输能量:令z表示输出缓冲区的传输速度,ζ表示服务器工作负载;我们假设z由来自输入缓冲区的总工作负载线性确定:
[0173][0174]
其中,η是一个常数。从输出缓冲器传出数据的功耗可以近似为[22,23]:
[0175]
p
tran
=ρ(ηζ)2ꢀꢀꢀ
(26)
[0176]
其中,ρ是一个恒定的缩放因子;
[0177]
因此,将mecs的总功耗重新表示为
[0178][0179]
b工作负载重新分配和服务速率缩放
[0180]
通过优化分配到每个vm v
c
的工作负载ξ
c
和其服务速率u
c
,可以最小化mecs的功耗:
[0181][0182]
其中c1中的(全局)约束保证了整个工作被划分为多个并行任务;约束条件c2保证vm v
c
在δ秒内执行分配的任务;
[0183]
公式(27)中的hessian矩阵[24]是正定的,分别为ξ
c
和u
c
,因此,(28)是一个凸优化问题

因此,公式(28)的优化问题具有零对偶间隙并满足slater约束条件[24]’零对偶间隙的结果提供了一种途径来获得方程(28)中原始问题的最优解,该问题由相应的对偶问题导出

为此,我们首先给出原始问题方程(28)的拉格朗日函数:
[0184][0185]
其中拉格朗日乘子μ用于约束c1,ω=ω
c
,c=1,2,...,n
kt
是c2的延迟约束,ω
c
表示vm v
c
的计算时间代价不超过所需的最大完成时间;事实上,这些乘法器是目标函数的惩罚因素,使其在相应的约束下向最优演化;这使用后续方法解决lagrangian

dual问题可以得到μ和ω
c
;原始问题(28)的对偶问题如下所示:
[0186]
[0187]
公式(30)中的对偶问题可以通过使用分层优化分解(lod)方法分解为两个子问题[25];第1级,公式(30)中的内部最小化是主要问题;第2级,公式(30)的外部最大化有助于找到最优解;需要注意的是公式(30)中的优化问题是凸的,等式之间存在零对偶间隙(28)和(30);因此,我们可以通过kkt条件[24]求解(30);
[0188]
设(ξ*c,u*c)和(μ*c,ω*c)是1级和2级问题的最佳解决方案;然后,根据kkt条件,得出下列表达式:
[0189][0190][0191]
结合公式(31)和(32),(ξ*c,u*c)的最优解可以写成
[0192][0193][0194]
公式(30)中的第2级问题可用次梯度法求解;对于给定的ξ*c和u*c集合,我们可以更新一组lagrange乘法算子:
[0195][0196]
ω
c
(k 1)={ω
c
(k) θ(k)[ξ
c
(k)

u
c
(k)δ]}

ꢀꢀꢀ
(36)
[0197]
其中,索引k>0是迭代索引,是正的迭代步长;然后,更新拉格朗日乘数在方程(35)和(36)可用于更新公式(33)和(34)中的功率感知资源管理方案,由于原始问题对优化变量是联合凸的,只要不断递减步长序列满足[24],[26],不管初始拉格朗日乘子是什么,都可以保证通过迭代求解一级和二级问题得到原始最优解;
[0198]
由于原问题对优化变量是联合凸的,只要满足一个递减步长序列[24],[26]就可以通过迭代求解一级和二级问题得到原最优解,不管初始拉格朗日乘子是什么,都可以保证通过迭代求解一级和二级问题得到原始最优解。算法3说明了这个过程;
[0199][0200][0201]
步骤三中用于mecs的聚合负载的方案基于响应时间与总工作负载的变化对过载和空闲mecss进行了详细地判断,利用mecss上传的周期性,全局协调器可以默认已知资源管理的基本信息,如输入/输出缓冲区大小,流量到达速率,队列长度和输入/输出缓冲区的传输速率;方案首先计算每个mecs的响应时间,包括服务时间和网络延迟,而系统延迟由mecss的最大响应时间决定;然后,以迭代方式获得响应时间阈值;基于响应时间阈值,通过优化从过载mecss到空闲mecss的迁移负载来制定系统延迟最小化问题。
[0202]
服务时间采集方法具体为考虑时间的不同请求,我们假设mecs k的域流量速率根据到达率为l
k
的泊松过程随机到达;然后,通过下式计算mecs k的服务密度ρ
k

[0203]
ρ
k
=l
k
/n
k
u
c
ꢀꢀꢀ
(1)
[0204]
mecs k的服务器时间tser k为:
[0205][0206]
其中tser k(l
k
)是tser k对应l
k
的函数,tque k表示平均排队时间,tsc k表示代表平均服务时间;根据排队论,平均排队时间tque k:
[0207][0208]
平均服务时间:
[0209][0210]
排队系统保持稳定,例如,任务速度接近无穷大时,排队长度不能变成无穷大,否则无法保证mecs的延迟要求;稳定的m/g/n排队系统的充要条件是服务强度ρ小于1。
[0211]
网络延迟时间因为不同mecss的交通到达率可以明显不同,故部分mecss可能发生阻塞,而另外的而一些mecss可能未被充分利用所导致的时间;
[0212]
两种类型的服务器分别表示为过载mecss和空闲mecss;d
th
表示响应时间阈值,在此基础上,mecss被划分为两个集合,v
s
表示过载mecss集:
[0213][0214]
v
t
表示空闲mecss集:
[0215][0216]
假设所有mecss都可以彼此到达,每个过载的mecs i可以将其工作负载的一小部分分配给空闲的mecs j,因此产生了通信时延tcom ij;
[0217]
d
ij
表示从过载的mecs i到空闲mecs j路径的通信延迟;因此,当迁出工作负载从过载的mecs i卸载到空闲mecs j时,相应的通信时延tcom ij可由下式计算得出:
[0218][0219]
假设mecs只能同时与一个mecs通信,之后在空闲mecs中发生网络延迟tnet j为:
[0220][0221]
网络延迟仅在空闲mecss处发生,因为空闲的mecs j在过载mecss卸载任务之后再处理迁移负载;但是,没有将负载迁移到过载的mecss,所以tnet i=0.
[0222]
系统延迟:结合公式(2)和(8),mecs k的响应时间dres k可由下式计算:
[0223][0224]
其中表示mecs k产生的超载负载,是dres k相对于的函数;对于过载的mecs i和空闲mecs j,超载部分的负载分别表示为
[0225]
[0226][0227]
系统延时:系统时延d
sys
由系统中mecss的最大响应时间决定:
[0228][0229]
b.响应时间阈值;
[0230]
为了找到响应时间阈值d
th
和每个mecs的迁入/迁出负荷数量,我们估计了d
th
的值,并迭代精确d
th
的值直至d
th
和每个mecss的服务器时间tser k的差值在给定范围θ内;
[0231]
首先检查d
th
值的范围,令值的范围,令指定d
th
=(t
max
t
min
)/2为初始值,然后将mecss根据公式(5)和(6)分别划分为两个集合,即过载mecss v
s
和空闲mecss v
t

[0232]
对于每个过载和空闲的mecss,我们需要确定迁出工作负载φ
i
和迁入工作负载φ
j
,使得服务器时间满足:
[0233][0234][0235]
其中ε是给定的阈值。
[0236]
一旦确定了迁出和迁入工作负载,就可以获得具有最小网络延迟成本的迁移负载λ={λ
ij
|i∈v
s
,j∈v
t
};
[0237]
参照图2,从过载mecss迁移负载到空闲mecss将在空闲mecss上产生网络延迟;因此,我们需要进一步调整以至于每个空闲mecs的响应时间都近似于d
th
,即dres j≈d
th
;然后,令如果d

和d
th
的差值低于给定阈值θ,则获得满足条件的d
th
;否则,通过d
th

(d
th
d

)/2选择d
th
,然后更新φ
i
,φ
j
,λ
ij
,和d

,以此得到更新后的d
th
;这个过程一直循环到|d
th

d

|≤θ为止;
[0238]
c延时最小化的工作负载均衡
[0239]
为了能够通过优化迁移负载来最小化系统延时,所以将负载平衡问题表示为
[0240][0241]
其中约束条件c1表示从过载的mecs i分配给所有空闲mecss的迁移负载应该等于过载mecs i的预定义的迁出负载;约束条件c2表示从所有过载mecs迁移到空闲mecs j的迁移负载应等于空闲mecss j的预定义迁入负载;约束条件c3表示施加在过载mecs i和空闲
mecs j之间的每个通信路径的负载都应该小于相应的迁出和迁入负载。
[0242]
负载平衡问题通过算法一实现具有不均匀域流量速率的mecss的工作负载均衡;首先,基于初始响应时间阈值d
th
,分别获得过载mecss集和相应的迁出负载,以及空闲mecss集和相应的迁入负载;然后,通过算法2获得最佳迁移负荷;工作负载迁移完成后,动态调整d
th
,直到满足给定的精度范围θ;最后,协同边缘计算系统中的所有mecss都具有大致相同的响应时间;
[0243]
[0244][0245]
算法2 hungarian迁移负载算法
[0246]
[0247]
[0248][0249]
d迁移负载匹配
[0250]
确定每个过载的mecs的迁出工作负载φ
i
和每个空闲mecs的迁入工作负载φ
j
,通过求解以下问题,可以得到通信代价最小的最优迁移负载λ
ij

[0251][0252]
使用多项式时间中的hungarian算法有效地解决,hungarian算法是一种组合优化方法,可以解决多项式时间中的分配问题;
[0253]
要将问题(16)转换为标准分配问题,我们首先进行以下定义:
[0254][0255]
因此,标准分配问题由下式给出:
[0256][0257]
其中z
ij
表示从过载mecs i的空闲mecs j的分配,z
ij
=1表示已分配,否则z
ij
=0;由于约束矩阵是完全幺模的,因此随着z
ij
的松弛存在一个最优整数解;为了说明用于解决问题(18)的hungarian算法,我们不失一般性地考虑|v
s
|=5和|v
t
|=3的简单情况;因为成本矩阵的行|v
s
|应该等于它的列|v
t
|,所以我们添加了两个额外的虚拟的空闲mecs 4和5;可以从图形角度看待上述问题:五个过载的mec,三个空闲mecs和两个虚拟空闲mecs;从过载mecs i到空闲mecs j的行表示成本d
ij
c
ij
的值,所有d
i4
c
i4
和d
i5
c
i5
都设置为0;不失一般性地将成本矩阵定义为n
×
n矩阵;
[0258][0259]
hungarian算法的基本思想:从成本矩阵c的行和列中减去一个常数,将c约化为包含n个位于不同行和不同列中的零元素;然后,我们得到了与原成本矩阵中n个项的位置相对应的零的最优分配;最后,n个项的总和就是最小成本;对于分配问题,在成本矩阵c的任意行(或列)上加(或减)一个相同的数后,新的成本矩阵的最优解对于原成本矩阵也是最优的[21];因此,在构建n
×
n成本矩阵之后,我们提出算法2以找到最佳分配;为了清楚地解释用于解决(18)的算法2,我们不失一般性地演示了矩阵变换过程;参照图3所示,
[0260]
详细步骤如下,
[0261]
步骤1:从每一行中减0并找到每个列的最小元素;
[0262]
步骤2:每列减去其最小元素,即,分别从列1,列2和列3中减去35,55和45,并从列4
和列5中减去0;
[0263]
步骤3:用最少的水平线或垂直线覆盖行和列中的所有零;因为n大于覆盖线的数量,我们发现没有被任何一行覆盖的最小项数是10;
[0264]
步骤4:从没有覆盖线的所有行中减去10,并将10添加到具有覆盖线的所有列中;
[0265]
步骤5:用最小水平和垂直线条覆盖行和列中的所有零。由于覆盖线的数量为5,因此获得了零的最佳分配;从最少0个元素的行或列开始,圈出所有的零,然后划掉相同行和列中剩余的零;
[0266]
步骤6:圈出与圆圈位置对应的原始成本矩阵的元素;因此,最佳任务分配是z*12=z*22=z*34=z*45=z*51=1,最小成本为145;
[0267]
在获得(18)的最佳分配之后,(18)中的相应参数被更新,然后,制定新的任务分配问题(18);类似地,为了得到两组大小相等且代价相同的节点,添加附加的伪mecss以形成n
×
n成本矩阵。再应用hungarian算法解决(18),获得最佳分配,并且参数继续在(18)中更新。重复此过程,直到将所有未处理的工作负载从重载的mec发送到空闲mecs。
[0268]
本节中,我们将所提出的qos感知和能量感知资源管理方案分别在不同条件下与其他方案进行比较。
[0269]
a qos感知资源管理方案的性能
[0270]
由于真实ap之间的距离基本上是随机的,我们根据正常分布:为每对直接链接的mecs分配通信路径延迟。这随机化了网络中的延迟并保证了三角形距离不等式,因为任何一对具有2个分离度的节点都有至少0.2的中间距离。对于部署在mecs k的vms,我们通过抽样正常分布来分配服务率u
c
,通过对平均值为3的泊松分布抽样来计算vm n
k
的个数。mecs k处的流量到达率由正态分布确定。需要注意到达率l
k
不会超过l
k
n
k
,否则会导致排队时间为无穷[20]。除非另外说明,否则网络中的默认mecs数量为k=30。我们设置精度范围θ=0.1,ε=0.1。
[0271]
我们将所提出的mlml算法与没有迁移负载的非协作方案的性能进行比较,
[0272]
在中提出的启发式算法中,源节点和目标节点使用传统的换位算法获得迁移负载,同时引入了流动网络的指示边缘。
[0273]
mlml算法的收敛性能在图4中示出。我们观察到:(i)所提出的mlml算法在几次迭代中对于不同数量的mecs实现了收敛;(ii)mecss较多的算法收敛速度较慢,即协作系统的规模增大了迁移负载优化的复杂度;(iii)具有更多合作mecs的系统达到较小的d
th
,这表明可以通过更多相关的服务器改进合作系统的效率;(iv)启发式算法的收敛速度略快于mlml算法,但代价是延迟较大。在所提出的mlml算法中,为了匹配迁移负载,每完成一个分配时都需要更新参数和工作负载检测,然而,这种方式导致具有更高的匹配精度的迁移负载。在文献[13]中,流量网络具有源节点和目的节点以及有向边缘,这会带来不必要的操作,因此迁移不匹配的概率更大。
[0274]
图5,6,7中表示从非合作算法、启发式算法[13]和本文提出的mlml算法获得的服务器响应时间的概率分布。可以看出,启发式算法将响应时间的时隙缩短0.7秒,中值响应时间分别为0.8,0.7和0.6秒。所提出的mlml算法的中值响应时间较低,分别为0.7、0.6和0.5秒,响应时间间隔为0.5秒。启发式算法的差距比我们的大,部分原因是由于额外的网络
延迟和迁入和迁出工作负载的不匹配。
[0275]
图8描述了不同数量mecss的系统延迟,表明我们提出的mlml算法和启发式算法的系统延迟随着mecs数量的增加而急剧下降。之后,当k分别达到30和50时,它们都达到了峰值,并且任何进一步的添加都不会进一步改善系统延迟。对于非合作方案,与mecss最大响应时间对应的系统延迟随最大域流量到达率波动,而不受mecss数量的影响。另一方面,合作方案始终优于非合作方案,这证实了拥挤和空闲服务器的工作量调度的必要性和有效性。
[0276]
图9表示了系统延迟与平均通信路径延迟之间的关系。随着通信路径延迟增加,我们的mlml算法显示出与启发式算法曲线相似的线性增长。但是,启发式算法的系统延迟超出了网络延迟的增长,即在将通信路径延迟增加0.35秒后,启发式算法提供的系统延迟增加了1秒。相比之下,mlml算法获得的系统延迟仅增加0.6秒。这种缓慢的增长是mlml算法进行迭代优化的结果,平衡了迁移负载和本地处理的成本。此外,可以看出我们的mlml算法比启发式算法有着更好的性能,尤其是在一个严重拥挤的网络中。
[0277]
图10表示了系统延迟与平均流量到达率的关系。当l
k
超过10.0mb/s时,系统延迟的增加会加快,mecs开始接近其最大处理能力。当l
k
超过20.0mb/s时,这些算法提供无限的系统延迟,mecs被域流量到达率淹没。我们还观察到mlml算法与启发式算法、非合作算法与启发式算法之间的差距随着流量到达率的增加而扩大,即算法有效性的差距增大。
[0278]
b能量感知资源管理方案的性能
[0279]
vm的最小和最大功耗分别为0.5

1.5j/s和2.5

3.5j/s。vms的最大处理速率为3

5mb/s。在本小节中,比较了两个工作方案:静态分配和能量感知分配。在前者中,每个vm的分配数据流和服务速率是恒定的,但只是满足处理请求的要求。在后者中,通过使用算法3动态调整分配的数据流和服务速率。此外,我们将递减步长设置为0(k)=(1 β)/(k β),其中β是固定的正整数。
[0280]
图11显示了算法3的收敛性。我们可以观察到:(i)该算法能在70次迭代内实现不同数量vms的收敛;(ii)算法涉及的vms越多,收敛速度越慢,即对于vms越多的mecs,实现能量感知负载均衡的时间越长;(iii)具有更多vms协同的mecs消耗的能量更少,效率更高。
[0281]
图12绘制了不同服务器工作负载(2

10mb/s)下功耗的平均结果。可以观察到,具有功率感知分配方案的功耗总是比静态分配方案低得多。使用静态分配方案时,mecs具有vms的数量越多,功耗越高。相反,当采用能量感知分配时,vms越多,功耗越低。这些结果突出了内层资源管理在提高能源效率方面的重要性,特别是对于vms数量较大的mecs。
[0282]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换或改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜