CN115562832B - 一种基于深度强化学习的多资源服务功能链调度方法 - Google Patents
一种基于深度强化学习的多资源服务功能链调度方法 Download PDFInfo
- Publication number
- CN115562832B CN115562832B CN202211258257.8A CN202211258257A CN115562832B CN 115562832 B CN115562832 B CN 115562832B CN 202211258257 A CN202211258257 A CN 202211258257A CN 115562832 B CN115562832 B CN 115562832B
- Authority
- CN
- China
- Prior art keywords
- service function
- reinforcement learning
- scheduling
- function chain
- state
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种基于深度强化学习的多资源服务功能链调度方法,属于深度强化学习及资源调度技术领域;本发明利用深度强化学习解决多条服务功能链上多种资源调度的问题,提出了一种深度强化学习方法来解决资源调度问题,本发明将多资源的服务功能链调度问题转化为一个强化学习问题,构建了强化学习所需要的交互环境,然后又给智能体设置了一个与优化目标(即平均作业完成时间最短)相匹配的奖励函数,最后得到一个满意的SFC调度方案。通过实验结果表明,DRL方法可以显著减少平均作业完成时间,相对于随机方法,DRL方法可以最多节约39.937%的时间。
Description
技术领域
本发明涉及深度强化学习及资源调度技术领域,尤其涉及一种基于深度强化学习的多资源服务功能链调度方法。
背景技术
调度是当今生产和生活中非常重要的一部分,而作业车间问题(Job shopProblem,JSP)是最基本和最重要的调度问题。前人已经做了大量的研究并且证明JSP是一个NP-hard问题,已经证明没有多项式时间的解决方案。对于大多数的SFC调度可以抽象为一个JSP问题,我们需要按照一定的顺序来调度每个SFC。传统的启发式算法在解决JSP问题上并没有很多优势。对于不同的场景需要具体分析,有时人类专家需要花费大量的精力来设计合适的解决方案。
对于组合优化问题大多数属于NP-hard问题,传统的数学优化方法目前很难求到精确解。组合优化问题大多数情况下都涉及到决策顺序,即序贯决策问题,例如对于旅行商问题就是决定以什么顺序访问每一个城市,例如对于车间调度问题就是决定以什么顺序在机器上加工工件。对于本文提出的多资源SFC调度问题抽象出来也是一种特殊的Job Shop的生产调度问题。而强化学习天生就是做序列决策用的,组合优化问题里边的序列决策问题完全也可以用强化学习来直接求解,建模为马尔可夫决策过程并进行求解,在求解复杂、动态、随机的运筹优化问题具有较大的优势,关键的难点就是我们如何定义智能体所获得的奖励以及环境中的状态。
多资源SFC调度问题是一个马尔可夫决策过程,我们只需要知道每台服务器当前的资源使用情况,而不需要知道过去是如何分配资源的。所以,我们可以根据当前的状态采取有利于我们的行动。针对上述问题,本发明提出了一种利用深度强化学习为多条服务功能链进行多资源调度的方法。
发明内容
本发明所解决的技术问题是:在某一时刻有个r用户发出请求,每个用户的服务功能链(SFC)都是不一样的,并且启动每一个VNF实例所消耗的资源也不一样,现在假设我们有k个完全一样的server,我们需要决定如何把这些服务器上的资源分配给这些用户,使得平均作业完成时间最小。
为了解决上述问题,本发明采用了如下技术方案:
一种基于深度强化学习的多资源服务功能链调度方法,具体包括以下步骤:
S1、获取每个用户的请求,将每个请求抽象为服务功能链形式;接着获取服务器的数量,用二元组表示每个服务器上的资源,定义为:(cpu,mem),其中,cpu、mem分别表示服务器拥有的CPU资源和内存资源数量;
S2、将S1中所得的多资源服务功能链调度转化为强化学习问题,并构建深度强化学习模型;
S3、对S2中所得的模型进行训练;
S4、根据S3的训练结果得到一个动作序列,按照所得的动作序列可以得到较好的调度方案,后面也可以直接使用这个训练出来的模型。
优选地,所述S1中提到的服务功能链由一组有序的虚拟网络功能组成,定义为:fi={fi1,fi2,……,fili},其中,fij表示fi的第j个虚拟网络功能请求;li=|fi|,表示服务功能链的长度;用三元组表示每个虚拟网络功能,定义为:fi,j={cij,mij,pij},其中,cij、mij、pij分别表示虚拟网络功能所需的CPU资源、内存资源和处理时间。
优选地,每条所述服务功能链fi满足顺序约束,即fi,j调度之后才能调度fi,j+1。
优选地,所述S2中提到的强化学习问题具体包含以下内容:
S2.1、状态表示:包括SFC的完成情况和服务器资源的使用情况;假设有k个服务器{S1,S2,……,Sk}和r个服务功能链{f1,f2,……,fr};系统状态定义为:state(t)=[S(t),F(t)];其中,S(t)=[s1(t),s2(t),……,sk(t)],表示每个服务器的状态;F(t)=[f1(t),f2(t),……,fr(t)],代表每个SFC状态;
S2.2、动作集合:确认要选择的服务器和服务功能链;通过从环境中观察到的当前状态state(t)=[S(t),F(t)],首先将其输入到神经网络,所述神经网络为带有隐藏层的全连接神经网络,其中,输入层接收服务器和服务功能链的状态向量,输出层输入一个维数为k*r的向量,表示选择每个动作的概率;
S2.3、奖励函数:强化学习的目标是在可靠性策略下,在满足用户需求的同时最小化平均作业完成时间;当基于强化学习的方法用于实现多资源服务功能链调度时,要求积累的奖励与服务功能链调度的目标一致,即,当agent获得的奖励增加时,相应的平均作业完成时间减少,基于此,设置奖励为在每个时间间隙完成的服务功能链个数的相反数。
优选地,所述S3具体包括以下内容:
S3.1、向模型中输入k个服务器和r个服务功能链的具体资源信息;
S3.2、初始化策略网络的参数、学习率、折扣率和训练的轮数;
S3.3、对于每一轮训练,取样一个完整轨迹对智能体进行训练;当所有服务功能链被调度完成,轨迹即终止;
S3.4、训练过程中,若选择到一个无效的动作时,用一个有效动作进行替代;基于PG算法记录一个三元组,利用缓存中三元组计算每个状态的返回值G;
S3.5、收集了完整的轨迹之后,计算得出智能体所经历的所有状态的回报G;直接利用所得的G或对其进行数据归一化后来完成学习;
S3.6、每轮训练结束时,计算策略梯度损失;将其看作多分类任务,把每个状态的回报看作权重,据此更新网络的参数,开启下一轮训练。
与现有技术相比,本发明提供了一种基于深度强化学习的多资源服务功能链调度方法,具备以下有益效果:
本发明考虑了多资源的SFC调度,并且扩展要随机到达的SFC和有延迟的情况;并且实验结果表明,DRL方法可以显著减少平均作业完成时间,相对于随机方法,DRL方法可以最多节约39.937%的时间。
附图说明
图1为本发明实施例1中提到的平均作业完成时间不同的三种调度方案示意图;
图2为本发明实施例1中提到的强化学习的框架示意图;
图3为本发明实施例1中提到的神经网络设计示意图;
图4为本发明实施例1中提到的对随机到达的服务功能链进行调度的示意图;
图5为本发明实施例1中提到的服务器之间有延迟的服务功能链调度示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
实施例1:
请参阅图1-5,本发明要解决的技术问题是:在某一时刻有r个用户发出请求,每个用户的服务功能链(SFC)都是不一样的,并且启动每一个VNF实例所消耗的资源也不一样,现在假设我们有k个完全一样的server,我们需要决定如何把这些服务器上的资源分配给这些用户,使得平均作业完成时间最小。对于这样的一个调度问题我们的决策变量大致有3类:(1)每个VNF的开始时间;(2)是否在某个timeslot获取很多资源或是分多个timeslot获取资源;(3)每个VNF分配的server编号。目标函数就是每个用户的作业完成时间求和,然后除以用户的个数。约束条件主要有2个,顺序约束和资源约束。
问题描述示意图如图1所示:假设现在有2个服务器(每个服务器有6个单位的CPU资源和7个单位的内存资源)和3条服务功能链,其中,f1={f11=(1,2,1),f12=(5,4,1),f13=(1,5,2)};f2={f21=(1,4,1),f22=(4,2,3)};f3={f31=(3,2,2)}。每个三元组代表相应VNF所消耗的CPU资源、内存资源和所需时间片,并且调度每个SFC需要满足内部VNF的顺序约束,不同的调度方案将导致不同的作业完成时间,具体情况参照图1。
所利用的技术方案为:利用深度强化学习解决多条服务功能链上多种资源调度的问题。图2显示了强化学习智能体与环境互动的过程。RL主要由智能体、环境、状态、动作和奖励组成。智能体做出行动后,环境将转变为一个新的状态,然后环境将给出一个奖励信号。随后,智能体根据新状态和环境反馈的奖励,按照一定的策略做出新的行动。下面详细介绍一下RL中的状态表示、动作集合、奖励函数设置。
状态表示:状态表示包括SFC的完成情况和服务器资源的使用情况。而整个环境的状态在智能体做出每个决定后都会发生变化。所以我们需要找到一个表示方法来很好地描述每个状态。现在假设我们有k个服务器{S1,S2,……,Sk}和r个服务功能链{f1,f2,……,fr};系统状态定义为:state(t)=[S(t),F(t)];其中,S(t)=[s1(t),s2(t),……,sk(t)],表示每个服务器的状态;F(t)=[f1(t),f2(t),……,fr(t)],代表每个SFC状态。
动作集合:动作集合表明要选择哪个服务器和SFC。通过从环境中观察到的当前状态state(t)=[S(t),F(t)],我们首先将其输入到神经网络。如图3所示,该网络被设计为一个带有隐藏层的全连接神经网络,输入层接收服务器和SFC的状态向量,输出层输出一个维数为k*r的向量,代表选择每个动作的概率。
奖励函数:RL的目标是在可靠性策略下,在满足用户需求的同时最小化平均作业完成时间。当基于RL的方法用于实现多资源SFC调度时,要求累积的奖励与SFC调度的目标一致,也就是说,当agent获得的奖励增加时,相应的平均作业完成时间也会减少。一个好的奖励可以让智能体迅速学会一个好的调度策略,否则,会导致强化学习算法收敛缓慢或不收敛。最简单的想法是,奖励设置越简单越好,而且最好是与优化目标有紧密的联系。基于此,我们设置的奖励为在每个时隙完成的SFC个数的相反数。之所以是相反数因为我们优化的目标是奖励越大越好,奖励越大平均作业完成时间最小,那么平均作业完成时间的相反数就越大。
其他情况的考虑:
考虑随机到达的SFC:假设用户发出的请求服从泊松分布,如图4所示。
在2个server之间调度存在延迟,如图5所示。
实施例2:
请参阅图1-5,基于实施例1但有所不同之处在于:
图1给出了一个简单的例子来说明SFC调度问题。如图1所示,有2个服务器和3条流。每个服务器Si可以用一个二元组(cpui,memi),其中,cpui、memi分别表示服务器拥有的CPU资源和内存资源数量。在分布式网络中,每个进入网络的流量都是SFC的形式。对于每个SFC是由一系列VNF按特定顺序组成的,定义为fi={fi1,fi2,……,fili}。fij表示fi的第j个虚拟网络功能请求;li=|fi|,表示服务功能链的长度;用三元组表示每个虚拟网络功能,定义为:fi,j={cij,mij,pij},其中,cij、mij、pij分别表示虚拟网络功能所需的CPU资源、内存资源和处理时间。为了减少延迟,我们认为每个VNF只能在同一个服务器上处理。在不失一般性的情况下,我们假设每台服务器有6个单位的CPU资源和7个单位的内存资源。而我们有三个SFC,它们是f1={f11=(1,2,1),f12=(5,4,1),f13=(1,5,2)};f2={f21=(1,4,1),f22=(4,2,3)};f3={f31=(3,2,2)}。图1(a)显示的SFC的调度方案平均作业完成时间是(4+5+3)/3=4。如图1(b)所示,如果f2只在服务器2上进行调度,那么f2可以提前获得资源,从而减少等待时间。因此,图1(b)中的平均作业完成时间是(4+4+3)/3=3.67。此外,当我们把f31全部放在一个时隙中进行调度时,图1(c)中的平均作业完成时间将是(4+4+1)/3=3。我们不难发现,VNF调度的时隙和他们选择的服务器对最小化平均作业完成时间有很大影响。
图2显示了强化学习智能体与环境互动的过程。RL主要由智能体、环境、状态、动作和奖励组成。智能体做出行动后,环境将转变为一个新的状态,然后环境将给出一个奖励信号。随后,智能体根据新状态和环境反馈的奖励,按照一定的策略做出新的行动。
图3显示该网络被设计为一个带有隐藏层的全连接神经网络。输入层接收服务器和SFC的状态向量。隐蔽层输出一个维数为k*r的向量Q。由于我们选择的强化学习方法是基于策略的,我们使用softmax操作来计算选择每个动作的概率。
图4给出了一个在线调度的例子。我们假设SFC的到达率为λ=0.7,也就是说,平均在10个时隙中会有7个新的SFC到达。这里总共有3个SFCSlots。当SFC的到达率过快时,它首先被存储在缓冲区。当T=0时,缓冲区和3个SFCSlots是空的;当T=t4时,所有SFCslots刚刚被填满;当T=t5时,SFC4被缓存在缓冲区;当T=t6时,SFC4进入SFCSlot1,缓冲区又是空的。
图5给出了一个简单的例子来说明服务器之间有延迟的SFC调度问题。为了简单起见,我们假设任意两个服务器之间的通信延迟是时隙的整数倍,例如,服务器1和服务器4之间的延迟为3个时间单位。在我们开始调度之前,我们需要计算任何两个服务器之间的最短路径。我们可以使用Dijkstra算法来寻找最短路径,并得到它们之间的延迟。
下面结合附图对本发明作进一步详细描述:
第一步,首先,获取每个用户的请求,然后把每个请求抽象为如图1所示的服务功能链形式,例如f1={f11=(1,2,1),f12=(5,4,1),f13=(1,5,2)};f2={f21=(1,4,1),f22=(4,2,3)};f3={f31=(3,2,2)}。其中三元组分别代表VNF消耗的CPU资源、内存资源数量以及所需时间片。对于每条服务功能链fi需要满足一定的顺序约束,即fi,j调度之后才能调度fi,j+1。接下来获取服务器的个数,并且对于每个服务器上的资源表示为一个二元组的形式(cpu,mem),分别代表拥有的CPU资源和内存资源数量。
第二步,把多资源服务功能链调度转化为强化学习问题。
1.状态表示:状态表示包括SFC的完成情况和服务器资源的使用情况。而整个环境的状态在智能体做出每个决定后都会发生变化。所以我们需要找到一个表示方法来很好地描述每个状态。现在假设我们有k个服务器{S1,S2,……,Sk}和r个SFC{f1,f2,……,fr}。系统状态定义为:state(t)=[S(t),F(t)],其中S(t)=[s1(t),s2(t),……,sk(t)],表示每个服务器的状态,F(t)=[f1(t),f2(t),……,fr(t)],代表每个SFC状态。以图1为例进行说明,在开始调度之前每个服务器的状态s1(t)=(0,0),s2(t)=(0,0)表示目前服务器上正在使用的CPU和内存资源都为0。服务功能链f1的状态f1(t)={(1,2,1),(5,4,1),(1,5,2)},同理可得f2和f3。假设f1的VNF1已经完成,则状态变为f1(t)={(5,4,1),(1,5,2)},后面以此类推。若VNF所需时间片大于1,那么每完成一个时间片三元组的第三个元素需要减1。
2.动作集合:动作集合表明要选择哪个服务器和SFC。通过从环境中观察到的当前状态state(t)=[S(t),F(t)],我们首先将其输入到神经网络。如图3所示,该网络被设计为一个带有隐藏层的全连接神经网络,输入层接收服务器和SFC的状态向量,输出层输出一个维数为k*r的向量,代表选择每个动作的概率。还是以图2为例(2个服务器和3条SFC),动作集合A(t)=[0,1,2,3,4,5],假设某时刻输出a=2,代表把服务器1上的资源让SFC3使用一个时间单位。
3.奖励函数:RL的目标是在可靠性策略下,在满足用户需求的同时最小化平均作业完成时间。当基于RL的方法用于实现多资源SFC调度时,要求累积的奖励与SFC调度的目标一致,也就是说,当agent获得的奖励增加时,相应的平均作业完成时间也会减少。一个好的奖励可以让智能体迅速学会一个好的调度策略,否则,会导致强化学习算法收敛缓慢或不收敛。最简单的想法是,奖励设置越简单越好,而且最好是与优化目标有紧密的联系。基于此,我们设置的奖励为在每个时隙完成的SFC个数的相反数。之所以是相反数因为我们优化的目标是奖励越大越好,奖励越大平均作业完成时间最小,那么平均作业完成时间的相反数就越大。假设在timeslot2我们有3条SFC未完成,到了timeslot3我们有1条SFC未完成,设置奖励为-2。
第三步,对模型进行训练。训练算法如下所示:
首先输入k个服务器和r个SFC的具体资源信息。然后,我们需要初始化策略网络的参数、学习率、折扣率和训练的轮数(第2-4行)。对于每一轮训练,我们都要取样一个完整的轨迹来训练智能体(第5-22行)。当所有的SFC都被调度完成,轨迹就终止了。这里值得注意的是,当我们选择一个无效的动作时,我们将用一个有效的动作代替它(第12行)。与DQN不同,PG不需要存储一个五元组(state,action,reward,nextstate,done),而只需要记录一个三元组。对于缓存中的三元组,我们不能打乱顺序,因为我们需要依靠它来计算每个状态的返回值G(第13行)。在收集了完整的轨迹后,我们可以计算出智能体所经历的所有状态的回报G。我们可以直接用G来学习,但一般来说,当数据被归一化时,训练效果会更好。因此,我们只需减去平均值并除以方差(第17行)。在每轮训练结束时,我们需要计算策略梯度损失(第19行)。我们把它看作是一个多分类任务,把每个状态的回报看作是它的权重,最终我们更新网络的参数,开启下一轮的训练。
第四步,对于第三步训练的结果,我们可以得到一个动作序列,按照这个动作序列调度可以获得一个很好的调度方案。并且该模型具有一定的泛化性,可以把模型使用在其他的场景,也可以降低一定的平均作业完成时间。
备注:为了使本发明更具有一般性,我们考虑了随机到达的SFC和服务器间有延迟的情况。随机到达的SFC:如图4所示,由于随机到达的性质,我们无法知道一共有多少SFC需要处理,当SFC到达速度过快时需要先存储在缓存中,当有空闲空间再放置到相应的位置进行处理。服务器间有延迟:如图5所示,对于每个SFC假设有个初始的服务器位置,当后面进行调度会存在流的迁移,这样就存在一定的延迟,在本发明中也考虑了这种情况。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (3)
1.一种基于深度强化学习的多资源服务功能链调度方法,其特征在于,具体包括以下步骤:
S1、获取每个用户的请求,将每个请求抽象为服务功能链形式;接着获取服务器的数量,用二元组表示每个服务器上的资源,定义为:(cpu,mem),其中,cpu、mem分别表示服务器拥有的CPU资源和内存资源数量;
S2、将S1中所得的多资源服务功能链调度转化为强化学习问题,根据强化学习问题构建深度强化学习模型;其中,所述强化学习问题转化具体包括以下内容:
S2.1、状态表示:包括SFC的完成情况和服务器资源的使用情况;假设有k个服务器{S 1,S 2,……,S k }和r个服务功能链{f 1,f 2,……,f r };系统状态定义为:state(t)=[S(t),F(t)];其中,S(t)=[s 1(t),s 2(t),……,s k (t)],表示每个服务器的状态;F(t)=[f 1(t),f 2(t),……,f r (t)],代表每个SFC状态;
S2.2、动作集合:确认要选择的服务器和服务功能链;通过从环境中观察到的当前状态state(t)=[S(t),F(t)],首先将其输入到神经网络,所述神经网络为带有隐藏层的全连接神经网络,其中,输入层接收服务器和服务功能链的状态向量,输出层输入一个维数为k*r的向量,表示选择每个动作的概率;
S2.3、奖励函数:强化学习的目标是在可靠性策略下,在满足用户需求的同时最小化平均作业完成时间;当基于强化学习的方法用于实现多资源服务功能链调度时,要求积累的奖励与服务功能链调度的目标一致,即,当agent获得的奖励增加时,相应的平均作业完成时间减少,基于此,设置奖励为在每个时间间隙完成的服务功能链个数的相反数;
S3、对S2中所得的模型进行训练,具体包括以下内容:
S3.1、向模型中输入k个服务器和r个服务功能链的具体资源信息;
S3.2、初始化策略网络的参数、学习率、折扣率和训练的轮数;
S3.3、对于每一轮训练,取样一个完整轨迹对智能体进行训练;当所有服务功能链被调度完成,轨迹即终止;
S3.4、训练过程中,若选择到一个无效的动作时,用一个有效动作进行替代;基于PG算法记录一个三元组,利用缓存中三元组计算每个状态的返回值G;
S3.5、收集了完整的轨迹之后,计算得出智能体所经历的所有状态的回报G;直接利用所得的G或对其进行数据归一化后来完成学习;
S3.6、每轮训练结束时,计算策略梯度损失;将其看作多分类任务,把每个状态的回报看作权重,据此更新网络的参数,开启下一轮训练;
S4、根据S3的训练结果得到一个动作序列,后面直接使用该动作序列训练的模型。
2.根据权利要求1所述的一种基于深度强化学习的多资源服务功能链调度方法,其特征在于,所述S1中提到的服务功能链由一组有序的虚拟网络功能组成,定义为:f i ={f i1,f i2,……,f ili },其中,f ij 表示f i 的第j个虚拟网络功能请求;,表示服务功能链的长度;用三元组表示每个虚拟网络功能,定义为:f i,j ={c ij ,m ij ,p ij },其中,c ij 、m ij 、p ij 分别表示虚拟网络功能所需的CPU资源、内存资源和处理时间。
3.根据权利要求2所述的一种基于深度强化学习的多资源服务功能链调度方法,其特征在于,每条所述服务功能链f i 满足顺序约束,即f i,j 调度之后才能调度f i,j+1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211258257.8A CN115562832B (zh) | 2022-10-14 | 2022-10-14 | 一种基于深度强化学习的多资源服务功能链调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211258257.8A CN115562832B (zh) | 2022-10-14 | 2022-10-14 | 一种基于深度强化学习的多资源服务功能链调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115562832A CN115562832A (zh) | 2023-01-03 |
CN115562832B true CN115562832B (zh) | 2023-04-07 |
Family
ID=84745665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211258257.8A Active CN115562832B (zh) | 2022-10-14 | 2022-10-14 | 一种基于深度强化学习的多资源服务功能链调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115562832B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116302569B (zh) * | 2023-05-17 | 2023-08-15 | 安世亚太科技股份有限公司 | 一种基于用户请求信息的资源分区智能化调度方法 |
CN117499491B (zh) * | 2023-12-27 | 2024-03-26 | 杭州海康威视数字技术股份有限公司 | 基于双智能体深度强化学习的物联网服务编排方法及装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019226652A1 (en) * | 2018-05-22 | 2019-11-28 | Pure Storage, Inc. | Auto-scaling a software application |
US11016810B1 (en) * | 2019-11-26 | 2021-05-25 | Mythic, Inc. | Tile subsystem and method for automated data flow and data processing within an integrated circuit architecture |
CN113535385A (zh) * | 2021-06-21 | 2021-10-22 | 广州杰赛科技股份有限公司 | 虚拟网络功能部署方法、装置、设备及存储介质 |
CN113608830A (zh) * | 2021-07-13 | 2021-11-05 | 全球能源互联网研究院有限公司 | 基于故障预测的vnf迁移方法及装置 |
CN113535399B (zh) * | 2021-07-15 | 2023-04-25 | 电子科技大学 | 一种nfv资源调度方法、装置以及系统 |
CN113608855A (zh) * | 2021-08-12 | 2021-11-05 | 北京师范大学珠海校区 | 一种边缘计算中服务功能链放置的强化学习方法 |
CN113849313A (zh) * | 2021-09-30 | 2021-12-28 | 郑州大学 | 一种节能的云-边弹性光网络中计算任务链部署方法 |
CN114172820B (zh) * | 2021-11-26 | 2024-03-05 | 广东技术师范大学 | 跨域sfc动态部署方法、装置、计算机设备及存储介质 |
CN114172937B (zh) * | 2022-01-19 | 2023-12-29 | 广州市宝思信息科技有限公司 | 基于深度强化学习的动态服务功能链编排方法及系统 |
-
2022
- 2022-10-14 CN CN202211258257.8A patent/CN115562832B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115562832A (zh) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115562832B (zh) | 一种基于深度强化学习的多资源服务功能链调度方法 | |
CN111858009B (zh) | 基于迁移和强化学习的移动边缘计算系统任务调度方法 | |
Roy et al. | Performance analysis and design trade-offs in warehouses with autonomous vehicle technology | |
CN113191484B (zh) | 基于深度强化学习的联邦学习客户端智能选取方法及系统 | |
Guo et al. | Cloud resource scheduling with deep reinforcement learning and imitation learning | |
WO2022077797A1 (zh) | 量子线路的确定方法、装置、设备及存储介质 | |
Park et al. | ScheduleNet: Learn to solve multi-agent scheduling problems with reinforcement learning | |
CN114595396B (zh) | 一种基于联邦学习的序列推荐方法和系统 | |
CN112631717A (zh) | 基于异步强化学习的网络服务功能链动态部署系统及方法 | |
CN111585811B (zh) | 一种基于多智能体深度强化学习的虚拟光网络映射方法 | |
CN114896899B (zh) | 一种基于信息交互的多智能体分散式决策方法及系统 | |
CN113098714A (zh) | 一种基于深度强化学习的低时延网络切片的方法 | |
CN113708969B (zh) | 一种基于深度强化学习的云数据中心虚拟网络的协同嵌入方法 | |
CN110209467A (zh) | 一种基于机器学习的弹性资源扩展方法和系统 | |
CN114638167A (zh) | 基于多智能体强化学习的高性能集群资源公平分配方法 | |
Liao et al. | Topology-aware virtual network embedding using multiple characteristics | |
CN113887748B (zh) | 在线联邦学习任务分配方法、装置、联邦学习方法及系统 | |
Kim et al. | Optimizing large-scale fleet management on a road network using multi-agent deep reinforcement learning with graph neural network | |
Xu et al. | Intelligent task allocation for mobile crowdsensing with graph attention network and deep reinforcement learning | |
CN107608781A (zh) | 一种负载预测方法、装置以及网元 | |
Zhou et al. | Towards real time team optimization | |
CN110674181B (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 | |
CN117234710A (zh) | 一种采用强化学习实现ai模型训练内存优化的方法 | |
Li et al. | An optimization method for task assignment for industrial manufacturing organizations | |
Wong et al. | State-space decomposition for reinforcement learning |
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 |