![一种基于次用户群体协作的认知无线电动态功率分配方法](http://img.xjishu.com/img/zl/2021/11/23/7bvf81dlb.jpg)
1.本发明涉及认知无线电领域,更具体地,涉及一种基于次用户群体协作的认 知无线电动态功率分配方法。
背景技术:2.科学技术的快速发展,促使了移动通信设备的数量呈现出爆炸性增长的现象。 现今,智能手机、平板电脑和笔记本电脑的无线上网已经成为人们进行交流的主 要方式,为满足用户需求而有效地利用有限的频谱资源变得愈加重要。另一方面, 无线频谱资源的应用不仅仅局限于个人通信服务,在传感网络、嵌入式控制系统、 交通监控系统等领域均有乐观的前景。由于无线频谱资源的广泛应用,许多未知 的新挑战随之而来。传统的无线网络中用户只能使用专用的频谱,大多数可用的 频谱资源由政府分配或拍卖给不同的运营商,这种大容量的静态分配方案使得小 频段临时通信的发展受到了极大的限制。频谱工作组的一项研究表明,在不同的 时段或区域,授权频谱的利用率为15%到85%不等。特别地,在用户数量较少 的时段或区域,分配的频谱不能被充分的利用,很大一部分授权频谱是高度空闲 的。因此无线频谱资源的稀缺性和无线服务需求的指数增长促使研究人员探索新 的频谱管理技术,为无线网络提供高效无缝的连接。
3.近年来,计算机科学领域飞速发展,一些由于硬件条件的限制而无法实现的 复杂的计算,现在已经成为可能,这就迎来了机器学习的时代。它能使得承载着 机器学习算法的智能体拥有学习能力,甚至模仿人类的行为来做出决定和预测。 目前,将认知无线电与机器学习等多种智能算法相结合已成为一种趋势。深度学 习由一组算法和技术组成,这些算法和技术试图找到数据的重要特征并对其高级 抽象进行建模。一般深度学习模型都基于人工神经网络(artificial neural network, ann),通常由两个或多个隐藏层的神经网络组成深度神经网络(deep neural network,dnn)。深度学习的主要目标是通过自动学习和提取数据,从而避免 人工手动地描述数据结构,如手写功能,因此它具有强大的感知能力。强化学习 (reinforcement learning)也是机器学习的一个分支,它可以通过不断地与环境 互动以及反馈回的奖励值去学习如何做出正确的决策。
4.正是因为科技的快速发展,现实生活中的环境越来越复杂,从静态环境变成 动态环境,环境所包含的规模也在不断地扩大,因此传统的单智能体强化学习算 法的缺点愈发明显,一方面单智能体强化学习由一个智能体控制所有决策,这种 方法在环境不复杂的时候能达到好的效果,然而若环境是不稳定的,从智能体的 角度看,这种动态的不稳定环境是不利于算法收敛的,若算法模型简单,智能体 是不能仅仅改变其本身的策略来适应动态不稳定的环境的,整个算法在不稳定的 环境中很有可能学习不到好的策略,甚至无法收敛。另一方面生成的马尔可夫过 程通常很难处理。用于mdp的数值求解技术遭受所谓的“维数诅咒”,这使它 们在计算上不可行。
5.多智能体系统是一种分布式计算技术,可用于解决各种领域的问题,包括机 器人系统、分布式决策、交通控制和商业管理等。多智能体强化学习(multi
‑
agent
reinforcement learning,简称marl)是多智能体系统研究领域中的一个重要分支, 它将强化学习技术、博弈论等应用到多智能体系统,使得多个智能体能在更高维 且动态的真实场景中通过交互和决策完成更错综复杂的任务。在2015年arditampuu等人将dqn与iql算法结合起来,将其应用到ale环境中的pong游 戏中,通过修改回报函数设计了完全合作,完全竞争以及非完全协作和非完全竞 争的环境,最终得出了dqn直接应用到多智能体环境中也能达到一个比较好的 性能,然而iql算法是个非常简单的算法,处理不了环境的非平稳问题。2019 年学者在车联网的频谱共享环境中提出了一种基于指纹的非平稳q学习方法,通 过考虑不同任务之间的权衡来设置合理的奖励函数,该方法对奖励函数设置的要 求较高,当整个环境中需要考虑的参数过多时奖励函数就更难设置,因此也不是 很好的解决方法。因此如何使得算法适应环境的非平稳性问题依旧是多智能体强 化学习算法需要解决的难点。
6.公开日为2019年03月04日,公开号为cn109729528a的中国专利公开了 一种基于多智能体深度强化学习的d2d资源分配方法,属于无线通信领域。首 先构建蜂窝网络与d2d通信共享频谱的异构网络模型,基于其存在的干扰,建 立d2d接收用户的信干噪比sinr以及蜂窝用户的sinr,然后分别计算蜂窝链 路和d2d链路的单位带宽通信速率后,以将最大化系统容量为优化目标,构建 异构网络中的d2d资源分配优化模型;针对时隙t,在d2d资源分配优化模型 的基础上,构建每一个d2d通信对的深度强化学习模型;分别对后续时隙中的 每个d2d通信对提取各自的状态特征矢量,输入训练好的深度强化学习模型中, 得到各个d2d通信对的资源分配方案。该专利依然无法适应环境的非平稳性问 题。
技术实现要素:7.本发明提供一种基于次用户群体协作的认知无线电动态功率分配方法,解决 动态不稳定环境下强化学习算法的稳定性问题。
8.为解决上述技术问题,本发明的技术方案如下:
9.一种基于次用户群体协作的认知无线电动态功率分配方法,包括以下步骤:
10.s1:定义认知无线电网络,所述认知无线电网络包括若干主用户、若干次用 户、若干微基站和若干宏基站,其中若干主用户和若干次用户通过若干微基站和 若干宏基站进行通信;
11.s2:将每个次用户作为一个智能体,每个次用户的接收信号强度信息作为智 能体的状态值,每个次用户的发射功率作为智能体的动作值;
12.s3:初始化每个智能体,使用maddpg算法训练一个目标动作网络;
13.s4:利用训练好的目标动作网络输出下一时刻的动作值,每个智能体相应动 作,完成功率分配。
14.优选地,所述每个次用户的接收信号强度信息作为智能体的状态值,具体的 获取方法为:
15.所述微基站利用包括zigbee的技术获取主次用户的接受信号强度信息,令 认知无线电网络中,微基站的个数为k,则整个认知无线电网络的状态值为:
16.s(t)=[s1(t),s2(t),...,s
k
(t)]
[0017]
式中,s
k
(t)表示第k个微基站获取的接受信号强度信息。
[0018]
优选地,所述第k个微基站获取的接受信号强度信息s
k
(t)的计算方法如下:
[0019][0020]
式中,p
i
(t)代表主用户发射功率,d
ik
(t)代表t时刻主用户i到第k个微基站 之间的距离,p
j
(t)代表次用户发射功率,d
jk
(t)代表t时刻次用户j到第k个微基站 之间的距离,d0(t)为基准距离,τ表示路径损耗指数,δ(t)为整个认知无线电网 络中的平均噪声功率。
[0021]
优选地,所述maddpg算法包括动作网络和评价网络,所述动作网络用于控 制动作策略,所述评价网络接收整个环境中所有智能体的全局信息,用于评价所 述动作网络的动作策略。
[0022]
优选地,在maddpg算法中智能体的动作值是由动作网络输出的,设第i个 智能体的动作值设为a
i
,最大的发射功率设为p
max
,则可由下式表示
[0023]
a
i
=p
max
*f
i
[0024]
f
i
=sigmoid(f(s
i
))
[0025]
其中f
i
代表神经网络隐藏层通过激活函数后的输出值,f(s
i
)代表第i个智能 体的动作网络经过隐藏层后的输出值,sigmoid函数为神经网络激活函数,呈s 形,引入此激活函数的目的是将隐藏层的输出值映射到区间[0,1]之间,因此可确 保动作网络最终的输出值a
i
的取值范围为[0,p
max
]。
[0026]
优选地,所述认知无线点网络中智能体之间的关系为合作关系
[0027]
优选地,所述maddpg算法的奖励函数设置为:
[0028][0029]
且
[0030][0031]
i3:其他
[0032]
式中,sinr
j
代表信噪比大于μ
j
的次用户j的信噪比,sinr
i
代表第i个主用户 的信噪比,μ
j
为次用户信噪比阈值,μ
i
为主用户信噪比阈值。
[0033]
优选地,所述利用maddpg算法训练一个目标动作网络,具体为:
[0034]
初始化每个智能体,每个次用户的经验池,神经网络参数,算法执行的回合 次数;
[0035]
根据环境的状态值和智能体选取的动作值通过奖励函数得到奖励值;
[0036]
环境通过智能体选取的行为得到下一状态的值;
[0037]
算法每执行一个回合,计算神经网络的损失,数据保存进经验池;
[0038]
运行完前5000个回合后训练开始:在经验池中随机抽取一组经验,对经验 集中训练目标动作网络;
[0039]
根据设置的算法执行回合次数中止模型的训练,得到训练好的目标动作网络。
[0040]
优选地,所述算法运行时前5000个回合随机探索。
[0041]
优选地,前5000个回合时,给动作的行为添加噪声来加快算法收敛速度。
[0042]
与现有技术相比,本发明技术方案的有益效果是:
[0043]
本发明使用的maddpg算法的动作值由神经网络输出,动作空间不仅是连续 的,能够取到的动作值更多,而且计算量更小,不会产生“维数诅咒”。同时 maddpg算法利用策略集合效果优化提高算法的稳定性及鲁棒性,更能适应复杂 的动态环境。
附图说明
[0044]
图1为本发明的方法流程示意图。
[0045]
图2为maddpg算法的流程示意图。
[0046]
图3为实施例提供的仿真环境图,其中图3(a)的次用户数量为2个,图3(b)的 次用户数量为3个,图3(c)的次用户数量为4个。
[0047]
图4为实施例提供的所有次用户奖励图,其中图4(a)对应图3(a),图4(b) 对应图3(b),图4(c)对应图3(c)。
[0048]
图5为实施例提供的成功率图,其中图5(a)对应图3(a),图5(b)对应图4 (b),图5(c)对应图3(c)。
[0049]
图6为实施例提供的损失对比图,其中图6(a)对应图3(a),图6(b)对应 图4(b),图6(c)对应图3(c)。
[0050]
图7为实施例提供的训练时间图。
具体实施方式
[0051]
附图仅用于示例性说明,不能理解为对本专利的限制;
[0052]
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实 际产品的尺寸;
[0053]
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理 解的。
[0054]
下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0055]
实施例1
[0056]
本实施例提供一种基于次用户群体协作的认知无线电动态功率分配方法,把 认知无线中的功率控制过程看成是一个马尔可夫决策过程,每个次用户都当成一 个智能体,每个智能体都有各自的状态值s
i
,动作值a
i
通过智能体的状态值和动 作值可以通过奖励函数得到各自智能体的奖励值r
i
,因此可以利用多智能体强化 学习来解决该问题,如图1所示,包括以下步骤:
[0057]
s1:定义认知无线电网络,所述认知无线电网络包括若干主用户、若干次用 户、若干微基站和若干宏基站,其中若干主用户和若干次用户通过若干微基站和 若干宏基站进行通信;
[0058]
s2:将每个次用户作为一个智能体,每个次用户的接收信号强度信息作为智 能体的状态值,每个次用户的发射功率作为智能体的动作值;
[0059]
s3:初始化每个智能体,使用maddpg算法训练一个目标动作网络;
[0060]
s4:利用训练好的目标动作网络输出下一时刻的动作值,每个智能体相应动 作,
完成功率分配。
[0061]
所述每个次用户的接收信号强度信息作为智能体的状态值,具体的获取方法 为:
[0062]
在认知无线电网络环境中主次用户都无法得知对方的功率控制策略和传输 功率,因此所述微基站利用包括zigbee的技术获取主次用户的接受信号强度信 息,再将信息打包成少量字节的数据包,通过专用的控制信道发送给次用户,次 用户根据微基站传输过来的信息修改自身的功率策略,以防对主用户的信号干扰 太大,从而影响主用户信号的正常传输。令认知无线电网络中,微基站的个数为 k,则整个认知无线电网络的状态值为:
[0063]
s(t)=[s1(t),s2(t),...,s
k
(t)]
[0064]
式中,s
k
(t)表示第k个微基站获取的接受信号强度信息。
[0065]
所述第k个微基站获取的接受信号强度信息s
k
(t)的计算方法如下:
[0066][0067]
式中,p
i
(t)代表主用户发射功率,d
ik
(t)代表t时刻主用户i到第k个微基站之 间的距离,p
j
(t)代表次用户发射功率,d
jk
(t)代表t时刻次用户j到第k个微基站之 间的距离,d0(t)为基准距离,τ表示路径损耗指数,δ(t)为整个认知无线电网络 中的平均噪声功率。
[0068]
所述maddpg算法包括动作网络和评价网络,所述动作网络用于控制动作策 略,所述评价网络接收整个环境中所有智能体的全局信息,用于评价所述动作网 络的动作策略。
[0069]
在maddpg算法中智能体的动作值是由动作网络输出的,设第i个智能体的 动作值设为a
i
,最大的发射功率设为p
max
,则可由下式表示
[0070]
a
i
=p
max
*f
i
[0071]
f
i
=sigmoid(f(s
i
))
[0072]
其中f
i
代表神经网络隐藏层通过激活函数后的输出值,f(s
i
)代表第i个智能 体的动作网络经过隐藏层后的输出值,sigmoid函数为神经网络激活函数,呈s 形,引入此激活函数的目的是将隐藏层的输出值映射到区间[0,1]之间,因此可确 保动作网络最终的输出值a
i
的取值范围为[0,p
max
]。
[0073]
奖励函数的设置是强化学习中让智能体能够找到正确策略的重要一环,而在 多智能体强化学习中的奖励函数的设置还跟智能体之间是竞争还是合作的关系 有关,因此确定认知无线网络中智能体之间的关系是之分重要的。本实施例中所 述认知无线点网络中智能体之间的关系为合作关系,原因是需要控制的整个系统 的吞吐量最大化,若智能体之间是竞争关系则智能体很有可能为了达成自身的约 束条件而做出一些“自私”的行为,例如增大自身的功率而使得主用户或者其他 智能体的信噪比极度下降从而最大化自身奖励而不利整体系统的吞吐量最大化。
[0074]
所述maddpg算法的奖励函数设置为:
[0075]
[0076]
且
[0077][0078]
i3:其他
[0079]
式中,sinr
j
代表信噪比大于μ
j
的次用户j的信噪比,sinr
i
代表第i个主用户 的信噪比,μ
j
为次用户信噪比阈值,μ
i
为主用户信噪比阈值;当认知无线电网络 中满足i1条件则得到的奖励为次用户中大于μ
j
的信噪比之和,存在主用户的信噪 比小于阈值时则每个智能体的奖励为主用户的信噪比值之和的相反数,都不符合 说明没有满足要求的次用户的发射功率满足约束条件,则给予所有智能体最大的 惩罚。
[0080]
maddpg算法是ddpg算法的衍生,算法流程图如图2所示,算法模型与ddpg 类似,有着动作网络和评价网络,动作网络负责控制动作策略,而评价网络负责 评价执行的动作策略,进一步地给动作网络反馈策略的好坏,从而让动作网络找 到正确的策略。然而与ddpg算法的最重要的不同之处在于maddpg算法的评价网 络不再只接受其自身的局部信息,而是接收整个环境中所有智能体的全局信息, 因此在动态环境的场景中有着更好的稳定性,另外神经网络的更新采取的是软更 新,和硬更新相比软更新有着更好的算法稳定性,所述利用maddpg算法训练一 个目标动作网络,具体为:
[0081]
初始化每个智能体,每个次用户的经验池,神经网络参数,算法执行的回合 次数;
[0082]
根据环境的状态值和智能体选取的动作值通过奖励函数得到奖励值;
[0083]
环境通过智能体选取的行为得到下一状态的值;
[0084]
算法每执行一个回合,计算神经网络的损失,数据保存进经验池;
[0085]
运行完前5000个回合后训练开始:在经验池中随机抽取一组经验,对经验 集中训练目标动作网络;
[0086]
根据设置的算法执行回合次数中止模型的训练,得到训练好的目标动作网络。
[0087]
所述算法运行时前5000个回合随机探索。
[0088]
前5000个回合时,给动作的行为添加噪声来加快算法收敛速度。
[0089]
maddpg算法的特点主要有以下四个:
[0090]
1.actor网络输出动作:不同于一般的值函数强化学习算法,maddpg算法的 动作值由actor网络输出,因此完美解决了庞大动作空间造成的“维数诅咒”问 题。
[0091]
2.集中式训练,分布式执行:训练时采用集中式学习训练critic与actor,使 用时actor只用知道局部信息就能运行。critic需要其他智能体的策略信息。因此 在maddpg算法中智能体之间可以通过信息交互和协作来获得更加完备的信息, 并根据其他智能体的策略来改变自身策略从而适应动态环境的变化。
[0092]
3.更加完备的经验池数据:由于整个算法的训练是集中训练,因此maddpg 算法的经验池中的信息由组成,包含整个系统的全局信息,其中代表所有智能 体的观测值。
[0093]
4.利用策略集合效果优化(policy ensemble):对每个智能体学习多个策略, 改进时利用所有策略的整体效果进行优化。以提高算法的稳定性以及鲁棒性。
[0094]
在具体实施过程中,仿真环境的范围是以300为半径的圆,设主用户发射功 率应当小于30mw,次用户发射功率应当小于12mv,环境噪声为1mw,主用户信噪 比阈值μ
i
为1.0db,次用户信噪比阈值μ
j
为0.5db,发射机和接收机增益设为1, 发射天线高度设为4,接
收天线高度设为3,实验开始时主用户,次用户和微基 站位置会随机分布,仿真开始后每隔10000次回合,主用户和次用户的位置会重 新分布以实现环境动态改变,设置总回合次数为50000次,经验池存储容量为 5000,并且从5000回合之后开始训练神经网络,下文将对次用户数量为2个,3 个和4个时的仿真结果进行性能分析和对比。图3为仿真环境图,图3(a)至 图3(c)分别为两个次用户,三个次用户和四个次用户的仿真图。
[0095]
图4为所有次用户的奖励图,从图4(a)和图4(b)可以看出,当智能体 数量为2和3时,maddpg和dqn两种强化学习算法均能在最终找到正确的奖励 值,但dqn算法并不能保证最终能得到总奖励最大的策略。从图4(c)可以看 出,次用户数量为4时,maddpg算法依旧可以保持最终能够得到最大奖励的结 果,收敛速度相比之前变化也不明显,而dqn算法收敛不到一个正的奖励值,原 因是在整个认知无线电的功率分配环境中,当认知用户越多就越难找到好的策略, 奖励为0时收敛代表在四个次用户中没有训练出合适的功率使得存在次用户的 信噪比符合约束条件。
[0096]
图5代表成功率图,本实施例成功率的定义是次用户在20次切换内能够满 足约束条件就算成功完成一次传输任务,本实施例每隔1000个回合统计一次数, 成功率越高代表1000个回合内在规定切换次数满足约束的数量就越多,和总奖 励类似,由图5可以看出dqn算法的性能受智能体数量影响,数量越多训练效果 越差,而maddpg算法的性能在智能体数量增多时的影响不明显。
[0097]
图6是dqn中神经网络和和maddpg算法中评价网络损失的对比图,由于dqn 中的动作比较少,并且有可能没有训练到好的策略,只学习到了某些容易学习的 次优的策略,而maddpg算法的评价网络的训练比强化学习算法加了一维其他智 能体的行为,所以maddpg算法相比dqn算法而言损失的收敛速度相比较慢,但 是总体而言处于一个不错的训练效果。
[0098]
图7为为maddpg算法与dqn算法的模型训练耗时图,可以看出dqn算法受 到“维数诅咒”的影响,算法训练时间呈指数增长,而maddpg算法训练时间是 线性增长,更能适应多次用的复杂场景。
[0099]
相同或相似的标号对应相同或相似的部件;
[0100]
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
[0101]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非 是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明 的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施 方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进 等,均应包含在本发明权利要求的保护范围之内。