基于深度Q学习的认知无线传感器网络频谱接入方法转让专利

申请号 : CN201910338362.4

文献号 : CN110190918B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 覃团发盘小娜胡永乐沈湘平官倩宁罗剑涛李金泽任君玉陈海强

申请人 : 广西大学润建股份有限公司

摘要 :

本发明公开了一种基于深度Q学习的认知无线传感器网络频谱接入方法,包括:步骤一、构建Q神经网络:以t‑2时隙的所有信道的状态值为输入层,以t‑1时隙的所有信道的q值为输出层,选择训练样本以更新Q神经网络的权重参数;获取t‑1时隙以前的经验样本并计算优先级,根据优先级累计求和二叉树排列,抽样得到训练样本;步骤二、以t‑1时隙的所有信道的状态值为输入层,输入至Q神经网络,得到t时隙的所有信道的q值,选取最大的q值对应的信道;步骤三、对该信道能量感知,若状态值为“闲”则接入,若状态值为“忙”则不接入。本发明具有能量消耗低、收敛速度快、避免经验样本多样性丧失、避免产生过拟合现象、预测准确性高的有益效果。

权利要求 :

1.基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,包括:步骤一、构建Q神经网络:以经验样本中t‑2时隙的所有信道的状态值为输入层,以t‑1时隙的所有信道的q值为输出层,选择训练样本以更新Q神经网络的权重参数,其中,状态值为信道处于“忙”或“闲”的状态的分值,q值表示信道的状态的预测分值;

其中,选择训练样本的具体方法为:获取t‑1时隙以前的经验样本,并计算优先级,根据经验样本的优先级进行累计求和二叉树排列,然后抽样得到训练样本;

每个经验样本记录上一时隙的所有信道的状态值、下一时隙的所有信道的回报值、下一时隙的所有信道的q值;

回报值,为对下一时隙选取的信道进行能量感知,若状态值为“闲”,则为吞吐量,若状态值为“忙”,则为0;

优先级的计算方法为:

优先级为经验样本的时序误差的绝对值与修正常数的和,时序误差为目标q值与经验样本的最大q值的差值,其中,修正常数为正数;

目标q值的计算方法为:设置循环周期T,如果经验样本对应的时隙是T的最后一个时隙,则目标q值为该经验样本的回报值;

如果经验样本对应的时隙不是T的最后一个时隙,则目标q值为经验样本的回报值与γ倍的时隙q值的和,时隙q值为以经验样本的状态值为输入值,输入至前一个循环周期的最后一个时隙的Q神经网络的其中一个信道的q值,该信道为经验样本中的最大q值对应的信道;

步骤二、以t‑1时隙的经验样本中的所有信道的状态值为输入层,输入至Q神经网络,得到t时隙的所有信道的q值,选取最大的q值对应的信道;

步骤三、对选取的信道进行能量感知,若状态值为“闲”,则接入,若状态值为“忙”,则不接入。

2.如权利要求1所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,抽样的具体方法为:

根据需要抽取的样本的数量m,将所有经验样本的最顶层的优先级和N,均匀分成m个区间,在每个区间均随机选出一个数字e,从最顶层的优先级和开始,与该优先级和的左边的儿子节点的优先级和进行比较,

如果选出的数字e小于该儿子节点的优先级和,则沿该儿子节点向下一层比较;

如果选出的数字e不小于该儿子节点的优先级和,则用该数字e减掉该儿子节点的优先级和后,沿右边的儿子节点向下一层比较;

直到得到最底层的优先级,该优先级对应的经验样本即为抽取的经验样本。

3.如权利要求1所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,还包括:当t为T的最后一个时隙时,更新t时隙以前的所有经验样本的优先级,具体方法为:

以经验样本的状态值为输入值,输入至t‑1时隙的Q神经网络,得到所有信道的q值,选取最大的q值对应的信道,在经验样本中读取该信道对应的回报值,该回报值与q值的差加上修正常数的结果即为该经验样本的优先级。

4.如权利要求1所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,还包括经验样本的删除,具体方法为:当储存的经验样本的数量大于储存阈值时,则将储存的经验样本的优先级与设置的删除阈值比较,如果优先级低于删除阈值,则删除该优先级对应的经验样本。

5.如权利要求4所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,所述删除阈值的设置方法具体为:从0~1中随机选取一个数值,用该数值乘以最顶层的优先级和,除以经验样本的数量,即得删除阈值。

6.如权利要求4所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,设置数量阈值,

如果优先级低于删除阈值的经验样本的数量高于数量阈值,则从所有优先级低于删除阈值的经验样本中随机选择数量阈值个经验样本,删除;

如果优先级低于删除阈值的经验样本的数量不高于数量阈值,则删除所有优先级低于删除阈值的经验样本。

7.如权利要求1所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,在得到Q值后,选取信道的方法具体为:设置选择阈值,从0~1中随机选取一个数值,如果这个数值大于选择阈值,则采用贪婪算法选取最大的q值,选取最大的q值对应的信道;

如果这个数值不大于选择阈值,则不选取最大的q值对应的信道,而是从所有信道中随机选取一个信道。

8.如权利要求1所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,输入层还包括质量值,质量值为所有信道的上一时隙的信噪比;

输出层还包括所有信道在下一时隙的质量的预测分值;

每个经验样本还记录下一时隙的质量值。

9.如权利要求1所述的基于深度Q学习的认知无线传感器网络频谱接入方法,其特征在于,采用能量感知方法获取选出的信道的信噪比。

说明书 :

基于深度Q学习的认知无线传感器网络频谱接入方法

技术领域

[0001] 本发明涉及认知无线传感器网络领域。更具体地说,本发明涉及一种基于深度Q学习的认知无线传感器网络频谱接入方法。

背景技术

[0002] 相较于传统的移动通信主要解决人与人通信问题,第五代移动通信5G更加关注物与物、人与物的通信。随着5G技术的发展,以智慧城市、智慧工厂、智慧家居等为代表的物联
网场景与移动通信深度融合,预计接入5G网络的设备将达到千亿数量级以上。无线传感器
网络(WSN)作为物联网感知层的重要组成网络,其网络节点接入移动网络目前通常只能使
用的2.4G频段附近的免费频段,设备用户数量的海量式增长与有限的频谱资源的矛盾日益
凸显。第五代移动通信对频谱的利用率提出了更高的要求。5G的核心技术标准要求其频谱
效率相比于IMT‑A提升3倍以上。而认知无线电技术(CR)在频谱利用率方面有巨大的改善作
用,首次提出就引起了人们的广泛关注,这对于支持更高的数据速率以及容纳海量用户至
关重要。因此,认知无线传感器网络(CWSN)将认知无线电技术与WSN结合,允许大量的传感
器节点作为次级用户(SU),在不干扰拥有授权频谱的主用户(PU)的正常通信的情况下,伺
机接入PU的空闲频谱进行通信,能有效地解决传统WSN网络的频谱资源稀缺问题。
[0003] 动态频谱接入(DSA)是认知无线传感器网络的关键技术之一,其任务是根据认知传感器节点的频谱感知数据做出决策,即调整自身参数(如发射功率)接入某个已授权给PU
的空闲频谱,其的目标是使SU通信网络的吞吐量最大化,同时将对PU造成的干扰保持在指
定的阈值以下。为了实现DSA,SU必须在未知的电磁环境中具备自主学习的能力,即通过与
无线电环境的反复交互来学习PU的使用行为,这种机制完全符合强化学习框架。Q学习是最
流行的强化学习算法之一,它通过与环境交互获得即时回报反馈来学习动作值(也称为Q
值)函数。一方面,Q学习的过程需要大量的资源来计算和存储状态‑动作值,导致不必要计
算和内存资源的浪费,特别是当信道数量很大时。另一方面,函数由于Q学习是一种渐进的
优化过程,它常常存在收敛速度慢的缺点,导致难以找到解决问题的动作选择,因此,神经
网络可以用来弥补Q学习的局限性,包括泛化能力和函数逼近能力。深度Q网络(DQN)是一类
新兴的深度强化学习算法,能够将强化学习的过程与神经网络相结合,采用神经网络作为
动作值函数逼近器,并且利用一种称为“经验回放”的技术来提高学习性能。
[0004] 然而,传统的DSA方案中,由于状态空间大、状态的局部可观测性,获得最优解的计算量一般很高。而传感器网络要求低能耗,大多数基于深度学习的DSA算法中并没有考虑能
耗的问题。而发明的提出的是一种基于优先经验的深度Q学习频谱接入技术,通过利用更高
可靠的经验,并对记忆库中不必要的经验样本采用非排序的基于阈值的删除方式,以提高
收敛速度并减少传感器节点因学习而消耗的能量。

发明内容

[0005] 本发明的一个目的是解决至少上述问题,并提供至少后面将说明的优点。
[0006] 本发明还有一个目的是提供一种基于深度Q学习的认知无线传感器网络频谱接入方法,能量消耗低、收敛速度快、避免经验样本多样性丧失、避免产生过拟合现象、预测准确
性高。
[0007] 为了实现根据本发明的这些目的和其它优点,提供了一种基于深度Q学习的认知无线传感器网络频谱接入方法,包括:
[0008] 步骤一、构建Q神经网络:以经验样本中t‑2时隙的所有信道的状态值为输入层,以t‑1时隙的所有信道的q值为输出层,选择训练样本以更新Q神经网络的权重参数,其中,状
态值为信道处于“忙”或“闲”的状态的分值,q值表示信道的状态的预测分值;
[0009] 其中,选择训练样本的具体方法为:
[0010] 获取t‑1时隙以前的经验样本,并计算优先级,根据经验样本的优先级进行累计求和二叉树排列,然后抽样得到训练样本;
[0011] 每个经验样本记录上一时隙的所有信道的状态值、下一时隙的所有信道的回报值、下一时隙的所有信道的q值;
[0012] 回报值,为对下一时隙选取的信道进行能量感知,若状态值为“闲”,则为吞吐量,若状态值为“忙”,则为0;
[0013] 优先级的计算方法为:
[0014] 优先级为经验样本的时序误差的绝对值与修正常数的和,时序误差为目标q值与经验样本的最大q值的差值,其中,修正常数为正数;
[0015] 目标q值的计算方法为:设置循环周期T,
[0016] 如果经验样本对应的时隙是T的最后一个时隙,则目标q值为该经验样本的回报值;
[0017] 如果经验样本对应的时隙不是T的最后一个时隙,则目标q值为经验样本的回报值与γ倍的时隙q值的和,时隙q值为以经验样本的状态值为输入值,输入至前一个循环周期
的最后一个时隙的Q神经网络的其中一个信道的q值,该信道为经验样本中的最大q值对应
的信道;
[0018] 步骤二、以t‑1时隙的经验样本中的所有信道的状态值为输入层,输入至Q神经网络,得到t时隙的所有信道的q值,选取最大的q值对应的信道;
[0019] 步骤三、对选取的信道进行能量感知,若状态值为“闲”,则接入,若状态值为“忙”,则不接入。
[0020] 优选的是,抽样的具体方法为:
[0021] 根据需要抽取的样本的数量m,将所有经验样本的最顶层的优先级和N,均匀分成m个区间,在每个区间均随机选出一个数字e,从最顶层的优先级和开始,与该优先级和的左
边的儿子节点的优先级和进行比较,
[0022] 如果选出的数字e小于该儿子节点的优先级和,则沿该儿子节点向下一层比较;
[0023] 如果选出的数字e不小于该儿子节点的优先级和,则用该数字e减掉该儿子节点的优先级和后,沿右边的儿子节点向下一层比较;
[0024] 直到得到最底层的优先级,该优先级对应的经验样本即为抽取的经验样本。
[0025] 优选的是,还包括:当t为T的最后一个时隙时,更新t时隙以前的所有经验样本的优先级,具体方法为:
[0026] 以经验样本的状态值为输入值,输入至t‑1时隙的Q神经网络,得到所有信道的q值,选取最大的q值对应的信道,在经验样本中读取该信道对应的回报值,该回报值与q值的
差加上修正常数的结果即为该经验样本的优先级。
[0027] 优选的是,还包括经验样本的删除,具体方法为:
[0028] 当储存的经验样本的数量大于储存阈值时,则将储存的经验样本的优先级与设置的删除阈值比较,如果优先级低于删除阈值,则删除该优先级对应的经验样本。
[0029] 优选的是,所述删除阈值的设置方法具体为:从0~1中随机选取一个数值,用该数值乘以最顶层的优先级和,除以经验样本的数量,即得删除阈值。
[0030] 优选的是,设置数量阈值,
[0031] 如果优先级低于删除阈值的经验样本的数量高于数量阈值,则从所有优先级低于删除阈值的经验样本中随机选择数量阈值个经验样本,删除;
[0032] 如果优先级低于删除阈值的经验样本的数量不高于数量阈值,则删除所有优先级低于删除阈值的经验样本。
[0033] 优选的是,在得到Q值后,选取信道的方法具体为:设置选择阈值,从0~1中随机选取一个数值,
[0034] 如果这个数值大于选择阈值,则采用贪婪算法选取最大的q值,选取最大的q值对应的信道;
[0035] 如果这个数值不大于选择阈值,则不选取最大的q值对应的信道,而是从所有信道中随机选取一个信道。
[0036] 优选的是,输入层还包括质量值,质量值为所有信道的上一时隙的信噪比;
[0037] 输出层还包括所有信道在下一时隙的质量的预测分值;
[0038] 每个经验样本还记录下一时隙的质量值。
[0039] 优选的是,采用能量感知方法获取选出的信道的信噪比。
[0040] 本发明至少包括以下有益效果:
[0041] 第一、本发明的网络频谱接入方法,能量消耗低、收敛速度快、避免经验样本多样性丧失、避免产生过拟合现象、预测准确性高。
[0042] 第二、以基于累积求和的二叉树结构作为经经验样本的存储结构,储存于记忆库,通过设置与目标q值相关的优先级,抽取优先级高的样本,以训练Q神经网络,以更新Q神经
网络的权重参数,使Q神经网络预测更准确,即对其推荐出的信道进行能量感知,结果为闲
的状态的准确性更高,避免了传统频谱盲目接入方式的效率不高的问题,提高了网络的频
谱接入效率,方便接入频谱,顺利进行通讯。
[0043] 第二、采用基于累积求和的二叉树结构作为经经验样本的存储结构,储存于记忆库。如图1所示,每一个底层的叶子节点存储一个样本的数据及优先级,而其余节点不存储
样本数据,只存储儿子节点的样本优先级的求和结果。叶子节点的区间越长,表示其优先级
越高。记忆库的经验优先性的定义对DQN(深度Q网络)的学习性能的影响至关重要。采用经
验样本的优先级定义为将经验样本优先级正比于经验样本的时序误差(TD)的绝对值|δ|。
其中,TD为目标q值和当前经验样本的q值之间的差距。若TD越大,则表示预测精度上升空间
越大,越值得学习。若算法优先回放TD较大的样本,则算法更容易收敛,预测更准确。然而,
某些TD较大的样本重放次数过于频繁,又会造成样本多样性的丧失,产生过拟合的现象。因
此,为了使TD=0的特殊边缘的经验样本也能够有机会回放,引入一个很小的大于0的常数
Cpriority以修正TD。
[0044] 第三、传统DQN一般都在目标q值中搜索最大值,并使用这个最大q值来选择和计算,该方法虽然能使Q神经网络值更迅速地接近可能的优化目标,但是更有可能选择过高的
值,导致过度乐观的值估计,本技术方案中采用如果经验样本对应的时隙不是T的最后一个
时隙,则目标q值为经验样本的回报值与γ倍的时隙q值的和,从而减少过度乐观估计的程
度。
[0045] 本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。

附图说明

[0046] 图1为本发明的抽样方法的举例说明示意图;
[0047] 图2为本发明的其中一个实施例的PU信道流量模型和PU信道质量模型;
[0048] 图3为本发明的其中一个实施例的PU信道流量模型和PU信道质量模型;
[0049] 图4为本发明的其中一个实施例的算法流程图。

具体实施方式

[0050] 下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
[0051] 本发明提供一种基于深度Q学习的认知无线传感器网络频谱接入方法,包括:
[0052] 步骤一、构建Q神经网络:以经验样本中t‑2时隙的所有信道的状态值为输入层,以t‑1时隙的所有信道的q值为输出层,选择训练样本以更新Q神经网络的权重参数,其中,状
态值为信道处于“忙”或“闲”的状态的分值,q值表示信道的状态的预测分值;
[0053] 其中,选择训练样本的具体方法为:
[0054] 获取t‑1时隙以前的经验样本,并计算优先级,根据经验样本的优先级进行累计求和二叉树排列,然后抽样得到训练样本;
[0055] 每个经验样本记录上一时隙的所有信道的状态值、下一时隙的所有信道的回报值、下一时隙的所有信道的q值;
[0056] 回报值,为对下一时隙选取的信道进行能量感知,若状态值为“闲”,则为吞吐量,若状态值为“忙”,则为0;
[0057] 优先级的计算方法为:
[0058] 优先级为经验样本的时序误差的绝对值与修正常数的和,时序误差为目标q值与经验样本的最大q值的差值,其中,修正常数为正数;
[0059] 目标q值的计算方法为:设置循环周期T,
[0060] 如果经验样本对应的时隙是T的最后一个时隙,则目标q值为该经验样本的回报值;
[0061] 如果经验样本对应的时隙不是T的最后一个时隙,则目标q值为经验样本的回报值与γ倍的时隙q值的和,时隙q值为以经验样本的状态值为输入值,输入至前一个循环周期
的最后一个时隙的Q神经网络的其中一个信道的q值,该信道为经验样本中的最大q值对应
的信道;
[0062] 步骤二、以t‑1时隙的经验样本中的所有信道的状态值为输入层,输入至Q神经网络,得到t时隙的所有信道的q值,选取最大的q值对应的信道;
[0063] 步骤三、对选取的信道进行能量感知,若状态值为“闲”,则接入,若状态值为“忙”,则不接入。
[0064] 在上述技术方案中,以基于累积求和的二叉树结构作为经经验样本的存储结构,储存于记忆库,通过设置与目标q值相关的优先级,抽取优先级高的样本,以训练Q神经网
络,以更新Q神经网络的权重参数,使Q神经网络预测更准确,即对其推荐出的信道进行能量
感知,结果为闲的状态的准确性更高,方便接入频谱,顺利进行通讯。
[0065] 本技术方案采用基于累积求和的二叉树结构作为经经验样本的存储结构,储存于记忆库。如图1所示,每一个底层的叶子节点存储一个样本的数据及优先级,而其余节点不
存储样本数据,只存储儿子节点的样本优先级的求和结果。叶子节点的区间越长,表示其优
先级越高。记忆库的经验优先性的定义对DQN(深度Q网络)的学习性能的影响至关重要。采
用经验样本的优先级定义为将经验样本优先级正比于经验样本的时序误差(TD)的绝对值|
δ|。其中,TD为目标q值和当前经验样本的q值之间的差距。若TD越大,则表示预测精度上升
空间越大,越值得学习。若算法优先回放TD较大的样本,则算法更容易收敛,预测更准确。然
而,某些TD较大的样本重放次数过于频繁,又会造成样本多样性的丧失,产生过拟合的现
象。因此,为了使TD=0的特殊边缘的经验样本也能够有机会回放,引入一个很小的大于0的
常数Cpriority以修正TD。
[0066] 另外传统DQN一般都在目标q值中搜索最大值,并使用这个最大q值来选择和计算,该方法虽然能使Q神经网络值更迅速地接近可能的优化目标,但是更有可能选择过高的值,
导致过度乐观的值估计,本技术方案中采用如果经验样本对应的时隙不是T的最后一个时
隙,则目标q值为经验样本的回报值与γ倍的时隙q值的和,从而减少过度乐观估计的程度。
本技术方案充分利用了更高可靠的经验样本,减少了计算量,提高了收敛速度,保证了预测
信道的准确性,避免了样本多样性的丧失,避免产生过拟合的现象。
[0067] 在另一种技术方案中,抽样的具体方法为:
[0068] 根据需要抽取的样本的数量m,将所有经验样本的最顶层的优先级和N,均匀分成m个区间,在每个区间均随机选出一个数字e,从最顶层的优先级和开始,与该优先级和的左
边的儿子节点的优先级和进行比较,
[0069] 如果选出的数字e小于该儿子节点的优先级和,则沿该儿子节点向下一层比较;
[0070] 如果选出的数字e不小于该儿子节点的优先级和,则用该数字e减掉该儿子节点的优先级和后,沿右边的儿子节点向下一层比较;
[0071] 直到得到最底层的优先级,该优先级对应的经验样本即为抽取的经验样本。以保证抽取经验样本的均匀性和抽取出TD值大的经验样本,提高Q神经网络的收敛速度,保证预
测信道的准确性。
[0072] 如图1所示出的,如果将所有经验样本的优先级加起来是42的话,我们如果抽6个经验样本,首先将[0,42]均匀分为6个区间,[0‑7],[7‑14],[14‑21],[21‑28],[28‑35],
[35‑42],然后在每个区间里随机选取一个数,比如在区间[21‑28]里选到了24,就按照这个
24从最顶上的42开始向下搜索,首先看到最顶上42下面有两个儿子节点,拿24对比左边的
儿子节点29,如果左边的儿子节点比24的值大,那走左边这条路,即左边的儿子节点,接着
再对比29下面的左边那个点13,这时,24比13大,那就走右边的路,即29的右边的儿子节点,
并且将24根据13修正,变成24‑13=11,接着拿11和16的左边的儿子节点12比较,结果12比
11大,12为最底层,再无儿子节点,因此,选取该优先级12对应的经验样本,从复上述方法,
抽取出6个经验样本。
[0073] 在另一种技术方案中,还包括:当t为T的最后一个时隙时,更新t时隙以前的所有经验样本的优先级,具体方法为:
[0074] 以经验样本的状态值为输入值,输入至t‑1时隙的Q神经网络,得到所有信道的q值,选取最大的q值对应的信道,在经验样本中读取该信道对应的回报值,该回报值与修正
常数的和即为该经验样本的优先级。
[0075] 随着循环周期的增加,所有信道的经验样本中的状态值和回报值不断更新,Q神经网络的权重参数更加准确,重新更新经验样本的优先级,可以更准确的表示经验样本的与
目标q值的差距,优先级的更新,影响经验样本的抽取,从而影响Q神经网络的权重参数的更
新,从而间接提高Q神经网络对信道预测的准确性。
[0076] 传统DQN中每个时隙都需要消耗大量的能量更新记忆库中的经验样本的优先级,而本技术方案采取在一个循环周期的最后一个时隙更新优先级,既能保证预测精度,又能
减少计算量。
[0077] 在另一种技术方案中,还包括经验样本的删除,具体方法为:
[0078] 当储存的经验样本的数量大于储存阈值时,则将储存的经验样本的优先级与设置的删除阈值比较,如果优先级低于删除阈值,则删除该优先级对应的经验样本。
[0079] 在上述技术方案中,设记忆库存储样本最大总量为M,通常情况下,当记忆库中存储的样本已达到最大值M时,每一个时隙都会进行一次样本的最小值的寻找、样本的删除及
插入工作,消耗大量的能量。为了减少DQN中的维护记忆库所消耗的开销,本技术方案提出
非排序的批量删除经验样本的维护方式,当记忆库中实际存储样本的数量n达到M时,优先
级的低于删除阈值的经验样本将被删除,而具有较高优先级的经验样本可以保留。在样本
数量n没有到达M的时隙中,只需要将样本插入记忆库,而无需执行删除操作。
[0080] 在另一种技术方案中,所述删除阈值的设置方法具体为:从0~1中随机选取一个数值,用该数值乘以最顶层的优先级和,除以经验样本的数量,即得删除阈值。
[0081] 在上述技术方案中,删除阈值的设定影响着记忆库的性能,若删除阈值设定过高,删除的经验样本数量大,则有可能提高被抽取经验样本的相关性,若删除样经验本过少,则
无法有效地节约删除步骤所消耗的能量,因此,本文采用随机的方式设定删除阈值。
[0082] 在另一种技术方案中,设置数量阈值,
[0083] 如果优先级低于删除阈值的经验样本的数量高于数量阈值,则从所有优先级低于删除阈值的经验样本中随机选择数量阈值个经验样本,删除;
[0084] 如果优先级低于删除阈值的经验样本的数量不高于数量阈值,则删除所有优先级低于删除阈值的经验样本。避免单次删除经验样本的数量过多,而影响经验样本的多样性。
[0085] 在另一种技术方案中,在得到Q值后,选取信道的方法具体为:设置选择阈值,从0~1中随机选取一个数值,
[0086] 如果这个数值大于选择阈值,则采用贪婪算法选取最大的q值,选取最大的q值对应的信道;
[0087] 如果这个数值不大于选择阈值,则不选取最大的q值对应的信道,而是从所有信道中随机选取一个信道。
[0088] 在上述技术方案中,可以避免一些由于Q神经网络预测错误,一些信道的状态值实际上为闲而被预测为忙,而一直无法被选取,采用上述方法后,可以避免遗漏闲的信道。
[0089] 在另一种技术方案中,输入层还包括质量值,质量值为所有信道的上一时隙的信噪比;输出层还包括所有信道在下一时隙的质量的预测分值;每个经验样本还记录下一时
隙的质量值。
[0090] 在上述技术方案中,对信道状态进行建模,将模拟的信道状态数字化。对频谱状态进行预测时,不仅仅预测信道的“忙”与“闲”,同时也能预测信道的“好”与“坏”。信道的模型
包括信道流量模型及信道质量模型。将每个信道的流量模型建模为0(闲)或1(忙),信道质
量模型建模为0(好)或1(坏)。因此,信道状态分为4种:00(信道闲且质量好)、01(信道闲但
质量坏)、10(信道忙但质量好)及11(信道忙且质量差)。其中,优先级最高的状态为00,其次
是01,10及11状态不可用。假设N个信道流量模型及质量模型的变化过程相互独立,并且分
别是按照N个独立的2状态马尔可夫链演化的。
[0091] 在进行信道推荐时,可以同时预测信道的闲、忙,信噪比大小,从而优先推荐信道闲且质量好的,提高频谱接入后的通讯质量。
[0092] 在另一种技术方案中,采用能量感知方法获取选出的信道的信噪比。在进行信道的能量感知感觉到信道的闲忙时,同时进行信噪比的感知,从而不会对整个接入方法增加
过多操作,又能提高信道的推荐质量。
[0093] <实施例>
[0094] 假设无线传感器网络具有1个SU节点及N个PU节点,其中SU节点采取按时隙工作的模式,利用频谱接入技术共享PU用户的无线授权信道。在每个时隙中,SU执行频谱感知取信
道的能量数据,然后根据获取的数据判断信道的状态并接入信道进行数据传输。噪声是服
2
从有零均值和方差σn的正态分布。在此设定下,SU可以通过主动学习来推断信道状态信息。
[0095] 1、算法的描述
[0096] 已知的参数有:持续的时隙数量T,认知网络中PU用户的授权信道数量N,目标q值计算的权重参数更新频率F,计算目标q值的网络命名为TargetNet,记忆库的二叉树叶子节
点数M,抽取小批量的样本数m。算法流程如下:
[0097] 步骤1:设置两个神经网络,一个Q神经网络为当前网络,不断地更新神经网络参数,记为MainNet,另一个网络用于更新目标q值的目标Q网络,记为TargetNet。使用随机权
重θ初始化MainNet,使用θtar=θ更新TargetNet。设置SU节点的动作A={0,1,2,…,N}。对于
SU节点的一个动作a∈A,若a≥1,则SU接入信道a,若a=0,则等待。
[0098] 步骤2:对信道状态进行建模,将模拟的信道状态数字化。本实施例对频谱状态进行预测时,不仅仅预测信道的“忙”与“闲”,同时也能预测信道的“好”与“坏”。信道的模型包
括信道流量模型及信道质量模型。本文将每个信道的质量模型建模为0(好)或1(坏),信道
流量模型建模为0(空闲)或1(已占用)。因此,本文的信道状态分为4种:00(信道质量好且空
闲)、01(信道质量好但已被占用)、10(信道空闲但是质量差)及11(信道质量差且已占用)。
其中,对SU节点来说,优先级最高的状态为00,其次是10,01及11状态不可用。
[0099] 假设N个信道流量模型及质量模型的变化过程相互独立,并且分别是按照N个独立的2状态马尔可夫链演化的。图2和图3表示了每个信道质量模型和流量模型的马尔可夫链
的状态转移。对于1≤i≤N,令st(i)表示信道i在时隙t的流量及质量状态。用4×4概率矩阵
描述每个信道i的状态转移概率。
[0100]
[0101] 其中Pi(u|v),对于(u,v)∈{00,01,10,11}2,表示为:
[0102]
[0103] 步骤3:随机初始化所有信道的状态
[0104] s1={s1(1),s1(2),s1(3),…s1(N)},s1(i)∈·{00,01,10,11}。设置当前时隙t指向第一个时隙,即t=1。
[0105] 步骤4:将信道状态向量st作为Q神经网络的输入,得到MainNet的所有SU节点动作对应的q值输出Q(st,A;θ)。根据MainNet输出的Q(st,A;θ)值及∈‑贪婪算法选择最优的动作
at。若rand(0,1)<∈a,在SU动作集A中随机选择at,否则at=argmaxa∈AQ(st,a;θ)。∈a为(0,1)
的一个常数,本实施例假设∈a=0.2。
[0106] 步骤5:SU节点对信道at进行能量感知。SU在Ts时间内对信道at的信号进行Bs次采样,X(j)表示第j次SU检测信道的结果,H(j)表示信道增益,Signal(j)表示PU信号,Noise
(j)表示噪声,信道流量状态应表示为:
[0107]
[0108] SU根据 的值及能量判决门限λ判定PU信道是否已被占用:若T(X)≥λ,PU信道已被占用,若T(X)<λ,信道空闲。获取信道的信噪比SNR,若|SNR|≥λsnr,判定
信道的质量为优,若|SNR|<λsnr,判定信道的质量为差。
[0109] 步骤6:根据步骤5的感知结果执行接入或者不接入信道,并更新信道状态,获得立即回报。若信道状态为信道质量优且已被占用或者信道质量差且已占用,SU不接入信道,更
新st+1(at)=01或者st+1(at)=11,获得的回报rt=0。若信道状态为质量优且空闲或者信道
空闲但是质量差这两种状态时,则SU接入信道,并更新信道at的状态st+1(at)=00或者st+1
(at)=10,获得回报rt为数据传输所获得的吞吐量。假设SU节点在一个时隙内感知信道所使
用的时间为Ts为,一个时隙内SU节点可接入信道进行通信的时间为Tc。则一个时隙内的吞吐
量表示为:
[0110] Rthroughput(s,a)=CiIiTc/(Ts+Tc)
[0111] 其中,Ci为信道i的信道容量,根据香农公式有:
[0112] Ci=Bilog(1+SNRi)
[0113] 其中,Bi表示信道i的带宽,SNRi表示信道i中传输信噪比。Ii为SU根据能量感知方案检测信道i是否被占用的感知结果,Ii∈{0,1}。若SU感知信道i已经被占用则Ii=0,否则
Ii=1。若信道i的忙碌概率ηi越大,Ii=1的概率越小。Ii的取值不仅仅与信道i的忙碌概率ηi
有关,还与能量感知方案的虚警概率Pf有关。虚警概率是指当信道i为空闲时SU误判为信道
为已占用的概率,其表达式为:
[0114]
[0115] 其中,λ表示能量感知方案的能量检测阈值, 为噪声方差。fs为采样频率,因此,Ii取1值的概率可表示为:
[0116]
[0117] 综上所述,将SU在一个时隙内的吞吐量作为回报值,既考虑了信道的带宽Bi、信噪比SNRi、负载量ηi,又考虑了感知过程中的虚警概率Pf等变量。因此,时隙t的回报函数r:S×
A→R可表示为:
[0118]
[0119] 步骤7:若t=T,则设置参数END(t)=1,否则END(t)=0。
[0120] 步骤8:将经验样本{st,at,rt,st+1,END(t)}保存到记忆库中。
[0121] 本文采用一种基于累积求和的二叉树结构作为记忆库的存储结构。如图3所示,每一个底层的叶子节点存储一个样本的数据及优先级,而其余节点不存储样本数据,只存储
儿子节点的样本优先级的求和结果。叶子节点的区间越长,表示其优先级越高。记忆库的经
验优先性的定义对DQN的学习性能的影响至关重要。一种经常使用的经验优先级定义方法
是将样本优先级正比于样本的时序误差(TD)的绝对值|δ|。其中,TD误差为目标Q网络计算
的目标Q值和当前Q网络计算的Q值之间的差距。若|δ|越大,则表示预测精度上升空间越大,
越值得学习。若算法优先回放|δ|较大的样本,则算法更容易收敛。然而,某些|δ|较大的样
本重放次数过于频繁,会造成样本多样性的丧失,产生过拟合的现象。因此,为了使|δ|较小
或者|δ|=0的特殊边缘的经验也能够有机会回放,引入一个很小的大于O的常数Cpriority以
修正|δ|,该方法称为基于比例的排序方法。令记忆库中样本k的TD误差绝对值为|δ(k)|,则
其优先级表示为:
[0122] Epriority(k)=|δ(k)|+Cpriority
[0123] 步骤9:t=t+1。
[0124] 步骤10:抽取经验样本计算损失函数。从记忆库中使用优先经验回放的方法采取m个经验样本{sk,ak,rk,sk+1,END(k)},k=1,2,3…m。采样过程为:令Eer=rand(0,1),若Eer<
∈er,则在所有样本中随机抽取m个经验样本;若Eer≥∈er,则首先将优先级分成m个相等大
小的区间,在每个区间内均匀采样一个数字,则回放该数字对应的经验样本。∈er为(0,1)区
间的一个常数,本文假设∈er=0.2。
[0125] 为防止网络的训练易于过拟合,通过重要性采样权重w(k)来纠正数据:
[0126]
[0127] 其中,Per_min表示所有样本的最小的采样概率,参数cw表示纠正的程度。Per(k)为在一次训练中,回放SU节点的样本经验k的概率。若Eer<∈er,则回放SU节点的样本经验k的概
率:
[0128]
[0129] 其中:n为已存储的在记忆库中的样本个数,若Eer≥∈er,则回放SU节点的样本经验k的概率,
[0130]
[0131] 计算MainNet的目标q值:
[0132]
[0133] 计算损失函数L(θ):
[0134]
[0135] 步骤11:使用均方差损失函数L(θ),通过神经网络的梯度反向传播来更新MainNet的所有参数θ。
[0136] 步骤12:重新计算所有样本的TD误差δ,更新记忆库中所有节点的优先级Epriority(k),k=1,2,3…n。
[0137] 步骤13:如果t%F=1,则更新TargetNet参数θtar=θ。
[0138] 步骤14;如果t=T+1,则迭代完毕,否则转到步骤4。
[0139] 尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地
实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限
于特定的细节和这里示出与描述的图例。