一种基于强化学习的智能电网虚假数据注入攻击检测方法技术

技术编号:29703679 阅读:10 留言:0更新日期:2021-08-17 14:32
本发明专利技术公开了一种基于强化学习的智能电网虚假数据注入攻击检测方法,该方法基于Sarsa算法的虚假数据注入攻击的检测方法,将攻击分为直接虚假数据注入攻击与隐匿虚假数据注入攻击进行分别检测。在观察值构造上上,直接虚假数据注入攻击检测将残差法与阈值分割结合,隐匿虚假数据注入攻击将测量值的差值范数与阈值分割结合分别得到观察值。使用观察值训练分别得到Q表,使用Q表实现对攻击的检测。本设计实现了隐匿攻击的快速检测,增加了检测速度与成功率,其实现方法简单,检测效率能够有显著提升。

【技术实现步骤摘要】
一种基于强化学习的智能电网虚假数据注入攻击检测方法
本专利技术涉及智能电网领域,尤其涉及一种基于强化学习的智能电网虚假数据注入攻击检测方法。
技术介绍
智能电网是一种将信息传输通道与电力传输通道分离,从而使电网拥有更高效的电力资源配置、更强的抗干扰能力的新型电网技术,随着信息技术的深入发展,其的信息安全成为了一个重要的关注点。虚假数据注入攻击在智能电网信息攻击研究中占有重要地位,其核心思想是通过传统检测方法的漏洞,使用构造出的攻击向量来影响电网系统的状态估计,进而破坏电力系统的安全稳定运行。传统的虚假数据注入攻击检测方法为坏数据检测法。该方法仅能够检测直接虚假数据注入攻击,无法检测隐匿虚假数据注入攻击,同时由于其采用单阈值因此检测成功率一般。当前机器学习的检测方法可实现隐匿虚假数据注入攻击的检测,但需保证攻击向量远远大于噪声,缺少攻击向量比过程噪声略大的检测方法。
技术实现思路
本专利技术的目的在于针对现有技术的不足,提供一种基于强化学习的智能电网虚假数据注入攻击的检测方法,本专利技术使用Sarsa算法实现了虚假数据注入攻击的检测,提高了虚假数据注入攻击的检测准确率与检测速度。本专利技术的目的是通过以下技术方案来实现的:一种基于强化学习的虚假数据注入攻击检测方法,包括以下步骤:步骤一:建立电网的一般线性模型:xt=Axt-1+vt(1)yt=Hxt+wt(2)其中xt=[x1,t,…,xn,t,…,xN,t]为t时刻系统状态,xn,t表示为t时刻第n个节点上的相角,N表示系统的总状态数;t时刻测量值表示为yt=[y1,t,…,ym,t,…,yM,t],ym,t表示为t时刻第m个测量仪表的检测值,M表示总测量仪表值;为状态转移矩阵,为由电网拓扑结构决定的雅克比矩阵,表示实数集;表示t时刻系统噪声,表示过程噪声的方差,其值由系统决定,IN表示N维单位矩阵;表示t时刻测量噪声,表示测量噪声的方差,其值测量设备决定,IM表示M维单位矩阵;步骤二:虚拟攻击获得样本:对于直接攻击可以使用式(3)获得受攻击的测量值,对于隐匿攻击可以使用式(4)获得受攻击的测量值,式中at表示t时刻直接攻击的攻击向量,Hct表示隐匿攻击的攻击向量,由于H不会随着时间改变,因此使用ct表示隐匿攻击攻击向量,at与ct在样本训练中已知,在实际检测中未知,τ为系统受到攻击时间,表示阶跃函数,即当有t≥τ时步骤三:观察值获取:计算测量值yt与其估计值的残差模长,将其用作直接虚假数据注入攻击的检测,将当前检测值yt与上一时刻的检测值yt-1的残差模长作为隐匿虚假数据注入攻击的检测,使用阈值分割法对两个模值进行程度划分,分别得到直接虚假数据注入攻击即时观察值与隐匿虚假数据注入攻击即时观察值,使用滑窗法将两个即时观察值更新至观察值中,分别得到对应时间的直接虚假数据注入攻击观察值与隐匿虚假数据注入攻击观察值;步骤四:使用ε贪婪策略得到t时刻检测器动作at:将系统划分为两个状态,分别为sn系统未受到攻击与sa系统受到攻击,将检测器动作也分为两个状态as为算法认为系统受到攻击发出警报,ac表示算法认为系统未受到攻击不发出警报,在t时刻得到直接攻击检测观察值与隐匿攻击检测观察值使用贪婪策略基于直接虚假数据注入攻击检测的Q表Qn与隐匿虚假数据注入攻击检测的Q表Qs对检测器动作进行选择,ε贪婪策略即检测器以概率1-ε选择最优动作、以概率ε随机选择动作,ε每d步更新一次,更新公式如式(5)所示ε=max(ε-e-1,εmin)(5)式中e为当且已经进行使用的样本值,εmin为人为设置的最小ε值;步骤五:使用Sarsa算法进行训练,使用式(6)更新Q表,式中含有上角标i的参数表示用于检测i类型攻击的参数,i=n或s,即当i=n时表示该参数用于检测直接攻击,当i=s表示该参数用于检测隐匿攻击,Qi为检测i类型攻击所需要的Q表,为t时刻用于检测i类型攻击的观察值,为t时刻得到后对于i类型攻击可以采取的动作,α为学习效率,γi为针对i型攻击训练的贴现因数,为t时刻用于检测i型攻击的状态为动作为时的回报,其取值如式(7)所示,式中r0与b为预先确定的超前警报回报值与滞后警报回报值系数,为t时刻i类型检测的系统状态;步骤六:重复步骤一到步骤五直到到达阶段最大检测时间T,或与中有as出现;步骤七:重复步骤一到步骤六直到将总样本数E用尽,得到完整Qd表与Qs表;步骤八:在检测时,使用步骤一到步骤三得到观察值与使用式(8)分别根据Qd表与Qs表获得动作与当两个动作值均为ac时重复本步骤,直到与有一个为as时停止检测发出警报,当为as时认为系统受到直接虚假数据注入攻击,当为as时认为系统受到直接虚假数据注入攻击。进一步地,所述步骤三通过以下子步骤来实现:(3.1)设置阈值:根据不同的电网结构分别设置直接虚假数据注入攻击阈值与隐匿虚假数据注入攻击阈值(3.2)获得检测值:从各个检测仪表获得t时刻检测值yt,调用t-1时刻检测值yt-1;(3.3)实用卡尔曼滤波估计检测值:使用式(9)与式(10)所示的最小二乘算法得到t时刻状态估计值使用式(11)计算得到t时刻测量估计值式中为测量值偏差的方差矩阵;(3.4)计算偏差模方值:使用式(12)和(13)分别计算t时刻测量值与估计值的偏差模方值和t时刻与t-1时刻变化的模方值(3.5)使用阈值分割法获得即时观察值:由与可根据式(14)得到直接虚假数据注入攻击与隐匿虚假数据注入攻击的即时观察值与由于阈值分割方法一致,因此依旧使用上角标i代替上角标n和上角标s,即式(14)中i可以同时为n或s;(3.6)使用滑窗法获得观察值:令t-1时刻直接虚假数据注入攻击观察值为隐匿虚假数据注入攻击观察值为使用滑窗法即为将对应的t时刻即时观察值加入至t-1时刻的观察值,再将最旧的即时观察值剔除,可得到t时刻的直接虚假数据注入攻击观察值为隐匿虚假数据注入攻击观察值为本专利技术的有益效果是,本专利技术使用Sarsa算法实现了虚假数据注入攻击的检测,提高了虚假数据注入攻击的检测准确率与检测速度,对于隐匿虚假数据注入攻击检测也有较好效果,并且方便的实现直接虚假数据注入攻击与隐匿虚假数据注入攻击的检测。附图说明图1是IEEE-14节点图可根据该图获得H阵,图2是训练Q表流程图,图3是检测流程图,图4表示超前警报率检测测图,图5表示滞后警报率检测图,图6表示总警报失败率图,图7表示超前警报率检测测图,图8表示滞后警报率检测图,图9表示总警报失败率图,图10表示警报类别错误率图,图11表示隐匿虚假数据注入攻击的即时检测成功率图,图12表示直接虚假数据注入攻击的即时检测成功率图。...

【技术保护点】
1.一种基于强化学习的智能电网虚假数据注入攻击检测方法,其特征在于,所述方法包括以下步骤:/n步骤一:建立电网的一般线性模型,/n步骤二:虚拟攻击获得样本,/n步骤三:观察值获取,/n步骤四:使用ε贪婪策略得到t时刻检测器动作a

【技术特征摘要】
1.一种基于强化学习的智能电网虚假数据注入攻击检测方法,其特征在于,所述方法包括以下步骤:
步骤一:建立电网的一般线性模型,
步骤二:虚拟攻击获得样本,
步骤三:观察值获取,
步骤四:使用ε贪婪策略得到t时刻检测器动作at:
步骤五:使用Sarsa算法进行训练,
步骤六:重复步骤一到步骤五直到到达阶段最大检测时间T,或与中有as出现;
步骤七:重复步骤一到步骤六直到将总样本数E用尽,得到完整Qd表与Qs表;
步骤八:检测,判断系统是否受到直接虚假数据注入攻击。


2.根据权利要求1所述的基于强化学习的智能电网虚假数据注入攻击检测方法,其特征在于,
步骤一:建立电网的一般线性模型:
xt=Axt-1+vt(1)
yt=Hxt+wt(2)
其中xt=[x1,t,…,xn,t,…,xN,t]为t时刻系统状态,xn,t表示为t时刻第n个节点上的相角,N表示系统的总状态数;t时刻测量值表示为yt=[y1,t,…,ym,t,…,yM,t],ym,t表示为t时刻第m个测量仪表的检测值,M表示总测量仪表值;为状态转移矩阵,为由电网拓扑结构决定的雅克比矩阵,表示实数集;表示t时刻系统噪声,表示过程噪声的方差,其值由系统决定,IN表示N维单位矩阵;表示t时刻测量噪声,表示测量噪声的方差,其值测量设备决定,IM表示M维单位矩阵。


3.根据权利要求1所述的基于强化学习的智能电网虚假数据注入攻击检测方法,其特征在于,
步骤二:虚拟攻击获得样本:对于直接攻击可以使用式(3)获得受攻击的测量值,对于隐匿攻击可以使用式(4)获得受攻击的测量值,






式中at表示t时刻直接攻击的攻击向量,Hct表示隐匿攻击的攻击向量,由于H不会随着时间改变,因此使用ct表示隐匿攻击攻击向量,at与ct在样本训练中已知,在实际检测中未知,τ为系统受到攻击时间,表示阶跃函数,即当有t≥τ时


4.根据权利要求1所述的基于强化学习的智能电网虚假数据注入攻击检测方法,其特征在于,
步骤三:观察值获取:计算测量值yt与其估计值的残差模长,将其用作直接虚假数据注入攻击的检测,将当前检测值yt与上一时刻的检测值yt-1的残差模长作为隐匿虚假数据注入攻击的检测,使用阈值分割法对两个模值进行程度划分,分别得到直接虚假数据注入攻击即时观察值与隐匿虚假数据注入攻击即时观察值,使用滑窗法将两个即时观察值更新至观察值中,分别得到对应时间的直接虚假数据注入攻击观察值与隐匿虚假数据注入攻击观察值。


5.根据权利要求1所述的基于强化学习的智能电网虚假数据注入攻击检测方法,其特征在于,
步骤四:使用ε贪婪策略得到t时刻检测器动作at:将系统划分为两个状态,分别为sn系统未受到攻击与sa系统受到攻击,将检测器动作也分为两个状态as为算法认为系统受到攻击发出警报,ac表示算法认为系统未受到攻击不发出警报,在t时刻得到直接攻击检测观察值与隐匿攻击检测观察值使用贪婪策略基于直接虚假数据注入攻击检测的Q表Qn与隐匿虚假数据注入攻击检测的Q表Qs对检测器动作进行选择,ε贪婪策略即检测器以概率1-ε选择最优动作、以概率ε随机选择动作,ε每d步更新一次,更新公式如式(5)所示
...

【专利技术属性】
技术研发人员:吴争光张阔
申请(专利权)人:群智未来人工智能科技研究院无锡有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1