一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

错误数据注入攻击的检测方法及装置与流程

2022-02-19 06:25:00 来源:中国专利 TAG:


1.本技术涉及智能电网技术领域,尤其涉及错误数据注入攻击的检测方法及装置。


背景技术:

2.状态估计(state estimation)是智能电网中电力系统能量管理系统(energy management system)的重要组成部分。状态估计根据可获取的测量数据估算得到动态系统的内部状态。状态估计的结果不仅是电网系统调度员进行调度的依据,同时也在电力市场环境中发挥着重要作用。因此,能否准确的进行状态估计在很大程度上影响了智能电网和电力市场的平稳运行。
3.然而,通信与网络技术的兴起不仅带来了电网的智能化,许多的虚拟现实攻击(cyber

physical attacks)也随之而来,并带来了不小的挑战。现阶段的虚拟现实攻击可以根据它们作用的层面不同分为四类:虚拟层攻击,网络层攻击,通讯层攻击和物理层攻击。而错误数据注入攻击是一种可以在四个作用层面都进行的虚拟现实攻击,并且它还可以绕开传统的以残差检测为基础的异常检测方法,给状态估计的准确进行带来了极大威胁。
4.因此针对错误数据注入攻击,为了保障状态估计的准确进行,现有许多异常检测方法:
5.1)以残差检测为基础的异常检测方法:它可以从测量数据的残差中检测得到多种电网中的异常现象,例如:线路故障,设备故障等。然而由于错误数据注入攻击并不改变测量残差,这种检测方法完全无法应对错。因此,以残差检测为基础的异常检测方法既无法分辨系统是否受到错误数据注入攻击,又无法定位错误数据注入攻击发生的位置。
6.2)基于压缩感知技术的异常检测方法:依托于电网系统相对较大的系统惯性以及攻击者有限的资源,错误数据注入攻击可以被压缩感知技术识别与定位。基于压缩感知技术的异常检测方法可以有效的应对错误数据攻击,在定位精度上也大幅超过了传统的主成分分析方法(principal component analysis)。但是这种异常检测方法在很多应用场景下的虚警率过高,给其应用造成了极大的困难。
7.3)基于生成对抗网络(generateadversarialnetwork)技术的异常检测方法:现阶段,随着深度学习技术的兴起,不少深度学习技术也被应用到了异常检测当中。其中使用生成对抗网络技术的异常检测方法是其中的佼佼者。这种检测方法在某些错误数据注入攻击的场景中可以取得不错的识别与定位效果。然而,所有基于深度学习技术的工程方法的表现都受限于它们的数据集。现阶段在智能电网的错误数据注入攻击防御领域缺少标准的数据集。同时由于深度学习技术缺乏根本上的可解释性,也在一定程度上阻碍了它们的应用。


技术实现要素:

8.本技术提供错误数据注入攻击的检测方法及装置,以解决现有技术中虚警率过高的问题。
9.为解决上述技术问题,本技术提出一种错误数据注入攻击的检测方法,应用于智能电网,错误数据注入攻击的检测方法包括:接收测量数据,并将接收到的测量数据组成测量数据矩阵;其中,测量数据包括从智能电网的节点测量获得的功率流向量;对测量数据矩阵进行计算,获得预设时刻下每一行的相对变化值以及每一行的相对变化值的方差;通过方差判断测量数据矩阵的每一行是否被攻击,并根据判断结果,对测量数据矩阵进行0赋值处理,从而获得第一数据矩阵;对第一数据矩阵进行低秩矩阵恢复处理以及行稀疏优化,得到第一优化问题;采用增广拉格朗日乘子方法对第一优化问题进行求解,从而得出矩阵的分解结果,进而得出错误数据注入攻击的检测结果。
10.可选地,通过方差判断测量数据矩阵的每一行是否被攻击,并根据判断结果,对测量数据矩阵进行0赋值处理,从而获得第一数据矩阵,包括:将测量数据矩阵中未被攻击的行的数值置为0,被攻击的行的数值保持不变,从而获得第一数据矩阵。
11.可选地,将接收到的测量数据组成测量数据矩阵,包括:将测量数据中相同测量节点的不同时刻获得的功率流向量分为一行,不同测量节点的相同时刻获得的功率流向量分为一列,从而组成测量数据矩阵。
12.可选地,对测量数据矩阵进行计算,获得预设时刻下每一行的相对变化值以及每一行的相对变化值的方差,包括:计算t时刻在第i个测量节点处的相对变化值rf
i,t
为:其中,z
i,t
表示在t时刻第i个节点测量获得的功率流向量;z
i,t
‑1表示在t

1时刻第i个节点测量获得的功率流向量;得到所有的测量节点在所有时刻的相对变化值后,计算第i个测量节点在测量时段t内的相对变化值的方差v
i
为:v
i
=var([rf
i,t
,

,rf
i,t t
])。
[0013]
可选地,通过方差判断测量数据矩阵的每一行是否被攻击,包括:设置阈值α;若方差v
i
大于阈值α,则确定与方差v
i
相应的测量节点在t时段内被错误数据注入攻击;若方差v
i
小于或等于阈值α,则确定与方差v
i
相应的测量节点在t时段内未被错误数据注入攻击。
[0014]
可选地,对第一数据矩阵进行低秩矩阵恢复处理以及行稀疏优化,得到第一优化问题,包括:得到第一优化问题为:
[0015][0016]
s.t.z
a
=z0 a;
[0017]
其中,z
a
是测量数据矩阵,z0是原本未被攻击的功率流矩阵,
[0018]
a是错误数据注入攻击矩阵;||z0||
*
是核范数,||a
t
||
p,1
代表第一数据矩阵行稀疏惩罚,||a||
1,1
代表第一数据矩阵总体稀疏惩罚,λ是行稀疏的惩罚参数,μ是第一数据矩阵的整稀疏惩罚参数;p是预设参数。
[0019]
为解决上述技术问题,本技术提出一种错误数据注入攻击的检测装置,应用于智能电网,错误数据注入攻击的检测装置,包括:数据接收模块,用于接收测量数据,并将接收到的测量数据组成测量数据矩阵;其中,测量数据包括从智能电网的节点测量获得的功率流向量;异常测量节点判别模块,用于对测量数据矩阵进行计算,获得预设时刻下每一行的相对变化值以及每一行的相对变化值的方差;通过方差判断测量数据矩阵的每一行是否被攻击,并根据判断结果,对测量数据矩阵进行0赋值处理,从而获得第一数据矩阵;低秩矩阵
恢复模块,用于对第一数据矩阵进行低秩矩阵恢复处理以及行稀疏优化,得到第一优化问题;采用增广拉格朗日乘子方法对第一优化问题进行求解,从而得出矩阵的分解结果,进而得出错误数据注入攻击的检测结果。
[0020]
可选地,异常测量节点判别模块还用于将测量数据矩阵中未被攻击的行的数值置为0,被攻击的行的数值保持不变,从而获得第一数据矩阵。
[0021]
可选地,数据接收模块还用于将测量数据中相同测量节点的不同时刻获得的功率流向量分为一行,不同测量节点的相同时刻获得的功率流向量分为一列,从而组成测量数据矩阵。
[0022]
可选地,异常测量节点判别模块还用于:计算t时刻在第i个测量节点处的相对变化值rf
i,t
为:其中,z
i,t
表示在t时刻第i个节点测量获得的功率流向量;z
i,t
‑1表示在t

1时刻第i个节点测量获得的功率流向量;得到所有的测量节点在所有时刻的相对变化值后,计算第i个测量节点在测量时段t内的相对变化值的方差v
i
为:v
i
=var([rf
i,t
,...,rf
i,t t
])。
[0023]
可选地,异常测量节点判别模块还用于:设置阈值α;若方差v
i
大于阈值α,则确定与方差v
i
相应的测量节点在t时段内被错误数据注入攻击;若方差v
i
小于或等于阈值α,则确定与方差v
i
相应的测量节点在t时段内未被错误数据注入攻击。
[0024]
可选地,第一优化问题为:
[0025][0026]
s.t.z
a
=z0 a;
[0027]
其中,z
a
是测量数据矩阵,z0是原本未被攻击的功率流矩阵,
[0028]
a是错误数据注入攻击矩阵;||z0||
*
是核范数,||a
t
||
p,1
代表第一数据矩阵行稀疏惩罚,||a||
1,1
代表第一数据矩阵总体稀疏惩罚,λ是行稀疏的惩罚参数,μ是第一数据矩阵的整稀疏惩罚参数;p是预设参数。
[0029]
本技术提出错误数据注入攻击的检测方法及装置,应用于智能电网,本技术综合考虑异常检测方法的有效性,可靠性以及可解释性,在基于压缩感知技术的异常检测方法的基础上,通过深入分析错误数据攻击的特征与电网系统较大的惯性,提出了些许改进,在保证较高的错误数据注入攻击识别率的基础上大幅降低了原有方法的虚警率,得到了一个可靠的,可解释的,且在绝大多数场景中取得了很高的攻击检出率以及极低虚警率的异常检测方法。
附图说明
[0030]
为了更清楚地说明本技术的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0031]
图1是本技术错误数据注入攻击的检测方法一实施例的流程示意图;
[0032]
图2是本技术错误数据注入攻击的检测装置一实施例的结构示意图。
具体实施方式
[0033]
为使本领域的技术人员更好地理解本技术的技术方案,下面结合附图和具体实施方式对本技术所提供错误数据注入攻击的检测方法及装置进一步详细描述。
[0034]
低秩矩阵恢复技术是一种数据恢复的通用技术,其是基于数据的低秩性和稀疏性对数据进行恢复。在2011年,休斯顿大学的韩竹教授团队就已经将其应用到了电网中的错误数据注入攻击检测领域。虽然在当时这种方法远超其它错误数据检测方法,但是由于他们在引入的过程中并未针对应用场景进行优化,仍存在计算速度较慢,虚警率过高等问题。
[0035]
基于此,本技术提出一种错误数据注入攻击的检测方法,重于解决智能电网中,原有低秩矩阵恢复技术的虚警率过高的问题。请参阅图1,图1是本技术错误数据注入攻击的检测方法一实施例的流程示意图。在本实施例中,错误数据注入攻击的检测方法可以包括步骤s110~s120,各步骤具体如下:
[0036]
s110:接收测量数据,并将接收到的测量数据组成测量数据矩阵;其中,测量数据包括从智能电网的节点测量获得的功率流向量。
[0037]
其中,将测量数据中相同测量节点的不同时刻获得的功率流向量分为一行,不同测量节点的相同时刻获得的功率流向量分为一列,从而组成测量数据矩阵。
[0038]
具体地,在大多数情况下,电网的状态信息与测量得到的功率流(power flow)之间的关系可以近似为线性关系:
[0039]
z
′0=hθ
[0040]
其中z
′0是测量得到的功率流向量,h是电网的拓扑结构矩阵,而θ是电网的状态向量。同时,错误数据注入攻击也依托于这一点,当攻击者知道了电网的拓扑结构信息后,他们可以构造出一种不改变测量残差的虚拟现实攻击:
[0041]
a=hc
[0042]
其中a是攻击者生成的攻击向量,c是攻击者想要注入的虚假状态信息。因此,在系统遭受错误数据注入攻击时,通过测量功率流仅能得到被错误数据污染的功率流向量z

a

[0043]
z

a
=z
′0 a=h(θ c)
[0044]
当我们将连续观测得到的功率流向量按时间上的先后顺序组成一个矩阵时,错误数据注入攻击的识别与定位便成为了一个矩阵分解问题:
[0045]
z
a
=z0 a
[0046]
其中z
a
是观测的功率流矩阵(即测量数据矩阵),z0是原本未被攻击的功率流矩阵,而a是错误数据注入攻击矩阵。因此,识别与定位注入的错误数据可以通过分解观测的功率流矩阵z
a
得到错误数据注入攻击矩阵a进行。
[0047]
由于电网系统相对较大的惯性以及攻击者有限的资源,未被攻击的功率流矩阵z0的秩相较于它的大小会小很多,同时错误数据注入攻击矩阵a会是一个稀疏矩阵。这两项特征使得错误数据注入攻击识别与定位的矩阵分解问题可以通过基于压缩感知技术的低秩矩阵恢复(robust pca)来进行。但是在实际应用中直接使用低秩矩阵恢复技术来进行错误数据的识别与定位会使检测结果的虚警率过高,大量正常数据会被标识为异常。因此通过深入观察错误数据注入攻击的特征,以及常被错误识别为异常的数据的结构特征,本实施例提出了两点改进:
[0048]
1)由于攻击者有限的资源,攻击者仅能攻击少部分的测量节点,因此在错误数据
注入攻击矩阵a中,仅会有少部分行存在非零元素,其余大部分行均为零。因此本实施例在向原有的低秩矩阵恢复技术中引入了行稀疏优化,使得识别得到的攻击矩阵a

具有与实际应用场景中相同的行稀疏特性。
[0049]
2)常被错误识别为异常的数据相较于其它未被错误识别的数据的绝对变化值较大,但相对变化值仍与其它未被攻击的数据相似。而被错误数据注入攻击的数据,其相对变化值与绝对变化值都相较未被攻击的数据更大。同时,考虑到电网是一个惯性相对较大的系统,因此在没有被攻击的时候,功率流在时间上的相对变化值也应相对稳定,而攻击会破坏这种稳定性。于是,本实施例应用功率流相对变化值的方差设计了一个判别器来去除在攻击者资源有限条件下不可能被攻击但会导致错误识别的测量节点,极大地降低了识别的虚警率。
[0050]
整个错误数据注入攻击的识别与定位流程可以分为三个部分:1)数据接收部分,数据接收部分将接收到的测量数据组成相应的测量数据矩阵;2)异常测量节点判别部分,此部分使用测量功率流相对变化值的方差来去除在攻击者资源有限的条件下不可能被攻击的测量节点对后续低秩矩阵恢复的影响;3)低秩矩阵恢复部分,该部分在原有低秩矩阵恢复技术的基础上引入行稀疏优化,使分解得到的错误数据注入攻击矩阵与实际攻击的矩阵具有同样的性质。
[0051]
s120:对测量数据矩阵进行计算,获得预设时刻下每一行的相对变化值以及每一行的相对变化值的方差。
[0052]
在异常测量节点判别部分中,计算t时刻在第i个测量节点处的相对变化值rf
i,t
为:
[0053][0054]
其中,z
i,t
表示在t时刻第i个节点测量获得的功率流向量;z
i,t
‑1表示在t

1时刻第i个节点测量获得的功率流向量。
[0055]
得到所有的测量节点在所有时刻的相对变化值后,可以进一步计算第i个测量节点在测量时段t内的相对变化值的方差v
i
为:
[0056]
v
i
=var([rf
i,t
,

,rf
i,t t
])。
[0057]
s130:通过方差判断测量数据矩阵的每一行是否被攻击,并根据判断结果,对测量数据矩阵进行0赋值处理,从而获得第一数据矩阵。
[0058]
可选地,可以将测量数据矩阵中未被攻击的行的数值置为0,被攻击的行的数值保持不变,从而获得第一数据矩阵。
[0059]
通过设置合适的阈值α,方差v
i
可以作为判断对应测量节点在t时段内是否遭受错误数据注入攻击的一个指标。
[0060]
具体地,若方差v
i
大于阈值α,则确定与方差v
i
相应的测量节点在t时段内被错误数据注入攻击;若方差v
i
小于或等于阈值α,则确定与方差v
i
相应的测量节点在t时段内未被错误数据注入攻击。
[0061]
此外,为了保证所有的攻击都可以被检测到,阈值α不宜设定过大。阈值α可以通过实验获得。
[0062]
s140:对第一数据矩阵进行低秩矩阵恢复处理以及行稀疏优化,得到第一优化问
题。
[0063]
在低秩矩阵恢复部分,我们在原有的低秩矩阵恢复优化问题中引入新的行稀疏惩罚,得到第一优化问题为:
[0064][0065]
s.t.z
a
=z0 a;
[0066]
其中,z
a
是测量数据矩阵,
[0067]
z0是原本未被攻击的功率流矩阵,a是错误数据注入攻击矩阵;||z0||
*
是核范数,||a
t
||
p,1
代表第一数据矩阵行稀疏惩罚(l
p,1
范数),||a||
1,1
代表第一数据矩阵总体稀疏惩罚(l
1,1
范数),λ是行稀疏的惩罚参数,μ是第一数据矩阵的整稀疏惩罚参数;p是预设参数。
[0068]
s150:采用增广拉格朗日乘子方法对第一优化问题进行求解,从而得出矩阵的分解结果,进而得出错误数据注入攻击的检测结果。
[0069]
在确定了合适的参数p(其中p为整数)之后,由于这个优化问题是一个凸优化问题,因此可以使用增广拉格朗日乘子(augmented lagrange multipliers)的方法解决得到最终的矩阵分解结果。
[0070]
当确定了参数p之后,我们首先计算对应的拉格朗日函数:
[0071][0072]
其中a
t
是矩阵a的转置,y和η是拉格朗日乘子,<y,z
a

z0‑
a>是矩阵的内积,||z
a

z0‑
a||
f
是frobenius范数。
[0073]
在确定了相应的拉格朗日函数之后,可以通过迭代的方法来进行矩阵分解,由于不同p的优化闭式解与参数的更新方式并不相同,在过程中本实施例并没有直接写出,但这些闭式解与更新方式可以在公开的资料中查询得到:
[0074][0075]
同时,这个低秩矩阵恢复的优化问题也可以转化为一些更为普遍的对等凸优化问题,便可以使用一些现有的凸优化技术包进行求解,如cvx。
[0076]
以下结合实验数据对错误数据注入攻击的检测方法进行说明:
[0077]
本实施例在标准的ieee

30

bus和ieee

57

bus的系统上进行实验,通过实验结果
可知,当p=1时,低秩矩阵恢复技术并未引入行稀疏优化,此时的检验结果中除了真正的攻击,还检测到了一条明显的结构性检测错误,并且在部分未被攻击的行中也出现了不少的检测错误。但是,当引入行稀疏优化后,虽然结构性的检测错误并没有被去除,但是其它未被攻击的行中的偶发性检测错误被去除了,在一定程度上降低了虚警率。
[0078]
对于出现的结构性检测错误,异常节点判别器可以很好的解决。因为异常节点判别器解决了原本低秩矩阵恢复技术中过于关注绝对变化值的因素,提前将会导致低秩矩阵恢复技术产生异常但并未被攻击的节点去除。异常节点判别器极大的降低了虚警率。我们实验对比了不同的基于低秩矩阵恢复技术的异常检测方法的效果,如表1所示。其中tp是错误数据注入攻击的检出率,fa是虚警率。可以看到我们提出的mshva检测方法,在引入行稀疏优化以及异常节点判别器后相较最初的直接使用低秩矩阵恢复技术的异常检测方法(msrsa)极大的降低了虚警率并提高了异常检出率。并且其综合表现相较于其它当今主流的基于低秩矩阵恢复的异常检测方法(godec,lmafit)也极为出众。
[0079]
表1基于低秩矩阵恢复技术的不同检测效果对比
[0080][0081]
综上,本实施例提出一种错误数据注入攻击的检测方法,基于电网相对较大的惯性特征的异常节点判别器,还引入了行稀疏惩罚的低秩矩阵恢复技术;与现有的其它技术方案相比,本实施例的方案依托于电网与错误数据注入攻击的结构特征具有可解释性强(相较于基于深度学习方法),可靠性高(相较于基于深度学习方法),识别率高和虚警率低(相较于原有的基于压缩感知的方法)的优点。
[0082]
为上述的错误数据注入攻击的检测方法,本技术提出一种错误数据注入攻击的检测装置,应用于智能电网。请参阅图2,图2是本技术错误数据注入攻击的检测装置一实施例的结构示意图。在本实施例中,错误数据注入攻击的检测装置可以包括:
[0083]
数据接收模块110,用于接收测量数据,并将接收到的测量数据组成测量数据矩阵;其中,测量数据包括从智能电网的节点测量获得的功率流向量。
[0084]
异常测量节点判别模块120,用于对测量数据矩阵进行计算,获得预设时刻下每一行的相对变化值以及每一行的相对变化值的方差;通过方差判断测量数据矩阵的每一行是否被攻击,并根据判断结果,对测量数据矩阵进行0赋值处理,从而获得第一数据矩阵。
[0085]
低秩矩阵恢复模块130,用于对第一数据矩阵进行低秩矩阵恢复处理以及行稀疏优化,得到第一优化问题;采用增广拉格朗日乘子方法对第一优化问题进行求解,从而得出矩阵的分解结果,进而得出错误数据注入攻击的检测结果。
[0086]
可选地,异常测量节点判别模块120还用于将测量数据矩阵中未被攻击的行的数值置为0,被攻击的行的数值保持不变,从而获得第一数据矩阵。
[0087]
可选地,数据接收模块110还用于将测量数据中相同测量节点的不同时刻获得的功率流向量分为一行,不同测量节点的相同时刻获得的功率流向量分为一列,从而组成测量数据矩阵。
[0088]
可选地,异常测量节点判别模块120还用于:计算t时刻在第i个测量节点处的相对
变化值rf
i,t
为:其中,z
i,t
表示在t时刻第i个节点测量获得的功率流向量;z
i,t
‑1表示在t

1时刻第i个节点测量获得的功率流向量;得到所有的测量节点在所有时刻的相对变化值后,计算第i个测量节点在测量时段t内的相对变化值的方差v
i
为:v
i
=var([rf
i,t
,

,rf
i,t t
])。
[0089]
可选地,异常测量节点判别模块120还用于:设置阈值α;若方差v
i
大于阈值α,则确定与方差v
i
相应的测量节点在t时段内被错误数据注入攻击;若方差v
i
小于或等于阈值α,则确定与方差v
i
相应的测量节点在t时段内未被错误数据注入攻击。
[0090]
可选地,第一优化问题为:
[0091][0092]
s.t.z
a
=z0 a;
[0093]
其中,z
a
是测量数据矩阵,z0是原本未被攻击的功率流矩阵,a是错误数据注入攻击矩阵;||z0||
*
是核范数,||a
t
||
p,1
代表第一数据矩阵行稀疏惩罚,||a||
1,1
代表第一数据矩阵总体稀疏惩罚,λ是行稀疏的惩罚参数,μ是第一数据矩阵的整稀疏惩罚参数;p是预设参数。
[0094]
综上,本技术提出错误数据注入攻击的检测方法及装置,应用于智能电网,本技术综合考虑异常检测方法的有效性,可靠性以及可解释性,在基于压缩感知技术的异常检测方法的基础上,通过深入分析错误数据攻击的特征与电网系统较大的惯性,提出了些许改进,在保证较高的错误数据注入攻击识别率的基础上大幅降低了原有方法的虚警率,得到了一个可靠的,可解释的,且在绝大多数场景中取得了很高的攻击检出率以及极低虚警率的异常检测方法。
[0095]
可以理解的是,此处所描述的具体实施例仅用于解释本技术,而非对本技术的限定。另外为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。文中所使用的步骤编号也仅是为了方便描述,不对作为对步骤执行先后顺序的限定。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0096]
本技术中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0097]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0098]
以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献