CN104754063A - 本地云计算资源调度方法 - Google Patents

本地云计算资源调度方法 Download PDF

Info

Publication number
CN104754063A
CN104754063A CN201510182317.6A CN201510182317A CN104754063A CN 104754063 A CN104754063 A CN 104754063A CN 201510182317 A CN201510182317 A CN 201510182317A CN 104754063 A CN104754063 A CN 104754063A
Authority
CN
China
Prior art keywords
local cloud
prime
sigma
behavior
cloud
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.)
Granted
Application number
CN201510182317.6A
Other languages
English (en)
Other versions
CN104754063B (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201510182317.6A priority Critical patent/CN104754063B/zh
Publication of CN104754063A publication Critical patent/CN104754063A/zh
Application granted granted Critical
Publication of CN104754063B publication Critical patent/CN104754063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本申请公开了一种本地云计算资源调度方法,包括:预先按照系统收益最大的原则,确定每个系统事件发生时,在不同的系统状态下本地云需要执行的行为,并保存相应的对应关系,其中,所述系统事件包括业务请求、本地云服务器的到达和本地云服务器的离开,所述行为包括由本地云触发远端云处理业务请求、由本地云自身处理业务请求并分配资源给该业务请求以及本地云仅对自身的资源使用情况进行更新;当所述系统事件发生时,本地云根据所发生的系统事件确定当前的系统状态,根据所述对应关系,确定在当前系统状态下需要执行的行为并执行。采用本发明,可以获得最大化系统收益。

Description

本地云计算资源调度方法
技术领域
本发明涉及移动云计算技术,特别是涉及一种本地云计算资源调度方法。
背景技术
近年来由于人们生活方式的改变无线业务数据量呈现指数式增长。然而,智能终端的电池续航能力却没有得到同步提高,导致终端对能量的需求与实际可用量之间产生较大鸿沟。此外,智能终端应用对自身处理能力的需求越来越高,导致部分新型应用由于网络支撑能力受限而无法广泛推广。目前,将终端耗能耗时的计算任务卸载到服务器执行的方法成为解决该问题的关键技术之一。然而,传统的集中式控制架构对带宽需求较大从而导致用户卸载任务时的端到端时延变长,严重影响终端用户的服务体验。位于小区边缘的用户更是由于接入距离较长导致业务卸载时能耗较大且端到端时延较长。为了解决该问题,小云(Cloudlet)的概念被提出,即将计算资源尽可能带到用户身边。服务商可通过部署小云形成本地云来改善终端用户的服务体验。终端用户可以通过将自己的计算任务卸载到本地云来节省能量和提高处理能力。然而,本地云如何对服务请求进行资源分配来最大化系统收益仍是面临的挑战之一。
现有技术大多采用贪婪策略来分配计算资源,即将系统中的资源数最大限度地分配给服务请求来最大化即时收益。但从系统长远收益的角度考虑,该算法效果并不理想。所以,在此基础上部分研究者提出用动态规划算法来进行资源分配,通过将计算资源分配问题建模成马尔科夫决策过程来对其进行求解,从而最大化系统的长远收益。
在现有的计算资源分配方案设计中,并未考虑本地云的动态特性和分层云网络架构,具体如下:
现有的方案通常是假定计算资源数目固定不变,而在实际应用中,本地云中的计算资源随着服务器的建立和离开呈现动态特性,若将其认为静态不变必然会对系统收益有所影响。
此外,现有技术大多仅考虑单层云网络架构,忽略了本地云只是对传统集中式云资源的补充,终端用户仍可以通过将计算任务卸载到传统集中式云来增强性能。此外,现有的技术忽略了本地云计算资源的动态特性。因此,现有的计算资源分配方案无法充分利用传统集中式云的计算资源和考虑本地云计算资源的动态特性来获得最大化系统收益。
由此可见,传统的本地云计算资源分配方法存在无法获得最大化系统收益的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种本地云计算资源调度方法,该方法可以获得最大化系统收益。
为了达到上述目的,本发明提出的技术方案为:
一种本地云计算资源调度方法,包括:
a、预先按照系统收益最大的原则,确定每个系统事件发生时,在不同的系统状态下本地云需要执行的行为,并保存相应的对应关系,其中,所述系统事件包括业务请求、本地云服务器的到达和本地云服务器的离开,所述行为包括由本地云触发远端云处理业务请求、由本地云自身处理业务请求并分配资源给该业务请求以及本地云仅对自身的资源使用情况进行更新;
b、当所述系统事件发生时,本地云根据所发生的系统事件确定当前的系统状态,根据所述对应关系,确定在当前系统状态下需要执行的行为并执行。
综上所述,本发明提出的方法,通过预先按照系统收益最大的原则来建立行为策略,并且考虑对远端云资源的利用以及本地云资源的动态特性,因此,可以充分利用系统资源,降低用户的能耗和并提高处理能力,使系统收益最大化。
附图说明
图1为本发明的分层云网络架构示意图;
图2为本发明实施例一的流程示意图;
图3~图8为本发明与对比算法的仿真比较示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
本发明的核心思想是:在为用户分配资源时,将传统的集中式云资源(即远端云资源)和本地云资源共同纳入可使用的资源范围内。系统预先按照系统收益最大的原则,确定出每个系统事件发生时,在不同的系统状态下需要执行的行为,其中,系统事件包括业务请求与本地云服务器的到达和离开,所述行为包括本地云将请求转发给远端云、或者本地云自身接受该用户请求并分配资源给该请求。当系统收到用户请求时,将根据当前的系统状态,确定出当前状态下应该执行的行为。如此,可以使得为用户所配置的资源能确保获得最大系统收益。
基于上述思想,本发明的应用场景,将是一种分层云网络架构。图1为该架构示意图。如图1所示,该架构包括一个传统的远端云和本地云。其中,远端云是指通过互联网接入的集中式云,用户可以通过使用远端云的计算、存储等能力来满足其相应需求。本地云则由地理上分布的小云组成,小云是指部署在接入点旁边的资源受限的小型云资源。此外,由大量终端用户组成的云也可当作本地云。两类云有各自的特点:传统的远端云拥有大规模的服务器集群,所以其处理能力较强,可近似为无穷;本地云的计算资源受限,但由于其端到端时延较小,从而被广泛部署来可以改善用户服务体验。该分层云网络架构具有以下特性:服务请求的到达和完成服从泊松分布;本地云计算资源的加入和离开服从泊松分布;当前的决策对后期决策存在潜在影响。本发明将基于这些特性,构建行为决策优化模型。
图2为本发明实施例一的流程示意图,如图2所示,该实施例主要包括:
步骤201、预先按照系统收益最大的原则,确定每个系统事件发生时,在不同的系统状态下本地云需要执行的行为,并保存相应的对应关系。
其中,所述系统事件包括业务请求、本地云服务器的到达和本地云服务器的离开,所述行为包括由本地云触发远端云处理业务请求、由本地云自身处理业务请求并分配资源给该业务请求以及本地云仅对自身的资源使用情况进行更新。
本步骤用于预先建立每个系统事件在不同系统状态下需要执行的行为,该行为是根据系统收益最大的原则确定出的,以使得后续过程中根据该对应关系所进行的行为决策,能获得系统最大化收益。
这里需要说明的是,本地云资源通过虚拟化技术形成统一的资源分配单位。当一个终端用户发起服务请求时,本地云计算系统需要决定该请求由自身处理(即本步骤中由本地云自身处理业务请求的行为)还是以中介的形式送向传统的远端云执行(即本步骤中由本地云触发远端云处理业务请求的行为)。所谓中介,是指用户先将应用请求送向本地云,然后再由本地云转发给远端云。本发明之所以以中介的形式进行计算任务接力传输是为了节省终端用户无线接入时间和能耗,进一步提高其性能。并且,如若请求由本地云自身处理,则需要决定分配多少计算资源给该请求。针对该问题,本发明提出预先确定系统行为策略,即系统在什么状态下采取什么样的行为,然后在具体需要进行决策时,由系统根据当前所处的状态查找预设的行为策略进行状态匹配进而执行相应行为,以确保系统最大化收益。
本步骤中,将针对分层云网络架构的上述动态特性,将计算资源分配问题建立为马尔科夫动态决策过程,并通过迭代算法的求解得到相应的最优策略。具体地,可以采用下述方法来实现本步骤:
步骤2011、按照S={s|s=(n1,n2,...nN,M,e)},建立系统状态空间S。
其中,ni为占有i个计算资源的业务请求数,N为单位业务请求可分配的最大资源数;M为本地云中的计算资源总数,M≤K,K为本地云本身能支持的最大资源数;e为系统事件,e∈E={Ap,D1,D2,...Di,...DN,Av,Dv},Ap为业务请求到达事件,Av为本地云中计算资源到达事件,Di为占用i个计算资源的业务请求已完成并离开事件,Dv为本地云中计算资源离开事件。
这里,为了获得最优化的行为决策,需要先建立系统状态空间,以区分事件发生里的不同场景。
本步骤中所定义的系统状态s将由当前占用不同数量资源的业务请求数、本地云中的总的计算资源数以及系统事件构成。
较佳地,所述计算资源具体可为服务器。
步骤2012、根据每种系统状态s包含的事件e,按照 a ∈ A s = { - 1 } e ∈ { D 1 , D 2 , . . . D N , A v , D v } { 0,1,2 , . . . i , . . . N } e = A p , 确定系统状态s下可以采取的行为a。
其中,As为状态s下可以采取的行为集合,a代表该行为集合中的某一元素。a=-1表示本地云仅对自身的资源使用情况进行更新而不执行其他行为;a=0表示由本地云触发远端云处理当前的业务请求,a=i表示由本地云自身处理当前的业务请求并分配i个资源给该业务请求。
步骤2013、对于每种系统状态s下可以采取的每种行为a,计算在该系统状态s下采取该行为a可以获得的回报r(s,a);并确定采取该行为a后转移到每个可能的系统状态s′的概率p(s'|s,a)。
本步骤中,考虑到当前的决策对后期决策存在潜在影响,为了确保所做出的行为决策能获得最大化的系统收益,这里需要确定每种系统状态下采取不同的行为将会获得的回报,以及状态转移的概率,以便在后续步骤中基于此进一步确定出每种系统状态s下获得最大系统收益时所采取的行为。
较佳地,可以采用下述方法计算在系统状态s下采取行为a可以获得的回报r(s,a)包括:
对于每种系统状态s下可以采取的每种行为a,按照r(s,a)=k(s,a)-g(s,a),计算在该系统状态s下采取该行为a可以获得的回报r(s,a)。
其中,所述k(s,a)为系统状态s下采取该行为可以获得的系统即时回报。
g(s,a)为连续两个事件之间的期望系统损耗。
k ( s , a ) = [ w d &beta; d ( D l - 1 / i &mu; p - &delta; 1 ) + w e &beta; e ( E l - P &delta; 1 ) - &gamma;&delta; 1 ] a = i &Element; { 1,2 , . . . N } , e = A p I - &gamma; ( &delta; 1 + &delta; 2 ) a = 0 , e = A p 0 a = - 1 , e &Element; { D 1 , D 2 , . . . D i , . . . D N , A v } 0 a = - 1 , e = D v , &Sigma; i = 1 N in i < M - &xi; a = - 1 , e = D v , &Sigma; i = 1 N in i = M .
这里,当到达一个服务请求且被分配i个资源时,本地云计算系统可获上述表达式中相关即时回报。上式中,(El-Pδ1)为在系统状态s下采取行为a时用户所节省的能量;El为用户在自身设备上运行业务的能耗;Pδ1为用户在本地云中运行业务时的能耗(因为业务在本地云中执行,终端仅消耗传输能量);P为用户的发射或接收功率(为便于分析,这里假设两者相等),δ1为将用户的业务请求传输到本地云再由本地云回传处理结果给用户所需的时间。
(Dl-(1/iμp1))为用户所节省的时延;其中,Dl为终端用户在自身终端执行业务的时延,(1/iμp1)为业务在本地云执行的时延;μp为每单位计算资源的服务速率,1/iμp为处理时延;γδ1是本地云本身的传输损耗;we为预设的能量权重,wd为预设的时延权重,we+wd=1;βe为每单位能量的价值,βd为每单位时延的价值,I为当由本地云触发远端云处理业务请时,本地云可以得到的收益价值,γ为每单位时间的本地云亏损价值,δ2为本地云将请求传到远端云并由远端云回传处理结果到本地云所需的时间,-ξ为当本地云的计算资源离开且本地云中计算资源已被全部占用时,本地云所受到的亏损价值。
当到达一个服务请求并由远端云进行处理时,本地云系统将作为中介可得到I的收益。
当请求离开或本地云资源加入该系统时,本地云系统不会得到收益。
当本地云资源离开时而本地云系统中资源较丰富,不会得到收益。
当本地云资源离开时而本地云系统中资源已被全部占用,系统会受到-ξ的惩罚。因为本地云系统资源全被利用时,如果计算资源离开,必然导致某业务所分配的计算资源数减小,使用户体验降低。
从上述k(s,a)的计算公式可以看出,本发明在分层云网络架构下,充分考虑了本地云资源的动态特性为系统建立新的收益模型。在分层云网络架构下,本地云系统的收益与资源分配情况有关。若本地云将计算任务转移到远端云,则仅能得到中介费用。若本地云由自身处理计算任务,则所得收益与本地云计算资源分配有关。若本地云中的资源已全部分配完毕,但此刻出现计算资源离开的情况,必然会导致分配给某一服务用户的计算资源数目无法得到保证,从而降低用户的服务体验,所以系统通过加入惩罚来约束这种情况的发生。
这里需要说明的是:上述回报模型r(s,a)=k(s,a)-g(s,a)中,g(s,a)可以进一步表示为:g(s,a)=c(s,a)τ(s,a),其中,c(s,a)为系统损耗速率,可由本地云系统的占用资源数来表征,即τ(s,a)为两个连续决策时刻之间的期望间隔。
两个连续决策时刻的时间间隔τ(s,a)服从指数分布,可以表示为:F(t|s,a)=1-e-σ(s,a)t,t>0,不同的准则会导致回报计算的差异性,如系统若采用折扣模型准则,回报r(s,a)可进一步表达为: r ( s , a ) = k ( s , a ) - c ( s , a ) E s a &Integral; 0 &tau; e - &alpha;t dt = k ( s , a ) - c ( s , a ) E s a { ( 1 - e - &alpha;&tau; ) / &alpha; } = k ( s , a ) - c ( s , a ) / [ &alpha; + &sigma; ( s , a ) ] .
其中,α为折扣因子。但本发明不局限与此,回报函数可根据具体使用的相关准则做修改,如在平均回报准则下,回报r(s,a)可表达为:r(s,a)=k(s,a)-c(s,a)/σ(s,a)。
较佳地,可以采用下述方法确定采取该行为a后转移到每个可能的系统状态s′的概率p(s'|s,a):
按照 &sigma; ( s , a ) = &lambda; p , M + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p + iu p a = i &Element; { 0,1 , . . . N } , e = A p &lambda; p , M + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p - iu p a = - 1 , e = D , i &Element; { 1,2 , . . . N } &lambda; p . M + 1 + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p a = - 1 , e = A v &lambda; p , M - 1 + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p a = - 1 , e = D v , 计算在系统状态s下采取行为a后,系统状态s'中的系统事件e的平均发生速率σ(s,a);其中,λp,M表示当本地云中计算资源总数为M时本地云中业务请求的总到达速率,λp,M+1表示当本地云中计算资源总数M增加一个后本地云中业务请求的总到达速率,λp,M-1表示当本地云中计算资源总数M减少一个后本地云中业务请求的总到达速率。
具体地,λp,M、λp,M+1、λp,M-1可根据实际场景特点进行确定。例如,假设服务区域内业务的到达率与本地云计算资源数成正比,则λp,M=Mλp,λp,M+1=(M+1)λp,λp,M-1=(M-1)λp。如果服务区域内计算任务的到达率与计算资源数无关,即三者将均为λp
当s=(n1,n2,...nN,M,Ap)时,按照 P ( s &prime; | s , a ) = &lambda; p , M H&sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , A p ) in i &mu; p &sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , D i ) &lambda; v &sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , A v ) &mu; v &sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , D v ) &lambda; p , M &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , A p ) i ( n i + 1 ) &mu; p &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , D i ) mn m &mu; p &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , m &NotEqual; i , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , D m ) &lambda; v &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , A v ) &mu; v &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , D v ) , 确定所述P(s'|s,a);λp为每计算资源的计算任务的到达速率,μp为每单位计算资源的服务速率,λv为本地云中计算资源的到达速率,μv为本地云中计算资源的离开速率;
当s=(n1,n2,...nN,M,Di),i∈{0,1,...N}时,按照 P ( s &prime; | s , a ) = &lambda; p , M &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , A p ) i ( n i - 1 ) &mu; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , D i ) mn m &mu; p &sigma; ( s , a ) a = - 1 , m &NotEqual; i , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , D m ) &lambda; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , A v ) &mu; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , D v ) , 确定所述P(s'|s,a);
当s=(n1,n2,...nN,M,Av)时,按照 P ( s &prime; | s , a ) = &lambda; p , M + 1 &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , A p ) in i &mu; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , D i ) &lambda; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , A v ) &mu; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , D v ) , 确定所述P(s'|s,a);
当s=(n1,n2,...nN,M,Dv)时,按照 P ( s &prime; | s , a ) = &lambda; p , M - 1 &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , A p ) in i &mu; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , D i ) &lambda; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , A v ) &mu; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , D v ) , 确定所述P(s'|s,a)。
步骤2014、对于每种系统状态s,利用所有所述行为a的所述回报r(s,a)和所述概率p(s'|s,a),采用迭代的方式,计算出在该系统状态下获得最大系统收益时所采取的行为。
本步骤,用于确定每种系统状态下获得最大系统收益时所采取的行为。较佳地,可以采用下述方法实现。
步骤20141、将每个系统状态s的值函数以及迭代次数k初始化为零。
本步骤为初始化步骤,即k=0。
步骤20142、对于每个所述系统状态s,利用该系统状态s下可以采取的每种行为a的所述回报r(s,a)以及采取该行为a后转移到每个可能的系统状态s′的概率p(s'|s,a),按照计算该系统状态s的值函数
其中,为离散标准化后的折扣因子,为所述p(s'|s,a)对应的离散标准化结果。
这里需要说明的是:是基于使用折扣模型准则确定所述回报r(s,a)时所对应的值函数得到的。具体推导过程如下:
如若使用折扣模型准则,整个决策过程在策略π下的值函数可表示为: V &alpha; &pi; ( s ) = E s &pi; { &Sigma; n = 0 &infin; e - &alpha;&sigma; n r ( s n , a n ) } , 则最优策略对应的最优值函数为: V &alpha; * ( s ) = V &alpha; &pi; * ( s ) = max &pi; V &alpha; &pi; ( s ) .
该最优值函数可通过迭代求解贝尔曼方程得到,贝尔曼方程表示为: V ( s ) = max a &Element; A s [ r ( s , a ) + &lambda; ( s , a ) &Sigma; s &prime; &Element; S p ( s &prime; | s , a ) V ( s &prime; ) ] . 其中,λ(s,a)=σ(s,a)/[σ(s,a)+α]。
为更好理解,将半马氏过程通过标准化转换为离散决策模型:
&lambda; ~ = &eta; / ( &eta; + &alpha; ) ;
r ~ ( s , a ) = r ( s , a ) &sigma; ( s , a ) &eta; ;
p ~ ( s &prime; | s , a ) = 1 - [ 1 - p ( s | s , a ) ] &sigma; ( s , a ) &eta; , s &prime; = s p ( s &prime; | s , a ) &sigma; ( s , a ) &eta; , s &prime; &NotEqual; s .
其中,η=Kλpvv+KNμp为用于标准化的参数。
则标准化后的贝尔曼方程变为:
V ~ ( s ) = max a &Element; A s [ r ~ ( s , a ) + &lambda; ~ &Sigma; s &prime; &Element; S p ~ ( s &prime; | s , a ) V ~ ( s &prime; ) ] .
其中,σ(s,a)为在系统状态s下采取行为a后,系统状态s'中的系统事件e的平均发生速率,η为预设的标准化系数,η=Kλpvv+KNμp,K为本地云本身可以支持的最大资源数,λv为本地云中计算资源的到达速率,μv为本地云中计算资源的离开速率,μp为每单位计算资源的服务速率,λp为每计算资源的计算任务的到达速率。
步骤20143、判断是否成立,如果所有所述系统状态s对应的所述判断结果为是,则执行步骤a44;否则,k=k+1,执行步骤a42,其中,ε为预设的用于表示求解结果逼近最优解的程度的系数,表示向量的范数,为由含所有系统状态s的值函数构成的向量,由含所有系统状态s的值函数构成的向量。
步骤20144、对于每个所述系统状态s,将所述对应的行为确定该系统状态下需要执行的行为。
步骤202、当所述系统事件发生时,本地云根据所发生的系统事件确定当前的系统状态,根据所述对应关系,确定在当前系统状态下需要执行的行为并执行。
本步骤,用于在系统事件发生时,根据步骤201中预先确定出的事件、系统状态与行为的对应关系,快速确定出当前所采取的行为。
通过上述技术方案可以看出,本发明可以获得下述效果:
1、可以利用远端云和本地云的计算资源,将终端能耗较大的计算任务卸载到其他云端执行,从而可以解决终端电池寿命的增长速率远远跟不上呈现指数式增长的无线业务需求的问题,提高终端用户的用户体验。
2、可以根据系统当前所处的状态动态调整策略来最大化用户收益。通过考虑系统的动态特性(如业务请求的到达和离开,本地云计算资源的到达和离开等),使得资源分配更加合理。系统考虑了当资源被全部占用的情况下出现计算资源离开所造成的本地云终端性能损失,通过将其表现在回报函数中来使系统做出更明智的决定。在业务请求速率较大、计算资源到达率较低以及本地云系统计算资源数较低时,系统趋向于做出保守的决策。反之,系统则会将较可能多的资源分配给业务请求,充分利用系统资源取得较高的系统收益。
下面,通过仿真将本发明与已有的贪婪策略进行比较,以证明本发明可以取得上述效果。其中,贪婪策略指系统所采取行为的依据是能否最大化决策时刻收益。
数值分析中用到的本地云系统参数在下表1中给出,所允许分配给终端用户的最大资源数为3,即N=3,也就是说一个终端用户可以得到1,2或3个资源。该数据分析结果为给出实施例的执行结果。
参数 数值 参数 数值
N 3 K 3-13
λp 1-9 μpv 8
λv 4-8 α 0.1
we 0.5 wd 0.5
βe 2 βd 2
γ 2 El 20
Dl 20 P 4
δ1 2 δ2 5
I 28 ξ 18
表1
图3-5给出了本发明在不同情况的各个行为概率,可以看出本发明提出的方案可以根据不同的业务强度及时调整策略以最大化系统收益。情况0代表系统将到达用户送向远端云,情况1,2,3分别代表系统将用户留在本地云处理并分别分配给其1,2,3个资源。在图3中,当请求到达率较低时,由于本地云系统本身有足够的资源,所以系统倾向于将用户请求留在本地云中处理并分配给其最多的资源。当请求的到达率增大时,系统开始作保守的决定,因为接纳一个新用户并分配给其1,2个资源比接纳一个用户分配给其3个资源但使另一个用户被迫转移得到的收益要高。当请求到达率较高时,系统则趋向于仅分配一个资源给请求。在图4和图5中,资源分配的情况恰好相反。这是因为随着本地云计算资源到达率或本地云可支撑计算资源数的增大,本地云内资源逐渐丰富,系统开始倾向于分配更多的资源给请求。
图6-8给出了两种方案在不同情况下系统的收益情况,可以看出本发明提出的方案优于贪婪策略方案。在图6中,随着用户请求到达率的增大,两种方案的收益都开始增长,这是因为有越来越多的请求被系统接纳并享受相应云服务。但当请求速率较高时,系统收益开始略微下降,这是因为到达业务的转移概率增大。并且,当请求达到率较低时,两种方案的差异并不明显,这是因为两种方法在请求到达率较低时都倾向于竟可能多地将资源分配给请求,所以两个方案非常相似。当请求到达率增大时,本发明的优势越来越明显,可近似取得7%的收益。在图7和图8中,随着本地云计算资源到达率或本地云可支撑计算资源数的增大,系统的可用资源越来越充足,系统收益增大。并且,可看出在低计算资源到达率和本地云可支撑计算资源数据较少时,本发明方案的优势更加明显,可将近取得10%的收益,且取得的收益多少与请求到达率有关。若请求到达率增大,系统收益在提出的方案下的优势会更加可观。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种本地云计算资源调度方法,其特征在于,包括:
a、预先按照系统收益最大的原则,确定每个系统事件发生时,在不同的系统状态下本地云需要执行的行为,并保存相应的对应关系,其中,所述系统事件包括业务请求、本地云服务器的到达和本地云服务器的离开,所述行为包括由本地云触发远端云处理业务请求、由本地云自身处理业务请求并分配资源给该业务请求以及本地云仅对自身的资源使用情况进行更新;
b、当所述系统事件发生时,本地云根据所发生的系统事件确定当前的系统状态,根据所述对应关系,确定在当前系统状态下需要执行的行为并执行。
2.根据权利要求1所述的方法,其特征在于,所述预先按照系统收益最大的原则,确定每个系统事件发生时,在不同的系统状态下本地云需要执行的行为包括:
a1、按照S={s|s=(n1,n2,...nN,M,e)},建立系统状态空间S,其中,ni为占有i个计算资源的业务请求数,N为单位业务请求可分配的最大资源数;M为本地云中的计算资源总数,M≤K,K为本地云本身能支持的最大资源数;e为系统事件,e∈E={Ap,D1,D2,...Di,...DN,Av,Dv},Ap为业务请求到达事件,Av为本地云中计算资源到达事件,Di为占用i个计算资源的业务请求已完成并离开事件,Dv为本地云中计算资源离开事件;
a2、根据每种系统状态s包含的事件e,按照 a &Element; A s = { - 1 } e &Element; { D 1 , D 2 , . . . D N , A v , D v } { 0,1,2 , . . . i , . . . N } e = A p , 确定系统状态s下可以采取的行为a;其中,As为状态s下可以采取的行为集合,a=-1表示本地云仅对自身的资源使用情况进行更新而不执行其他行为;a=0表示由本地云触发远端云处理当前的业务请求,a=i表示由本地云自身处理当前的业务请求并分配i个资源给该业务请求;
a3、对于每种系统状态s下可以采取的每种行为a,计算在该系统状态s下采取该行为a可以获得的回报r(s,a);并确定采取该行为a后转移到每个可能的系统状态s′的概率p(s'|s,a);
a4、对于每种系统状态s,利用所有所述行为a的所述回报r(s,a)和所述概率p(s'|s,a),采用迭代的方式,计算出在该系统状态下获得最大系统收益时所采取的行为。
3.根据权利要求2所述的方法,其特征在于,所述计算在该系统状态s下采取该行为a可以获得的回报r(s,a)包括:
对于每种系统状态s下可以采取的每种行为a,按照r(s,a)=k(s,a)-g(s,a),计算在该系统状态s下采取该行为a可以获得的回报r(s,a);其中,所述k(s,a)为系统状态s下采取该行为可以获得的系统即时回报,g(s,a)为连续两个事件之间的期望系统损耗; k ( s , a ) = [ w d &beta; d ( D l - 1 / i &mu; p - &delta; 1 ) + w e &beta; e ( E l - P &delta; 1 ) - &gamma; &delta; 1 ] a = i &Element; { 1,2 , . . . N } , e = A p I - &gamma; ( &delta; 1 + &delta; 2 ) a = 0 , e = A p 0 a = - 1 , e &Element; { D 1 , D 2 , . . . D i , . . . D N , A v } 0 a = - 1 , e = D v , &Sigma; i = 1 N in i < M - &xi; a = - 1 , e = D v , &Sigma; i = 1 N in i = M ; (El-Pδ1)为在系统状态s下采取行为a时用户所节省的能量;El为用户在自身设备上运行业务的能耗;Pδ1为用户在本地云中运行业务时的能耗;P为用户的发射或接收功率,δ1为将用户的业务请求传输到本地云再由本地云回传处理结果给用户所需的时间;(Dl-(1/iμp1))为用户所节省的时延;其中,Dl为终端用户在自身终端执行业务的时延,(1/iμp1)为业务在本地云执行的时延;μp为每单位计算资源的服务速率,1/iμp为处理时延;γδ1是本地云本身的传输损耗;we为预设的能量权重,wd为预设的时延权重,we+wd=1;βe为每单位能量的价值,βd为每单位时延的价值,I为当由本地云触发远端云处理业务请求时,本地云可以得到的收益价值,γ为每单位时间的本地云亏损价值,δ2为本地云将请求传到远端云并由远端云回传处理结果到本地云所需的时间,-ξ为当本地云的计算资源离开且本地云中计算资源已被全部占用时,本地云所受到的亏损价值。
4.根据权利要求2所述的方法,其特征在于,所述确定采取该行为a后转移到每个可能的系统状态s′的概率p(s'|s,a)包括:
按照 &sigma; ( s , a ) = &lambda; p , M + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p + iu p a = i &Element; { 0,1 , . . . N } , e = A p &lambda; p , M + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p - iu p a = - 1 , e = D i , i &Element; { 1,2 , . . . N } &lambda; p , M + 1 + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p a = - 1 , e = A v &lambda; p , M - 1 + &lambda; v + &mu; v + &Sigma; j = 1 N jn j &mu; p a = - 1 , e = D v , 计算在系统状态s下采取行为a后,系统状态s'中的系统事件e的平均发生速率σ(s,a);其中,λp,M表示当本地云中计算资源总数为M时本地云中业务请求的总到达速率,λp,M+1表示当本地云中计算资源总数M增加一个后本地云中业务请求的总到达速率,λp,M-1表示当本地云中计算资源总数M减少一个后本地云中业务请求的总到达速率;
当s=(n1,n2,...nN,M,Ap)时,按照 P ( s &prime; | s , a ) = &lambda; p , M H&sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , A p ) in i &mu; p &sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , D i ) &lambda; v &sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , A v ) &mu; v &sigma; ( s , a ) a = 0 , s &prime; = ( n 1 , n 2 , . . . n N , M , D v ) &lambda; p , M &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , A p ) i ( n i + 1 ) &mu; p &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , D i ) mn m &mu; p &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , m &NotEqual; i , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , D m ) &lambda; v &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , A v ) &mu; v &sigma; ( s , a ) a = i &Element; { 1,2 , . . . N } , s &prime; = ( n 1 , n 2 , . . . n i + 1 , . . . n N , M , D v ) , 确定所述P(s'|s,a);λp为每计算资源的计算任务的到达速率,μp为每单位计算资源的服务速率,λv为本地云中计算资源的到达速率,μv为本地云中计算资源的离开速率;
当s=(n1,n2,...nN,M,Di),i∈{0,1,...N}时,按照 P ( s &prime; | s , a ) = M &lambda; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , A p ) i ( n i - 1 ) &mu; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , D i ) mn m &mu; p &sigma; ( s , a ) a = - 1 , m &NotEqual; i , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , D m ) &lambda; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , A v ) &mu; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n i - 1 , . . . n N , M , D v ) , 确定所述P(s'|s,a);
当s=(n1,n2,...nN,M,Av)时,按照 P ( s &prime; | s , a ) = &lambda; p , M + 1 &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , A p ) in i &mu; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , D i ) &lambda; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , A v ) &mu; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M + 1 , D v ) , 确定所述P(s'|s,a);
当s=(n1,n2,...nN,M,Dv)时,按照 P ( s &prime; | s , a ) = &lambda; p , M - 1 &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , A p ) in i &mu; p &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , D i ) &lambda; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , A v ) &mu; v &sigma; ( s , a ) a = - 1 , s &prime; = ( n 1 , n 2 , . . . n N , M - 1 , D v ) , 确定所述P(s'|s,a)。
5.根据权利要求2所述的方法,其特征在于,所述步骤a4包括:
a41、将每个系统状态s的值函数以及迭代次数k初始化为零;
a42、对于每个所述系统状态s,利用该系统状态s下可以采取的每种行为a的所述回报r(s,a)以及采取该行为a后转移到每个可能的系统状态s′的概率p(s'|s,a),按照 V ~ k + 1 ( s ) = max a &Element; A s [ r ~ ( s , a ) + &lambda; ~ &Sigma; s &prime; &Element; S p ~ ( s &prime; | s , a ) V ~ k ( s &prime; ) ] , 计算该系统状态s的值函数其中,为离散标准化后的折扣因子,为所述p(s'|s,a)对应的离散标准化结果;
a43、判断是否成立,如果所有所述系统状态s对应的所述判断结果为是,则执行步骤a44;否则,k=k+1,执行步骤a42,其中,ε为预设的用于表示求解结果逼近最优解的程度的系数,表示向量的范数,为由含所有系统状态s的值函数构成的向量,由含所有系统状态s的值函数构成的向量;
a44、对于每个所述系统状态s,将所述对应的行为确定该系统状态下需要执行的行为。
6.根据权利要求5所述的方法,其特征在于,所述方法进一步包括:
按照 p ~ ( s &prime; | s , a ) = 1 - [ 1 - p ( s | s , a ) ] &sigma; ( s , a ) &eta; , s &prime; = s p ( s &prime; | s , a ) &sigma; ( s , a ) &eta; , s &prime; &NotEqual; s , 确定所述p(s'|s,a)对应的其中,σ(s,a)为在系统状态s下采取行为a后,系统状态s'中的系统事件e的平均发生速率,η为预设的标准化系数,η=Kλpvv+KNμp,K为本地云本身可以支持的最大资源数,λv为本地云中计算资源的到达速率,μv为本地云中计算资源的离开速率,μp为每单位计算资源的服务速率,λp为每计算资源的计算任务的到达速率。
7.根据权利要求1所述的方法,其特征在于,所述计算资源为服务器。
CN201510182317.6A 2015-04-17 2015-04-17 本地云计算资源调度方法 Active CN104754063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510182317.6A CN104754063B (zh) 2015-04-17 2015-04-17 本地云计算资源调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510182317.6A CN104754063B (zh) 2015-04-17 2015-04-17 本地云计算资源调度方法

Publications (2)

Publication Number Publication Date
CN104754063A true CN104754063A (zh) 2015-07-01
CN104754063B CN104754063B (zh) 2018-02-16

Family

ID=53593150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510182317.6A Active CN104754063B (zh) 2015-04-17 2015-04-17 本地云计算资源调度方法

Country Status (1)

Country Link
CN (1) CN104754063B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516286A (zh) * 2015-11-27 2016-04-20 浪潮(北京)电子信息产业有限公司 一种云操作系统中计算资源池自动构建方法
CN105872043A (zh) * 2016-03-29 2016-08-17 清华大学 交互应用在云部署中的延迟差异平衡方法
CN108319359A (zh) * 2017-12-29 2018-07-24 华中科技大学 一种基于微云的能耗优化方法
CN109144719A (zh) * 2018-07-11 2019-01-04 东南大学 移动云计算系统中基于马尔科夫决策过程的协作卸载方法
CN109947551A (zh) * 2019-03-19 2019-06-28 中南大学 一种多轮次任务分配方法、边缘计算系统及其存储介质
CN110858160A (zh) * 2018-08-24 2020-03-03 阿里巴巴集团控股有限公司 资源调度方法及装置、存储介质和处理器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662764A (zh) * 2012-04-25 2012-09-12 梁宏斌 一种基于smdp的动态云计算资源优化分配方法
CN102857548A (zh) * 2012-04-25 2013-01-02 梁宏斌 一种移动云计算资源优化配置方法
US8880558B2 (en) * 2010-07-01 2014-11-04 International Business Machines Corporation Cloud services creation based on graph mapping

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880558B2 (en) * 2010-07-01 2014-11-04 International Business Machines Corporation Cloud services creation based on graph mapping
CN102662764A (zh) * 2012-04-25 2012-09-12 梁宏斌 一种基于smdp的动态云计算资源优化分配方法
CN102857548A (zh) * 2012-04-25 2013-01-02 梁宏斌 一种移动云计算资源优化配置方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516286A (zh) * 2015-11-27 2016-04-20 浪潮(北京)电子信息产业有限公司 一种云操作系统中计算资源池自动构建方法
CN105872043A (zh) * 2016-03-29 2016-08-17 清华大学 交互应用在云部署中的延迟差异平衡方法
CN105872043B (zh) * 2016-03-29 2019-01-11 清华大学 交互应用在云部署中的延迟差异平衡方法
CN108319359A (zh) * 2017-12-29 2018-07-24 华中科技大学 一种基于微云的能耗优化方法
CN108319359B (zh) * 2017-12-29 2020-01-03 华中科技大学 一种基于微云的能耗优化方法
US10736032B2 (en) 2017-12-29 2020-08-04 Huazhong University Of Science And Technology Method for cloudlet-based optimization of energy consumption
CN109144719A (zh) * 2018-07-11 2019-01-04 东南大学 移动云计算系统中基于马尔科夫决策过程的协作卸载方法
CN109144719B (zh) * 2018-07-11 2022-02-15 东南大学 移动云计算系统中基于马尔科夫决策过程的协作卸载方法
CN110858160A (zh) * 2018-08-24 2020-03-03 阿里巴巴集团控股有限公司 资源调度方法及装置、存储介质和处理器
CN109947551A (zh) * 2019-03-19 2019-06-28 中南大学 一种多轮次任务分配方法、边缘计算系统及其存储介质

Also Published As

Publication number Publication date
CN104754063B (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
CN104754063A (zh) 本地云计算资源调度方法
Chen et al. Dynamic task offloading for mobile edge computing with hybrid energy supply
Chen et al. A game-based deep reinforcement learning approach for energy-efficient computation in MEC systems
CN111277437B (zh) 一种智能电网的网络切片资源分配方法
CN109167671B (zh) 一种面向量子密钥分发业务的配用通信系统均衡负载调度方法
Wu et al. Task offloading for vehicular edge computing with imperfect CSI: A deep reinforcement approach
CN108021451B (zh) 一种雾计算环境下的自适应容器迁移方法
Chen et al. Efficiency and fairness oriented dynamic task offloading in internet of vehicles
CN104283946A (zh) 一种单物理机下多虚拟机的资源自适应调整系统及方法
CN115686846B (zh) 边缘计算中融合图神经网络和强化学习的容器集群在线部署方法
Zhou et al. Energy efficient joint computation offloading and service caching for mobile edge computing: A deep reinforcement learning approach
CN106296315A (zh) 基于用户用电数据的情境感知系统
Qin et al. User-edge collaborative resource allocation and offloading strategy in edge computing
Li et al. Learning-based hierarchical edge caching for cloud-aided heterogeneous networks
Lin et al. Vehicle-to-cloudlet: Game-based computation demand response for mobile edge computing through vehicles
Li et al. DQN-enabled content caching and quantum ant colony-based computation offloading in MEC
Wang Edge artificial intelligence-based affinity task offloading under resource adjustment in a 5G network
Gong et al. Dependent task-offloading strategy based on deep reinforcement learning in mobile edge computing
Sheng et al. Residual LSTM based short-term load forecasting
Li et al. Task computation offloading for multi-access edge computing via attention communication deep reinforcement learning
Yuan et al. FedTSE: Low-cost federated learning for privacy-preserved traffic state estimation in IoV
Chen et al. The contract net based task allocation algorithm for wireless sensor network
Hao et al. Energy allocation and task scheduling in edge devices based on forecast solar energy with meteorological information
Cui et al. Resource-Efficient DNN Training and Inference for Heterogeneous Edge Intelligence in 6G
CN115361453A (zh) 一种面向边缘服务网络的负载公平卸载与迁移方法

Legal Events

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