CN110647403B - 一种多用户mec系统中的云端计算资源分配方法 - Google Patents

一种多用户mec系统中的云端计算资源分配方法 Download PDF

Info

Publication number
CN110647403B
CN110647403B CN201911049702.8A CN201911049702A CN110647403B CN 110647403 B CN110647403 B CN 110647403B CN 201911049702 A CN201911049702 A CN 201911049702A CN 110647403 B CN110647403 B CN 110647403B
Authority
CN
China
Prior art keywords
task
tasks
mec server
mec
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911049702.8A
Other languages
English (en)
Other versions
CN110647403A (zh
Inventor
黄冬艳
付中卫
王波
任英琦
陈斌
冯彤
李浪
肖培剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN201911049702.8A priority Critical patent/CN110647403B/zh
Publication of CN110647403A publication Critical patent/CN110647403A/zh
Application granted granted Critical
Publication of CN110647403B publication Critical patent/CN110647403B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明公开一种多用户MEC系统中的云端计算资源分配方法,基于移动用户的任务信息以及移动用户与MEC服务器之间的信道信息,以收益最大化为目标建立误工损失模型,不计入任务等待时间,利用误工损失模型中的函数剔除完成时间大于等于截止期限的任务,对剩余任务进行EDD排序,再利用分支定界法确定执行次序,MEC服务器根据执行次序执行完成时间小于截止期限的任务,并获取最大化收益,本发明以收益最大化为目标,将MEC服务器误工最小化问题建模成以任务执行次序为优化变量的最优化问题,并建立误工损失模型,提出了一种基于分支定界法的排序算法来寻找该问题的最优解,在满足卸载任务的截止期限的同时,尽可能拒绝造成损失较小的任务,以实现收益最大化。

Description

一种多用户MEC系统中的云端计算资源分配方法
技术领域
本发明涉及移动边缘计算(MEC)的技术领域,具体涉及一种多用户MEC系统中的云端计算资源分配方法。
背景技术
随着物联网和5G移动通信技术的发展,在智能手机、传感器和可穿戴计算设备等移动设备上运行计算密集型和延迟关键型应用已经成为趋势,但受限于自身计算能力和能量,移动设备通常不具备运行这类应用的能力。移动边缘计算(MEC)通过将计算任务从移动设备卸载到具有相对丰富计算资源的边缘服务器上执行,实现了在移动设备上运行计算密集型和延迟关键型应用的愿景。
在重业务负载的场景下,MEC服务器一方面受限于计算能力,只能在保证满足卸载任务截止期限要求的前提下进行接入控制,为部分用户提供计算服务,另一方面为了收回设备部署和维护成本并实现盈利,必须注重如何利用有限的资源最大化自身的收益。
为解决任务冲突,现已提出的算法,如大任务优先算法、低延迟任务优先算法和先到先服务算法,在满足卸载任务的截止期限的同时,不能有效的增加MEC服务器收益。低延迟任务优先算法优先考虑具有更高延迟要求的任务,移动用户数量增加时,任务完成率一般,收益较低;大任务优先算法优先考虑具有更高计算资源要求的任务,移动用户数量增加时,任务完成率较低,收益较低;先到先服务算法优先考虑上传时间最小的任务,移动用户数量增加时,任务完成率一般,收益较低。因此,有待于提出一种能更好平衡任务完成率和收益之间的关系的资源分配方法。
发明内容
本发明提供一种多用户MEC系统中的云端计算资源分配方法,解决现有技术中存在的不能很好地平衡任务完成率和收益之间的关系的问题。
本发明通过以下技术方案解决技术问题:
一种多用户MEC系统中的云端计算资源分配方法,所述多用户MEC系统包括至少2个移动用户和1个MEC服务器,各移动用户向MEC服务器发送卸载请求,包括如下步骤:
(1)建立误工损失模型
11)在每个卸载请求的任务信息中,包括有任务的大小、任务的计算强度和任务的截止期限,还包括移动用户与MEC服务器之间的传输速率;利用上述任务信息、传输速率以及MEC服务器的CPU时钟频率计算出执行任务的完成时间;
12)利用任务的完成时间与任务的截止期限的差值构建σ(·)函数,再利用任务的大小、任务的计算强度、每单位CPU周期的收益以及σ(·)函数建立误工损失模型;
(2)MEC服务器接收卸载请求
在不计入等待时间的情况下,利用σ(·)函数拒绝不符合要求的任务请求,并将剩余各个任务请求按截止期限从小到大进行排序,得到初始执行次序;
(3)分支定界法确定任务执行次序
31)如按照初始执行次序依次上传各任务,MEC服务器在接收在后上传的任务的同时依次处理在先上传的任务,在接收完所有任务时,便出现已处理任务集合和待处理任务集合;
32)利用分支定界法对待处理任务集合进行排序,得到已排序执行次序,将已处理任务集合的执行次序与已排序执行次序合并,得到收益最大化执行次序;
(4)MEC服务器按照收益最大化执行次序执行完成时间小于截止期限的任务,并收取相应费用。
进一步地,在步骤11)中,计算执行任务的完成时间的步骤为:
(11a)在各个任务中,利用任务的大小和传输速率计算上传时间,用于确定执行当前任务的起始时刻;
(11b)在各个任务中,利用任务的大小、任务的计算强度和MEC服务器的CPU时钟频率计算当前任务的处理时间;
(11c)在各个任务中,上一任务的完成时间与执行当前任务的起始时刻相比,较大值与当前任务的处理时间相加,得到当前任务的完成时间。
进一步地,步骤(11a)中,记K(K≥2,K为正整数)个移动用户向MEC服务器发送卸载请求;记任务s(k)是实际执行次序s中第k个执行,任务s(k)的上传时间为
Figure GDA0004018889080000031
其中,k∈{1,2,...,K},k为正整数,j∈{1,2,...,k},j为正整数,ls(j)为任务s(j)的大小,rs(j)为任务s(j)与MEC服务器之间的传输速率;
进一步地,
Figure GDA0004018889080000032
Bs(j)为MEC服务器分配给任务s(j)的传输带宽,N0为噪声功率谱密度,hs(j)是介于任务s(j)和MEC服务器之间的信道增益,ps(j)为传输功率。
进一步地,步骤(11b)中,任务s(k)的处理时间为
Figure GDA0004018889080000033
其中,ls(k)为任务s(k)的大小,Gs(k)为任务s(k)的计算强度,fc为MEC服务器的CPU时钟频率。
进一步地,步骤(11c)中,任务s(k)的完成时间
Figure GDA0004018889080000034
其中,Qs(k-1)为上一个任务s(k-1)的完成时间,
Figure GDA0004018889080000035
为任务s(k)上传至MEC服务器的时刻,tu,s(j)为任务s(j)上传至MEC服务器的时刻。
进一步地,步骤12)中,误工损失模型
Figure GDA0004018889080000036
其中,μ为MEC服务器每单位CPU周期的收益,σ(·)函数即
Figure GDA0004018889080000037
其中,
Figure GDA0004018889080000038
ds(k)为任务s(k)的截止期限。
进一步地,步骤32)的实现过程为:
(32a)将待处理任务集合划分为无优任务和普通任务,并对无优任务和普通任务进行分支定界;
(32b)计算最终分支问题的目标值,提取目标值最小的分支问题对应的执行次序作为利益最大化执行次序。
进一步地,步骤(32a)的实现过程为:
32aa)将“待处理任务集合中的任务经排序后使得MEC服务器误工损失达到最小化”作为问题,建立问题表达式;
32bb)将问题中的任务进行EDD排序,针对第一个误工任务,如有两个任务,该两个任务分别为第一任务和第二任务,满足:均不属于误工任务、第二任务的次序号在误工任务的次序号之前、第一任务的执行时间小于等于第二任务的执行时间、第一任务的收益大于等于第二任务的收益,则认为第二任务为无优任务,将第二任务更新到误工集合中,并得到无优任务分支问题,否则,认为第一任务和第二任务均为普通任务,将第一任务和第二任务分别更新到误工集合中,得到2个新的误工集合,得到2个普通任务分支问题;
32cc)针对32bb)中得到各个任务分支问题,将误工损失值最小的任务分支问题继续执行步骤32bb),直至最终的任务分支问题中无误工任务。
与现有技术相比,具有如下特点:
基于移动用户的任务信息以及移动用户与MEC服务器之间的信道信息,以收益最大化为目标建立误工损失模型,不计入任务等待时间,利用误工损失模型中的函数剔除完成时间大于等于截止期限的任务,对剩余任务进行EDD排序,再利用分支定界法确定执行次序,MEC服务器根据执行次序执行完成时间小于截止期限的任务,并获取最大化收益,本发明以任务信息为数据基础,以收益最大化为目标,将MEC服务器误工最小化问题建模成以任务执行次序为优化变量的最优化问题,并建立误工损失模型,提出了一种基于分支定界法的排序算法来寻找该问题的最优解,在满足卸载任务的截止期限的同时,还能尽可能拒绝造成损失较小的任务,确保造成损失较大的任务都能完成,以实现收益最大化。
附图说明
图1为本发明的算法流程图。
图2为多用户MEC系统的结构框图。
图3为MEC服务器在各算法下平均收益的曲线图。
图4为MEC服务器在各算法下任务完成率的曲线图。
具体实施方式
以下结合实施例对本发明作进一步说明,但本发明并不局限于这些实施例。
多用户MEC系统包括K(K≥2,K为正整数)个移动用户和1个MEC服务器,各移动用户均有1个计算密集型任务,并请求将任务卸载到MEC服务器。对于MEC服务器而言,各卸载请求为任务s(k),k(k∈{1,2,...,K})。各移动用户的每个任务都具有严格的截止期限。多用户MEC系统的结构框图如图2所示。
MEC服务器获取收益的过程是:移动用户向MEC服务器发送卸载请求消息,卸载请求消息包括客户端中间件收集的任务信息和信道信息;MEC服务器收到一批卸载请求后,在不用等待的条件下,MEC服务器拒绝接受完成时间大于等于截止期限的这类任务,并将剩余任务按照最早交货期限优先(EDD)方式进行初始化排序,获取初始执行次序;将初始执行次序的任务分为已处理任务和待处理任务两部分,对待处理任务部分利用分支定界法再次进行排序,获取收益最大化执行次序;MEC服务器根据收益最大化执行次序执行任务,如果任务的完成时间大于等于截止期限,则拒绝执行该任务,否则,接受执行该任务,将拒绝、接受决策反馈给用户,收到拒绝决策的移动用户不向MEC服务器卸载任务,收到接受决策的移动用户将向MEC服务器卸载任务并支付相应的费用。具体实现过程如图1所示。
本发明基于以下前提条件给出技术方案:
(1)信道状态信息是已知的;
(2)信道状态在任务卸载期间保持不变;
(3)一旦决定将任务卸载到MEC服务器,移动用户将不会停止卸载,直到卸载完成。
本发明提出一种多用户MEC系统中的云端计算资源分配方法,具体包括如下步骤:
(1)建立误工损失模型
11)在每个卸载请求的任务信息中,包括有任务的大小、任务的计算强度和任务的截止期限,还包括移动用户与MEC服务器之间的传输速率;利用上述任务信息、传输速率以及MEC服务器的CPU时钟频率计算出执行任务的完成时间;
12)利用任务的完成时间与任务的截止期限的差值构建σ(·)函数,再利用任务的大小、任务的计算强度、每单位CPU周期的收益以及σ(·)函数建立误工损失模型;
(2)MEC服务器接收卸载请求
在不计入等待时间的情况下,利用σ(·)函数拒绝不符合要求的任务请求,并将剩余各个任务请求按截止期限从小到大进行排序,得到初始执行次序;
(3)分支定界法确定任务执行次序
31)如按照初始执行次序依次上传各任务,MEC服务器在接收在后上传的任务的同时依次处理在先上传的任务,在接收完所有任务时,便出现已处理任务集合和待处理任务集合;
32)利用分支定界法对待处理任务集合进行排序,得到已排序执行次序,将已处理任务集合的执行次序与已排序执行次序合并,得到收益最大化执行次序;
(4)MEC服务器按照收益最大化执行次序执行完成时间小于截止期限的任务,并收取相应费用。
步骤11)中,各移动用户向MEC服务器发送任务卸载请求时,任务卸载请求包含的信息有任务s(k)的大小ls(k)(单位:bit)、任务s(k)的计算强度Gs(k)(单位:cycle/bit)和任务s(k)的截止期限ds(k)(单位:s),还包括任务s(k)与MEC服务器之间的传输速率rs(k)。其中,
Figure GDA0004018889080000061
Bs(k)为MEC服务器分配给任务s(k)的传输带宽,N0为噪声功率谱密度,hs(k)是介于任务s(k)和MEC服务器之间的信道增益,ps(k)为传输功率,k∈{1,2,...,K}。
步骤11)中关于执行任务的完成时间:若将任务s(k)卸载到MEC服务器执行,则完成该任务的所需时间包括任务上传时间、在MEC服务器的队列等待时间、MEC服务器处理时间和计算结果下载时间。由于计算结果的下载时间远小于任务上传时间,本申请将执行任务的完成时间限定为上传时间、队列等待时间和处理时间。
进一步地,在步骤11)中,计算执行任务的完成时间的步骤为:
(11a)在各个任务中,利用任务的大小和传输速率计算上传时间,用于确定执行当前任务的起始时刻;
(11b)在各个任务中,利用任务的大小、任务的计算强度和MEC服务器的CPU时钟频率计算当前任务的处理时间;
(11c)在各个任务中,上一任务的完成时间与执行当前任务的起始时刻相比,较大值与当前任务的处理时间相加,得到当前任务的完成时间。
进一步地,步骤(11a)中,记K(K≥2,K为正整数)个移动用户向MEC服务器发送卸载请求;记任务s(k)是实际执行次序s中第k个执行,任务s(k)的上传时间为
Figure GDA0004018889080000071
其中,k∈{1,2,...,K},k为正整数,j∈{1,2,...,k},j为正整数,ls(j)为任务s(j)的大小,rs(j)为任务s(j)与MEC服务器之间的传输速率。
Figure GDA0004018889080000072
Bs(j)为MEC服务器分配给任务s(j)的传输带宽,N0为噪声功率谱密度,hs(j)是介于任务s(j)和MEC服务器之间的信道增益,ps(j)为传输功率。
进一步地,步骤(11b)中,任务s(k)的处理时间为
Figure GDA0004018889080000073
其中,ls(k)为任务s(k)的大小,Gs(k)为任务s(k)的计算强度,fc是MEC服务器的CPU时钟频率。
步骤(11c)中,任务s(k)的完成时间
Figure GDA0004018889080000074
其中,Qs(k-1)为上一个任务s(k-1)的完成时间,
Figure GDA0004018889080000075
为任务s(k)上传至MEC服务器的时刻,tu,s(j)为任务s(j)上传至MEC服务器所花费的时间
步骤12)中,由于MEC服务器收益最大化的同时误工损失最小,因此,建立误工损失模型,求解MEC服务器利益最大化。收益模型为
Figure GDA0004018889080000076
收益最大化的同时误工损失最小,因此,误工损失模型
Figure GDA0004018889080000077
其中,μ为MEC服务器每单位CPU周期的收益,σ(·)函数即
Figure GDA0004018889080000078
其中,
Figure GDA0004018889080000081
s为任务在MEC服务器端的实际执行次序,ds(k)为任务s(k)的截止期限。本发明将MEC服务器误工损失最小化问题建模为以任务执行次序为优化变量的优化问题,在执行任务阶段,MEC服务器根据分支定界法获取的任务最优执行次序,为各移动用户提供服务。
步骤12)中,任务s(k)的完成时间Qs(k)的推导过程是:
记任务s(k)的等待时间为tw,s(k),记Qs(k)为任务s(k)的完成时间,若任务s(k)上传至MEC服务器的时刻
Figure GDA0004018889080000082
大于前一个任务s(k-1)的完成时间Qs(k-1),那么MEC服务器执行任务s(k)的起始时刻为
Figure GDA0004018889080000083
任务s(k)在队列等待的时间为零,否则,起始执行时刻为Qs(k-1),即,该任务的起始执行时刻为上一个任务的完成时刻,由此得出各个任务的等待时间为
Figure GDA0004018889080000084
因此,任务s(k)的完成时间可以表示为
Figure GDA0004018889080000085
另外,当任务上传时间远小于任务执行时间,任务s(k)的完成时间还可以进一步简化为Qs(k)=Qs(k-1)+tc,s(k)
步骤(2)中,经σ(Qs(k)-ds(k))处理后,在不计入等待时间的情况下,拒绝执行完成时间大于等于截止期限的任务请求,接受完成时间小于截止期限的任务请求,记完成时间小于截止期限的任务请求有M(M≥1,M为正整数)个,记为任务集合A,将A中任务按截止期限从小到大进行排序,得到初始任务执行次序s0={s0(1),s0(2),...,s0(M)}。
根据MEC服务器的卸载决策原则,无法在给定的截止期限之前完成的任务实际上不会被卸载至服务器,同时,MEC服务器也不能获得用户为该任务所支付的费用。为了实现收益的最大化,MEC服务器应尽可能减少因拒绝任务造成的损失。给定K个待卸载任务,共有K!种可能的任务执行次序。每个可能的任务执行次序都具有唯一的目标值。任务的上传与处理可以部分并行进行,且任务的上传时间远小于MEC服务器的处理时间,本发明利用分支定界法来获取任务最优执行次序,旨在以较低的计算复杂度寻找MEC服务器收益优化的任务执行次序。
步骤31)中,按照初始任务执行次序s0依次上传所有任务,即,在同一时刻仅有一个任务上传,记最后一个任务的上传完成时刻为tl,有
Figure GDA0004018889080000091
n为正整数;假设在tl时刻前,MEC服务器按照初始任务执行次序s0依次处理上传完毕的任务,记任务子集A1为在tl时刻之前已被处理的任务(包括tl时刻正在处理的任务)的集合,即已处理任务集合,子集A1的执行次序为s1=(s0(1),…,s0(|A1|)),其中|A1|为集合A1的势,等于A1中元素的个数;记任务子集A2为在tl时刻之前未被处理的任务集合,即待处理任务集合,有A2=A-A1。A2的执行次序为s2
步骤32)中,运行分支定界法对待处理任务集合A2中的任务进行排序,得到关于A2的已排序执行次序
Figure GDA0004018889080000092
将s1
Figure GDA0004018889080000093
合并,得到MEC服务器的收益最大化执行次序S,
Figure GDA0004018889080000094
任务上传和执行的过程中,在后任务需等待在先任务执行完成之后再执行,在等待的过程中,有可能会出现误工的情况,因此,本发明将问题P进行EDD排序过后,通过分支定界法确定收益最大化执行次序尽可能拒绝造成损失较小的任务。获取
Figure GDA0004018889080000095
的具体步骤为:
(32a)将A2中的任务划分为无优任务和普通任务,并对无优任务和普通任务进行分支定界
32aa)将“待处理任务集合中的任务经排序后使得MEC服务器误工损失达到最小化”作为问题,建立问题表达式
记A2中的任务经排序后使得MEC服务器误工损失达到最小化的问题为P,其中,
Figure GDA0004018889080000101
式中,s为实际执行次序,ls(m)为任务s(m)的大小,Gs(m)为任务s(m)的计算强度,Qs(m)为任务s(m)的完成时间,ds(m)为任务s(m)的截止期限,m∈{1,2,...,|A2|},|A2|为集合A2的势;
32bb)将问题中的任务进行EDD排序,针对第一个误工任务,如有两个任务,该两个任务分别为第一任务和第二任务,满足:均不属于误工任务、第二任务的次序号在误工任务的次序号之前、第一任务的执行时间小于等于第二任务的执行时间、第一任务的收益大于等于第二任务的收益,则认为第二任务为无优任务,将第二任务更新到误工集合中,并得到无优任务分支问题,否则,认为第一任务和c第二任务均为普通任务,将第一任务和第二任务分别更新到误工集合中,得到2个新的误工集合,得到2个普通任务分支问题。
对问题P中的任务进行EDD排序,在第一个误工任务处,对该排序中出现该误工任务之前的无优任务和普通任务进行分支定界,得到无优任务和普通任务的分支问题的执行次序,具体实现方式为:
记剔除问题P中h个误工任务之后经排序后使得MEC服务器误工损失达到最小化的问题为
Figure GDA00040188890800001012
其中,
Figure GDA0004018889080000102
式中,
Figure GDA0004018889080000103
为剔除h个误工任务之后的实际执行次序,
Figure GDA0004018889080000104
为任务
Figure GDA0004018889080000105
的大小,
Figure GDA0004018889080000106
为任务
Figure GDA0004018889080000107
的计算强度,
Figure GDA0004018889080000108
为任务
Figure GDA0004018889080000109
的完成时间,
Figure GDA00040188890800001010
为任务
Figure GDA00040188890800001011
的截止期限,
Figure GDA0004018889080000111
|A2|为集合A2的势,h∈{1,2,...,|A2|},n∈{1,2,...,|A2|-h},
Figure GDA0004018889080000112
表示执行次序
Figure GDA0004018889080000113
中的第n个位置的任务。
记h个误工任务组成的误工集合为L={s(k1),...,s(kh)},1≤k1≤kh≤|A2|,;针对问题
Figure GDA0004018889080000114
中执行次序
Figure GDA0004018889080000115
第一个误工任务
Figure GDA0004018889080000116
对于两个任务
Figure GDA0004018889080000117
Figure GDA0004018889080000118
如果满足
Figure GDA0004018889080000119
1≤i,j≤km
Figure GDA00040188890800001110
则有
Figure GDA00040188890800001111
Figure GDA00040188890800001112
的无优任务,
Figure GDA00040188890800001113
Figure GDA00040188890800001114
放入误工任务集合L中,更新误工集合L,得到新的误工集合
Figure GDA00040188890800001115
得到无优任务分支问题
Figure GDA00040188890800001116
的任务执行次序为
Figure GDA00040188890800001117
否则称
Figure GDA00040188890800001118
为普通任务,将
Figure GDA00040188890800001119
分别放入误工任务集合L中,得到新的误工集合
Figure GDA00040188890800001120
以及
Figure GDA00040188890800001121
及其相应分支问题
Figure GDA00040188890800001122
Figure GDA00040188890800001123
其中,km表示问题
Figure GDA00040188890800001124
中执行次序的第km位置的任务,
Figure GDA00040188890800001125
为任务
Figure GDA00040188890800001126
的目标数值,
Figure GDA00040188890800001127
表示任务
Figure GDA00040188890800001128
在MEC服务器执行时间,
Figure GDA00040188890800001129
表示任务
Figure GDA00040188890800001130
在MEC服务器执行时间,
Figure GDA00040188890800001131
表示将任务
Figure GDA00040188890800001132
从执行次序
Figure GDA00040188890800001133
中剔除后的执行次序
Figure GDA00040188890800001134
对应的误工损失最小值,
Figure GDA00040188890800001135
Figure GDA00040188890800001136
表示将任务
Figure GDA00040188890800001137
从执行次序
Figure GDA00040188890800001138
中剔除后的执行次序
Figure GDA00040188890800001139
对应的误工损失最小值,
Figure GDA00040188890800001140
32cc)针对32bb)中得到各个任务分支问题,将误工损失值最小的任务分支问题继续执行步骤32bb),直至最终的任务分支问题中无误工任务。
(32b)计算最终分支问题的目标值,提取目标值最小的分支问题对应的执行次序作为利益最大化执行次序
Figure GDA0004018889080000121
记问题
Figure GDA0004018889080000122
为一个最终分支问题,则其目标函数值
Figure GDA0004018889080000123
其中
Figure GDA0004018889080000124
为分支问题中的误工任务集合,No为拒绝
Figure GDA0004018889080000125
中任务o带来的损失,
Figure GDA0004018889080000126
为分支问题中误工任务的损失总和。通过上述表达式计算各个分支问题的目标值,提取目标值最小时对应的执行次序作为利益最大化执行次序
Figure GDA0004018889080000127
(4)MEC服务器按照收益最大化执行次序
Figure GDA0004018889080000128
执行完成时间小于截止期限的任务,并收取相应费用。
现有技术中,MEC服务器接收到任务完成时间小于任务截止期限的任务时,就接受并执行任务,并根据每单位CPU周期的收益、任务的大小、任务的计算强度获得收益,否则,拒绝任务,不获得收益,本发明则在不计入任务等待时间情况下,进行完成时间和截止期限比较筛选之后,再利用分支定界法优化执行次序,并在此进行完成时间和截止期限的比较筛选,以获得最大化的收益,能很好地平衡任务完成率和收益之间的关系。
对本发明算法(Proposed algorithm)进行仿真,验证其性能,并将其与大任务优先(Large task first,LTF)算法、低延迟任务优先算法(Low-latency task first,LLTF)和先到先服务(First Come First Served,FCFS)算法进行平均收益和任务完成率的比较。LLTF算法优先考虑具有更高延迟要求的任务,LTF算法优先考虑更高计算资源要求的任务,FCFS算法则优先考虑上传时间最小的任务。
仿真设定每个任务的大小均匀分布在100Kbit~500Kbit,计算强度均匀分布在1000cycle/bit~2000cycle/bit,截止期限均匀分布在30ms~150ms。此外,可用带宽B=20MHz,信道增益在[-50,-30]dBm范围内均匀分布,用户的传输功率设置为200mW,噪声功率谱密度为-174dBm/Hz,MEC服务器单位收益为每CPU周期1×10-8元。
在相同的仿真参数下,独立运行本发明的算法与三个对比算法各10,000次并记录每种算法的平均收益,再将本发明算法的平均收益与对比算法的平均收益进行比较,如图3所示。通过图3的MEC服务器在各算法下平均收益的曲线图可以看出:
(1)本发明算法的平均收益高于其他算法的平均收益,且随着移动用户数量的增加,本发明算法优势变得更加明显;给定MEC服务器的CPU频率fc=10GHz,当移动用户数目K=24时,本发明算法的平均收益分别比LTF,LLTF和FCFS高11%,14%和21%;
(2)随着移动用户数K的增加,每种算法的平均收益均趋于稳定。这是因为在工作负载重的网络中,fc成为收益增加的瓶颈。
任务完成率,即MEC服务器能够接收的任务数占任务总数的百分比,体现MEC服务器容纳用户的能力,任务完成率越高,意味着可以满足更多用户的需求。图4为MEC服务器在各算法下任务完成率的曲线图,通过图4可以看出:当用户数较少时,本发明算法的平均任务完成率高于LTF和FCFS,并且该算法的平均任务完成率接近LLTF;随着用户数量的增加,当fc=20GHz,K=24时,本发明算法的平均完成率略低于LLTF约4%,比FCFS略低约3%,高于LTF。采用本发明算法可以完成近32%的任务,但采用LTF仅完成18%的任务。
从图3和图4中,还可观察到:随着用户数量的增加,LLTF和FCFS具有较高的完成率但是这两种算法的平均收益均低于本发明算法,这意味着收益并不完全等价于已完成任务的数量;本发明算法的平均收益高于其他对比算法,任务平均完成率略低于LLTF与FCFS。因此,本发明算法在优化收益同时也很好地兼顾容纳用户的能力。

Claims (6)

1.一种多用户MEC系统中的云端计算资源分配方法,所述多用户MEC系统包括至少2个移动用户和1个MEC服务器,各移动用户向MEC服务器发送卸载请求,其特征在于,包括如下步骤:
(1)建立误工损失模型:
11)在每个卸载请求的任务信息中,包括有任务的大小、任务的计算强度和任务的截止期限,还包括移动用户与MEC服务器之间的传输速率;利用上述任务信息、传输速率以及MEC服务器的CPU时钟频率计算出执行任务的完成时间;
12)利用任务的完成时间与任务的截止期限的差值构建σ(·)函数,再利用任务的大小、任务的计算强度、每单位CPU周期的收益以及σ(·)函数建立误工损失模型;
(2)MEC服务器接收卸载请求:
在不计入等待时间的情况下,利用σ(·)函数拒绝不符合要求的任务请求,并将剩余各个任务请求按截止期限从小到大进行排序,得到初始执行次序;
(3)分支定界法确定任务执行次序:
31)如按照初始执行次序依次上传各任务,MEC服务器在接收在后上传的任务的同时依次处理在先上传的任务,在接收完所有任务时,便出现已处理任务集合和待处理任务集合;
32)利用分支定界法对待处理任务集合进行排序,得到已排序执行次序,将已处理任务集合的执行次序与已排序执行次序合并,得到收益最大化执行次序;
(4)MEC服务器按照收益最大化执行次序执行完成时间小于截止期限的任务;
步骤32)的实现过程为:
(32a)将待处理任务集合划分为无优任务和普通任务,并对无优任务和普通任务进行分支定界;
(32b)计算最终分支问题的目标值,提取目标值最小的分支问题对应的执行次序作为利益最大化执行次序;
步骤(32a)的实现过程为:
32aa)将“待处理任务集合中的任务经排序后使得MEC服务器误工损失达到最小化”作为问题,建立问题表达式;
32bb)将问题中的任务进行EDD排序,针对第一个误工任务,如有两个任务,该两个任务分别为第一任务和第二任务,满足:均不属于误工任务、第二任务的次序号在误工任务的次序号之前、第一任务的执行时间小于等于第二任务的执行时间、第一任务的收益大于等于第二任务的收益,则认为第二任务为无优任务,将第二任务更新到误工集合中,并得到无优任务分支问题,否则,认为第一任务和第二任务均为普通任务,将第一任务和第二任务分别更新到误工集合中,得到2个新的误工集合,得到2个普通任务分支问题;
32cc)针对32bb)中得到各个任务分支问题,将误工损失值最小的任务分支问题继续执行步骤32bb),直至最终的任务分支问题中无误工任务。
2.根据权利要求1所述的一种多用户MEC系统中的云端计算资源分配方法,其特征在于:
在步骤11)中,计算执行任务的完成时间的步骤为:
(11a)在各个任务中,利用任务的大小和传输速率计算上传时间,用于确定执行当前任务的起始时刻;
(11b)在各个任务中,利用任务的大小、任务的计算强度和MEC服务器的CPU时钟频率计算当前任务的处理时间;
(11c)在各个任务中,上一任务的完成时间与执行当前任务的起始时刻相比,较大值与当前任务的处理时间相加,得到当前任务的完成时间。
3.根据权利要求2所述的一种多用户MEC系统中的云端计算资源分配方法,其特征在于:
步骤(11a)中,记K个移动用户向MEC服务器发送卸载请求,K≥2,K为正整数;记任务s(k)是实际执行次序s中第k个执行,任务s(k)的上传时间为
Figure FDA0004040349490000021
其中,k∈{1,2,...,K},k为正整数,j∈{1,2,...,k},j为正整数,ls(j)为任务s(j)的大小,rs(j)为任务s(j)与MEC服务器之间的传输速率;
进一步地,
Figure FDA0004040349490000031
Bs(j)为MEC服务器分配给任务s(j)的传输带宽,N0为噪声功率谱密度,hs(j)是介于任务s(j)和MEC服务器之间的信道增益,ps(j)为传输功率。
4.根据权利要求3所述的一种多用户MEC系统中的云端计算资源分配方法,其特征在于:
步骤(11b)中,任务s(k)的处理时间为
Figure FDA0004040349490000032
其中,ls(k)为任务s(k)的大小,Gs(k)为任务s(k)的计算强度,fc为MEC服务器的CPU时钟频率。
5.根据权利要求4所述的一种多用户MEC系统中的云端计算资源分配方法,其特征在于:
步骤(11c)中,任务s(k)的完成时间
Figure FDA0004040349490000033
其中,Qs(k-1)为上一个任务s(k-1)的完成时间,
Figure FDA0004040349490000034
为任务s(k)上传至MEC服务器的时刻,tu,s(j)为任务s(j)上传至MEC服务器的时刻。
6.根据权利要求5所述的一种多用户MEC系统中的云端计算资源分配方法,其特征在于:
步骤12)中,误工损失模型
Figure FDA0004040349490000035
其中,μ为MEC服务器每单位CPU周期的收益,σ(·)函数即
Figure FDA0004040349490000036
其中,
Figure FDA0004040349490000041
ds(k)为任务s(k)的截止期限。
CN201911049702.8A 2019-10-31 2019-10-31 一种多用户mec系统中的云端计算资源分配方法 Active CN110647403B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911049702.8A CN110647403B (zh) 2019-10-31 2019-10-31 一种多用户mec系统中的云端计算资源分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911049702.8A CN110647403B (zh) 2019-10-31 2019-10-31 一种多用户mec系统中的云端计算资源分配方法

Publications (2)

Publication Number Publication Date
CN110647403A CN110647403A (zh) 2020-01-03
CN110647403B true CN110647403B (zh) 2023-04-11

Family

ID=69014054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911049702.8A Active CN110647403B (zh) 2019-10-31 2019-10-31 一种多用户mec系统中的云端计算资源分配方法

Country Status (1)

Country Link
CN (1) CN110647403B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112596910B (zh) * 2020-12-28 2024-02-20 广东电网有限责任公司电力调度控制中心 一种多用户mec系统中的云计算资源调度方法
CN113132456B (zh) * 2021-03-02 2022-09-30 西安电子科技大学 一种基于截止时间感知的边云协同任务调度方法及系统
GB2607871B (en) * 2021-06-08 2023-10-18 Samsung Electronics Co Ltd Improvements in and relating to multi-access edge computing (MEC)
CN113411757B (zh) * 2021-06-23 2022-05-06 西北工业大学 通信与计算一体化认知云网络中用户分组设计方法及系统
CN113791878B (zh) * 2021-07-21 2023-11-17 南京大学 边缘计算中截止日期感知的分布式任务卸载方法
CN113794768B (zh) * 2021-09-13 2024-01-23 南京星航通信技术有限公司 移动设备云中的任务分配方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10037231B1 (en) * 2017-06-07 2018-07-31 Hong Kong Applied Science and Technology Research Institute Company Limited Method and system for jointly determining computational offloading and content prefetching in a cellular communication system
CN109814951A (zh) * 2019-01-22 2019-05-28 南京邮电大学 移动边缘计算网络中任务卸载及资源分配的联合优化方法
CN110099384A (zh) * 2019-04-25 2019-08-06 南京邮电大学 基于边-端协同的多用户多mec任务卸载资源调度方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108495340B (zh) * 2018-04-10 2021-06-22 北京邮电大学 一种基于异构混合缓存的网络资源分配方法和装置
CN109067842B (zh) * 2018-07-06 2020-06-26 电子科技大学 面向车联网的计算任务卸载方法
CN110096318B (zh) * 2019-05-08 2021-01-08 北京邮电大学 一种基于移动边缘计算的任务卸载方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10037231B1 (en) * 2017-06-07 2018-07-31 Hong Kong Applied Science and Technology Research Institute Company Limited Method and system for jointly determining computational offloading and content prefetching in a cellular communication system
CN109814951A (zh) * 2019-01-22 2019-05-28 南京邮电大学 移动边缘计算网络中任务卸载及资源分配的联合优化方法
CN110099384A (zh) * 2019-04-25 2019-08-06 南京邮电大学 基于边-端协同的多用户多mec任务卸载资源调度方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Pengtao Zhao.Energy-Saving Offloading by Jointly Allocating Radio and Computational Resources for Mobile Edge Computing.《IEEE Access ( Volume: 5)》.2017,全文. *
付韬 ; 胡亮 ; 王峰 ; .SDN支撑的MEC系统效能评估综述.吉林大学学报(信息科学版).2018,(第06期),全文. *
肖培剑王波黄冬艳.C-RAN网络中一种基于QEE优化的无线资源分配算法.《无线电工程》.2018,全文. *

Also Published As

Publication number Publication date
CN110647403A (zh) 2020-01-03

Similar Documents

Publication Publication Date Title
CN110647403B (zh) 一种多用户mec系统中的云端计算资源分配方法
CN111240701B (zh) 一种端-边-云协同计算的任务卸载优化方法
CN107911478B (zh) 基于化学反应优化算法的多用户计算卸载方法及装置
CN109561148B (zh) 边缘计算网络中基于有向无环图的分布式任务调度方法
CN110928654B (zh) 一种边缘计算系统中分布式的在线任务卸载调度方法
CN112888002B (zh) 一种基于博弈论的移动边缘计算任务卸载及资源分配方法
CN110489176B (zh) 一种基于装箱问题的多接入边缘计算任务卸载方法
CN111711962B (zh) 一种移动边缘计算系统子任务协同调度方法
CN110099384A (zh) 基于边-端协同的多用户多mec任务卸载资源调度方法
CN110519370B (zh) 一种基于设施选址问题的边缘计算资源分配方法
CN108880893A (zh) 一种移动边缘计算服务器联合能量收集及任务卸载方法
CN113220356B (zh) 一种移动边缘计算中的用户计算任务卸载方法
CN113225377A (zh) 物联网边缘任务卸载方法及装置
CN112596910B (zh) 一种多用户mec系统中的云计算资源调度方法
CN109947574A (zh) 一种基于雾网络的车辆大数据计算卸载方法
CN113918240A (zh) 任务卸载方法及装置
CN116321300B (zh) 一种风险感知的移动边缘计算任务调度与资源分配方法
CN115858048A (zh) 一种面向混合关键级任务动态到达边缘卸载方法
Li et al. Profit maximization for service placement and request assignment in edge computing via deep reinforcement learning
CN113190342B (zh) 用于云-边协同网络的多应用细粒度卸载的方法与系统架构
CN117579701A (zh) 一种移动边缘网络计算卸载方法及系统
CN112130927B (zh) 一种可靠性增强的移动边缘计算任务卸载方法
CN117130769B (zh) 一种调频方法、频率调节神经网络的训练方法及电子设备
CN117202264A (zh) Mec环境中面向5g网络切片的计算卸载方法
CN116521369A (zh) 边缘计算任务分配方法、装置及非易失性存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant