一种基于深度强化学习的移动边缘计算分流决策方法与流程

文档序号:15626143发布日期:2018-10-09 23:01阅读:2010来源:国知局

本发明属于通信领域,尤其是涉及移动边缘计算的通信系统以及用于基站节点的基于深度强化学习的用户任务分流决策方法。



背景技术:

随着无线通信技术的广泛发展,无线通信技术已经渗入到人类生活的方方面面。移动边缘计算拓展了移动设备的能力,在丰富的云资源的帮助下,用户体验得到极大提升。在一个多用户的移动通信系统中,所有用户共同占用传输资源。用户将自身的任务分流至基站或者云端时,可以减少自己的能量损耗,但这些被分流的任务的服务质量会受一些额外损耗的影响,比如传输延时。为了最小化所有的能量损耗,传输损耗和延时损耗,保证服务质量,最优的任务分流决策方法应用是很有必要的。



技术实现要素:

为了克服现有移动通信系统的能量损耗较大的不足,为了最小化系统中所有的能量损耗,传输损耗和延时损耗,保证服务质量,本发明提供了一种适用于移动边缘计算的基于深度强化学习的分流决策方法,在保证用户体验的前提下最小化能量损耗。

本发明解决其技术问题所采取的技术方案是:

一种基于深度强化学习的移动边缘计算分流决策方法,所述方法,包括以下步骤:

1)在一个由多个用户组成,并且每个用户都有多个独立的任务的移动通信系统中,xnm为用户n的任务m的分流决策,如果xnm为1则表示用户n的任务m将被分流至基站或云端处理,xnm为0则表示在本地处理;当用户n的任务m被分流时,其上行传输速率和下行传输速率受传输总带宽cu和cd的限制;当用户n的任务m在本地处理时,本地移动设备所产生的能量损耗为如果在云端处理时,所产生的能量损耗为系统总损耗最小化表示为:

约束条件为:

式中:

其中,各参数定义如下:

n:用户人数;

m:每个用户的任务数;

xnm:用户n的任务m的分流决策,为1时表示在云端处理,为0时在本地处理;

用户n的任务m在本地处理时的能量损耗;

用户n的任务m被分流时,传输过程中能量损耗;

用户n的任务m在云端处理时的能量损耗;

ρ:在云端处理时,能量损耗的转化权重;

ωn:用户n延时损耗的转化权重;

用户n的任务m在本地处理时的延时损耗;

用户n的任务在云端处理时的总延时损耗;

2)为了保证服务质量,当任务在云端处理时,数据从本地上传到云端所消耗的时间以及处理时间都将被考虑在内,每个用户n的任务由发送数据donm和接收数据dinm组成,当任务分流至云端时,期间所消耗的时间与本地和基站间的传输速率rac相关;在云端处理时,时间消耗由发送数据大小和云端处理速度fc决定;由于数据传输和处理时间会有重叠,而重叠部分难以估算,所以总的时间损耗考虑为所有时间消耗的总和

式中:

其中,各参数定义如下:

dinm:用户n的任务m的接收数据大小;

donm:用户n的任务m的发送数据大小;

用户n的上传速度;

用户n的下行速度;

基站与云端的传输速率;

atnm:每处理单位的数据需要的处理循环次数;

fc:云端处理器的处理速度;

3)通过强化学习算法来寻找一个最优的分流决策和资源调度方案,即所有用户的分流决策xnm和上下行速率分配,该强化学习系统由智能体和环境所组成,所有用户的分流决策xnm和上下行速率都被编进了系统当前状态xt,智能体在当前状态下采取动作a进入下一个状态xt+1,同时得到环境返回的奖励r(xt,a)。在智能体和环境不断交互更新下,分流决策xnm和上下行速率将不断被优化直到找到最优的,智能体的更新方式为:

qθ(xt,a)=r(xt,a)+γmaxqθ(xt+1,a′)(3)

其中,各参数定义如下:

θ:评估网络中的参数;

θ′:目标网络中的参数;

xt:在时刻t,系统所处状态;

qθ(xt,a):在状态xt下采取动作a所得到的q值;

r(xt,a):在状态xt下采取动作a所得到的奖励;

γ:奖励衰减比重;

4)所有用户的分流决策xnm和上下行速率作为深度强化学习的系统状态xt,动作a则是对系统状态xt的更改,如果改后的系统的总损耗比之前的要小,则使当前奖励r(xt,a)设为正值,反之设为负值,同时系统进入下一状态xt+1。

进一步,所述步骤4)中,强化学习的迭代过程为:

步骤4.1:初始化强化学习中的评估网络,目标网络和记忆库。当前系统状态为xt,t初始化为1,迭代次数k初始化为1;

步骤4.2:当k小于或等于给定迭代次数k时,随机选择一个概率p;

步骤4.3:如果p小于或等于ε;则选择评估网络所输出的动作a(t),否则随机选择一个动作;

步骤4.4:采取动作a(t)后,得到奖励r(t)和下一步状态x(t+1),并将这些信息按照格式(x(t),a(t),r(t),x(t+1))保存在记忆库中;

步骤4.5:结合目标网络的输出,计算评估网络的目标

y=r(xt,a)+γmaxqθ′(xt+1,a′);

步骤4.6:最小化误差(y-q(x(t),a(t);θ))2,同时更新评估网络的参数θ,使得其下次能预测得更准;

步骤4.7:每隔s步,将评估网络的参数赋值给目标网络,同时令k=k+1,回到步骤4.2;

步骤4.8:当k大于给定迭代次数k时,学习过程结束,得到最佳分流决策xnm和上下行速率

本发明的技术构思为:首先,在一个多用户的移动通信系统中,所有用户共同占用传输资源。用户将自身的任务分流至基站或者云端时,可以减少自己的能量损耗,但这些被分流的任务的服务质量会受一些额外损耗的影响,比如传输延时。如果用户的所有任务都在云端处理那么云端的能量损耗和传输损耗将直线上升,如果全部在本地处理,又会消耗用户很多的能量和时间。为了最小化整体的能量损耗,传输损耗和延时损耗,保证服务质量,提出了一种能找到最优的任务分流决策的方法。

本发明的有益效果主要表现在:通过深度强化学习寻找出最优的分流决策方法,在保证用户体验的前提下最小化能量损耗,保证服务质量。

附图说明

图1是系统模型示意图。

图2是找到最优分流决策的方法流程图。

具体实施方式

下面结合附图对本发明作进一步详细描述。

参照图1和图2,一种基于深度强化学习的移动边缘计算分流决策方法,实行该方法能最小化整体的能量损耗,传输损耗和延时损耗,保证服务质量,本发明基于多用户的系统模型(如图1所示),提出了一个分流决策方法来决定哪些用户的哪些任务会被分流至云端,同时如果任务被选择分流,那它的上下行速率也会得到优化以达到最小的能量损耗。所述分流决策方法包括有以下步骤(如图2所示):

1)在一个由多个用户组成,并且每个用户都有多个独立的任务的移动通信系统中,xnm为用户n的任务m的分流决策,如果xnm为1则表示用户n的任务m将被分流至基站或云端处理,xnm为0则表示在本地处理;当用户n的任务m被分流时,其上行传输速率和下行传输速率受传输总带宽cu和cd的限制;当用户n的任务m在本地处理时,本地移动设备所产生的能量损耗为如果在云端处理时,所产生的能量损耗为系统总损耗最小化表示为:

约束条件为:

式中:

其中,各参数定义如下:

n:用户人数;

m:每个用户的任务数;

xnm:用户n的任务m的分流决策,为1时表示在云端处理,为0时在本地处理;

用户n的任务m在本地处理时的能量损耗;

用户n的任务m被分流时,传输过程中能量损耗;

用户n的任务m在云端处理时的能量损耗;

ρ:在云端处理时,能量损耗的转化权重;

ωn:用户n延时损耗的转化权重;

用户n的任务m在本地处理时的延时损耗;

用户n的任务在云端处理时的总延时损耗;

2)为了保证服务质量,当任务在云端处理时,数据从本地上传到云端所消耗的时间以及处理时间都将被考虑在内,每个用户n的任务由发送数据donm和接收数据dinm组成,当任务分流至云端时,期间所消耗的时间与本地和基站间的传输速率rac相关;在云端处理时,时间消耗由发送数据大小和云端处理速度fc决定;由于数据传输和处理时间会有重叠,而重叠部分难以估算,所以总的时间损耗考虑为所有时间消耗的总和

式中:

其中,各参数定义如下:

dinm:用户n的任务m的接收数据大小;

donm:用户n的任务m的发送数据大小;

用户n的上传速度;

用户n的下行速度;

rac:基站与云端的传输速率;

atnm:每处理单位的数据需要的处理循环次数;

fc:云端处理器的处理速度;

3)通过强化学习算法来寻找一个最优的分流决策和资源调度方案,即所有用户的分流决策xnm和上下行速率分配。该强化学习系统由智能体和环境所组成;所有用户的分流决策xnm和上下行速率都被编进了系统当前状态xt,智能体在当前状态下采取动作a进入下一个状态xt+1,同时得到环境返回的奖励r(xt,a),在智能体和环境不断交互更新下,分流决策xnm和上下行速率将不断被优化直到找到最优的,智能体的更新方式为:

qθ(xt,a)=r(xt,a)+γmaxqθ′(xt+1,a′)(3)

其中,各参数定义如下:

θ:评估网络中的参数;

θ′:目标网络中的参数;

xt:在时刻t,系统所处状态;

qθ(xt,a):在状态xt下采取动作a所得到的q值;

r(xt,a):在状态xt下采取动作a所得到的奖励;

γ:奖励衰减比重;

4)所有用户的分流决策xnm和上下行速率作为深度强化学习的系统状态xt,动作a则是对系统状态xt的更改,如果改后的系统的总损耗比之前的要小,则使当前奖励r(xt,a)设为正值,反之设为负值,同时系统进入下一状态xt+1。

所述步骤4)中,强化学习的迭代过程为:

步骤4.1:初始化强化学习中的评估网络,目标网络和记忆库。当前系统状态为xt,t初始化为1,迭代次数k初始化为1;

步骤4.2:当k小于或等于给定迭代次数k时,随机选择一个概率p;

步骤4.3:如果p小于或等于ε;则选择评估网络所输出的动作a(t),否则随机选择一个动作;

步骤4.4:采取动作a(t)后,得到奖励r(t)和下一步状态x(t+1),并将这些信息按照格式(x(t),a(t),r(t),x(t+1))保存在记忆库中;

步骤4.5:结合目标网络的输出,计算评估网络的目标

y=r(xt,a)+γmaxqθ′(xt+1,a′);

步骤4.6:最小化误差(y-q(x(t),a(t);θ))2,同时更新评估网络的参数θ,使得其下次能预测得更准;

步骤4.7:每隔s步,将评估网络的参数赋值给目标网络,同时令k=k+1,回到步骤4.2;

步骤4.8:当k大于给定迭代次数k时,学习过程结束,得到最佳分流决策xnm和上下行速率

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1