CN115022332A - 一种边缘计算中基于深度强化学习的动态服务放置方法 - Google Patents

一种边缘计算中基于深度强化学习的动态服务放置方法 Download PDF

Info

Publication number
CN115022332A
CN115022332A CN202210602370.7A CN202210602370A CN115022332A CN 115022332 A CN115022332 A CN 115022332A CN 202210602370 A CN202210602370 A CN 202210602370A CN 115022332 A CN115022332 A CN 115022332A
Authority
CN
China
Prior art keywords
task
user
service
edge server
server
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.)
Withdrawn
Application number
CN202210602370.7A
Other languages
English (en)
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.)
Guangxi Normal University
Original Assignee
Guangxi Normal University
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 Guangxi Normal University filed Critical Guangxi Normal University
Priority to CN202210602370.7A priority Critical patent/CN115022332A/zh
Publication of CN115022332A publication Critical patent/CN115022332A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution
    • H04W28/086Load balancing or load distribution among access entities
    • H04W28/0861Load balancing or load distribution among access entities between base stations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/08Load balancing or load distribution
    • H04W28/09Management thereof
    • H04W28/0925Management thereof using policies
    • H04W28/0942Management thereof using policies based on measured or predicted load of entities- or links
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种边缘计算中基于深度强化学习的动态服务放置方法,包括如下步骤:1)构建网络模型;2)构建任务模型;3)构建服务放置模型;4)构建计算模型;5)构建问题模型;6)构建马尔可夫模型。这种方法能快速响应用户请求,减少用户等待时延,提高了用户体验,提升了系统效用。

Description

一种边缘计算中基于深度强化学习的动态服务放置方法
技术领域
本发明涉及移动边缘计算系统中的应用领域,具体是一种边缘计算中基于深度强化学习的动态服务放置方法。
背景技术
移动边缘计算(Mobile Edge Computing,简称MEC)通过将计算服务部署在距离用户侧较近的边缘服务器上,使得用户卸载的任务可以就近处理。在用户侧就近部署服务,无需消耗骨干网络的传输带宽,从而实现对移动设备的快速响应。但是由于边缘服务器的资源受限且异构,只能同时部署部分服务。此外,许多计算任务通常可以分解为一组具有依赖关系的子任务,由于现有的服务放置策略仅考虑当前任务的放置情况,未考虑当前任务完成后,后继任务是否已经部署,以及所部署的节点位置。
另一方面,不可预测的用户移动性也对移动边缘计算的服务放置带来新的挑战。由于用户的移动性,不同时隙下同一区域的请求类型和请求数量随着用户的移动发生改变,在用户当前位置就近部署服务已然不能满足用户体验质量的需求。为了优化MEC中用户的体验,应该对当前部署的服务放置策略进行动态调整。
但是动态调整服务放置策略并非易事。一方面,用户的感知时延由通信延迟和计算延迟共同决定。目前的大部分研究仅考虑服务以原子的形式在本地执行或者卸载后选择合适的边缘服务器执行,然而这部分研究忽略了绝大多数应用程序可以进行更细粒度的拆分,并在多个边缘服务器上协同完成计算,再者不同子任务所需的计算资源也不同,如机器学习、视频分类依赖于异构加速器(FPGA、GPU)来实现更快的计算速度。由于服务放置问题是一个NP-hard问题,以及用户对服务请求的多样性,服务放置具有一定的动态性。在计算资源异构的场景下,服务的放置应考虑服务在该边缘服务器上的计算效率,如果不根据边缘服务器的计算资源部署服务,则会导致某些服务执行时间过长,进而出现整体执行效率较低的情况;另一方面,不同时隙下同一基站覆盖范围内的热点请求不同,这可能会出现在某时隙下大量计算资源空闲、部分服务器过载,服务放置策略不能满足当前时隙下的服务请求的情况。比如:在当前时隙部署请求概率较低的服务。因此,有效的动态服务放置策略应考虑用户感知时延最小化和服务放置成本之间的权衡。
近年来,关于服务放置在边缘计算中的应用展开了广泛的研究,在边缘计算中服务放置的相关研究可以归类为(1)服务放置策略受到用户移动性的影响(2)任务间的依赖关系对服务放置策略的影响(3)根据任务所需计算计算资源,将任务放置至执行效率高的边缘服务器。
在移动边缘计算中,服务放置的关键是用户在边缘网络中的移动性以及用户产生任务中子任务间的依赖关系。为了解决用户在边缘网络中的移动性预测问题,在一个用户处于多基站覆盖范围的场景下,考虑了网络接入点选择和网络拥塞的时延过高的影响,通过迭代交替求解用户接入点策略、服务放置策略以及平衡边缘服务器任务等待队列从而提升服务质量。为了消除用户的移动行为和网络带宽、CPU计算资源等系统时变信息对服务放置决策的影响,将服务放置问题公式化为上下文多臂老虎机(contextual multi-armedbandit)问题,提出了一种基于汤普森采样的在线学习算法,该算法为用户的最佳服务放置策略做出决策,从而降低了服务时延。
但是任务间的依赖关系也会使问题的维度变得更高。在任务请求资源同构的环境下,将分布式服务放置问题建模为随机优化问题,提出了基于抽样平均近似算法的服务放置算法,通过创建多个服务,降低了任务完成时延。然而,在实际的情景中,用户需求多样性以及用户移动性会导致边缘服务器覆盖范围内的通信、计算等资源发生改变。在不同时隙下,区域热点服务类型不尽相同,导致边缘服务器负载不均衡。
不同任务在不同性能的边缘服务器执行效率不同,考虑了边缘计算服务器异构资源特征和用户位置,在每个边缘节点中放置多种类型的服务,服务部署后,将各个节点的执行时间换算成奖励,并累加各个节点的奖励值作为系统的总回报。为实现系统总回报最大化,作者提出了一种确定性逼近算法求解系统总回报最大值。然而作者未考虑服务放置成本以及资源分配问题。提出了一种按需服务放置算法,能准确地将服务部署至当前完成时间最少的服务器上,有效降低了任务完成时延。
上述文献主要采用传统数值优化方法进行求解,由于传统数值优化方法在求解最优服务放置策略存在算法迭代次数多、复杂度过高等问题。且目前的大部分研究仅考虑单个任务在异构环境下的服务放置问题,忽略了任务可以进行更细粒度的划分,不同子任务所需的计算资源不同,在异构服务器上具有更高的执行效率。另外,移动边缘计算中用户的请求是随机动态生成的,导致在不同时隙具有不同的服务放置需求。然而现有的工作很少考虑服务放置,即当前主要考虑边缘服务器在接收到用户请求后再部署服务,执行完成后立即释放服务使用的资源。将时间划分为多个周期,在每个时间周期开始时预先部署服务,在时间周期内对当前部署的服务不进行操作,在时间周期结束时将服务实例全部释放。但在时间周期内可能会遇到同一任务被多次请求的问题,当前部署的服务资源不足时,无法及时对部署的服务进行更新。
发明内容
本发明的目的是针对现有技术中存在的不足,提供了一种边缘计算中基于深度强化学习的动态服务放置方法。这种方法能快速响应用户请求,减少用户等待时延,提高了用户体验,提升了系统效用。
实现本发明目的的技术方案是:
一种边缘计算中基于深度强化学习的动态服务放置方法,包括如下步骤:
移动边缘计算服务场景由U个用户,M个微基站与M个ES(边缘服务器)组成,每个微基站连接一个边缘服务器,
在此场景下,用户通过无线链路连接到与其距离最近的微基站,假设用户服务到达的概率是服从独立同分布,用户请求服务的概率服从泊松分布,请求的内容服从ZIPF分布,单个用户在一个时隙内请求Nk个服务,假设任务在分配至指定的边缘服务器后,不再进行计算迁移;
Figure BDA0003670138980000031
表示用户的集合;用
Figure BDA0003670138980000032
来表示边缘服务器的集合;用
Figure BDA0003670138980000033
来表示系统运行时隙集合,其中,时隙长度为T;
请求服务的移动用户上传任务数据至其所在区域中边缘服务器上,即本地边缘服务器,但本地边缘服务器没有放置用户请求的服务或者负载过重,如果周边边缘服务器放置了用户所请求服务且负载较轻,在边缘服务器之间建立协作机制,将本地边缘服务器的请求转发至周边边缘服务器请求协作;
1)构建网络模型:
基站与移动用户之间的数据传输过程包括移动终端上传数据与MEC服务器回传计算结果,用户上传任务k的数据传输速率
Figure BDA0003670138980000041
表示为:
Figure BDA0003670138980000042
边缘服务器之间的数据传输速率
Figure BDA0003670138980000043
用下式表示:
Figure BDA0003670138980000044
式中的Bu表示用户上传信道可用带宽,Bm表示边缘服务器传输信道可用带宽;
Figure BDA0003670138980000045
表示用户发射设备的传输功率;
Figure BDA0003670138980000046
表示基站之间的传输功率;σu表示在用户处的高斯白噪声功率;σm表示在基站m处的高斯白噪声功率;hu表示用户至基站之间的信道增益,hm表示两个基站之间的信道增益;
由于边缘服务器的计算存储资源有限,每个边缘服务器上只能部署有限的服务,当用户所在的边缘服务器没有部署该用户所需要的请求时,该用户上传的任务将会转发至周边边缘服务器进行协作;
当用户任务在本地边缘服务器计算时,任务数据传输所需要的时间
Figure BDA0003670138980000047
用下式表示:
Figure BDA0003670138980000048
当用户任务在本地边缘服务器计算时,任务数据传输至目标边缘服务器所需要的时间
Figure BDA0003670138980000049
用下式表示:
Figure BDA00036701389800000410
计算结果回传至用户所需时间
Figure BDA00036701389800000411
用下式表示:
Figure BDA00036701389800000412
式中的
Figure BDA00036701389800000413
表示用户u上传的任务k大小,
Figure BDA00036701389800000414
表示用户u的任务k计算结果大小;
2)构建任务模型:
Figure BDA00036701389800000415
来指代任务列表,用链表
Figure BDA00036701389800000416
其中i,j∈N对任务进行建模,根据应用程序的执行流程,将子任务抽象为一条任务链,该任务链中的每一个节点代表一个子任务,子任务之间具有依赖关系,子任务必须按照前后依赖关系执行,每一个子任务卸载到不同节点进行计算,任务依次执行,当前一个任务未执行结束时,下一个任务就无法执行;
用户在时隙t发出的任务请求包含应用程序类型Ai,i∈N,
Figure BDA0003670138980000051
任务对应的数据集αi,i∈N以及任务完成截止时间Li,i∈N;
采用二进制变量
Figure BDA0003670138980000052
表示在时隙t用户u请求的应用程序Ai的任务k被放置在第m个SBS上执行,否则
Figure BDA0003670138980000053
即:
Figure BDA0003670138980000054
Figure BDA0003670138980000055
3)构建服务放置模型:
Figure BDA0003670138980000056
来表示边缘服务器列表,服务器Si部署j个服务,其中
Figure BDA0003670138980000057
4)构建计算模型:
当前置任务执行完成后,将输出结果传输至下一个服务器,也能为当前服务器,最后一个任务执行完成后,计算结果传输至用户侧,任务的前置任务是否完成定义为:
Figure BDA0003670138980000058
Figure BDA0003670138980000059
在时隙t用户n的任务k的前置任务都已经执行完毕;
在时隙t,边缘服务器收到设备上传的数据并将数据存入缓存队列中等待处理,处理该部分数据需要消耗服务器资源,此时服务器用计算资源为:
Figure BDA00036701389800000510
Figure BDA00036701389800000511
其中ξk是处理任务k单位数据所需CPU资源,
Figure BDA00036701389800000512
为边缘服务器m的CPU频率最大值,
Figure BDA00036701389800000513
为用户u说请求的任务k的大小;
则用户u所请求的任务k在时隙t在第m个SBS的执行时长表示为:
Figure BDA00036701389800000514
任务k在边缘服务器之间传输的时间为:
Figure BDA0003670138980000061
若当前边缘服务器存在计算任务,则进入任务等待队列中,等待时间为
Figure BDA0003670138980000062
为队列中前方任务计算时间之和;
若等待时间超时,则该任务失败,任务失败后将任务从等待队列中丢弃,同时返回失败结果至用户;
综上所述用户u的任务k的完成时延为:
Figure BDA0003670138980000063
5)构建问题模型:
在多用户多边缘服务器的场景下,假设每一个边缘服务器只能放置有限的服务,在满足任务完成时间的约束下,使用户满意度与服务器利用率最大化;
系统中所有任务传输与计算时延表示为:
Figure BDA0003670138980000064
等待时延与QoE之间的关系用对数函数拟合,具体表达式如下:
Figure BDA0003670138980000065
其中取
Figure BDA0003670138980000066
该值为国际电信联盟(ITU)评估QoE方案中得分的最大值;
用户满意度表示为:
Figure BDA0003670138980000067
因此,问题表示为:
Figure BDA0003670138980000068
s.t.(6),(7),(8),
在所考虑的MEC系统中,系统状态由任务请求、当前任务缓存队列、CPU可用资源组成,动作是服务放置决策,服务放置决策包括当前服务器可放置服务种类与数量,服务放置决策仅依赖于当前状态,与历史状态无关,因此,服务放置问题是一个马尔可夫决策过程(MDP)问题,采用强化学习有效解决马尔可夫决策过程问题,然而服务资源异构与服务种类多样化使得状态空间的维度大而导致问题的复杂度难以控制,深度强化学习作为Q-learning的升级,DNN的引入大幅提高学习速度,使用多层特征提取方法的非线性叠加对表层特征进行提取与组合,智能体(agent)不断的与环境交互,得到新的抽象特征,从而做出新的服务放置决策;
6)构建马尔可夫模型:
强化学习主要有状态、动作、回报和智能体四个基本要素组成,智能体根据当前状态与环境不断进行动作交互产生回报值,模型定义如下:
系统state:服务放置矩阵
用S表示系统状态:
S=(S(t),Q(t),C(t)) (17),
其中时隙t内,各个边缘服务器的服务放置情况表示为:
Figure BDA0003670138980000071
时隙t内边缘服务器的队列情况表示为:
Figure BDA0003670138980000072
时隙t内单台边缘服务器剩余可用的计算资源表示为:
C(t)=C1,1(t),C1,2(t),…,Cv,l(t) (20),
系统Action:用A表示系统动作,其中系统动作包含服务更替矩阵,决定在当前情况下是否进行服务替换:
Figure BDA0003670138980000073
其中
Figure BDA0003670138980000074
表示在时隙t内放置服务Tl的概率,在更新放置的服务时,边缘服务器根据
Figure BDA0003670138980000075
概率大小,依次选择任务Tl放置到边缘服务器中,若原本的服务已经存在,则无需进行操作;
系统Reward:任务是否能完成作为奖励指标,在状态st下执行完动作at后,系统计算即时奖励R(st,at)到智能体,服务放置的不同会影响系统和用户QoE收益,因此,将奖励函数定义为时隙t内获得的计算收益:
Figure BDA0003670138980000076
其中
Figure BDA0003670138980000077
Figure BDA0003670138980000078
分别为时隙t内第k个用户获得的系统奖励和QoE收益;
agent的目标是学习一个选择策略π,然后基于当前状态,选择下一个动作a,并获得及时回报
π*(s)=argmax Q*(St,at|θ) (23),
其中Q*(St,at|θ)是逼近的最佳Q值;
具体实现:
输入:当前服务放置状态、时隙任务生成情况、任务依赖关系
输出:最优策略,即服务放置方案
Figure BDA0003670138980000081
本技术方案考虑了多用户、多MEC以及多种服务类型的场景,在不同时隙下,边缘服务器覆盖范围内的请求数量与任务类型的差异,对各个边缘服务器的服务放置策略进行优化。为保证在计算、存储资源受限的边缘服务器上使用户体验质量的最大化,通过在边缘服务器上部署不同的服务,从而快速响应用户请求,减少用户等待时延,本技术方案将问题建模为马尔可夫决策过程,以提升用户体验质量为目标。
这种方法能快速响应用户请求,减少用户等待时延,提高了用户体验,提升了系统效用。
附图说明
图1为实施例的架构图;
图2为实施例与其他方法在各个时间片内的平均完成时延对比示意图;
图3为实施例与其他方法在不同时延约束条件下,任务完成率与约束时延的影响对比示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述,但不是对本发明的限定。
实施例:
参照图1,一种边缘计算中基于深度强化学习的动态服务放置方法,包括如下步骤:
移动边缘计算服务场景由U个用户,M个微基站与M个ES(边缘服务器)组成,每个微基站连接一个边缘服务器,
在此场景下,用户通过无线链路连接到与其距离最近的微基站,假设用户服务到达的概率是服从独立同分布,用户请求服务的概率服从泊松分布,请求的内容服从ZIPF分布,单个用户在一个时隙内请求Nk个服务,假设任务在分配至指定的边缘服务器后,不再进行计算迁移;
Figure BDA0003670138980000091
表示用户的集合;用
Figure BDA0003670138980000092
来表示边缘服务器的集合;用
Figure BDA0003670138980000093
来表示系统运行时隙集合,其中,时隙长度为T;
请求服务的移动用户上传任务数据至其所在区域中边缘服务器上,即本地边缘服务器,但本地边缘服务器没有放置用户请求的服务或者负载过重,如果周边边缘服务器放置了用户所请求服务且负载较轻,在边缘服务器之间建立协作机制,将本地边缘服务器的请求转发至周边边缘服务器请求协作;
1)构建网络模型:
基站与移动用户之间的数据传输过程包括移动终端上传数据与MEC服务器回传计算结果,用户上传任务k的数据传输速率
Figure BDA0003670138980000094
表示为:
Figure BDA0003670138980000095
边缘服务器之间的数据传输速率
Figure BDA0003670138980000096
用下式表示:
Figure BDA0003670138980000097
式中的Bu表示用户上传信道可用带宽,Bm表示边缘服务器传输信道可用带宽;
Figure BDA0003670138980000098
表示用户发射设备的传输功率;
Figure BDA0003670138980000099
表示基站之间的传输功率;σu表示在用户处的高斯白噪声功率;σm表示在基站m处的高斯白噪声功率;hu表示用户至基站之间的信道增益,hm表示两个基站之间的信道增益;
由于边缘服务器的计算存储资源有限,每个边缘服务器上只能部署有限的服务,当用户所在的边缘服务器没有部署该用户所需要的请求时,该用户上传的任务将会转发至周边边缘服务器进行协作;
当用户任务在本地边缘服务器计算时,任务数据传输所需要的时间
Figure BDA0003670138980000101
用下式表示:
Figure BDA0003670138980000102
当用户任务在本地边缘服务器计算时,任务数据传输至目标边缘服务器所需要的时间
Figure BDA0003670138980000103
用下式表示:
Figure BDA0003670138980000104
计算结果回传至用户所需时间
Figure BDA0003670138980000105
用下式表示:
Figure BDA0003670138980000106
式中的
Figure BDA0003670138980000107
表示用户u上传的任务k大小,
Figure BDA0003670138980000108
表示用户u的任务k计算结果大小;
2)构建任务模型:
Figure BDA0003670138980000109
来指代任务列表,用链表
Figure BDA00036701389800001010
其中i,j∈N对任务进行建模,根据应用程序的执行流程,将子任务抽象为一条任务链,该任务链中的每一个节点代表一个子任务,子任务之间具有依赖关系,子任务必须按照前后依赖关系执行,每一个子任务卸载到不同节点进行计算,任务依次执行,当前一个任务未执行结束时,下一个任务就无法执行;
用户在时隙t发出的任务请求包含应用程序类型Ai,i∈N,
Figure BDA00036701389800001011
任务对应的数据集αi,i∈N以及任务完成截止时间Li,i∈N;
采用二进制变量
Figure BDA00036701389800001012
表示在时隙t用户u请求的应用程序Ai的任务k被放置在第m个SBS上执行,否则
Figure BDA00036701389800001013
即:
Figure BDA0003670138980000111
Figure BDA0003670138980000112
3)构建服务放置模型:
Figure BDA0003670138980000113
来表示边缘服务器列表,服务器Si部署j个服务,其中
Figure BDA0003670138980000114
4)构建计算模型:
当前置任务执行完成后,将输出结果传输至下一个服务器,也能为当前服务器,最后一个任务执行完成后,计算结果传输至用户侧,任务的前置任务是否完成定义为:
Figure BDA0003670138980000115
Figure BDA0003670138980000116
在时隙t用户n的任务k的前置任务都已经执行完毕;
在时隙t,边缘服务器收到设备上传的数据并将数据存入缓存队列中等待处理,处理该部分数据需要消耗服务器资源,此时服务器用计算资源为:
Figure BDA0003670138980000117
Figure BDA0003670138980000118
其中ξk是处理任务k单位数据所需CPU资源,
Figure BDA0003670138980000119
为边缘服务器m的CPU频率最大值,
Figure BDA00036701389800001110
为用户u说请求的任务k的大小;
则用户u所请求的任务k在时隙t在第m个SBS的执行时长表示为:
Figure BDA00036701389800001111
任务k在边缘服务器之间传输的时间为:
Figure BDA00036701389800001112
若当前边缘服务器存在计算任务,则进入任务等待队列中,等待时间为
Figure BDA00036701389800001113
为队列中前方任务计算时间之和;
若等待时间超时,则该任务失败,任务失败后将任务从等待队列中丢弃,同时返回失败结果至用户;
综上所述用户u的任务k的完成时延为:
Figure BDA0003670138980000121
5)构建问题模型:
在多用户多边缘服务器的场景下,假设每一个边缘服务器只能放置有限的服务,在满足任务完成时间的约束下,使用户满意度与服务器利用率最大化;
系统中所有任务传输与计算时延表示为:
Figure BDA0003670138980000122
等待时延与QoE之间的关系用对数函数拟合,具体表达式如下:
Figure BDA0003670138980000123
其中取
Figure BDA0003670138980000124
该值为国际电信联盟(ITU)评估QoE方案中得分的最大值;
用户满意度表示为:
Figure BDA0003670138980000125
因此,问题表示为:
Figure BDA0003670138980000126
s.t.(6),(7),(8),
在所考虑的MEC系统中,系统状态由任务请求、当前任务缓存队列、CPU可用资源组成,动作是服务放置决策,服务放置决策包括当前服务器可放置服务种类与数量,服务放置决策仅依赖于当前状态,与历史状态无关,因此,服务放置问题是一个马尔可夫决策过程(MDP)问题,采用强化学习有效解决马尔可夫决策过程问题,然而服务资源异构与服务种类多样化使得状态空间的维度大而导致问题的复杂度难以控制,深度强化学习作为Q-learning的升级,DNN的引入大幅提高学习速度,使用多层特征提取方法的非线性叠加对表层特征进行提取与组合,智能体(agent)不断的与环境交互,得到新的抽象特征,从而做出新的服务放置决策;
6)构建马尔可夫模型:
强化学习主要有状态、动作、回报和智能体四个基本要素组成,智能体根据当前状态与环境不断进行动作交互产生回报值,模型定义如下:
系统state:服务放置矩阵
用S表示系统状态:
S=(S(t),Q(t),C(t)) (17),
其中时隙t内,各个边缘服务器的服务放置情况表示为:
Figure BDA0003670138980000131
时隙t内边缘服务器的队列情况表示为:
Figure BDA0003670138980000132
时隙t内单台边缘服务器剩余可用的计算资源表示为:
C(t)=C1,1(t),C1,2(t),…,Cv,l(t) (20),
系统Action:用A表示系统动作,其中系统动作包含服务更替矩阵,决定在当前情况下是否进行服务替换:
Figure BDA0003670138980000133
其中
Figure BDA0003670138980000134
表示在时隙t内放置服务Tl的概率,在更新放置的服务时,边缘服务器根据
Figure BDA0003670138980000135
概率大小,依次选择任务Tl放置到边缘服务器中,若原本的服务已经存在,则无需进行操作;
系统Reward:任务是否能完成作为奖励指标,在状态st下执行完动作at后,系统计算即时奖励R(st,at)到智能体,服务放置的不同会影响系统和用户QoE收益,因此,将奖励函数定义为时隙t内获得的计算收益:
Figure BDA0003670138980000136
其中
Figure BDA0003670138980000137
Figure BDA0003670138980000138
分别为时隙t内第k个用户获得的系统奖励和QoE收益;
agent的目标是学习一个选择策略π,然后基于当前状态,选择下一个动作a,并获得及时回报
π*(s)=argmax Q*(St,at|θ) (23),
其中Q*(St,at|θ)是逼近的最佳Q值;
具体实现:
输入:当前服务放置状态、时隙任务生成情况、任务依赖关系
输出:最优策略,即服务放置方案
Figure BDA0003670138980000139
Figure BDA0003670138980000141
如图2所示为各个时间片内不同算法的平均完成时延,本例在各个时间段下不同用户密度的情况下表现均优于其他算法。动态服务放置的优点在于充分利用了服务资源,减少服务部署时间,减少整体服务的响应时间。在产生大量同类型的任务的情况下,可以减少用户感知时延。
如图3比较了不同时延约束条件下,任务完成率与约束时延的影响。从图3可知,随着时延约束的增加,本例整体的任务完成率在提升。在时延约束3.5秒时,本例方法较其他算法的成功率分别提升了11%和29%。这是由于本例方法在对出现的海量任务的情况下,进行动态服务放置,相比于GPA算法与RP算法在固定时间后进行全部服务的更新,本例方法对于部分服务的动态调整具有一定的优势。智能体通过不断的深度学习训练后可根据当前服务请求与服务放置情况进行服务放置策略的动态更新,不需要改变现有的放置的所有服务,仅需根据当前的服务请求对部分服务进行替换。

Claims (1)

1.一种边缘计算中基于深度强化学习的动态服务放置方法,其特征在于,包括如下步骤:
移动边缘计算服务场景由U个用户,M个微基站与M个边缘服务器组成,每个微基站连接一个边缘服务器,
在此场景下,用户通过无线链路连接到与其距离最近的微基站,假设用户服务到达的概率是服从独立同分布,用户请求服务的概率服从泊松分布,请求的内容服从ZIPF分布,单个用户在一个时隙内请求Nk个服务,假设任务在分配至指定的边缘服务器后,不再进行计算迁移;
Figure FDA0003670138970000011
表示用户的集合;用
Figure FDA0003670138970000012
来表示边缘服务器的集合;用
Figure FDA0003670138970000013
来表示系统运行时隙集合,其中,时隙长度为T;
请求服务的移动用户上传任务数据至其所在区域中边缘服务器上,即本地边缘服务器,但本地边缘服务器没有放置用户请求的服务或者负载过重,如果周边边缘服务器放置了用户所请求服务且负载较轻,在边缘服务器之间建立协作机制,将本地边缘服务器的请求转发至周边边缘服务器请求协作;
1)构建网络模型:
基站与移动用户之间的数据传输过程包括移动终端上传数据与MEC服务器回传计算结果,用户上传任务k的数据传输速率
Figure FDA0003670138970000014
表示为:
Figure FDA0003670138970000015
边缘服务器之间的数据传输速率
Figure FDA0003670138970000016
用下式表示:
Figure FDA0003670138970000017
式中的Bu表示用户上传信道可用带宽,Bm表示边缘服务器传输信道可用带宽;
Figure FDA0003670138970000018
表示用户发射设备的传输功率;
Figure FDA0003670138970000019
表示基站之间的传输功率;σu表示在用户处的高斯白噪声功率;σm表示在基站m处的高斯白噪声功率;hu表示用户至基站之间的信道增益,hm表示两个基站之间的信道增益;
由于边缘服务器的计算存储资源有限,每个边缘服务器上只能部署有限的服务,当用户所在的边缘服务器没有部署该用户所需要的请求时,该用户上传的任务将会转发至周边边缘服务器进行协作;
当用户任务在本地边缘服务器计算时,任务数据传输所需要的时间
Figure FDA00036701389700000110
用下式表示:
Figure FDA0003670138970000021
当用户任务在本地边缘服务器计算时,任务数据传输至目标边缘服务器所需要的时间
Figure FDA0003670138970000022
用下式表示:
Figure FDA0003670138970000023
计算结果回传至用户所需时间
Figure FDA0003670138970000024
用下式表示:
Figure FDA0003670138970000025
式中的
Figure FDA0003670138970000026
表示用户u上传的任务k大小,
Figure FDA0003670138970000027
表示用户u的任务k计算结果大小;
2)构建任务模型:
Figure FDA0003670138970000028
来指代任务列表,用链表
Figure FDA0003670138970000029
其中i,j∈N对任务进行建模,根据应用程序的执行流程,将子任务抽象为一条任务链,该任务链中的每一个节点代表一个子任务,子任务之间具有依赖关系,子任务必须按照前后依赖关系执行,每一个子任务卸载到不同节点进行计算,任务依次执行,当前一个任务未执行结束时,下一个任务就无法执行;
用户在时隙t发出的任务请求包含应用程序类型
Figure FDA00036701389700000210
任务对应的数据集αi,i∈N以及任务完成截止时间Li,i∈N;
采用二进制变量
Figure FDA00036701389700000211
表示在时隙t用户u请求的应用程序Ai的任务k被放置在第m个SBS上执行,否则
Figure FDA00036701389700000212
即:
Figure FDA00036701389700000213
Figure FDA00036701389700000214
3)构建服务放置模型:
Figure FDA00036701389700000215
来表示边缘服务器列表,服务器Si部署j个服务,其中
Figure FDA00036701389700000216
j∈N;
4)构建计算模型:
当前置任务执行完成后,将输出结果传输至下一个服务器,也能为当前服务器,最后一个任务执行完成后,计算结果传输至用户侧,任务的前置任务是否完成定义为:
Figure FDA0003670138970000031
Figure FDA0003670138970000032
在时隙t用户n的任务k的前置任务都已经执行完毕;
在时隙t,边缘服务器收到设备上传的数据并将数据存入缓存队列中等待处理,处理该部分数据需要消耗服务器资源,此时服务器用计算资源为:
Figure FDA0003670138970000033
Figure FDA0003670138970000034
其中ξk是处理任务k单位数据所需CPU资源,
Figure FDA0003670138970000035
为边缘服务器m的CPU频率最大值,
Figure FDA0003670138970000036
为用户u说请求的任务k的大小;
则用户u所请求的任务k在时隙t在第m个SBS的执行时长表示为:
Figure FDA0003670138970000037
任务k在边缘服务器之间传输的时间为:
Figure FDA0003670138970000038
若当前边缘服务器存在计算任务,则进入任务等待队列中,等待时间为
Figure FDA0003670138970000039
为队列中前方任务计算时间之和;
若等待时间超时,则该任务失败,任务失败后将任务从等待队列中丢弃,同时返回失败结果至用户;
综上所述用户u的任务k的完成时延为:
Figure FDA00036701389700000310
5)构建问题模型:
在多用户多边缘服务器的场景下,假设每一个边缘服务器只能放置有限的服务,在满足任务完成时间的约束下,使用户满意度与服务器利用率最大化;
系统中所有任务传输与计算时延表示为:
Figure FDA00036701389700000311
等待时延与QoE之间的关系用对数函数拟合,具体表达式如下:
Figure FDA0003670138970000041
其中取θ=5,该值为国际电信联盟评估QoE方案中得分的最大值;
用户满意度表示为:
Figure FDA0003670138970000042
因此,问题表示为:
Figure FDA0003670138970000043
s.t.(6),(7),(8),
在所考虑的MEC系统中,系统状态由任务请求、当前任务缓存队列、CPU可用资源组成,动作是服务放置决策,服务放置决策包括当前服务器可放置服务种类与数量,服务放置决策仅依赖于当前状态,与历史状态无关,因此,服务放置问题是一个马尔可夫决策过程问题,采用强化学习有效解决马尔可夫决策过程问题,然而服务资源异构与服务种类多样化使得状态空间的维度大而导致问题的复杂度难以控制,深度强化学习作为Q-learning的升级,DNN的引入大幅提高学习速度,使用多层特征提取方法的非线性叠加对表层特征进行提取与组合,智能体不断的与环境交互,得到新的抽象特征,从而做出新的服务放置决策;
6)构建马尔可夫模型:
强化学习主要有状态、动作、回报和智能体四个基本要素组成,智能体根据当前状态与环境不断进行动作交互产生回报值,模型定义如下:
系统state:服务放置矩阵
用S表示系统状态:
S=(S(t),Q(t),C(t)) (17),
其中时隙t内,各个边缘服务器的服务放置情况表示为:
Figure FDA0003670138970000044
时隙t内边缘服务器的队列情况表示为:
Figure FDA0003670138970000045
时隙t内单台边缘服务器剩余可用的计算资源表示为:
C(t)=C1,1(t),C1,2(t),…,Cv,l(t) (20),
系统Action:用A表示系统动作,其中系统动作包含服务更替矩阵,决定在当前情况下是否进行服务替换:
Figure FDA0003670138970000051
其中
Figure FDA0003670138970000052
表示在时隙t内放置服务Tl的概率,在更新放置的服务时,边缘服务器根据
Figure FDA0003670138970000053
概率大小,依次选择任务Tl放置到边缘服务器中,若原本的服务已经存在,则无需进行操作;
系统Reward:任务是否能完成作为奖励指标,在状态st下执行完动作at后,系统计算即时奖励R(st,at)到智能体,服务放置的不同会影响系统和用户QoE收益,因此,将奖励函数定义为时隙t内获得的计算收益:
Figure FDA0003670138970000054
其中
Figure FDA0003670138970000055
Figure FDA0003670138970000056
分别为时隙t内第k个用户获得的系统奖励和QoE收益;
agent的目标是学习一个选择策略π,然后基于当前状态,选择下一个动作a,并获得及时回报:
π*(s)=argmax Q*(St,at|θ) (23),
其中Q*(St,at|θ)是逼近的最佳Q值;
具体实现:
输入:当前服务放置状态、时隙任务生成情况、任务依赖关系
输出:最优策略,即服务放置方案
1.初始化服务放置矩阵
2.随机初始化服务放置情况
3.For episode=1:M
4.While t<timeslot
5.更新当前任务请求状态
6.根据当前任务请求状态,服务放置策略,使用GA算法选择卸载的服务器
7.对奖励值进行计算
8.根据当前任务请求,对下一时刻的服务放置状态进行更新
9.If经验池内的数据大于容量N
10.使用经验进行训练
11.更新选择策略π
12.t=t+1
13.End
CN202210602370.7A 2022-05-30 2022-05-30 一种边缘计算中基于深度强化学习的动态服务放置方法 Withdrawn CN115022332A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210602370.7A CN115022332A (zh) 2022-05-30 2022-05-30 一种边缘计算中基于深度强化学习的动态服务放置方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210602370.7A CN115022332A (zh) 2022-05-30 2022-05-30 一种边缘计算中基于深度强化学习的动态服务放置方法

Publications (1)

Publication Number Publication Date
CN115022332A true CN115022332A (zh) 2022-09-06

Family

ID=83072018

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210602370.7A Withdrawn CN115022332A (zh) 2022-05-30 2022-05-30 一种边缘计算中基于深度强化学习的动态服务放置方法

Country Status (1)

Country Link
CN (1) CN115022332A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117255126A (zh) * 2023-08-16 2023-12-19 广东工业大学 基于多目标强化学习的数据密集任务边缘服务组合方法
CN117793805A (zh) * 2024-02-27 2024-03-29 厦门宇树康信息技术有限公司 动态用户随机接入的移动边缘计算资源分配方法与系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117255126A (zh) * 2023-08-16 2023-12-19 广东工业大学 基于多目标强化学习的数据密集任务边缘服务组合方法
CN117793805A (zh) * 2024-02-27 2024-03-29 厦门宇树康信息技术有限公司 动态用户随机接入的移动边缘计算资源分配方法与系统
CN117793805B (zh) * 2024-02-27 2024-04-26 厦门宇树康信息技术有限公司 动态用户随机接入的移动边缘计算资源分配方法与系统

Similar Documents

Publication Publication Date Title
Nath et al. Deep reinforcement learning for dynamic computation offloading and resource allocation in cache-assisted mobile edge computing systems
CN110941667B (zh) 一种移动边缘计算网络中的计算卸载方法及系统
Zou et al. A3C-DO: A regional resource scheduling framework based on deep reinforcement learning in edge scenario
CN115022332A (zh) 一种边缘计算中基于深度强化学习的动态服务放置方法
CN109788046B (zh) 一种基于改进蜂群算法的多策略边缘计算资源调度方法
CN112822050B (zh) 用于部署网络切片的方法和装置
CN111552564A (zh) 基于边缘缓存的任务卸载与资源优化的方法
CN114567895A (zh) 一种mec服务器集群的智能协同策略的实现方法
CN115190033B (zh) 一种基于强化学习的云边融合网络任务卸载方法
CN114138373A (zh) 一种基于强化学习的边缘计算任务卸载方法
CN115297171B (zh) 一种蜂窝车联网分级决策的边缘计算卸载方法及系统
CN116069512B (zh) 一种基于强化学习的Serverless高效资源分配方法及系统
CN113590279B (zh) 一种面向多核边缘计算服务器的任务调度和资源分配方法
CN113573363B (zh) 基于深度强化学习的mec计算卸载与资源分配方法
CN116828534B (zh) 基于强化学习的密集网络大规模终端接入与资源分配方法
CN116483585B (zh) 一种基于边缘计算的多服务预部署方法
CN113159539A (zh) 多层边缘计算系统中联合绿色能源调度和动态任务分配方法
Kumar et al. Quality of service‐aware adaptive radio resource management based on deep federated Q‐learning for multi‐access edge computing in beyond 5G cloud‐radio access network
CN115499875B (zh) 一种卫星互联网任务卸载方法、系统以及可读存储介质
CN108667920B (zh) 一种雾计算环境业务流量加速系统及其业务流量加速方法
CN113766540B (zh) 低时延的网络内容传输方法、装置、电子设备及介质
CN113157344B (zh) 移动边缘计算环境下基于drl的能耗感知任务卸载方法
CN113783726B (zh) 一种面向sla的边云系统的资源自适应定制方法
CN115580900A (zh) 一种基于深度强化学习的无人机辅助协作式任务卸载方法
CN114567564A (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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20220906