一种移动边缘计算中基于强化学习的服务迁移方法

文档序号:29613836发布日期:2022-04-13 10:42阅读:137来源:国知局
一种移动边缘计算中基于强化学习的服务迁移方法

1.本发明属于移动边缘计算领域,特别是涉及一种移动边缘计算中基于强化学习的服务迁移方法。


背景技术:

2.移动边缘计算通过将计算资源下放至距离用户更近的各类节点上,为用户提供更好的服务,更好地提高了系统的服务质量(qos)和提升了用户的服务体验(qoe)。移动边缘计算的出现推动了物联网、5g和运营商个性化服务的发展,同时它也被广泛应用于增强现实(ar)、视频优化加速、视频流分析、物联网(iot)和车联网等领域之中。移动边缘计算中的主要问题就是任务卸载的问题,而任务卸载主要包括三个方面,分别是任务卸载的决策问题、资源分配问题和移动性管理问题。其中移动性管理问题产生于用户的移动性,一个有效地解决移动性管理问题的方法就是服务迁移。服务迁移通过将运行在距离用户较远距离的服务器上的服务迁移至距离用户较近的服务器,极大地降低了时延,为用户提供了更好的服务。
3.已有的服务迁移策略主要通过马尔可夫决策过程、时间窗口技术和预测技术等来实现。服务迁移作为一个由于用户移动性所带来的问题,导致其考虑的往往是长期的优化,因此可以将服务迁移问题建模为时序决策问题来进行求解,而马尔可夫决策过程作为时序决策问题的经典形式化表示,可用于研究服务迁移问题。时间窗口技术和预测技术能够很好地对未来的能耗进行预测,进而能够寻找最优化的服务放置策略,也同样可以用来解决服务迁移问题。
4.尽管服务迁移已经使用上述方法进行了诸多研究,但基于马尔可夫决策过程的研究往往对于环境因素考虑不充足,同时也较少考虑用户的实际移动特性,并且迁移决策制定后如何进行迁移的问题也很少被提到。因此,综合考虑多种环境因素做出迁移决策,并选择合适的迁移路径至关重要。
5.经过检索,申请公开号为cn110347495a,一种使用深度强化学习进行移动边缘计算的任务迁移方法,先设定系统模型各参数,再描述强化学习中的决策公式,然后基于公式给出任务迁移算法;通过本方法能够获得高效的任务迁移机制,而高效的任务迁移机制能够提高系统实时性,充分利用计算资源,并减少能耗;本方法同时运用了深度强化学习思想进行任务调度,即决策是否迁移计算任务,尤其使用了马尔可夫决策过程,能够在极短时间内给出较优解,实时性强;本方法适用于用户处在高速运动状态时,解决是否更换使用的服务器基站问题。在该专利中,通过使用深度强化学习算法求解移动边缘计算中任务迁移问题,但是由于移动状态的不确定性,往往不能够覆盖用户全部移动轨迹。本专利通过使用用户之前移动方向预测用户之后移动方向,进而构建用户移动模型,再结合迁移与否的决策构建状态转移矩阵,能够覆盖所有可能的用户移动状态,进而能够求解更加符合实际场景的迁移决策问题;同时本专利还针对迁移路径的选择问题使用强化学习算法进行了求解。
6.申请公开号为cn110830560a,一种基于强化学习的多用户移动边缘计算迁移方
法,包括以下步骤:首先移动设备确定当前工作负载到达率、可再生能源和电池电量等状态;然后通过访问动作状态值矩阵,根据∈-greedy策略决定在本地处理的任务量并采取相应动作;再计算可以反映当前动作好坏的奖赏值并以此更新动作状态值矩阵;最后计算移动设备的总成本(包括延迟成本和计算成本)。本发明将强化学习应用于5g关键技术之一的移动边缘计算技术,并结合q-learning无模型的优势,制定了移动设备的任务分配策略,显著减少了移动设备的成本。该专利通过强化学习求解了多用户任务迁移问题,主要用于解决任务卸载过程中系统的长期成本优化问题。与本专利求解不同位置不同移动方向下迁移决策的制定问题有所不同,同时本专利还求解了迁移路径选择问题。


技术实现要素:

7.本发明旨在解决现有移动边缘计算中的服务迁移问题,提出了一种综合考虑多种环境因素影响和移动预测的迁移决策制定模型并使用价值迭代算法对问题进行求解;同时使用强化学习算法来实现动态网络环境下自适应迁移路径的选择。本发明的技术方案如下:
8.一种移动边缘计算中基于强化学习的服务迁移方法,其包括以下步骤:
9.s1,根据用户服务所处服务器位置、用户当前所处区域位置以及当前处理任务的服务器负载构建奖励函数;
10.s2,根据用户当前所处位置,之前移动方向以及是否迁移构建状态转移矩阵;
11.s3,根据所述奖励函数和所述状态转移矩阵,使用价值迭代算法进行迁移决策制定;
12.s4,根据路由之间的时延消耗和网络消耗做规范化处理来赋值链路消耗;
13.s5,根据规范化后的链路消耗,使用强化学习算法进行路径选择并自适应地更新链路选择以适应动态网络的链路变化。
14.进一步的,s1所述根据用户服务所处服务器位置、用户当前所处区域位置以及用户当前服务器负载构建奖励函数,具体包括:
15.(1)使用用户距离处理任务服务器的距离d
t
和处理任务服务器的负载h
t
构建用户服务满意度函数;
16.(2)使用用户距离处理任务服务器的距离d
t
构建迁移消耗函数;
17.(3)使用服务满意度函数和迁移消耗函数的加权和作为奖励函数。
18.进一步的,所述(1)使用用户距离处理任务服务器的距离和处理任务服务器的负载构建用户满意度c1(s
t
,a
t
),具体公式为:
19.c1(s
t
,a
t
)=d-μ1d
t-μ2h
t
[0020][0021]
其中,d表示用户能够获得最大服务满意度,d
t
表示用户t时刻距离处理任务服务器的距离,h
t
代表t时刻处理任务的服务器负载情况,μ1和μ2是比例系数,表示距离和负载对于用户服务满意度的影响程度。d
t
通过计算用户当前位置l
t
=(x
t
,y
t
)与处理任务服务器位置ls=(xs,ys)的欧式距离获得;
[0022]
(2)使用用户距离处理任务服务器的距离d
t
构建迁移消耗函数c2(s
t
,a
t
):
[0023]
c2(s
t
,a
t
)=μ3+μ4d
t
[0024]
其中,使用距离d
t
的线性函数表示迁移消耗,μ3表示常数消耗,μ4表示距离的影响系数;
[0025]
(3)使用用户服务满意度函数和迁移消耗函数的加权和作为奖励函数r(s,a):
[0026][0027]
其中,a表示迁移决策,a=0表示不进行迁移,a=1表示进行迁移;d
max
代表处理服务所允许的最大距离,超出该距离会有极大的惩罚m。
[0028]
进一步的,s2所述根据用户当前所处位置,之前移动方向以及是否迁移构建状态转移矩阵,主要包括:
[0029]
(1)将用户位置转化为相对于服务器的相对位置并记录用户前一时刻移动方向;
[0030]
(2)不同的移动方向会对用户接下来的移动轨迹产生影响,用户的移动模型为用户有较大的概率不改变方向,较小的概率改变方向;
[0031]
(3)基于用户的移动模型与是否迁移的决策,决定下一时刻用户的状态。
[0032]
进一步的,所述(1)记录用户前一时刻移动方向z
t
,使用用户当前所处位置l
t
与之前移动方向z
t
表示用户目前状态s
t
=(x
t
,y
t
,z
t
);
[0033]
(2)所述不同的移动方向z
t
会对用户接下来的移动轨迹产生影响,用户在下一时序有较大的概率p保持移动方向z
t
不变并到达位置同时,用户在下一时序有较小的概率改变移动方向为或并到达位置或
[0034]
(3)基于用户的移动模型与迁移决策,确定状态转移概率p(s'|s,a):
[0035][0036]
其中,表示在迁移后用户与处理任务的服务器处于同一位置;表示迁移后用户移动方向不变,同时不迁移时有p的概率用户移动方向不变。
[0037]
进一步的,s3所述根据所述奖励函数和所述状态转移矩阵,使用价值迭代算法进行迁移决策制定,主要包括:
[0038]
(1)随机初始化用户在不同位置不同移动方向下的状态价值函数v(s);
[0039]
(2)基于贝尔曼最优方程使用上一迭代周期的状态价值函数值更新下一迭代周期的状态价值函数值,具体公式为:
[0040][0041]
其中,v
k+1
(s)表示第k+1个迭代周期状态s所对应的状态价值函数,表示状态s选取动作a所获得的奖励,表示状态s选取动作a到达状态s'的概率,vk(s')表示第k个迭代周期状态s'所对应的状态价值函数;
[0042]
(3)重复步骤(2),直至不同位置不同方向下的状态价值函数均收敛。
[0043]
进一步的,s4所述根据路由之间的时延消耗t和网络消耗p做规范化处理来赋值链路消耗c的方法包括步骤:
[0044]
(1)记录链路中传输所需要的时延消耗t以及网络消耗p;
[0045]
(2)对二者进行均一化处理后加权求和赋值链路消耗c:
[0046][0047]ci
=ω
t
ti+ω
p
pi[0048]
其中,ti和pi表示每条链路对应时延消耗和网络消耗,表示链路时延消耗的最小值,表示链路时延消耗的最大值,表示链路网络消耗的最小值,表示链路网络消耗的最大值;ω
t
和ω
p
分别表示时延消耗与网络消耗的加权系数。
[0049]
进一步的,s5所述使用sarsa强化学习选择迁移路径的方法主要包括:
[0050]
(1)随机初始化各路由所连接的链路信息,包括时延消耗t和网络消耗p;
[0051]
(2)从原服务器至目标服务器的数据信息随机选择路径传输;
[0052]
(3)记录数据传输过程中产生的时延消耗t以及产生的网络消耗p,并将其进行标准化后加权求得对应链路消耗c;
[0053]
(4)各路由根据ε贪婪策略选取数据传输的链路,同时记录选择该链路传输至下一路由的链路消耗,各路由根据本次数据的传输更新其对应的状态动作q值表;
[0054]
(5)伴随数据的传输,各个路由重复步骤(4),进行本路由q值表的动态更新并选择更优化的路径。
[0055]
进一步的,所述使用ε贪婪策略选取动作方式和状态动作q值表更新方式分别为:
[0056][0057]
q(s,a)

q(s,a)+α(r+γq(s',a')-q(s,a))
[0058]
其中,π(a|s)表示在状态s下选取动作a的概率,a
*
表示当前状态s下能够使得q值最大的动作,m表示可供选择的动作个数。q(s,a)表示各个状态下选取不同动作对应的状态
动作函数值,α是学习速率参数,γ是衰减因子,q(s',a')表示下一状态对应的状态动作函数值。
[0059]
本发明的优点及有益效果如下:
[0060]
1.本发明在移动边缘环境中综合考虑用户关注的时延因素与商家关注的迁移消耗因素,并基于移动预测构建了更加符合实际场景的移动模型和状态转移矩阵,最终使用价值迭代算法求得不同位置不同移动方向下的迁移决策。指导用户何时进行迁移能够收益最大化。本发明最终求得的迁移决策,不同于其他在相同位置时有相同迁移决策的服务迁移策略,而是在相同位置下也会因用户之前移动方向不同而产生不同的迁移决策,更加符合实际场景。
[0061]
2.本发明在移动边缘环境中服务确定需要迁移以后,综合考虑用户和商家的利益所在,基于时延和网络消耗赋值链路消耗,并使用强化学习算法求解动态网络环境下自适应的迁移路径选择问题。本发明最终求得的迁移路径,会随着网络链路状态的变化而实时动态更新,能够为服务提供更优的迁移路径。
附图说明
[0062]
图1是本发明提供优选实施例基于价值迭代的迁移决策制定算法;
[0063]
图2是基于sarsa的动态路径选择算法;
[0064]
图3是移动边缘计算中基于强化学习的服务迁移方法流程图。
具体实施方式
[0065]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
[0066]
本发明解决上述技术问题的技术方案是:
[0067]
如图3所示,本发明公开了一种移动边缘计算中基于强化学习的服务迁移方法,包括以下步骤:
[0068]
s1,基于用户服务所处服务器位置ls、用户当前所处区域位置l
t
以及处理任务的服务器负载h
t
构建奖励函数r(s,a)。使用奖励函数表示用户每次进行迁移决策时所能够获得的收益,将其作为用户服务体验与迁移消耗的均衡体现;
[0069]
s2,基于用户当前所处位置l
t
、之前移动方向z
t
以及是否迁移构建状态转移矩阵p。使用状态转移矩阵表示用户每次进行迁移决策以后产生的状态变化,包括位置的变化和移动方向的变化;
[0070]
s3,基于奖励函数r(s,a)和状态转移矩阵p,使用价值迭代算法求解迁移决策的制定问题。进而确定不同位置不同移动方向下的用户服务是否需要迁移。
[0071]
s4,基于路由之间的时延消耗t和网络消耗p,对二者进行规范化处理后赋值链路消耗c;
[0072]
s5,基于规范后的链路消耗c,使用sarsa强化学习算法进行迁移路径选择,并自适应地更新链路选择以适应动态网络的链路变化。
[0073]
在本实施例中,所述步骤s1中根据用户服务所处服务器位置ls、用户当前所处区域位置l
t
以及处理任务的服务器负载h
t
构建奖励函数r(s,a)的方法包括步骤:
[0074]
(1)使用用户距离处理任务的服务器距离d
t
和处理任务的服务器负载h
t
构建用户满意度函数c1(s
t
,a
t
):
[0075]
c1(s
t
,a
t
)=d-μ1d
t-μ2h
t
[0076][0077]
其中,d表示用户能够获得最大服务满意度,d
t
表示用户t时刻距离处理任务服务器的距离,h
t
代表t时刻处理任务的服务器负载情况,μ1和μ2是比例系数,表示距离和负载对于用户服务满意度的影响程度。d
t
通过计算用户当前位置l
t
=(x
t
,y
t
)与处理任务服务器位置ls=(xs,ys)的欧式距离获得。
[0078]
(2)使用用户距离处理任务服务器的距离d
t
构建迁移消耗函数c2(s
t
,a
t
):
[0079]
c2(s
t
,a
t
)=μ3+μ4d
t
[0080]
其中,使用距离d
t
的线性函数表示迁移消耗,μ3表示常数消耗,μ4表示距离的影响系数。
[0081]
(3)使用用户服务满意度函数和迁移消耗函数的加权和作为奖励函数r(s,a):
[0082][0083]
其中,a表示迁移决策,a=0表示不进行迁移,a=1表示进行迁移;d
max
代表处理服务所允许的最大距离,超出该距离会有极大的惩罚m。
[0084]
在本实施例中,所述步骤s2中根据用户当前所处位置l
t
、之前移动方向z
t
以及是否迁移构建状态转移矩阵的方法包括步骤:
[0085]
(1)记录用户前一时刻移动方向z
t
,使用用户当前所处位置l
t
与之前移动方向z
t
表示用户目前状态s
t
=(x
t
,y
t
,z
t
)。
[0086]
(2)不同的移动方向z
t
会对用户接下来的移动轨迹产生影响,用户在下一时序有较大的概率p保持移动方向z
t
不变并到达位置同时,用户在下一时序有较小的概率改变移动方向为或并到达位置或
[0087]
(3)基于用户的移动模型与迁移决策,确定用户的状态转移概率p(s'|s,a)如下:
[0088][0089]
其中,表示在迁移后用户与处理任务的服务器处于同一位置;表示迁移后用户移动方向不变,同时不迁移时有p的概率用户移动方向
不变。
[0090]
在本实施例中,所述步骤s3中根据奖励函数r(s,a)和状态转移矩阵p,使用价值迭代算法进行迁移决策制定的方法包括步骤:
[0091]
(1)随机初始化用户在不同位置不同移动方向下的状态价值函数v(s);
[0092]
(2)基于贝尔曼最优方程使用上一迭代周期的状态价值函数值更新下一迭代周期的状态价值函数值,具体公式为:
[0093][0094]
其中,v
k+1
(s)表示第k+1个迭代周期状态s所对应的状态价值函数,表示状态s选取动作a所获得的奖励,表示状态s选取动作a到达状态s'的概率,vk(s')表示第k个迭代周期状态s'所对应的状态价值函数;
[0095]
(3)重复步骤(2),直至不同位置不同方向下的状态价值函数均收敛。
[0096]
在本实施例中,所述步骤s4中根据路由之间的时延消耗t和网络消耗p做规范化处理来赋值链路消耗c的方法包括步骤:
[0097]
(1)记录链路中传输所需要的时延消耗t以及网络消耗p;
[0098]
(2)对二者进行均一化处理后加权求和赋值链路消耗c:
[0099][0100]ci
=ω
t
ti+ω
p
pi[0101]
其中,ti和pi表示每条链路对应时延消耗和网络消耗,表示链路时延消耗的最小值,表示链路时延消耗的最大值,表示链路网络消耗的最小值,表示链路网络消耗的最大值;ω
t
和ω
p
分别表示时延消耗与网络消耗的加权系数。
[0102]
在本实施例中,所述步骤s5中根据规范后的链路消耗,使用sarsa强化学习算法进行路径选择并自适应地更新链路选择以适应动态网络的链路变化的方法包括步骤:
[0103]
(1)随机初始化各路由所连接的链路信息,包括时延消耗t和网络消耗p;
[0104]
(2)从原服务器至目标服务器的数据信息随机选择路径传输;
[0105]
(3)记录数据传输过程中产生的时延消耗t以及产生的网络消耗p,并将其进行标准化后加权求得对应链路消耗c;
[0106]
(4)各路由根据ε贪婪策略选取数据传输的链路,同时记录选择该链路传输至下一路由的链路消耗,各路由根据本次数据的传输更新其对应的状态动作q值表,其中使用ε贪婪策略选取动作方式和状态动作q值表更新方式分别为:
[0107][0108]
q(s,a)

q(s,a)+α(r+γq(s',a')-q(s,a))
[0109]
其中,π(a|s)表示在状态s下选取动作a的概率,a
*
表示当前状态s下能够使得q值最大的动作,m表示可供选择的动作个数。q(s,a)表示各个状态下选取不同动作对应的状态动作函数值,α是学习速率参数,γ是衰减因子,q(s',a')表示下一状态对应的状态动作函数值。
[0110]
本发明综合考虑多种环境因素进行迁移决策的制定以及迁移路径的选择,与已有的服务迁移方法相比,本发明具有以下主要优点:(1)综合考虑多种环境因素,引入服务器负载作为影响用户服务体验的因素,同时引入用户之前移动方向作为一种预测指标,使其影响用户之后移动,更加符合实际场景;(2)综合考虑用户关注的时延因素以及服务供应商所关注的网络消耗因素,使用强化学习求解动态网络环境下自适应的服务迁移路径。
[0111]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0112]
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1