基于云-边缘协同计算的任务卸载方法及系统

文档序号:25992196发布日期:2021-07-23 21:04阅读:249来源:国知局
基于云-边缘协同计算的任务卸载方法及系统

本发明涉及移动通信技术领域,尤其涉及一种基于云-边缘协同计算的任务卸载方法及系统。



背景技术:

物联网技术是第五代网络(5g)的重要范例,它使各种无处不在的对象相互交互和协作以实现共同的目标。据预测,在不久的将来,全球物联网设备的数量将超过800亿。同时,随着技术的进步和智能移动设备的普及,出现了许多基于物联网技术的计算密集型应用,例如智能交通,智慧医疗,在线互动游戏以及增强/虚拟现实(ar/vr)等。但是,当前的设备已经受到计算资源和能耗的限制,这在将来支持这些计算密集型应用时可能成为不可避免的瓶颈。

云计算已成为提高设备计算能力的一个有前途的范例,在资源丰富的云服务器运行应用程序,从而克服了移动设备计算资源受限和存储容量有限的挑战。但是,由于额外的传输成本以及与云服务器的长传输距离的延迟,导致云计算在处理延迟敏感的物联网服务时不可行。最近,边缘计算已成为应对5g架构中计算密集型任务的重要方案,该方案将云计算服务从集中式云扩展到网络边缘设置的边缘服务器。为了在大大减少延迟和系统成本的情况下提高应用程序的服务质量,云服务器和边缘服务器可以相互协作来处理计算任务。近年来,云-边缘协作已成为研究热点,其中云服务器的资源丰富,但成本较高,边缘服务器的资源有限,但成本相对较低,因此云服务器与边缘服务器可以相互协作以更好地发挥其优势。

目前已有发明研究了典型的云-边缘协作场景,其中移动用户将计算任务转移到边缘服务器,并在必要时请求云服务器的协助。它们中的大多数旨在改善系统的服务质量,即减少任务的延迟,系统成本或能耗等。但是,任务卸载过程不可避免地会消耗大量的计算和通信资源,鉴于边缘服务器和云服务器通常都是理性和自私的,它们将不愿参加任务卸载过程而没有获得任何回报。因此,如何实现云-边缘协作网络构架的任务均衡,提升资源利用率成为亟待解决的问题。



技术实现要素:

本发明实施例提供一种基于云-边缘协同计算的任务卸载方法及系统,用以解决现有技术中存在的缺陷。

本发明实施例提供一种基于云-边缘协同计算的任务卸载方法,包括:

获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;

基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;

基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

根据本发明一个实施例的基于云-边缘协同计算的任务卸载方法,所述确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,具体包括:

基于所述计算任务信息以及所述计算状态信息,采用斯塔克尔伯格博弈模型模拟所述云服务器与各边缘服务器之间的交互,并采用基于梯度的迭代搜索算法对所述斯塔克尔伯格博弈模型进行分析,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策。

根据本发明一个实施例的基于云-边缘协同计算的任务卸载方法,所述采用基于梯度的迭代搜索算法对所述斯塔克尔伯格博弈模型进行分析,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,具体包括:

基于所述云服务器的定价策略限制,确定所述云服务器的初始价格,并将所述初始价格发送至各边缘服务器,以使各边缘服务器基于所述初始价格确定各边缘服务器的卸载决策并进行反馈;

基于所述迭代搜索算法,对所述初始价格进行更新,得到更新价格,并将所述更新价格发送至各边缘服务器,以使各边缘服务器基于所述更新价格确定各边缘服务器的卸载决策并进行反馈,直至各边缘服务器当前次迭代得到的卸载决策与前一次迭代得到的卸载决策的相对误差小于等于预设阈值。

根据本发明一个实施例的基于云-边缘协同计算的任务卸载方法,所述确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,之后还包括:

基于各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,分别确定各边缘服务器的最佳效用以及所述云服务器的最佳效用。

根据本发明一个实施例的基于云-边缘协同计算的任务卸载方法,所述基于各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,分别确定各边缘服务器的最佳效用以及所述云服务器的最佳效用,具体包括:

将各边缘服务器的最优卸载决策分别代入至边缘服务器效用函数,得到各边缘服务器的最佳效用;

将所述云服务器的最优定价决策代入至云服务器效用函数,得到所述云服务器的最佳效用。

根据本发明一个实施例的基于云-边缘协同计算的任务卸载方法,所述边缘服务器效用函数基于边缘服务器的满意度函数以及边缘服务器的奖惩函数确定。

根据本发明一个实施例的基于云-边缘协同计算的任务卸载方法,所述云服务器效用函数基于所述云服务器的奖惩函数之和、所述云服务器上处理需要卸载的计算任务时的成本以及将所述计算任务卸载至各边缘服务器上进行处理时的成本确定。

本发明实施例还提供一种基于云-边缘协同计算的任务卸载系统,包括:获取模块、决策模块和卸载模块。其中,

获取模块用于获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;

决策模块用于基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;

卸载模块用于基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于云-边缘协同计算的任务卸载方法的步骤。

本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于云-边缘协同计算的任务卸载方法的步骤。

本发明实施例提供的基于云-边缘协同计算的任务卸载方法及系统,首先获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;然后基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;最后基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。不仅可以保证云服务器可以以最小成本实现计算任务的卸载,还可以保证各边缘服务器的利润最大化。同时,可以使包含有云服务器以及各边缘服务器的系统可以实现计算任务的均衡分配。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的基于云-边缘协同计算的任务卸载方法的流程示意图;

图2是本发明实施例提供的基于云-边缘协同计算的任务卸载方法中基于博弈论的计算卸载场景示意图;

图3是本发明实施例提供的基于云-边缘协同计算的任务卸载方法中gisa算法的迭代过程中cs的效用示意图;

图4是本发明实施例提供的基于云-边缘协同计算的任务卸载方法中gisa算法的迭代过程中es的效用示意图;

图5是本发明实施例提供的基于云-边缘协同计算的任务卸载方法中cs在不同单位成本下的效用比较示意图;

图6是本发明实施例提供的基于云-边缘协同计算的任务卸载方法中es在不同单位成本下的效用比较示意图;

图7是本发明实施例提供的基于云-边缘协同计算的任务卸载系统的结构示意图;

图8是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明实施例中提供的一种基于云-边缘协同计算的任务卸载方法的流程示意图,如图1所示,该方法包括:

s1,获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;

s2,基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;

s3,基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

具体地,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,其执行主体为云-边缘协同计算的任务卸载系统,该系统可以配置于服务器中,该服务器可以是边缘服务器,也可以是云服务器。其中,云-边缘协同计算是指由云服务器(cs)和各边缘服务器(es)协同实现计算任务的处理。云-边缘协同计算的任务卸载系统可以包括云服务器(cs)和与边缘服务器(es)关联的n个无线接入点(ap),cs和es通过有线链路连接。cs有一些需要处理的计算任务,并且它可以租用其范围内的空闲es来帮助其处理计算任务。es可以通过处理卸载的计算任务来提高其效用,而cs可以通过计算卸载来降低其成本和计算压力,在共赢的情况下实现协同。任务卸载是指本应由云服务器处理的计算任务分配至各边缘服务器处理的过程。

首先,执行步骤s1,获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息。对于每一个esi(i∈{1,2,...,n}),n为云-边缘协同计算的任务卸载系统中边缘服务器的总数。cs卸载到esi的计算任务信息可以表示为:li表示esi处理cs需要卸载的计算任务hi所需的计算量大小,bi表示计算任务hi的大小,表示计算任务hi的时间约束。li和bi的关系可看作近似伽马分布,根据伽马分布的经验均值e[x],可以得到li=e[x]bi。

esi的计算状态信息可以表示为:φi={bi,li,si,pi,ci,hi}。bi是esi用于存储cs需要卸载的计算任务hi的最大缓存大小,其单位为mb;li是bi对应的计算量大小,其单位为megacycles;si是esi为自己的用户服务所需的计算量大小,其单位为megacycles;pi是esi为自己的用户提供服务的单位报酬;ci是esi每单位处理的成本,hi是esi的cpu的处理速率,其单位为megacycles/s。

然后执行步骤s2。根据步骤s1获取的计算任务信息以及计算状态信息,将云服务器以及各边缘服务器的效用最大化作为优化目标,以云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策。

本发明实施例中的优化目标是最大化cs和es的效用,因此优化问题可以表示为:

problem1:

maxuc

problem2:

maxui

s.t.0≤li≤li

其中,uc为cs的效用函数,di表示cs支付给esi的单位价格。分别是最大和最小的定价策略限制;ui为esi的效用函数。0≤li≤li表示esi对cs需要卸载的计算任务的计算量大小不能超过esi自身的容量,即计算量限制。

通过求解上述两个优化问题,可以确定出各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策。其中,本发明实施例中通过di表示云服务器的定价策略,通过li表示esi的卸载策略,最终需要确定的定价策略即为最优定价决策,最终需要确定的卸载策略即为最优卸载决策。

最后执行步骤s3,根据最优定价决策以及最优卸载决策,将云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。即根据最优卸载决策,确定出esi能够接收云服务器卸载的计算任务的大小,并根据最优定价决策确定出云服务器给esi支付的单位价格。如此不仅可以保证云服务器可以以最小成本实现计算任务的卸载,还可以保证各边缘服务器的利润最大化。同时,可以使包含有云服务器以及各边缘服务器的系统可以实现计算任务的均衡分配。

本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,首先获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;然后基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;最后基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。不仅可以保证云服务器可以以最小成本实现计算任务的卸载,还可以保证各边缘服务器的利润最大化。同时,可以使包含有云服务器以及各边缘服务器的系统可以实现计算任务的均衡分配。

在上述实施例的基础上,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,所述确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,具体包括:

基于所述计算任务信息以及所述计算状态信息,采用斯塔克尔伯格博弈模型模拟所述云服务器与各边缘服务器之间的交互,并采用基于梯度的迭代搜索算法对所述斯塔克尔伯格博弈模型进行分析,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策。

具体地,本发明实施例中,由于本发明实施例中的两个优化问题均为凸优化问题,并且两者相互关联,因此可以应用斯塔克尔伯格博弈模型(stackelberg博弈模型)来分析问题。

考虑cs与多个es之间的博弈,将其定义为单领导者-多追随者的stackelberg博弈模型,cs作为领导者,给出其定价策略di,每个es作为跟随者,确定其接收cs卸载的计算任务hi的大小,本发明实施例中用处理计算任务所需的计算量li来表示esi的卸载策略。因此cs的单位价格集合可以表示为d={d1,...,dn},esi决定接收cs卸载的计算量集合表示为l={l1,...,ln}。cs和es的目标则是最大化自己的效用。

从形式上讲,stackelberg博弈γ可以构造为:

γ={(cs,esi),(di,li),(uc,ui)}

本发明实施例利用逆向归纳法对所提出的stackelberg博弈进行了分析。首先,分析cs对esi计算卸载的卸载策略。然后,基于esi的卸载策略,研究了cs的定价策略。

下面介绍本发明实施例的一些定义和定理。

定义1:esi之间存在唯一的纳什均衡的策略此时存在效用函数:其中为其他es的最佳卸载决策。

定理1:在博弈中,cs充当领导者,并且假设cs向esi支付的执行计算任务的单位报酬为di。esi作为跟随者,确定其最佳卸载决策如下所示:

其中,

通过设置li=0和li=li来确定cs对esi的定价策略限制,因此可得出:

当定价在之间时,esi确定其最佳卸载决策,因此可知esi的最佳卸载决策应满足:

定义2:在博弈中,cs和esi之间存在独特的stackelberg均衡,此时存在效用函数

本发明实施例中提出的博弈模型存在唯一的纳什均衡,因此本发明实施例中采用基于梯度的迭代搜索算法来寻找近似最优解。

在上述实施例的基础上,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,所述采用基于梯度的迭代搜索算法对所述斯塔克尔伯格博弈模型进行分析,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,具体包括:

基于所述云服务器的定价策略限制,确定所述云服务器的初始价格,并将所述初始价格发送至各边缘服务器,以使各边缘服务器基于所述初始价格确定各边缘服务器的卸载决策并进行反馈;

基于所述迭代搜索算法,对所述初始价格进行更新,得到更新价格,并将所述更新价格发送至各边缘服务器,以使各边缘服务器基于所述更新价格确定各边缘服务器的卸载决策并进行反馈,直至各边缘服务器当前次迭代得到的卸载决策与前一次迭代得到的卸载决策的相对误差小于等于预设阈值。

具体地,对于唯一的本发明实施例中使用基于梯度的低复杂度的搜索算法(gradient-basediterativesearchalgorithm,gisa)来确定唯一的纳什均衡和斯塔克尔伯格均衡。

首先,令k=0,然后根据出价范围确定初始价格d(k)=(d1(k),...,dn(k)),其中可以由公式(2)和(3)得到。然后将初始价格发送给对应的边缘服务器,各边缘服务器根据对应的初始价格代入到公式(4)中计算其初始的最佳卸载决策。在各自确定初始的最佳卸载决策后,cs将根据对初始价格进行更新,其中θ为步长,是基于的梯度。接下来设置k+1=k,cs和es将重复上述过程以继续搜索其更好的策略,迭代一直进行直到各边缘服务器当前次迭代得到的卸载决策与前一次迭代得到的卸载决策的相对误差时停止循环,其中δ为停止循环时的精度阙值,即预设阈值,||x||1表示x的一阶范数。此时,可以找到cs和es的策略的近似最优解,分别表示为d*和l*

在上述实施例的基础上,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,所述确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,之后还包括:

基于各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,分别确定各边缘服务器的最佳效用以及所述云服务器的最佳效用。

具体地,在确定各边缘服务器的最优卸载决策l*以及所述云服务器的最优定价决策d*之后,可以根据最优卸载决策l*确定出各边缘服务器的最佳效用,根据云服务器的最优定价决策d*确定出云服务器的最佳效用,以便于从经济上更直观确定本发明实施例中提供的基于云-边缘协同计算的任务卸载方法的可行性。

在上述实施例的基础上,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,所述基于各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策,分别确定各边缘服务器的最佳效用以及所述云服务器的最佳效用,具体包括:

将各边缘服务器的最优卸载决策分别代入至边缘服务器效用函数,得到各边缘服务器的最佳效用;

将所述云服务器的最优定价决策代入至云服务器效用函数,得到所述云服务器的最佳效用。

具体地,本发明实施例中,在确定各边缘服务器的最佳效用时,可以分别将各边缘服务器的最优卸载决策分别代入至边缘服务器效用函数,对边缘服务器效用函数进行求解得到各边缘服务器的最佳效用。在确定云服务器的最佳效用时,可以将云服务器的最优定价决策代入至云服务器效用函数,对云服务器效用函数进行求解得到云服务器的最佳效用。

本发明实施例中,进入效用函数进行最佳效用的计算,并且效用函数根据云服务器以及边缘服务器进行区分,可以使得最佳效用的计算结果更加准确。

在上述实施例的基础上,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,所述边缘服务器效用函数基于边缘服务器的满意度函数以及边缘服务器的奖惩函数确定。

具体地,对于esi,假设计算资源按优先级首先分配给自己使用,这与实际应用场景更加一致。本发明实施例中使用对数函数定义esi的满意度函数,因此esi的满意度函数可以表示为:

φ(li-li)=ln(1+li-li-si)(5)

其中,li-li表示esi剩余供自己使用的计算量,当剩余计算量低于自己的需求si时,满意度函数φ(li-li)<0。而当实际剩余计算量高于自身需求时,φ(li-li)>0。当li-li等于si时,φ(li-li)=0。因此,esi出售计算资源后的收益可描述如下:

yi(li)=(pi-ci)(li-li+φ(li-li))+(di-ci)li(6)

esi的效用函数可以是交易yi(li)之后的收益减去交易yi(0)之前的收益,即提供卸载后的收益减去未提供卸载时的收益,其中yi(0)可以表示为:

yi(0)=(pi-ci)(li+φ(li))(7)

综上,esi的效用函数是通过协助cs执行计算任务而增加的利润,以及相应的奖惩函数。因此,esi的效用函数可以表示为:

其中,为esi的奖惩函数。

由于cs和各es之间的交互存在时间限制。如果计算任务能够在时间限制内完成,则cs会给es相应的奖励;如果计算任务未在指定时间内完成,则相应的cs会向es收取罚款,这将会影响es和cs的效用。由于cs和es通过有线链路连接,因此可以将传输速率设置为固定值。假设传输速率为μi,可以获得将任务hi从cs传输到esi的时间为:

那么,esi上的计算时间就是卸载的计算任务的计算量除以esi的处理速率,表示为:

忽略将计算结果返回给cs的时间,因此在计算卸载中任务hi的总执行时间可以计算为:

定义esi的奖惩函数与任务的实际执行时间和任务hi的规定时间约束之间的差值有关,可以表示为:

wi是对esi的奖惩费用系数。当时,为惩罚函数时,为奖励函数

在上述实施例的基础上,本发明实施例中提供的基于云-边缘协同计算的任务卸载方法,所述云服务器效用函数基于所述云服务器的奖惩函数之和、所述云服务器上处理需要卸载的计算任务时的成本以及将所述计算任务卸载至各边缘服务器上进行处理时的成本确定。

具体地,本发明实施例中,可以将cs的效用定义为计算卸载带来的成本降低。cs的效用可以表示为不租用es的计算资源的成本减去租用后的成本加上奖励或罚款。因此,cs的效用函数可以表示为:

uc=c0-c1+ur(13)

其中,c0为云服务器上处理需要卸载的计算任务时的成本,c1为云服务器将计算任务卸载至各边缘服务器上进行处理时的成本,ur为云服务器的奖惩函数之和。

考虑所有es的奖惩函数,cs的奖惩函数可以表示为:

本发明实施例中,使用指数函数来表示cs的成本和卸载计算量之间的关系,其中λ和是固定的成本系数。因此,在不考虑计算卸载的情况下,即在cs上处理计算任务的成本为:

在计算卸载的情况下,即云服务器将计算任务卸载至各边缘服务器上进行处理时,cs的成本可以表示为:

c1=∑i∈ndili(16)

其中,di表示cs支付给esi的单位价格。

如图2所示,给出了基于博弈论的计算卸载场景的例子。图2中包含了一个cs和5个es,cs和es之间通过有线链路连接。最初,将es的数量设置为5,并且用于存储卸载的计算任务的缓存数据大小在[100,200](单位为mb)的范围内。每个es的总计算量设置为100(单位为megacycles)。每个es为其自己的用户服务所需的计算量在[0,50]的范围内(单位为megacycles),es服务自身用户的回报在[0.3,1.2]的范围内,并且设置es的单位成本范围为[0.1,0.9]。奖惩系数在[0.01,0.05]的范围内,并设置gamma分布参数α=0.5,β=1.6,cs的效用函数的初始系数φ=0.05,λ=30。

本发明实施例中,将提出的gisa算法和随机方法(random)、基于博弈论的卸载策略方法(gametheory-basedoffloadingstrategy,gtos)和基于博弈论的支付策略方法(gametheory-basedpaymentstrategy,gtps)进行性能比较,下面对三种方案进行简单介绍:

random:cs的支付策略和es的卸载策略都是在给定范围内随机生成的。

gtos:只考虑了es之间的卸载策略博弈,这将是es之间的非合作博弈。在这种情况下,每个es都会确定其最佳卸载策略。

gtps:与gtos相反,gtps仅考虑cs的支付策略,其中cs的支付策略被建模为非合作博弈,并且cs确定每个es的最佳支付。

图3展示了gisa算法的迭代过程中cs的效用,图4展示了gisa算法的迭代过程中es的效用。图3和图4的横坐标均为迭代次数,图3纵坐标为cs的效用(utility),图4纵坐标为es的效用(utility)。为了更清楚地表示迭代过程,此时将pi设置为1.2,将ci设置为0.4。可以看出,es和cs的效用逐渐增长,最终收敛并稳定下来。图3和图4详细表明,cs的效用在开始时相对较小,并且随着迭代次数的增加而迅速增加,并在大约80次迭代后开始稳定并接近最佳解。而es的总效用是从一个相对较高的点开始的,这与开始设置的初始值有关。可以观察到,与cs相比,es的总效用不会很快达到稳定状态,这是因为es之间的关系是不合作的,es之间相互竞争以使其效用尽可能大。最后,es和cs均实现了相对最佳的解决方案。

图5显示了cs在不同单位成本下的效用比较,图6显示了es在不同单位成本下的效用比较,并设定了单位报酬pi=0.7。在图5和图6中,横坐标均为单位成本,图5纵坐标为所有es的总效用,图6纵坐标为cs的效用,图5和图6中每个单位成本对应的四个条形框从左至右依次对应于gisa、random、gtps以及gtos。从图5和图6可以看出,本发明提出的gisa在不同的单位成本下具有最高的效用。另外,随着单位成本的增加,其他三个方案呈现出与gisa相同的趋势。可以发现,尽管单位成本ci增加了,但是es的总效用却增加了,而当单位成本ci过高,特别是接近pi时,es的总效用就不会继续增加而是下降。同时,cs的效用也是随着ci的增加而增加。

三种方案相比,可以观察到gtps的效用最低。这是因为如果给出了es的卸载策略,则cs在进行支付策略博弈时不必考虑es的影响。在这种情况下,cs无法分担更多的计算任务,因此在gtps下,cs和es的效用都较低。此外,cs和es在gtos中的效用相对较高,与本发明提出的gisa相接近,这说明在博弈中,es的卸载策略比cs的支付策略更具影响力。

综上所述,本发明实施例中,从商业角度将计算卸载问题转化为效用优化问题,旨在最大化cs和es的效用,并且将cs和es之间的交互过程建模为stackelberg博弈模型。本发明实施例中通过逆向归纳法对提出的博弈模型进行分析,并且证明了cs和es之间存在唯一的纳什均衡;然后设计了一种基于梯度的迭代搜索算法(gisa),以获得最优解。最后,通过数值仿真结果表明,本发明实施例中所提出的gisa算法可以有效地鼓励cs和es之间的协作,并且在不同情况下大大优于其他基准方案。

如图7所示,在上述实施例的基础上,本发明实施例中提供了一种基于云-边缘协同计算的任务卸载系统,包括:获取模块71、决策模块72和卸载模块73。其中,

获取模块71用于获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;

决策模块72用于基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;

卸载模块73用于基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

具体地,本发明实施例中提供的基于云-边缘协同计算的任务卸载系统中各模块的作用与上述方法类实施例中各步骤的操作流程是一一对应的,实现的效果也是一致的,具体参见上述实施例,本发明实施例中对此不再赘述。

图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(communicationsinterface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行上述各实施例提供的基于云-边缘协同计算的任务卸载方法,该方法包括:获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各实施例提供的基于云-边缘协同计算的任务卸载方法,该方法包括:获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于云-边缘协同计算的任务卸载方法,该方法包括:获取云服务器需要卸载的计算任务信息以及各边缘服务器的计算状态信息;基于所述计算任务信息以及所述计算状态信息,以所述云服务器以及各边缘服务器的效用最大化为优化目标,以所述云服务器的定价策略限制以及各边缘服务器对所述云服务器需要卸载的计算任务的计算量限制为约束条件,确定各边缘服务器的最优卸载决策以及所述云服务器的最优定价决策;基于所述最优卸载决策以及所述最优定价决策,将所述云服务器需要卸载的计算任务卸载至各边缘服务器进行处理。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1