一种基于深度强化学习的异构网络选择方法与流程

文档序号:20584081发布日期:2020-04-29 01:40阅读:241来源:国知局
一种基于深度强化学习的异构网络选择方法与流程

本发明属于异构网络选择技术领域;具体涉及一种基于深度强化学习的异构网络选择方法。



背景技术:

随着无线通信技术的快速发展,出现了多种无线接入技术并存的局面,由于这些无线接入系统都是专门针对某些特定的业务类型和用户群体而设计的,所以在网络的覆盖范围、可用带宽、资费水平、对用户移动性的支持和服务质量(qualityofservice,qos)保证等方面都存在一定的差异性,这种针对特定业务类型而专门设计的无线接入系统已经无法再满足用户日益复杂多变的业务需求。因此,整合不同的无线网络,联合管理有限的资源已经成为不可逆转的趋势。如何才能在兼顾服务质量和资源利用率的情况下选择最佳的网络给用户提供服务,这是异构无线网络中所需要解决的关键问题之一,为此人们提出了很多联合无线资源管理(jointradioresourcemanagement,jrrm)的方法(如负载均衡、异构网络选择等),但是现有的好多方法都不是从网络接入的自主性出发,并且对动态多变的无线网络环境的适应性不好,而这正是未来复杂的无线环境中及其重要的问题。

强化学习是学习代理通过与环境互动进行学习的方法。rl的目标是学习在每个状态采取何种动作来最大化一个特定的指标。学习代理通过反复与控制环境进行交互,通过奖励来评价其性能,从而达到一个最优决策。rl广泛应用于机器人和自动控制,同时因其灵活性和自适应性也被引入到无线通信系统的资源管理上。q学习是rl的一种方法,利用学习代理逐步构建一个q函数,试图估计未来折扣代价以便于学习代理在当前状态采取一定动作。



技术实现要素:

本发明为了使网络选择能够适应动态变化的无线环境,适时地为每个会话选择最佳的网络,提出了一种基于深度q学习的无线异构网络接入选择方法,该方法在充分考虑到网络负载情况的同时,还对会话的业务属性和终端的移动性以及终端在网络中所处位置的不同进行区分,通过与外界网络环境不断的试错学习能够不断调整自身的动作选择策略。

本发明通过以下技术方案实现:

一种基于深度强化学习的异构网络选择方法,所述异构网络选择方法包括以下步骤:

步骤1:根据用户请求业务类型,提取特征进行独热编码;

步骤2:根据终端到不同网络基站的距离,提取距离特征;

步骤3:根据整体网络环境,获取不同网络中不同业务的用户数,提取用户特征;

步骤4:通过步骤1-步骤3提取的特征进行特征组合,获得用户当前状态特征;

步骤5:建立异构网络,通过马尔科夫决策实现;

步骤6:将步骤1-步骤3提取的特征代入深度强化学习模型;

步骤7:根据移动性特征和业务属性特征,定义强化学习的即时奖励;

步骤8:利用dqn求解异构网络选择问题。

进一步的,所述步骤1中用户请求业务类型包括数据业务和语音业务:当选择数据业务时,特征b=[0,1],当选择语音业务时,特征b=[1,0]。

进一步的,所述步骤2中终端到不同基站的距离特征为d=[d1,d2],其中d1表示终端到b-trunc基站到距离,d2表示终端到pdt基站的距离。

进一步的,所述步骤3中不同网络中不同业务的用户数用n表示,其中表示b-trunc网络中数据业务的用户数,表示b-trunc网络中语音业务的用户数,表示pdt网路中数据业务的用户数,表示pdt网路中语音业务的用户数。

进一步的,所述步骤4具体为:任务决定下一个用户选择的网络,对相应的决策过程建模为具有奖励和行动的mdp;mdp由一个元组(s,a,p,r,γ)表示,其中,状态空间用s表示,包含了用户业务,终端到不同基站的距离,不同网络中不同业务的用户数;动作空间用a表示,它对应将用户分配给不同网络;状态转移概率函数用p(s,a,s')=p[st+1=s'|st=s,at=a]表示,状态转移概率是由单位时间内断开连接的用户数的决定的,在单位时间中,用户的离开个数是随机的;在行动a下,从状态s过渡到状态s'的直接奖励用r(s,a,s')表示;γ表示用来计算未来的奖励折算到现在的价值,γ∈[0,1)。

进一步的,所述步骤8具体为,神经网络的输入是状态s,而输出是每个动作的q值,θ表示神经网络参数,则θ下的作用值函数可用q(s,a;θ)表示,dqn最小化损失函数定义为:

反向传播的更新公式定义为:

式中,表示q相对于θ的梯度;

dqn使用单独的网络生成目标q值,其网络参数用θ-表示;每经过nu步网络q的参数会被克隆到目标网络则网络参数更新为:

网络参数更新后再进行迭代,迭代轮数表示为t,状态特征维度表示为n,动作空间用a表示,步长表示为α,衰减因子表示为γ,探索率表示为∈,当前q网络表示为q,目标q网络表表示为q′,批量梯度下降的样数表示为m,目标q网络参数更新频率表示为c;

目标q网络参数更新通过如下步骤实现:

步骤8.1:随机初始化所有的状态和动作对应的q值;

步骤8.2:通过q值选择合适动作,反复与环境进行交互,再去更新整个网络。

进一步的,所述步骤8.2具体为:

步骤8.2.1:将当前网络状态,包括不同网络中不同业务的用户个数,待接入网络用户需要的业务,待接入用户到达不同网络基站的距离,获得到其向量s;

步骤8.2.2:在q网络中使用s作为输入,得到q网络的所有动作对应的q值输出,用∈-贪婪法在当前q值输出中选择对应的动作a;

步骤8.2.3:在状态s当前动作a得到新状态对应的特征向量s′和奖励r;

步骤8.2.4:将{s,a,r,s'}这个四元组存入经验回放集合d;

步骤8.2.5:令s=s′;

步骤8.2.6:从经验回放集合d中采样m个样本{sj,aj,rj,s'j},j=1,2…m,计算当前目标q时值yj时:yj=rj+γmaxa'q(s'j,a'j,θ)

式中maxa'q(s'j,a'j,θ)为下一个状态对应的最大的q值;

步骤8.2.7:使用均方差损失函数通过神经网络的梯度反向传播来更新q网络的所有参数;

步骤8.2.8:若t%nu=1,则更新目标q网络参数θ-=θ,

式中,nu为目标q网络参数更新的周期。

附图说明

图1本发明异构网路选择马尔科夫决策过程示意图。

图2本发明dqn神经网络示意图。

图3本发明网络选择dqn方法示意图。

图4本发明两种业务在两种网络中的分布情况示意图。

图5本发明两种移动性用户在两个网络中的分布情况示意图。

图6本发明阻塞率性能对比示意图。

具体实施方式

下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

由于这些无线接入系统都是专门针对某些特定的业务类型和用户群体而设计的,所以在网络的覆盖范围、可用带宽、资费水平、对用户移动性的支持和服务质量保证等方面都存在一定的差异性,这种针对特定业务类型而专门设计的无线接入系统已经无法再满足用户日益复杂多变的业务需求。本发明主要针对目前的网络选择无法适应动态变化的无线环境的问题而提出。

一种基于深度强化学习的异构网络选择方法,所述异构网络选择方法包括以下步骤:

步骤1:根据用户请求业务类型,提取特征进行独热编码;

步骤2:根据终端到不同网络基站的距离,提取距离特征;

步骤3:根据整体网络环境,获取不同网络中不同业务的用户数,提取用户特征;

步骤4:通过步骤1-步骤3提取的特征进行特征组合,获得用户当前状态特征;

步骤5:建立异构网络,通过马尔科夫决策实现;

步骤6:将步骤1-步骤3提取的特征代入深度强化学习模型;

步骤7:根据移动性特征和业务属性特征,定义强化学习的即时奖励;

步骤8:利用dqn求解异构网络选择问题。

进一步的,所述步骤1中用户请求业务类型包括数据业务和语音业务:当选择数据业务时,特征b=[0,1],当选择语音业务时,特征b=[1,0]。

进一步的,所述步骤2中终端到不同基站的距离提取特征为d=[d1,d2],其中d1表示终端到b-trunc基站到距离,d2表示终端到pdt基站的距离。

进一步的,所述步骤3中不同网络中不同业务的用户数用n表示,其中表示b-trunc网络中数据业务的用户数,表示b-trunc网络中语音业务的用户数,表示pdt网路中数据业务的用户数,表示pdt网路中语音业务的用户数。

进一步的,所述步骤4具体为:任务决定下一个用户选择的网络,对相应的决策过程建模为具有奖励和行动的mdp;mdp由一个元组(s,a,p,r,γ)表示,其中,状态空间用s表示,包含了用户业务,终端到不同基站的距离,不同网络中不同业务的用户数;动作空间用a表示,它对应将用户分配给不同网络;状态转移概率函数用p(s,a,s')=p[st+1=s'|st=s,at=a]表示,状态转移概率是由单位时间内断开连接的用户数的决定的,在单位时间中,用户的离开个数是随机的;在行动a下,从状态s过渡到状态s'的直接奖励用r(s,a,s')表示;γ表示用来计算未来的奖励折算到现在的价值,γ∈[0,1)。

对语音业务而言,若所选网络与业务属性和终端移动性相匹配则频谱效用最大,否则便较小;对于数据业务不仅要考虑以上匹配性,还要根据终端到两个基站的不同距离保证终端所选择的动作能获得的带宽最大,此时称频谱效用最大,否则便较小;因此频谱效用的定义因业务不同而不同,对于语音业务和数据业务的频谱效用定义如下:

其中,sud表示数据业务,suy表示语音业务,ηser表示业务属性与网络的匹配系数,ηmob表示移动性与网络的匹配系数,b表示终端接入网络时所获得的带宽与ηser和ηmob在大小上平衡之后的带宽因子:

b=b/150

其中b表示终端接入网络时所获得带宽,150kbps表示数据业务的最小带宽,即小于该最小带宽,本次呼叫将被阻塞,回报函数可以定义为:

状态由用户业务,终端到不同网络基站的距离,不同终端不同业务的用户数构成,由于考虑了终端到基站的距离,状态空间为一个连续空间,因此借助dqn,可以处理连续大规模的状态空间。

进一步的,所述步骤9具体为,如图3所示,神经网络的输入是状态s,而输出是每个动作的q值,θ表示神经网络参数,则θ下的作用值函数可用q(s,a;θ)表示,dqn最小化损失函数定义为:

反向传播的更新公式定义为:

式中,是q的梯度;

使用按时间顺序生成的数据<s0,a0,r1,s1,…st,at,rt+1,st+1>,则输入数据之间的相关性很高,这将影响神经网络的性能,在这种情况下,可以使用经验重放来打破数据之间的相关性。网络选择可分为经验元组(s,a,r,s'),如图3所示,经验元组存储在回放存储器中,用db表示,然后,对神经网络的训练数据进行均匀随机的db采样,通常,db只能存储最后m个经验元组。

为了进一步降低输入数据之间的相关性,建立了一个目标网络来处理td误差,如图3所示,用于计算目标的网络参数θ与动作值函数q(s,a;θ)相同,增加q(s,a;θ)的更新也会增加q(s',a';θ)的更新,因此带来相关性,并可能导致政策的振荡或发散;为了进一步降低相关性,dqn使用单独的网络生成目标,其网络参数用θ-表示;每经过nu步网络q的参数会被克隆到目标网络网络参数更新为:

进一步的,所述步骤8具体为,网络参数更新后再进行迭代,迭代轮数表示为t,状态特征维度表示为n,动作空间用a表示,步长表示为α,衰减因子表示为γ,探索率表示为∈,当前q网络表示为q,目标q网络表表示为q′,批量梯度下降的样数表示为m,目标q网络参数更新频率表示为c;

目标q网络参数更新通过如下步骤实现:

步骤8.1:随机初始化所有的状态和动作对应的q值;

步骤8.2:通过q值选择合适动作,反复与环境进行交互,再去更新整个网络;

根据权利要求8所述的异构网络选择方法,其特征在于,所述步骤8.2具体为:

步骤8.2.1:将当前网络状态,包括不同网络中不同业务的用户个数,待接入网络用户需要的业务,待接入用户到达不同网络基站的距离,获得到其向量s;

步骤8.2.2:在q网络中使用s作为输入,得到q网络的所有动作对应的q值输出。用∈-贪婪法在当前q值输出中选择对应的动作a;

步骤8.2.3:在状态s当前动作a得到新状态对应的特征向量s′和奖励r;

步骤8.2.4:将{s,a,r,s'}这个四元组存入经验回放集合d;

步骤8.2.5:令s=s′;

步骤8.2.6:从经验回放集合d中采样m个样本{sj,aj,rj,s'j},j=1,2…m,计算当前目标q值yj时:yj=rj+γmaxa'q(φ(s'j),a'j,θ),

式中maxa'q(s'j,a'j,θ)为下一个状态对应的最大的q值;

步骤8.2.7:使用均方差损失函数通过神经网络的梯度反向传播来更新q网络的所有参数;

步骤8.2.8:若t%nu=1,则更新目标q网络参数θ-=θ,式中,nu为目标q网络参数更新的周期。

实施例2

假设整个重叠覆盖小区的会话到达率服从参数为λ0=800h-1泊松分布,语音和数据业务在其中均匀分布。语音业务的会话持续时间服从参数为1/μ1=120s的指数分布,数据业务所要下载的数据的大小服从参数为1/μ2=8mb的指数分布,数据业务的最小速率设定为150kbps,若这个速率达不到,该会话将被阻塞。

图4是学习前后两种业务在两个网络的分布情况。可以很明显地看出,在仿真的初始阶段,两种业务在两个网络基本是平均分配的,这显然不是想要的结果,但是学习到最后,语音业务多数选择接入到pdt而数据业务则多数选择接入到b-trunc,这正好与b-trunc网络适合于数据业务而pdt网络适合于语音业务的属性相吻合,是想要达到的效果。

图5是学习前后两种移动性用户在两个网络的分布情况。可以明显地看出在学习的初始阶段两个网络的两种用户数基本是平均分布,但是随着学习的进行,使得选择动作的最佳策略不断调整,使用b-trunc的用户中静止终端用户数多于移动终端用户数,使用pdt的用户中移动用户数多于静止终端用户数。但由于b-trunc网络带宽的优势导致更多的用户倾向于选择b-trunc,因此无论是用户移动状态还是用户静止状态,b-trunc的网络接入数都要大于pdt的网络接入数。

图6是区分终端在网络所处位置与不区分的情况下,小区的会话阻塞率变化情况。前期迭代过程,不区分终端网络所在位置的阻塞率收敛较快是因为不考虑终端所在位置相当于神经网络的输入层少了两个参数,这导致神经网络相较于考虑终端所在位置的收敛较快。随着迭代次数增加,当区分终端在网络所处位置时,阻塞率能够收敛到较小的状态,不区分终端在网络所处位置时虽然也会有所收敛,但是阻塞率始终要比区分终端位置的情况大。这是因为位置不同,终端到网络基站的距离不同,由于路径损耗的原因造成每个网络所能提供的最大吞吐量也就不同,所以若不考虑距离的不同,所有终端都按照基站中心的最大吞吐量来计算各自所能获得的最大带宽显然是不符合实际的。

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