1.本发明涉及通信技术领域,尤其是涉及带动作集合的强化学习干扰波形生成、评价方法及装置。
背景技术:
2.随着人工智能技术的发展,具备认知能力的通信干扰技术成为了当前的研究重点。认知通信干扰技术要求干扰机能够根据环境的变化实现自主学习,从而给出最优的干扰策略。各种理论技术如优化理论、博弈论、信息论等相继被用于干扰策略研究中,但是此类方法的不足在于依赖先验信息,在非合作场景下将无法使用;强化学习与环境不断交互习得最优策略,不依赖先验经验,适用于非合作场景,但是随着干扰参数的增多,探索次数和探索时间将会成倍增长,提高算法收敛速度是亟需解决的问题。
3.在持续受到干扰后,目标信号会通过动态改变信道、功率、调制样式等参数的方式进行抗干扰通信,例如当通信方受到干扰时会切换信道或逐渐调高通信功率以减少误码率,而当这两种调节方法都没有用时,则会以一定策略逐步降低调制方式或改变调制方式。如何快速的学习到通信方的抗干扰方式以实现精准干扰至关重要。
技术实现要素:
4.为解决现有技术的不足,在非合作场景下,实现降低干扰波形交互次数,提高准确率,加快收敛的目的,本发明采用如下的技术方案:
5.一种带动作集合的强化学习干扰波形生成方法,包括如下步骤:
6.步骤s1、建立干扰波形库,初始化干扰波形的参数,干扰波形的参数包括:调制模式、干扰功率、干扰信道;
7.步骤s2、构建干扰波形决策网络,包括策略网络和价值网络,策略网络获取通信状态,输出干扰动作,干扰动作包括一组干扰波形的参数,价值网络获取通信状态和干扰动作,输出两者匹配的评价值;
8.策略网络actor和价值网络critic主干为由全连接层构成的多层感知机,策略网络第一层神经元个数为256,激活函数为relu,第二层神经元个数为512,激活函数为relu,第三层神经元个数为256,激活函数为relu,最后一层神经元个数为4,然后利用高斯分布近似策略π,采样后得到动作a,激活函数为tanh,最后映射到实际的干扰动作空间;策略网络第一层神经元个数为256,激活函数为relu,第二层神经元个数为512,激活函数为relu,第三层神经元个数为256,激活函数为relu,最后一层神经元个数为1,输出为q值,根据本发明的应用场景,适当加深了网络深度以及适当加宽了网络宽度,使得更多有用的信息可以被充分的感知到;
9.步骤s3、探索阶段使用跟踪算法进行干扰,填充经验池,经验池包括当前通信状态、干扰动作、通信反馈信息和下一时刻通信状态;
10.经验池包括t时刻的通信状态s、干扰动作a、反馈r、t 1时刻的通信状态s’,其中通
信状态s和s’为通信方当前状态和干扰方针对通信方当前状态的干扰动作共同组成,干扰动作a为干扰方根据通信状态s预测通信状态s’的干扰动作,反馈r为通信方误符号率;
11.步骤s4、从经验池中随机选取一组数据,用于训练干扰波形决策网络;
12.步骤s5、根据通信方当前状态输出干扰动作,通过策略网络,根据通信方当前通信状态和干扰方针当前时刻的干扰动作,预测下一时刻针对通信方通信状态的干扰动作;
13.步骤s6、将策略网络输出的干扰动作经离散化后得到近似干扰动作,通过策略网络输出的干扰动作,从干扰波形库中选取一组相近的干扰动作,将策略网络输出的干扰动作、离散化后得到近似干扰动作和干扰波形库中选取的干扰动作相结合,通过对应的通信状态和价值网络,选取价值最高的干扰动作作为实际的干扰动作。
14.进一步地,所述步骤s2中,策略网络包括一组全连接层构成的多层感知机,输入为通信状态,输出为干扰动作,干扰动作为n维,策略π使用n维的高斯分布连乘来近似,最后根据策略π采样得到干扰动作。
15.进一步地,所述步骤s2中,价值网络包括一组全连接层构成的多层感知机,输入通信状态s和干扰动作a,输出为q值,基于最大熵的随机策略强化学习的sac算法:
[0016][0017]
其中,π
*
表示sac算法的目标函数,表示干扰的效能,将其作为某段时间内累计奖励,h表示通信状态s
t
下策略分布的熵,α表示熵系数,ρ
π
表示策略π形成的状态-动作轨迹分布,s
t
表示第t时刻的状态,a
t
表示第t时刻的干扰动作,e表示数学期望运算,上述公式表明,在sac算法中不仅要最大化奖励,也要最大化策略熵,合适的熵系数可以很好的平衡探索与利用,增加熵会带来更多的探索,加速算法的收敛,避免过早的陷入一个局部最优。
[0018]
进一步地,所述熵系数α具体为:
[0019]
α(t)=1-0.5
×
log10(eps)
[0020]
其中,eps表示训练的轮数,log10表示以10为底的对数,熵系数的选取大小随训练轮数的增加而减小;在探索初期选择数值较大的熵系数,保证足够的探索,随着训练轮数的增加,逐渐减少熵系数,以提高干扰的准确率。
[0021]
进一步地,所述步骤s3中,探索阶段采用的是一定比例的跟踪算法,即以第一概率随机输出干扰参数范围内的波形参数,以第二概率侦察通信方的通信状态,干扰方给出调制模式相同、信道相同、功率随机的干扰波形参数。以一定的比例随机输出可以让经验更加丰富,以提高算法的鲁棒性。
[0022]
进一步地,所述步骤s4中,干扰方进行多轮、每轮多次干扰,统计干扰效果,通信方的抗干扰策略为:如果接收方误码率超过了设定的阈值,则首先增大功率进行抗干扰,若到达最大功率误码率依旧超过设定阈值,则按照预设的信道转换的方式抗干扰,若依旧受到了干扰,则通过降低调制阶数和改变调制模式来抗干扰。
[0023]
进一步地,所述步骤s6中,对策略网络输出的干扰动作进行离散化,根据公式:
[0024]
m'=int(m
t
)
[0025]
其中m’为离散化后的干扰方调制模式,m
t
为策略网络输出的干扰方调制模式,int为向下取整符号。
[0026]
c'=round(c
t
)
[0027]
其中c’为离散化后的干扰方干扰频点,c
t
为策略网络输出的干扰方干扰频点,round为四舍五入符号。
[0028]
p'=round(p
t
)
[0029]
其中p’为离散化后的干扰方干扰频点,p
t
为策略网络输出的干扰方干扰频点,round为四舍五入符号。
[0030]
进一步地,所述步骤s6中,策略网络输出的干扰动作,使用knn算法,从干扰波形库中,选取一组相近的干扰动作,构成干扰动作集|a|,以尽量避免连续动作离散化后带来的偏差,根据公式:
[0031][0032]
其中,d为干扰波形库中的干扰动作和策略网络输出的干扰动作的距离,p
t
、c
t
、m
t
分别为策略网络输出的干扰功率、干扰信道、干扰调制模式,p、c、m分别为干扰库中的干扰干扰功率、干扰信道、干扰调制模式;
[0033]
将干扰波形库中的信道结合策略网络输出的干扰功率、干扰调制模式组成干扰波形加入到干扰集合|a|中,以加快算法收敛的速度,提高干扰的准确率。
[0034]
一种带动作集合的强化学习干扰波形生成装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现所述的一种带动作集合的强化学习干扰波形生成方法。
[0035]
一种带动作集合的强化学习干扰波形生成评价方法,根据所述的一种带动作集合的强化学习干扰波形生成方法,生成的干扰波形,进行干扰效果的评价,用于判断干扰波形的准确度,干扰效果评价公式如下:
[0036][0037]
其中,r表示干扰的实际效果,e1表示信道预测正确标志,当信道预测正确时为1,否则为0,err表示通信方误符号率。
[0038]
本发明的优势和有益效果在于:
[0039]
(1)本发明使用强化学习智能算法,与环境不断交互以及环境的反馈的信息自适应的设计应用于当前环境的最佳干扰波形,不依赖先验经验,可用于非合作场景。
[0040]
(2)本发明在干扰的反馈加入了功率惩罚项,使得干扰方以尽可能小的功率达到干扰的目的,避免了干扰方功率过大而暴露位置。
[0041]
(3)本发明将大规模离散动作连续化,使用最大熵的随机策略强化学习sac算法,避免了干扰方陷入一个局部最优状态,同时对策略网络输出的干扰波形参数实施knn算法和信道择优得到动作集合|a|,取q值最大的干扰波形作为实际的干扰动作,相比其原始的sac算法,提高了算法的收敛速度,明显地提高了干扰的准确率。
附图说明
[0042]
图1为本发明实施例的方法流程图。
[0043]
图2为本发明实施例中网络结构示意图。
[0044]
图3a为本发明实施例中策略网络的网络参数细节图。
[0045]
图3b为本发明实施例中价值网络的网络参数细节图。
[0046]
图4为本发明的方法与传统sac方法有效生成干扰波形的对比图。
[0047]
图5是本发明实施例中装置的结构示意图。
具体实施方式
[0048]
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
[0049]
如图1所示,一种带动作集合的强化学习干扰波形生成方法,包括以下步骤:
[0050]
步骤s1、建立干扰波形库,初始化干扰波形的参数;
[0051]
步骤s1的具体方法为:干扰波形的参数由调制方式、干扰功率、干扰信道三种参数构成,其中调制方式由bpsk、qpsk、fsk、awgn四种调制方式构成,干扰功率为1~10挡,干扰信道为以225mhz为中心频率的20个间隔为5k的信道构成,同时将其编码为1~20,由以上三种参数构成的波形决策波形一共有800种。初始化干扰波形为由调制方式为bpsk、干扰功率为10档、干扰信道为10组成的干扰波形。
[0052]
步骤s2、构建基于最大熵的深度强化学习决策网络;
[0053]
步骤s2的具体方法如图2所示:干扰波形生成采用基于最大熵的随机策略强化学习算法sac,决策网络由策略网络actor和价值网络critic构成,策略网络为由四层全连接层构成的多层感知机,输入为状态s,输出为动作a;价值网络为由四层全连接层构成的多层感知机,输入为s a,输出为q值。sac算法的目标公式为:
[0054][0055]
其中,表示某段时间内累计奖励,在本发明中表示干扰的效能,h为状态s
t
下策略分布的熵,α为熵系数。ρ
π
为策略π形成的状态-动作轨迹分布,s
t
表示第t时刻的状态,a
t
表示第t时刻的动作,e表示数学期望运算。上述公式表明,在sac算法中不仅要最大化奖励,也要最大化策略熵,合适的熵系数可以很好的平衡探索与利用,增加熵会带来更多的探索,加速算法的收敛,避免过早的陷入一个局部最优。
[0056]
熵系数α具体为:
[0057]
α(t)=1-0.5
×
log10(eps)
[0058]
其中,eps表示训练的轮数,本发明中eps最大为100,log10表示以10为底的对数。采用上述公式,在探索初期选择数值较大的熵系数,保证足够的探索,随着训练轮数的增加,逐渐减少熵系数,以提高干扰的准确率。
[0059]
图3a、图3b为本发明网络参数细节图,策略网络actor和价值网络critic主干为由全连接层构成的多层感知机,策略网络第一层神经元个数为256,激活函数为relu,第二层
神经元个数为512,激活函数为relu,第三层神经元个数为256,激活函数为relu,最后一层神经元个数为4,然后利用高斯分布近似策略π,采样后得到动作a,激活函数为tanh,最后映射到实际的干扰动作空间;策略网络第一层神经元个数为256,激活函数为relu,第二层神经元个数为512,激活函数为relu,第三层神经元个数为256,激活函数为relu,最后一层神经元个数为1,输出为q值。
[0060]
步骤s3、探索阶段使用跟踪算法进行干扰,填充经验池;
[0061]
步骤s3的具体方法为:探索阶段采用的是一定比例的跟踪算法,即以百分之50的概率随机输出干扰参数范围内的波形参数,以百分之50的概率侦察通信方的通信状态,干扰方给出调制模型相同、信道相同、功率随机的干扰波形参数。以一定的比例随机输出可以在让经验更加丰富,以提高算法的鲁棒性。经验池由t时刻的状态s、动作a、反馈r、t 1时刻的状态s’构成,其中状态s和s’为通信方当前状态和干扰方针对通信方当前状态的干扰动作共同组成,动作a为干扰方根据状态s预测状态s’的干扰动作,反馈r为通信方误符号率。经验池由大小为10000的队列实现。
[0062]
步骤s4、从经验池中随机选取一组数据进行学习,训练干扰波形决策网络;
[0063]
步骤s4的具体方法为:训练轮数为100轮,干扰方每轮干扰100次统计干扰效果,通信方信道转换策略matlab端实现,通信方的抗干扰策略为:如果接受方误码率超过了设定的阈值0.05,则首先增大功率进行抗干扰,若到达最大功率误码率依旧超过设定阈值,则按照约定的信道转换的方式抗干扰,信道的中心频率为225mhz,转换个数为20个,信道间隔为5k,若依旧受到了干扰,则通过降低调制阶数和改变调制方式来抗干扰,通信方初始通信模式为:调制模式qpsk、发射功率2、通信频点为5。
[0064]
步骤s5、根据通信方当前状态输出干扰动作;
[0065]
步骤s5的具体方法为:根据通信方t时刻通信状态和干扰方针对t时刻的干扰动作,输出t 1时刻针对通信方通信状态的干扰动作,对通信方抗干扰行为进行预测,实现精准干扰。
[0066]
步骤s6、根据策略网络输出干扰波形参数作为指导,使用knn算法和信道则有组成干扰集合|a|,选择价值最高的动作作为实际的干扰动作;
[0067]
步骤s6的具体方法为:
[0068]
策略网络输出的动作需要离散化,根据公式:
[0069]
m'=int(m
t
)
[0070]
其中m’为离散化后的干扰方调制模式,m
t
为策略网络输出的干扰方调制模式,int为向下取整符号。
[0071]
c'=round(c
t
)
[0072]
其中c’为离散化后的干扰方干扰频点,c
t
为策略网络输出的干扰方干扰频点,round为四舍五入符号。
[0073]
p'=round(p
t
)
[0074]
其中p’为离散化后的干扰方干扰频点,p
t
为策略网络输出的干扰方干扰频点,round为四舍五入符号。
[0075]
策略输出的干扰动作离散化后,使用knn算法选取干扰动作相近的10个动作作为动作集|a|,以尽量避免连续动作离散化后带来的偏差,根据公式:
[0076][0077]
其中,d为干扰库中的干扰动作和策略网络离散化输出动作的距离,p
t
、c
t
、m
t
分别为策略网络输出的干扰功率、干扰信道、干扰调制模式,p、c、m分别为干扰库中的干扰干扰功率、干扰信道、干扰调制模式。
[0078]
将干扰库中的信道结合策略网络输出的干扰功率、干扰调制模式组成干扰波形加入到干扰集合|a|中,以加快算法收敛的速度,提高干扰的准确率。
[0079]
将干扰集合|a|中的波形依次输入到价值网络中,选取q值最大的干扰动作作为实际的干扰波形。
[0080]
动作集合|a|中不仅包含与策略网络输出10个近临的干扰参数,还包括干扰库中的信道加上策略网络输出的调制方式和功率组成的干扰参数。
[0081]
步骤s7、获取干扰效果,判断干扰波形生成的准确度。
[0082]
步骤s7的干扰效果为:
[0083][0084]
其中,r为干扰的实际效果,e1为信道预测正确标志,如果信道预测正确则为1,否则为0,err为通信方误符号率。
[0085]
图4为本发明带动作集合的改进算法和普通sac算法在有效生成干扰波形的对比图,在具体实施过程中,sac算法在处理连续动作输出上已经表现出了良好的特性,但是在本发明的场景中准确率不高,后期收敛速度慢,训练至100轮时准确率也仅有百分之90,而本发明提供的算法,对策略网络输出的动作实施knn算法和信道择优,组成动作集合|a|,选取q值最大的动作作为实际的干扰波形,在提高收敛速度的同时,准确率也大大提高,在训练至68轮时准确率达到了百分之99,说明本发明所提供的方法有效的解决了目前干扰中存在收敛速度慢、准去率不高的问题。
[0086]
与前述一种带动作集合的强化学习干扰波形生成方法的实施例相对应,本发明还提供了一种带动作集合的强化学习干扰波形生成装置的实施例。
[0087]
参见图5,本发明实施例提供的一种带动作集合的强化学习干扰波形生成装置,包括存储器和一个或多个处理器,存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现上述实施例中的一种带动作集合的强化学习干扰波形生成方法。
[0088]
本发明一种带动作集合的强化学习干扰波形生成装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本发明一种带动作集合的强化学习干扰波形生成装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
[0089]
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0090]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0091]
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的一种带动作集合的强化学习干扰波形生成方法。
[0092]
所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(smart media card,smc)、sd卡、闪存卡(flash card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
[0093]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。