一种可识别量测篡改攻击的智能电网故障诊断方法转让专利

申请号 : CN202010301121.5

文献号 : CN111413565B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王涛刘伟陈孝天

申请人 : 西华大学

摘要 :

本发明公开了一种可识别量测篡改攻击的智能电网故障诊断方法,首先利用电气量聚类检测法确定疑似故障元件,缩小了诊断范围。其次,本发明基于记忆脉冲神经膜系统建立了量测篡改攻击识别模型,有效解决了量测篡改攻击引发故障诊断误动作问题。最后,本发明利用记忆脉冲神经膜系统的记忆回溯思想建立了一种可综合利用遥测量和遥信量的故障诊断模型,不仅改变了原有基于产生式规则无法利用遥测量建模的缺点,还能在诊断出故障元件的情况下确定故障类型。

权利要求 :

1.一种可识别量测篡改攻击的智能电网故障诊断方法,其特征在于,包括以下步骤:S1、针对智能电网中发生故障并完成断路器开断检测后的元件,采用电气量聚类检测法确定疑似故障元件;

S2、针对每个疑似故障元件,分别建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型,并通过TRMA算法进行求解,判断每个疑似故障元件是否遭受量测篡改攻击,若是则进入步骤S3,否则进入步骤S4;

S3、判定此时的继电保护装置动作为量测篡改攻击遥测量引起的虚假动作,结束智能电网故障诊断;

S4、针对每个未遭受量测篡改攻击的疑似故障元件,根据电网的拓扑结构与保护格局,分别建立基于记忆脉冲神经膜系统的故障诊断模型,并通过FDMA算法进行求解,得到疑似故障元件的故障诊断结果,结束智能电网故障诊断;

所述步骤S2包括以下分步骤:

S21、针对每个疑似故障元件,分别建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型ΠT;

S22、将故障瞬间疑似故障元件的SCADA遥测量与RTU遥测量进行归一化处理,得到SCADA电压与RTU电压在采样时间范围内的实时故障电压归一化值;

S23、将SCADA电压与RTU电压在采样时间范围内的实时故障电压归一化值分别拆分为s个采样时间点,并将各采样时间点的SCADA实时故障电压归一化值输入量测篡改攻击识别模型ΠT的感知神经元中,将各采样时间点的RTU实时故障电压归一化值输入量测篡改攻击识别模型ΠT的记忆神经元中;

S24、通过TRMA算法对每个疑似故障元件的量测篡改攻击识别模型ΠT进行求解,得到各个量测篡改攻击识别模型ΠT中输出神经元的脉冲值;

S25、依次判断每个量测篡改攻击识别模型ΠT中是否存在任意输出神经元的脉冲值低于检测阈值,若是则判定该疑似故障元件遭受量测篡改攻击,进入步骤S3,否则判定该疑似故障元件未遭受量测篡改攻击,进入步骤S4;

所述步骤S21中建立的基于记忆脉冲神经膜系统的量测篡改攻击识别模型ΠT具体为:ΠT=(O,σ1,...,σm,syn,in,out)

其中O={a}表示神经脉冲的集合,a表示一个神经脉冲,σ1,...,σm为量测篡改攻击识别模型ΠT中的m个神经元,σi=(θi,λi,τi,ri),i=1,2,...,m,θi表示第i个神经元的脉冲值,其取值为[0,1]上的实数;λi表示第i个神经元的点火阀值,其取值为任意实数;τi表示第i个神经元的记忆标签值,其取值为[0,c]上的整数,c为记忆事件的总个数;ri表示第i个神经元的点火规则,其形式为E/a(θ,τ)→a(β,τ),其中E={an,θ≥λi}为点火条件,表示当且仅当神经元σi接收到至少n个脉冲且该神经元脉冲值满足θ≥λi时,才能执行点火规则,此时神经元σi将消耗一个位势值为θ的脉冲,产生并向后传输一个值为β的新脉冲,与此同时,该神经元的标签值τi被消耗掉,并向后传递一个新的标签值τi;否则,该神经元不执行点火计算;syn={1,2,...,m}×{1,2,...,m}表示神经元之间的有向突触连接关系,in,out分别表示量测篡改攻击识别模型ΠT的输入神经元集合和输出神经元集合;

所述量测篡改攻击识别模型ΠT包括正序电压量测篡改攻击识别模型ΠTP、负序电压量测篡改攻击识别模型ΠTN和零序电压量测篡改攻击识别模型ΠTZ;

所述量测篡改攻击识别模型ΠT中的神经元包括用于从环境感知或存储脉冲值与记忆事件标签值的存储神经元和用于对脉冲值与记忆事件标签值进行计算的计算神经元;

所述存储神经元包括感知神经元、记忆神经元和传输神经元;所述感知神经元用于从环境中获取检测信息,将其转化为实时基本事件特征,并以神经脉冲值的形式向后传递;所述记忆神经元用于存储记忆基本事件特征及其对应的记忆标签值;所述传输神经元用于将其突触前神经元传来的脉冲值与记忆标签值传递给其突触后神经元;

所述计算神经元包括dis计算神经元、max计算神经元、min计算神经元和rel计算神经元;所述dis计算神经元用于通过计算感知神经元与记忆神经元脉冲值的差异度获取当前SCADA实时基本故障特征与RTU实时基本故障特征之间的匹配程度;所述max计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑或计算,即取其突触前神经元的最大脉冲值作为当前max计算神经元的脉冲值参与后续计算;所述min计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑与计算,即取其突触前神经元的最小脉冲值作为当前min计算神经元的脉冲值参与后续计算;所述rel计算神经元用于对其突触前神经元传递而来的脉冲值进行全局匹配度计算,即找出其突触前神经元中编号最小的传输神经元在全局中的匹配程度;

所述步骤S24中通过TRMA算法对每个疑似故障元件的量测篡改攻击识别模型ΠT进行求解的具体方法为:A1、设置推理步数g=0;

A2、对每个满足点火条件的存储神经元进行点火计算,并根据下式更新δg+1与νg+1:A3、对每个满足点火条件的计算神经元进行点火计算,并根据下式更新θg+1与τg+1:A4、令推理步数g加1;

A5、判断是否满足运行条件θg≠01或δg≠02,若是则返回步骤A2,否则结束TRMA算法,输出得到量测篡改攻击识别模型ΠT中输出神经元的脉冲值;

所述TRMA算法中涉及的向量、矩阵与运算算子含义如下:

θ=(θ1,θ2,...,θp)T表示存储神经元脉冲值向量,其中θi为第i个存储神经元的脉冲值,取值为[0,1]上的实数,i=1,2,...,p,p表示存储神经元的数量;在所述量测篡改攻击识别模型ΠT中,当1≤i≤s时,θi为SCADA实时故障电压归一化值,当(s+1)≤i≤(s+s*c)时,θi为RTU实时故障电压归一化值,c为记忆事件总个数,s为采样时间点总个数;

δ=(δ1,δ2,...,δq)T表示计算神经元脉冲值向量,其中δj为第j个计算神经元的脉冲值,取值为[0,1]上的实数,j=1,2,...,q,q表示计算神经元的数量;

τ=(τ1,τ2,...,τp)T表示存储神经元标签值向量,其中τi为第i个存储神经元的标签值,取值为[0,c]上的整数;在所述量测篡改攻击识别模型ΠT中,当1≤i≤(s+s*c)时,τi全部为

0;

ν=(ν1,ν2,...,νq)T表示计算神经元标签值向量,其中νj为第j个计算神经元的标签值,取值为[0,c]上的整数;

D1=(dij)p×q是一个p×q阶矩阵,表示存储神经元到dis计算神经元的有向突触连接关系,若存储神经元σi到dis计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

D2=(dij)p×q是一个p×q阶矩阵,表示存储神经元到max计算神经元的有向突触连接关系,若存储神经元σi到max计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

D3=(dij)p×q是一个p×q阶矩阵,表示存储神经元到min计算神经元的有向突触连接关系,若存储神经元σi到min计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

D4=(dij)p×q是一个p×q阶矩阵,表示存储神经元到rel计算神经元的有向突触连接关系,若存储神经元σi到rel计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

E=(eji)q×p是一个q×p阶矩阵,表示计算神经元到存储神经元的有向突触连接关系,若计算神经元σj到存储神经元σi存在突触连接,则eji=1,否则eji=0;

Δ表示dis计算,且DTΔθ=(d1,d2,...,dq),其中dj=|d1j×θ1-d2j×θ2…-dpj×θp|;

·表示max计算,且DT·θ=(d1,d2,...,dq),其中dj=max(d1j×θ1,d2j×θ2,...,dpj×θp);

表示min计算,且 其中dj=min(d1j×θ1,d2j×θ2...,dpj×θp);

表示rel计算,且 其中

θmax表示位于rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在所述量测篡改攻击识别模型ΠT中取值为1;

表示取标签计算,且 其中 为取

标签运算,当且仅当 内部各非0元素均相同时,dj=d1j×τ1,否则dj=0;

其中 当且仅当 内部各非0元素均相同时,ei=e1i×ν1,否则ei

=0;

表示求和计算,且 其中

上标T表示向量和矩阵的转置,下标g表示推理步数;

所述步骤S4包括以下分步骤:

S41、针对每个未遭受量测篡改攻击的疑似故障元件,根据电网的拓扑结构与保护格局,分别建立基于记忆脉冲神经膜系统的故障诊断模型ΠF;所述故障诊断模型ΠF包括正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN、零序电压故障诊断模型ΠFZ和遥信量故障诊断模型ΠFB;

S42、将疑似故障元件的SCADA遥测量与该元件不同类型故障的历史遥测量分别进行归一化处理,得到SCADA实时故障电压归一化值和SCADA历史故障电压归一化值;

S43、将SCADA实时故障电压归一化值和SCADA历史故障电压归一化值分别拆分为s个采样时间点,并将各采样时间点的SCADA实时故障电压归一化值分别输入正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN和零序电压故障诊断模型ΠFZ的感知神经元中,将与该元件相关的遥信量脉冲值输入遥信量故障诊断模型ΠFB的感知神经元中,将各采样时间点的SCADA历史故障电压归一化值分别输入正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN和零序电压故障诊断模型ΠFZ的记忆神经元中,将与该元件相关的历史故障遥信量作为脉冲值输入遥信量故障诊断模型ΠFB的记忆神经元中;

S44、通过FDMA算法对每个疑似故障元件的故障诊断模型ΠF进行求解,得到各个故障诊断模型ΠF中输出神经元的脉冲值和记忆标签值;

S45、计算各个故障诊断模型ΠF的记忆标签值所对应的脉冲值均值fz,并将fz中最大值对应的记忆标签值所表示的故障基本事件作为疑似故障元件的故障诊断结果,所述记忆标签值所对应的脉冲值均值fz的计算公式为:其中z表示输出神经元的记忆标签值,取值为[0,c]上的整数, 表示正序电压故障诊断模型ΠFP中输出神经元的记忆标签值为z时对应的脉冲值, 表示负序电压故障诊断模型ΠFN中输出神经元的记忆标签值为z时对应的脉冲值, 表示零序电压故障诊断模型ΠFZ中输出神经元的记忆标签值为z时对应的脉冲值, 表示遥信量故障诊断模型ΠFB中输出神经元的记忆标签值为1时对应的脉冲值, 表示遥信量故障诊断模型ΠFB中输出神经元的记忆标签值为2时对应的脉冲值;

所述步骤S41中建立的基于记忆脉冲神经膜系统的故障诊断模型ΠF具体为:

ΠF=(O,σ1,...,σm,syn,in,out)

其中O={a}表示神经脉冲的集合,a表示一个神经脉冲,σ1,...,σm为故障诊断模型ΠF中的m个神经元,σi=(θi,λi,τi,ri),i=1,2,...,m,θi表示第i个神经元的脉冲值,其取值为[0,1]上的实数;λi表示第i个神经元的点火阀值,其取值为任意实数;τi表示第i个神经元的记忆标签值,其取值为[0,c]上的整数,c为记忆事件的总个数;ri表示第i个神经元的点火规则,其形式为E/a(θ,τ)→a(β,τ),其中E={an,θ≥λi}为点火条件,表示当且仅当神经元σi接收到至少n个脉冲且该神经元脉冲值满足θ≥λi时,才能执行点火规则,此时神经元σi将消耗一个位势值为θ的脉冲,产生并向后传输一个值为β的新脉冲,与此同时,该神经元的标签值τi被消耗掉,并向后传递一个新的标签值τi;否则,该神经元不执行点火计算;syn={1,

2,...,m}×{1,2,...,m}表示神经元之间的有向突触连接关系,in,out分别表示故障诊断模型ΠF的输入神经元集合和输出神经元集合;

所述故障诊断模型ΠF中的神经元包括用于从环境感知或存储脉冲值与记忆事件标签值的存储神经元和用于对脉冲值与记忆事件标签值进行计算的计算神经元;

所述存储神经元包括感知神经元、记忆神经元和传输神经元;所述感知神经元用于从环境中获取检测信息,将其转化为实时基本事件特征,并以神经脉冲值的形式向后传递;所述记忆神经元用于存储记忆基本事件特征及其对应的记忆标签值;所述传输神经元用于将其突触前神经元传来的脉冲值与记忆标签值传递给其突触后神经元;

所述计算神经元包括dis计算神经元、max计算神经元、min计算神经元和rel计算神经元;所述dis计算神经元用于通过计算感知神经元与记忆神经元脉冲值的差异度获取当前实时基本故障特征与历史故障特征之间的匹配程度;所述max计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑或计算,即取其突触前神经元的最大脉冲值作为当前max计算神经元的脉冲值参与后续计算;所述min计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑与计算,即取其突触前神经元的最小脉冲值作为当前min计算神经元的脉冲值参与后续计算;所述rel计算神经元用于对其突触前神经元传递而来的脉冲值进行全局匹配度计算,即找出其突触前神经元中编号最小的传输神经元在全局中的匹配程度;

所述步骤S44中通过FDMA算法对每个疑似故障元件的故障诊断模型ΠF进行求解的具体方法为:B1、设置推理步数g=0;

B2、对每个满足点火条件的存储神经元进行点火计算,并根据下式更新δg+1与νg+1:B3、对每个满足点火条件的计算神经元进行点火计算,并根据下式更新θg+1与τg+1:B4、令推理步数g加1;

B5、判断是否满足运行条件θg≠01或δg≠02,若是则返回步骤A2,否则结束FDMA算法,输出得到各个故障诊断模型ΠF中输出神经元的脉冲值和记忆标签值;

所述FDMA算法中涉及的向量、矩阵与运算算子含义如下:

θ=(θ1,θ2,...,θp)T表示存储神经元脉冲值向量,其中θi为第i个存储神经元的脉冲值,取值为[0,1]上的实数,i=1,2,...,p,p表示存储神经元的数量;在所述故障诊断模型ΠF中,当1≤i≤s时,θi为SCADA实时故障电压归一化值,当(s+1)≤i≤(s+s*c)时,θi为不同故障类型的SCADA历史故障电压归一化值,c为记忆事件总个数,s为采样时间点总个数;

δ=(δ1,δ2,...,δq)T表示计算神经元脉冲值向量,其中δj为第j个计算神经元的脉冲值,取值为[0,1]上的实数,j=1,2,...,q,q表示计算神经元的数量;

τ=(τ1,τ2,...,τp)T表示存储神经元标签值向量,其中τi为第i个存储神经元的标签值,取值为[0,c]上的整数;在所述故障诊断模型ΠF中,当1≤i≤s时,τi全部为0,当(s+1)≤i≤(s+s*c)时,τi为记忆基本故障事件类型;

T

ν=(ν1,ν2,...,νq) 表示计算神经元标签值向量,其中νj为第j个计算神经元的标签值,取值为[0,c]上的整数;

D1=(dij)p×q是一个p×q阶矩阵,表示存储神经元到dis计算神经元的有向突触连接关系,若存储神经元σi到dis计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

D2=(dij)p×q是一个p×q阶矩阵,表示存储神经元到max计算神经元的有向突触连接关系,若存储神经元σi到max计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

D3=(dij)p×q是一个p×q阶矩阵,表示存储神经元到min计算神经元的有向突触连接关系,若存储神经元σi到min计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

D4=(dij)p×q是一个p×q阶矩阵,表示存储神经元到rel计算神经元的有向突触连接关系,若存储神经元σi到rel计算神经元σj存在有向突触连接,则dij=1,否则dij=0;

E=(eji)q×p是一个q×p阶矩阵,表示计算神经元到存储神经元的有向突触连接关系,若计算神经元σj到存储神经元σi存在突触连接,则eji=1,否则eji=0;

T

Δ表示dis计算,且DΔθ=(d1,d2,...,dq),其中dj=|d1j×θ1-d2j×θ2...-dpj×θp|;

·表示max计算,且DT·θ=(d1,d2,...,dq),其中dj=max(d1j×θ1,d2j×θ2,...,dpj×θp);

表示min计算,且 其中dj=min(d1j×θ1,d2j×θ2...,dpj×θp);

表示rel计算,且 其中

θmax表示位于rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在所述故障诊断模型ΠF中取值0.5;

表示取标签计算,且 其中 为取

标签运算,当且仅当 内部各非0元素均相同时,dj=d1j×τ1,否则dj=0;

其中 当且仅当 内部各非0元素均相同时,ei=e1i×ν1,否则ei

=0;

表示求和计算,且 其中

上标T表示向量和矩阵的转置,下标g表示推理步数。

2.根据权利要求1所述的智能电网故障诊断方法,其特征在于,所述步骤S1包括以下分步骤:S11、当智能电网内继电器动作或断路器跳闸时,获取智能电网中0.1s、0.2s和0.5s内各母线、发电机与变压器内的电压值;

S12、将所述电压值归一化后与智能电网处于正常运行状态下的电压归一化值进行聚类分析,归一化公式为:其中x′表示归一化处理后的电压值,x表示待归一化处理的电压值,xmax和xmin分别为待归一化电压值中的最大值与最小值;

S13、将离聚类中心最远的元件作为疑似故障元件。

说明书 :

一种可识别量测篡改攻击的智能电网故障诊断方法

技术领域

[0001] 本发明属于智能电网故障诊断技术领域,具体涉及一种可识别量测篡改攻击的智能电网故障诊断方法的设计。

背景技术

[0002] 虚假数据注入攻击是针对智能电网的一种重要网络攻击手段,其指攻击者利用输电网状态估计中基于残差的不良数据检测漏洞,成功地向数据采集与监控系统(SCADA)或广域测量系统(WAMS)注入虚假数据,达到修改智能电网量测值与状态变量、控制智能电网运行状态或获取经济利益等不法目的。随着信息通信技术在现代智能电网中的深度渗透,物理电力网潮流与信息网信息流交换日益频繁,现代智能电网已经发展成为由物理电力网与信息网融合而成的电力信息物理融合系统。由于信息系统不可避免的存在缺陷、漏洞与故障等情况,可以发起网络攻击的入口很多,这些虚假数据注入攻击将破坏智能电网运行的安全稳定运行。故障诊断作为智能电网安全控制的核心内容之一,对电网安全稳定运行起着关键性作用。虚假数据注入攻击
[0003] 作为一种重要的新型网络攻击方式,虚假注入攻击对智能电网的安全控制具有重要影响,因此受到了广泛关注。但是截至目前,现有研究几乎只集中于虚假数据注入攻击对故障事件前电力系统安全稳定运行的影响分析,暂未涉及虚假数据注入攻击对故障事件后电力系统故障诊断与恢复影响的探索。虽然现有研究工作在为提高电网三道防线中虚假数据注入攻击的识别与抵御而不断努力,但是根据工程实际经验,绝对坚强可靠的防御能力是无法保证的。因此,计及虚假数据注入攻击的智能电网故障诊断方法亟待研究,对社会经济与国家安全具有重要现实意义。虚假数据注入攻击在故障诊断系统中形式多样,根据攻击位置可将其分为两类:欺诈性数据攻击与量测篡改攻击,攻击位置如图1所示。
[0004] 由图1可见,欺诈性攻击发生于状态估计之后,主要作用于网络层与系统层,包括:(1)在网络层利用系统漏洞注入欺诈性数据欺瞒网络层,使其传给系统层数据的准确性无法保证,以此实现电网调度自动化系统的间接攻击(见图1中位置d);(2)在系统层注入欺诈性数据直接攻击电网调度自动化系统(见图1中位置e)。因此,欺诈性数据攻击是通过间接或直接攻击电网的电网调度自动化系统来影响继电保护装置故障信息的真实性和准确性,进而阻碍故障设备的准确与快速诊断。量测篡改攻击发生在状态估计之前,可作用于设备层与网络层,其利用智能电网漏洞突破智能电网状态估计器来实现对RTU(远程终端单元,见图1中位置a)、PMU(相量测量单元,见图1中位置b)等量测设备所采集数据或网络层数据(见图1中位置c)的恶意篡改。这种攻击方式下,被篡改的数据可以直接作用于RTU、PMU或继电保护装置,使其采集到的数据发生错误,导致故障系统不能及时准确地做出有效故障决策,给后续故障诊断与恢复产生灾难性影响,进而造成重大经济损失与不良社会影响。因此,研究量测篡改攻击行为下的故障诊断方法具有重要意义。
[0005] 截至目前,电网故障诊断领域已经涌现出多种优秀诊断方法,例如专家系统、人工神经网络、Bayesian(贝叶斯)网络、petri网、优化算法与脉冲神经膜系统等。在电网不涉及量测篡改攻击时,这些方法皆表现良好。但是,当故障事件涉及量测篡改攻击时,上述方法的诊断正确性将大大下降(往往伴随严重的误诊断)。因此,可以应对量测篡改攻击的新型故障诊断方法亟待探索。
[0006] 上述方法中,脉冲神经膜系统(Spiking Neural P System,SNPS)由于其强大的信息处理与计算能力、知识表达与推理能力受到广泛关注,近年来被用于探索全新的基于膜计算框架的故障信息处理机制与故障诊断方法,成为当前膜计算与生物计算领域的研究热点。SNPS是受生物神经元/人脑以脉冲(Spike)形式存储、传递和交换信息的机制启发,而提出的一类特殊神经型膜系统,是一种全新的仿生分布式智能并行计算模型,现有研究成果展示了其在故障诊断领域的巨大应用潜力。但是截至目前,现有SNPS故障诊断模型都是利用离散遥信量基于产生式规则来建立诊断模型。上述建模思路无法利用在时间维度上具有连续性的遥测量信息,且无法判定故障元件的故障类型。此外,当计及量测篡改攻击时,由于遭受篡改的遥测量会引起继电保护装置误动或拒动,即遥信量的准确性已经无法保证,且其错误率将与攻击程度成正比。因此,仅仅利用遥测量信息的传统建模方法已经不能适应网络攻击背景下电网故障诊断领域面临的实际问题。
[0007] 综上所述,目前智能电网故障诊断方法存在以下问题:
[0008] (1)故障诊断方法未考虑到量测篡改攻击带来的影响,当量测篡改攻击行为发生时,现有故障诊断方法将出现严重误诊断。
[0009] (2)现有基于产生式规则的故障诊断模型,如:petri网模型,SNPS模型无法综合利用遥测量与遥信量实现故障诊断,这导致其实现决策风险存在,由于遭受篡改的遥测量会引起继电保护装置误动或拒动,即遥信量的准确性已经无法保证,且无法判定故障元件的故障类型。

发明内容

[0010] 本发明的目的是为了解决现有智能电网故障诊断方法存在的上述问题,提出了一种可识别量测篡改攻击的智能电网故障诊断方法。
[0011] 本发明的技术方案为:一种可识别量测篡改攻击的智能电网故障诊断方法,包括以下步骤:
[0012] S1、针对智能电网中发生故障并完成断路器开断检测后的元件,采用电气量聚类检测法确定疑似故障元件。
[0013] S2、针对每个疑似故障元件,分别建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型,并通过TRMA算法进行求解,判断每个疑似故障元件是否遭受量测篡改攻击,若是则进入步骤S3,否则进入步骤S4。
[0014] S3、判定此时的继电保护装置动作为量测篡改攻击遥测量引起的虚假动作,结束智能电网故障诊断。
[0015] S4、针对每个未遭受量测篡改攻击的疑似故障元件,根据电网的拓扑结构与保护格局,分别建立基于记忆脉冲神经膜系统的故障诊断模型,并通过FDMA算法进行求解,得到疑似故障元件的故障诊断结果,结束智能电网故障诊断。
[0016] 进一步地,步骤S1包括以下分步骤:
[0017] S11、当智能电网内继电器动作或断路器跳闸时,获取智能电网中0.1s、0.2s和0.5s内各母线、发电机与变压器内的电压值。
[0018] S12、将电压值归一化后与智能电网处于正常运行状态下的电压归一化值进行聚类分析,归一化公式为:
[0019]
[0020] 其中x′表示归一化处理后的电压值,x表示待归一化处理的电压值,xmax和xmin分别为待归一化电压值中的最大值与最小值。
[0021] S13、将离聚类中心最远的元件作为疑似故障元件。
[0022] 进一步地,步骤S2包括以下分步骤:
[0023] S21、针对每个疑似故障元件,分别建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型ΠT。
[0024] S22、将故障瞬间疑似故障元件的SCADA遥测量与RTU遥测量进行归一化处理,得到SCADA电压与RTU电压在采样时间范围内的实时故障电压归一化值。
[0025] S23、将SCADA电压与RTU电压在采样时间范围内的实时故障电压归一化值分别拆分为s个采样时间点,并将各采样时间点的SCADA实时故障电压归一化值输入量测篡改攻击识别模型ΠT的感知神经元中,将各采样时间点的RTU实时故障电压归一化值输入量测篡改攻击识别模型ΠT的记忆神经元中。
[0026] S24、通过TRMA算法对每个疑似故障元件的量测篡改攻击识别模型ΠT进行求解,得到各个量测篡改攻击识别模型ΠT中输出神经元的脉冲值。
[0027] S25、依次判断每个量测篡改攻击识别模型ΠT中是否存在任意输出神经元的脉冲值低于检测阈值,若是则判定该疑似故障元件遭受量测篡改攻击,进入步骤S3,否则判定该疑似故障元件未遭受量测篡改攻击,进入步骤S4。
[0028] 进一步地,步骤S24中通过TRMA算法对每个疑似故障元件的量测篡改攻击识别模型ΠT进行求解的具体方法为:
[0029] A1、设置推理步数g=0。
[0030] A2、对每个满足点火条件的存储神经元进行点火计算,并根据下式更新δg+1与νg+1:
[0031]
[0032]
[0033] A3、对每个满足点火条件的计算神经元进行点火计算,并根据下式更新θg+1与τg+1:
[0034]
[0035]
[0036] A4、令推理步数g加1。
[0037] A5、判断是否满足运行条件θg≠01或δg≠02,若是则返回步骤A2,否则结束TRMA算法,输出得到量测篡改攻击识别模型ΠT中输出神经元的脉冲值。
[0038] TRMA算法中涉及的向量、矩阵与运算算子含义如下:
[0039] θ=(θ1,θ2,...,θp)T表示存储神经元脉冲值向量,其中θi为第i个存储神经元的脉冲值,取值为[0,1]上的实数,i=1,2,...,p,p表示存储神经元的数量;在量测篡改攻击识别模型ΠT中,当1≤i≤s时,θi为SCADA实时故障电压归一化值,当(s+1)≤i≤(s+s*c)时,θi为RTU实时故障电压归一化值,c为记忆事件总个数,s为采样时间点总个数。δ=(δ1,δ2,...,δq)T表示计算神经元脉冲值向量,其中δj为第j个计算神经元的脉冲值,取值为[0,1]上的实数,j=1,2,...,q,q表示计算神经元的数量。τ=(τ1,τ2,...,τp)T表示存储神经元标签值向量,其中τi为第i个存储神经元的标签值,取值为[0,c]上的整数;在量测篡改攻击识别模型ΠT中,当1≤i≤(s+s*c)时,τi全部为0。ν=(ν1,ν2,...,νq)T表示计算神经元标签值向量,其中νj为第j个计算神经元的标签值,取值为[0,c]上的整数。D1=(dij)p×q是一个p×q阶矩阵,表示存储神经元到dis计算神经元的有向突触连接关系,若存储神经元σi到dis计算神经元σj存在有向突触连接,则dij=1,否则dij=0。D2=(dij)p×q是一个p×q阶矩阵,表示存储神经元到max计算神经元的有向突触连接关系,若存储神经元σi到max计算神经元σj存在有向突触连接,则dij=1,否则dij=0。D3=(dij)p×q是一个p×q阶矩阵,表示存储神经元到min计算神经元的有向突触连接关系,若存储神经元σi到min计算神经元σj存在有向突触连接,则dij=1,否则dij=0。D4=(dij)p×q是一个p×q阶矩阵,表示存储神经元到rel计算神经元的有向突触连接关系,若存储神经元σi到rel计算神经元σj存在有向突触连接,则dij=1,否则dij=0。E=(eji)q×p是一个q×p阶矩阵,表示计算神经元到存储神经元的有向突触连接关系,若T
计算神经元σj到存储神经元σi存在突触连接,则eji=1,否则eji=0。Δ表示dis计算,且D Δθ=(d1,d2,...,dq),其中dj=|d1j×θ1-d2j×θ2…-dpj×θp|。·表示max计算,且DT·θ=(d1,d2,...,dq),其中dj=max(d1j×θ1,d2j×θ2,...,dpj×θp)。 表示min计算,且
其中dj=min(d1j×θ1,d2j×θ2...,dpj×θp)。 表示rel计算,且
其中 θmax表示位于
rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在量测篡改攻击识别模型ΠT中取值为1。 表示取标签计算,且 其中 为取
标签运算,当且仅当 内部各非0元素均相同时,dj=d1j×τ1,否则dj=0;
其中 当且仅当 内部各非0元素均相同时,
ei=e1i×ν1,否则ei=0。 表示求和计算,且 其中 上标T
表示向量和矩阵的转置,下标g表示推理步数。
[0040] 进一步地,步骤S4包括以下分步骤:
[0041] S41、针对每个未遭受量测篡改攻击的疑似故障元件,根据电网的拓扑结构与保护格局,分别建立基于记忆脉冲神经膜系统的故障诊断模型ΠF;故障诊断模型ΠF包括正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN、零序电压故障诊断模型ΠFZ和遥信量故障诊断模型ΠFB。
[0042] S42、将疑似故障元件的SCADA遥测量与该元件不同类型故障的历史遥测量分别进行归一化处理,得到SCADA实时故障电压归一化值和SCADA历史故障电压归一化值。
[0043] S43、将SCADA实时故障电压归一化值和SCADA历史故障电压归一化值分别拆分为s个采样时间点,并将各采样时间点的SCADA实时故障电压归一化值分别输入正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN和零序电压故障诊断模型ΠFZ的感知神经元中,将与该元件相关的遥信量脉冲值输入遥信量故障诊断模型ΠFB的感知神经元中,将各采样时间点的SCADA历史故障电压归一化值分别输入正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN和零序电压故障诊断模型ΠFZ的记忆神经元中,将与该元件相关的历史故障遥信量作为脉冲值输入遥信量故障诊断模型ΠFB的记忆神经元中。
[0044] S44、通过FDMA算法对每个疑似故障元件的故障诊断模型ΠF进行求解,得到各个故障诊断模型ΠF中输出神经元的脉冲值和记忆标签值。
[0045] S45、计算各个故障诊断模型ΠF的记忆标签值所对应的脉冲值均值fz,并将fz中最大值对应的记忆标签值所表示的故障基本事件作为疑似故障元件的故障诊断结果,所述记忆标签值所对应的脉冲值均值fz的计算公式为:
[0046]
[0047] 其中z表示输出神经元的记忆标签值,取值为[0,c]上的整数, 表示正序电压故障诊断模型ΠFP中输出神经元的记忆标签值为z时对应的脉冲值, 表示负序电压故障诊断模型ΠFN中输出神经元的记忆标签值为z时对应的脉冲值, 表示零序电压故障诊断模型ΠFZ中输出神经元的记忆标签值为z时对应的脉冲值, 表示遥信量故障诊断模型ΠFB中输出神经元的记忆标签值为1时对应的脉冲值, 表示遥信量故障诊断模型ΠFB中输出神经元的记忆标签值为2时对应的脉冲值。
[0048] 进一步地,步骤S44中通过FDMA算法对每个疑似故障元件的故障诊断模型ΠF进行求解的具体方法为:
[0049] B1、设置推理步数g=0。
[0050] B2、对每个满足点火条件的存储神经元进行点火计算,并根据下式更新δg+1与νg+1:
[0051]
[0052]
[0053] B3、对每个满足点火条件的计算神经元进行点火计算,并根据下式更新θg+1与τg+1:
[0054]
[0055]
[0056] B4、令推理步数g加1。
[0057] B5、判断是否满足运行条件θg≠01或δg≠02,若是则返回步骤A2,否则结束FDMA算法,输出得到各个故障诊断模型ΠF中输出神经元的脉冲值和记忆标签值。
[0058] FDMA算法中涉及的向量、矩阵与运算算子含义如下:
[0059] θ=(θ1,θ2,...,θp)T表示存储神经元脉冲值向量,其中θi为第i个存储神经元的脉冲值,取值为[0,1]上的实数,i=1,2,...,p,p表示存储神经元的数量;在故障诊断模型ΠF中,当1≤i≤s时,θi为SCADA实时故障电压归一化值,当(s+1)≤i≤(s+s*c)时,θi为不同故障类型的SCADA历史故障电压归一化值,c为记忆事件总个数,s为采样时间点总个数。δ=(δ1,δ2,...,δq)T表示计算神经元脉冲值向量,其中δj为第j个计算神经元的脉冲值,取值为[0,1]上的实数,j=1,2,...,q,q表示计算神经元的数量。τ=(τ1,τ2,...,τp)T表示存储神经元标签值向量,其中τi为第i个存储神经元的标签值,取值为[0,c]上的整数;在故障诊断模型ΠF中,当1≤i≤s时,τi全部为0,当(s+1)≤i≤(s+s*c)时,τi为记忆基本故障事件类T型。ν=(ν1,ν2,...,νq)表示计算神经元标签值向量,其中νj为第j个计算神经元的标签值,取值为[0,c]上的整数。D1=(dij)p×q是一个p×q阶矩阵,表示存储神经元到dis计算神经元的有向突触连接关系,若存储神经元σi到dis计算神经元σj存在有向突触连接,则dij=1,否则dij=0。D2=(dij)p×q是一个p×q阶矩阵,表示存储神经元到max计算神经元的有向突触连接关系,若存储神经元σi到max计算神经元σj存在有向突触连接,则dij=1,否则dij=0。D3=(dij)p×q是一个p×q阶矩阵,表示存储神经元到min计算神经元的有向突触连接关系,若存储神经元σi到min计算神经元σj存在有向突触连接,则dij=1,否则dij=0。D4=(dij)p×q是一个p×q阶矩阵,表示存储神经元到rel计算神经元的有向突触连接关系,若存储神经元σi到rel计算神经元σj存在有向突触连接,则dij=1,否则dij=0。E=(eji)q×p是一个q×p阶矩阵,表示计算神经元到存储神经元的有向突触连接关系,若计算神经元σj到存储神经元σi存在突触连接,则eji=1,否则eji=0。Δ表示dis计算,且DTΔθ=(d1,d2,...,dq),其中dj=|d1j×θ1-d2j×θ2…-dpj×θp|。·表示max计算,且DT·θ=(d1,d2,...,dq),其中dj=max(d1j×θ1,d2j×θ2,...,dpj×θp)。 表示min计算,且 其中dj=min(d1j×θ1,d2j×
θ2...,dpj×θp)。 表示rel计算,且 其中
θmax表示位于rel计算神经元前且max计算
神经元后的神经元脉冲值,θdis表示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在故障诊断模型ΠF中取值0.5。 表示取标签计算,且其中 为取标签运算,当且仅当 内部
各非0元素均相同时 ,dj=d1j×τ1 ,否则d j=0 ; 其中
当且仅当 内部各非0元素均相同时,ei=e1i×ν1,否则ei=0。
表示求和计算,且 其中 上标T表示向量和矩阵的转置,
下标g表示推理步数。
[0060] 本发明的有益效果是:
[0061] (1)本发明利用电气量聚类检测法确定疑似故障元件,缩小了诊断范围。
[0062] (2)本发明基于记忆脉冲神经膜系统建立了量测篡改攻击识别模型,有效解决了量测篡改攻击引发故障诊断误动作问题。
[0063] (3)本发明利用记忆脉冲神经膜系统的记忆回溯思想建立了一种可综合利用遥测量和遥信量的故障诊断模型,不仅改变了原有基于产生式规则无法利用遥测量建模的缺点,还能在诊断出故障元件的情况下确定故障类型。

附图说明

[0064] 图1所示为本发明背景技术中虚假数据注入攻击在故障诊断系统中的攻击位置示意图。
[0065] 图2所示为本发明实施例提供的一种可识别量测篡改攻击的智能电网故障诊断方法流程图。
[0066] 图3所示为本发明实施例提供的感知神经元及其简化形式示意图。
[0067] 图4所示为本发明实施例提供的记忆神经元及其简化形式示意图。
[0068] 图5所示为本发明实施例提供的传输神经元及其简化形式示意图。
[0069] 图6所示为本发明实施例提供的dis计算神经元及其简化形式示意图。
[0070] 图7所示为本发明实施例提供的max计算神经元及其简化形式示意图。
[0071] 图8所示为本发明实施例提供的min计算神经元及其简化形式示意图。
[0072] 图9所示为本发明实施例提供的rel计算神经元及其简化形式示意图。
[0073] 图10所示为本发明实施例提供的基于记忆脉冲神经膜系统的量测篡改攻击识别模型示意图。
[0074] 图11所示为本发明实施例提供的基于记忆脉冲神经膜系统的故障诊断模型示意图。
[0075] 图12所示为本发明实施例提供的疑似故障区域聚类结果示意图。
[0076] 图13所示为本发明实施例提供的线路L1213量测篡改攻击识别模型中感知神经元与记忆神经元的脉冲值曲线示意图。
[0077] 图14所示为本发明实施例提供的线路L1213量测篡改攻击识别模型中输出神经元的脉冲值示意图。
[0078] 图15所示为本发明实施例提供的元件量测篡改攻击检测结果示意图。

具体实施方式

[0079] 现在将参考附图来详细描述本发明的示例性实施方式。应当理解,附图中示出和描述的实施方式仅仅是示例性的,意在阐释本发明的原理和精神,而并非限制本发明的范围。
[0080] 本发明实施例提供了一种可识别量测篡改攻击的智能电网故障诊断方法,如图2所示,包括以下步骤S1~S4:
[0081] S1、针对智能电网中发生故障并完成断路器开断检测后的元件,采用电气量聚类检测法确定疑似故障元件。
[0082] 步骤S1包括以下分步骤S11~S13:
[0083] S11、当智能电网内继电器动作或断路器跳闸时,获取智能电网中0.1s、0.2s和0.5s内各母线、发电机与变压器内的电压值。
[0084] S12、将电压值归一化后与智能电网处于正常运行状态下的电压归一化值进行聚类分析,归一化公式为:
[0085]
[0086] 其中x′表示归一化处理后的电压值,x表示待归一化处理的电压值,xmax和xmin分别为待归一化电压值中的最大值与最小值。
[0087] S13、将离聚类中心最远的元件作为疑似故障元件。
[0088] S2、针对每个疑似故障元件,分别建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型,并通过TRMA算法进行求解,判断每个疑似故障元件是否遭受量测篡改攻击,若是则进入步骤S3,否则进入步骤S4。
[0089] 步骤S2包括以下分步骤S21~S25:
[0090] S21、针对每个疑似故障元件,分别建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型ΠT。
[0091] 本发明实施例中,基于记忆脉冲神经膜系统的量测篡改攻击识别模型ΠT具体为:
[0092] ΠT=(O,σ1,...,σm,syn,in,out)
[0093] 其中O={a}表示神经脉冲的集合,a表示一个神经脉冲,σ1,...,σm为量测篡改攻击识别模型ΠT中的m个神经元,σi=(θi,λi,τi,ri),i=1,2,...,m,θi表示第i个神经元的脉冲值,其取值为[0,1]上的实数;λi表示第i个神经元的点火阀值,其取值为任意实数;τi表示第i个神经元的记忆标签值,其取值为[0,c]上的整数,c为记忆事件的总个数;特殊地,神经元不存在标签值时,其标签值为0;ri表示第i个神经元的点火规则,其形式为E/a(θ,τ)→a(β,τ),其中E={an,θ≥λi}为点火条件,表示当且仅当神经元σi接收到至少n个脉冲且该神经元脉冲值满足θ≥λi时,才能执行点火规则,此时神经元σi将消耗一个位势值为θ的脉冲,产生并向后传输一个值为β的新脉冲,与此同时,该神经元的标签值τi被消耗掉,并向后传递一个新的标签值τi;否则,该神经元不执行点火计算;syn={1,2,...,m}×{1,2,...,m}表示神经元之间的有向突触连接关系,当1≤i≤m时,满足 in,out分别表示量测篡改攻击识别模型ΠT的输入神经元集合和输出神经元集合。
[0094] 本发明实施例中,量测篡改攻击识别模型ΠT包括正序电压量测篡改攻击识别模型ΠTP、负序电压量测篡改攻击识别模型ΠTN和零序电压量测篡改攻击识别模型ΠTZ。
[0095] 本发明实施例中,量测篡改攻击识别模型ΠT中的神经元包括用于从环境感知或存储脉冲值与记忆事件标签值的存储神经元和用于对脉冲值与记忆事件标签值进行计算的计算神经元。
[0096] 其中,存储神经元包括感知神经元、记忆神经元和传输神经元,如图3~图5所示,其分别用圆圈、三角形和菱形表示。所有类型的存储神经元点火后产生的脉冲值满足β=θ,具体功能分别描述如下:
[0097] (1)感知神经元用于从环境中获取检测信息(如遥信量与遥测量),将其转化为实时基本事件特征,并以神经脉冲值的形式向后传递,如图3所示。感知神经元不能存储记忆事件特征,即其不含事件标签。因此,其脉冲值θ表示当前事件的实时基本事件特征值,记忆标签值为0。对于本发明实施例提供的量测篡改攻击识别模型ΠT,感知神经元的脉冲值θ均表示电网SCADA系统中对应采样时间点的故障电压归一化值;感知神经元的记忆标签均为0。
[0098] (2)记忆神经元用于存储记忆基本事件特征及其对应的记忆标签值,如图4所示。在量测篡改攻击识别模型ΠT中,每个记忆神经元对应一个实时基本故障事件特征,因此其脉冲值θ对应该实时基本故障事件发生时的特征值,即当前故障情况下RTU中对应采样时间点的故障电压归一化值;其记忆标签无法确定,因此统一记为0。
[0099] (3)传输神经元用于将其突触前神经元传来的脉冲值与记忆标签值传递给其突触后神经元,如图5所示。特殊地,若传输神经元不存在突触后神经元,则其为输出神经元,负责将脉冲值与记忆标签值输出到环境中。
[0100] 上述各类存储神经元的数量关系满足:若一个记忆脉冲神经膜系统中存储神经元共有p个,其中感知神经元s个,记忆事件c个,则记忆神经元共有s*c个,输出神经元共有p-s-s*c个。
[0101] 计算神经元包括dis计算神经元、max计算神经元、min计算神经元和rel计算神经元,4类计算神经元具有相同功能,即按照点火规则向其突触后传输神经元传递脉冲值与记忆标签值,不同计算神经元的功能描述如下:
[0102] (1)如图6所示,在量测篡改攻击识别模型ΠT中,dis计算神经元用于通过计算感知神经元与记忆神经元脉冲值的差异度获取当前SCADA实时基本故障特征与RTU实时基本故障特征之间的匹配程度。
[0103] (2)如图7所示,max计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑或计算,即取其突触前神经元的最大脉冲值作为当前max计算神经元的脉冲值参与后续计算。
[0104] (3)如图8所示,min计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑与计算,即取其突触前神经元的最小脉冲值作为当前min计算神经元的脉冲值参与后续计算。
[0105] (4)如图9所示,rel计算神经元用于对其突触前神经元传递而来的脉冲值进行全局匹配度计算,即找出其突触前神经元中编号最小的传输神经元在全局中的匹配程度。图9中θmin表示位于rel计算神经元前且min计算神经元后的神经元脉冲值,θmax表示位于rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在量测篡改攻击识别模型ΠT中取值为1。
[0106] 图6~图9中 为取标签值运算,具体运算方式为:
[0107]
[0108] 其中k表示执行取标签运算的神经元总个数,τi为执行取标签运算的第i个神经元的记忆标签值。
[0109] 分别用上述神经元建立量测篡改攻击识别模型ΠT,利用RTU与SCADA遥测数据在量测篡改攻击前后不一致的特点,将RTU遥测数据存储到记忆神经元中,将SCADA遥测数据送入到感知神经元中,通过记忆回溯机制,输出记忆脉冲神经膜系统(Memory Spiking Neural P System,MSNPS)的输出神经元脉冲值,判断最初RTU遥测值与SCADA遥测值是否一致,最终完成量测篡改攻击识别。根据上述各类神经元定义,建立基于记忆脉冲神经膜系统的量测篡改攻击识别模型ΠT(MSNPS-TRM),如图10所示。
[0110] 一个量测篡改识别模型ΠT=(O,σ1,...,σm,syn,in,out)中,感知神经元脉冲值为SCADA中采样时间范围内的故障电压归一化值。具体为:将目标电网SCADA中疑似故障元件某一采样时间范围内的故障电压归一化值拆分为s个采样时间点,并将各采样时间点的故障电压归一化值送至对应s个感知神经元中作为其脉冲值;此时,感知神经元不含记忆标签值,即τi=0(1≤i≤s)。记忆神经元脉冲值为RTU中采样时间范围内的故障电压归一化值,其获取方式与感知神经元脉冲值获取方式一样,只是来源不同。此时,量测篡改识别模型ΠT内记忆神经元存储的记忆事件个数为0(c=0),其对应的记忆标签值记为0,即τi=0(s+1≤i≤2s)。对于正序电压量测篡改攻击识别模型ΠTP、负序电压量测篡改攻击识别模型ΠTN和零序电压量测篡改攻击识别模型ΠTZ,分别选取正序、负序与零序电压归一化值作为感知神经元与记忆神经元的脉冲值即可。
[0111] S22、将故障瞬间疑似故障元件的SCADA遥测量与RTU遥测量进行归一化处理,得到SCADA电压与RTU电压在采样时间范围内的实时故障电压归一化值。
[0112] S23、将SCADA电压与RTU电压在采样时间范围内的实时故障电压归一化值分别拆分为s个采样时间点,并将各采样时间点的SCADA实时故障电压归一化值输入量测篡改攻击识别模型ΠT的感知神经元中,将各采样时间点的RTU实时故障电压归一化值输入量测篡改攻击识别模型ΠT的记忆神经元中。
[0113] S24、通过TRMA算法对每个疑似故障元件的量测篡改攻击识别模型ΠT进行求解,得到各个量测篡改攻击识别模型ΠT中输出神经元的脉冲值。
[0114] 通过TRMA算法对每个疑似故障元件的量测篡改攻击识别模型ΠT进行求解的具体方法为:
[0115] A1、设置推理步数g=0。
[0116] A2、对每个满足点火条件的存储神经元进行点火计算,并根据下式更新δg+1与νg+1:
[0117]
[0118]
[0119] A3、对每个满足点火条件的计算神经元进行点火计算,并根据下式更新θg+1与τg+1:
[0120]
[0121]
[0122] A4、令推理步数g加1。
[0123] A5、判断是否满足运行条件θg≠01或δg≠02,若是则返回步骤A2,否则结束TRMA算法,输出得到量测篡改攻击识别模型ΠT中输出神经元的脉冲值。
[0124] TRMA算法中涉及的向量、矩阵与运算算子含义如下:
[0125] θ=(θ1,θ2,...,θp)T表示存储神经元脉冲值向量,其中θi为第i个存储神经元的脉冲值,取值为[0,1]上的实数,i=1,2,...,p,p表示存储神经元的数量;在量测篡改攻击识别模型ΠT中,当1≤i≤s时,θi为SCADA实时故障电压归一化值,当(s+1)≤i≤(s+s*c)时,θi为RTU实时故障电压归一化值,c为记忆事件总个数,s为采样时间点总个数。
[0126] δ=(δ1,δ2,...,δq)T表示计算神经元脉冲值向量,其中δj为第j个计算神经元的脉冲值,取值为[0,1]上的实数,j=1,2,...,q,q表示计算神经元的数量。
[0127] τ=(τ1,τ2,...,τp)T表示存储神经元标签值向量,其中τi为第i个存储神经元的标签值,取值为[0,c]上的整数;在量测篡改攻击识别模型ΠT中,当1≤i≤(s+s*c)时,τi全部为0。
[0128] ν=(ν1,ν2,...,νq)T表示计算神经元标签值向量,其中νj为第j个计算神经元的标签值,取值为[0,c]上的整数。
[0129] D1=(dij)p×q是一个p×q阶矩阵,表示存储神经元到dis计算神经元的有向突触连接关系,若存储神经元σi到dis计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0130] D2=(dij)p×q是一个p×q阶矩阵,表示存储神经元到max计算神经元的有向突触连接关系,若存储神经元σi到max计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0131] D3=(dij)p×q是一个p×q阶矩阵,表示存储神经元到min计算神经元的有向突触连接关系,若存储神经元σi到min计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0132] D4=(dij)p×q是一个p×q阶矩阵,表示存储神经元到rel计算神经元的有向突触连接关系,若存储神经元σi到rel计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0133] E=(eji)q×p是一个q×p阶矩阵,表示计算神经元到存储神经元的有向突触连接关系,若计算神经元σj到存储神经元σi存在突触连接,则eji=1,否则eji=0。
[0134] Δ表示dis计算,且DTΔθ=(d1,d2,...,dq),其中dj=|d1j×θ1-d2j×θ2...-dpj×θp|。
[0135] ·表示max计算,且DT·θ=(d1,d2,...,dq),其中dj=max(d1j×θ1,d2j×θ2,...,dpj×θp)。
[0136] 表示min计算,且 其中dj=min(d1j×θ1,d2j×θ2...,dpj×θp)。
[0137] 表示rel计算,且 其中θmax表示位于rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表
示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在量测篡改攻击识别模型ΠT中取值为1。特殊地,当量测篡改攻击识别模型ΠT中仅有一个记忆事件标签时,即仅有s个感知神经元与s个记忆神经元时,
[0138] 表示取标签计算,且 其中为取标签运算,当且仅当 内部各非0元素均相同时,dj=d1j×τ1,否则dj=0;
其中 当且仅当 内部各非0元素均相同时,
ei=e1i×ν1,否则ei=0。
[0139] 表示求和计算,且 其中
[0140] 上标T表示向量和矩阵的转置,下标g表示推理步数。
[0141] S25、依次判断每个量测篡改攻击识别模型ΠT中是否存在任意输出神经元的脉冲值低于检测阈值(本发明实施例中检测阈值为0.8),若是则判定该疑似故障元件遭受量测篡改攻击,进入步骤S3,否则判定该疑似故障元件未遭受量测篡改攻击,进入步骤S4。
[0142] S3、判定此时的继电保护装置动作为量测篡改攻击遥测量引起的虚假动作,结束智能电网故障诊断。
[0143] S4、针对每个未遭受量测篡改攻击的疑似故障元件,根据电网的拓扑结构与保护格局,分别建立基于记忆脉冲神经膜系统的故障诊断模型,并通过FDMA算法进行求解,得到疑似故障元件的故障诊断结果,结束智能电网故障诊断。
[0144] 步骤S4包括以下分步骤S41~S45:
[0145] S41、针对每个未遭受量测篡改攻击的疑似故障元件,根据电网的拓扑结构与保护格局,分别建立基于记忆脉冲神经膜系统的故障诊断模型ΠF。
[0146] 其中,故障诊断模型ΠF包括正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN、零序电压故障诊断模型ΠFZ和遥信量故障诊断模型ΠFB。
[0147] 本发明实施例中,基于记忆脉冲神经膜系统的故障诊断模型ΠF具体为:
[0148] ΠF=(O,σ1,...,σm,syn,in,out)
[0149] 其中O={a}表示神经脉冲的集合,a表示一个神经脉冲,σ1,...,σm为故障诊断模型ΠF中的m个神经元,σi=(θi,λi,τi,ri),i=1,2,...,m,θi表示第i个神经元的脉冲值,其取值为[0,1]上的实数;λi表示第i个神经元的点火阀值,其取值为任意实数;τi表示第i个神经元的记忆标签值,其取值为[0,c]上的整数,c为记忆事件的总个数;特殊地,神经元不存在标签值时,其标签值为0;ri表示第i个神经元的点火规则,其形式为E/a(θ,τ)→a(β,τ),其中E={an,θ≥λi}为点火条件,表示当且仅当神经元σi接收到至少n个脉冲且该神经元脉冲值满足θ≥λi时,才能执行点火规则,此时神经元σi将消耗一个位势值为θ的脉冲,产生并向后传输一个值为β的新脉冲,与此同时,该神经元的标签值τi被消耗掉,并向后传递一个新的标签值τi;否则,该神经元不执行点火计算;syn={1,2,...,m}×{1,2,...,m}表示神经元之间的有向突触连接关系,当1≤i≤m时,满足 in,out分别表示故障诊断模型ΠF的输入神经元集合和输出神经元集合。
[0150] 故障诊断模型ΠF中的神经元包括用于从环境感知或存储脉冲值与记忆事件标签值的存储神经元和用于对脉冲值与记忆事件标签值进行计算的计算神经元。
[0151] 其中,存储神经元包括感知神经元、记忆神经元和传输神经元,如图3~图5所示,其分别用圆圈、三角形和菱形表示。所有类型的存储神经元点火后产生的脉冲值满足β=θ,具体功能分别描述如下:
[0152] (1)感知神经元用于从环境中获取检测信息(如遥信量与遥测量),将其转化为实时基本事件特征,并以神经脉冲值的形式向后传递,如图3所示。感知神经元不能存储记忆事件特征,即其不含事件标签。因此,其脉冲值θ表示当前事件的实时基本事件特征值,记忆标签值为0。对于本发明实施例提供的故障诊断模型ΠF,感知神经元的脉冲值θ均表示电网SCADA系统中对应采样时间点的故障电压归一化值;感知神经元的记忆标签均为0。
[0153] (2)记忆神经元用于存储记忆基本事件特征及其对应的记忆标签值,如图4所示。在故障诊断模型ΠF中,每个记忆神经元对应一个记忆基本故障事件特征。因此,其脉冲值θ对应该记忆基本故障事件发生时的特征值,即历史故障情况下SCADA系统中该故障类型对应采样时间点的电压归一化值;其记忆标签值对应该记忆基本故障事件类型。具体地,本发明实施例中根据历史故障类型,确定记忆基本故障事件类型为11个(c=11),分别为:无故障(No Fault),A相短路故障(A),B相短路故障(B),C相短路故障(C),AB相短路故障(AB),AC相短路故障(AC),BC相短路故障(BC),AB相接地短路故障(AB-G),AC相接地短路故障(AC-G),BC相接地短路故障(BC-G)和ABC相短路故障(ABC),依次用1-11表示其记忆标签值。
[0154] (3)传输神经元用于将其突触前神经元传来的脉冲值与记忆标签值传递给其突触后神经元,如图5所示。特殊地,若传输神经元不存在突触后神经元,则其为输出神经元,负责将脉冲值与记忆标签值输出到环境中。
[0155] 上述各类存储神经元的数量关系满足:若一个记忆脉冲神经膜系统中存储神经元共有p个,其中感知神经元s个,记忆事件c个,则记忆神经元共有s*c个,输出神经元共有p-s-s*c个。
[0156] 计算神经元包括dis计算神经元、max计算神经元、min计算神经元和rel计算神经元,4类计算神经元具有相同功能,即按照点火规则向其突触后传输神经元传递脉冲值与记忆标签值,不同计算神经元的功能描述如下:
[0157] (1)如图6所示,在故障诊断模型ΠF中,dis计算神经元用于通过计算感知神经元与记忆神经元脉冲值的差异度获取当前实时基本故障特征与历史故障特征之间的匹配程度。
[0158] (2)如图7所示,max计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑或计算,即取其突触前神经元的最大脉冲值作为当前max计算神经元的脉冲值参与后续计算。
[0159] (3)如图8所示,min计算神经元用于对其突触前神经元传递而来的脉冲值进行逻辑与计算,即取其突触前神经元的最小脉冲值作为当前min计算神经元的脉冲值参与后续计算。
[0160] (4)如图9所示,rel计算神经元用于对其突触前神经元传递而来的脉冲值进行全局匹配度计算,即找出其突触前神经元中编号最小的传输神经元在全局中的匹配程度。图9中θmin表示位于rel计算神经元前且min计算神经元后的神经元脉冲值,θmax表示位于rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在量测篡改攻击识别模型ΠT中取值为1。
[0161] 图6~图9中 为取标签值运算,具体运算方式为:
[0162]
[0163] 其中k表示执行取标签运算的神经元总个数,τi为执行取标签运算的第i个神经元的记忆标签值。
[0164] 分别用上述神经元建立故障诊断模型ΠF,利用故障发生时SCADA故障遥测数据与历史故障情况下遥信数据的匹配程度,根据MSNPS的记忆回溯机制,建立基于记忆脉冲神经膜系统的故障诊断模型ΠF(MSNPS-FDM),完成故障元件与类型识别,如图11所示。
[0165] 一个完整的故障诊断模型ΠF=(O,σ1,...,σm,syn,in,out)需由正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN、零序电压故障诊断模型ΠFZ和遥信量故障诊断模型ΠFB四个子模型组成。特殊地,当确定疑似故障元件已经遭受量测篡改攻击时,其故障遥信量可信度已经不高,故遥信量故障诊断模型ΠFB不参与后续计算。这里需要说明的是,遥信量故障诊断模型ΠFB中感知神经元的脉冲值表示疑似故障元件对应的遥信量信息(保护装置动作,其值取1,反之取0);记忆神经元的脉冲值为历史故障情况下该元件的遥信量信息(保护装置动作,其值取1,反之取0),因此记忆基本事件个数为2(c=2),分别用1、2表示无故障、有故障的记忆标签脉冲值。在遥测量模型ΠFP、ΠFN与ΠFZ中,将SCADA中疑似故障元件的某一采样时间范围内的故障电压归一化值与历史故障情况下该元件的故障电压归一化值均拆分为s个采样时间点,并将各采样时间点的故障电压归一化值分别送至对应的s个感知神经元与记忆神经元中作为其脉冲值。其中,记忆神经元的记忆标签值与该神经元所存储遥测量的历史故障类型有关。
[0166] S42、将疑似故障元件的SCADA遥测量与该元件不同类型故障的历史遥测量分别进行归一化处理,得到SCADA实时故障电压归一化值和SCADA历史故障电压归一化值。
[0167] S43、将SCADA实时故障电压归一化值和SCADA历史故障电压归一化值分别拆分为s个采样时间点,并将各采样时间点的SCADA实时故障电压归一化值分别输入正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN和零序电压故障诊断模型ΠFZ的感知神经元中,将与该元件相关的遥信量脉冲值输入遥信量故障诊断模型ΠFB的感知神经元中(若保护装置动作,则对应脉冲值取1,否则取0)此时ΠFB中感知神经元的标签值为0。将各采样时间点的SCADA历史故障电压归一化值分别输入正序电压故障诊断模型ΠFP、负序电压故障诊断模型ΠFN和零序电压故障诊断模型ΠFZ的记忆神经元中,记忆标签值为其对应的基本故障事件类型(即1-11),将与该元件相关的历史故障遥信量作为脉冲值输入遥信量故障诊断模型ΠFB的记忆神经元中(若保护装置动作,则对应脉冲值取1,否则取0),此时记忆标签值为该元件对应的历史故障发生状态(若故障,则标签值取1,否则取0)
[0168] S44、通过FDMA算法对每个疑似故障元件的故障诊断模型ΠF进行求解,得到各个故障诊断模型ΠF中输出神经元的脉冲值和记忆标签值。
[0169] 通过FDMA算法对每个疑似故障元件的故障诊断模型ΠF进行求解的具体方法为:
[0170] B1、设置推理步数g=0。
[0171] B2、对每个满足点火条件的存储神经元进行点火计算,并根据下式更新δg+1与νg+1:
[0172]
[0173]
[0174] B3、对每个满足点火条件的计算神经元进行点火计算,并根据下式更新θg+1与τg+1:
[0175]
[0176]
[0177] B4、令推理步数g加1。
[0178] B5、判断是否满足运行条件θg≠01或δg≠02,若是则返回步骤A2,否则结束FDMA算法,输出得到各个故障诊断模型ΠF中输出神经元的脉冲值和记忆标签值。
[0179] FDMA算法中涉及的向量、矩阵与运算算子含义如下:
[0180] θ=(θ1,θ2,...,θp)T表示存储神经元脉冲值向量,其中θi为第i个存储神经元的脉冲值,取值为[0,1]上的实数,i=1,2,...,p,p表示存储神经元的数量;在故障诊断模型ΠF中,当1≤i≤s时,θi为SCADA实时故障电压归一化值,当(s+1)≤i≤(s+s*c)时,θi为不同故障类型的SCADA历史故障电压归一化值,c为记忆事件总个数,s为采样时间点总个数。
[0181] δ=(δ1,δ2,...,δq)T表示计算神经元脉冲值向量,其中δj为第j个计算神经元的脉冲值,取值为[0,1]上的实数,j=1,2,...,q,q表示计算神经元的数量。
[0182] τ=(τ1,τ2,...,τp)T表示存储神经元标签值向量,其中τi为第i个存储神经元的标签值,取值为[0,c]上的整数;在故障诊断模型ΠF中,当1≤i≤s时,τi全部为0,当(s+1)≤i≤(s+s*c)时,τi为记忆基本故障事件类型。
[0183] ν=(ν1,ν2,...,νq)T表示计算神经元标签值向量,其中νj为第j个计算神经元的标签值,取值为[0,c]上的整数。
[0184] D1=(dij)p×q是一个p×q阶矩阵,表示存储神经元到dis计算神经元的有向突触连接关系,若存储神经元σi到dis计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0185] D2=(dij)p×q是一个p×q阶矩阵,表示存储神经元到max计算神经元的有向突触连接关系,若存储神经元σi到max计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0186] D3=(dij)p×q是一个p×q阶矩阵,表示存储神经元到min计算神经元的有向突触连接关系,若存储神经元σi到min计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0187] D4=(dij)p×q是一个p×q阶矩阵,表示存储神经元到rel计算神经元的有向突触连接关系,若存储神经元σi到rel计算神经元σj存在有向突触连接,则dij=1,否则dij=0。
[0188] E=(eji)q×p是一个q×p阶矩阵,表示计算神经元到存储神经元的有向突触连接关系,若计算神经元σj到存储神经元σi存在突触连接,则eji=1,否则eji=0。
[0189] Δ表示dis计算,且DTΔθ=(d1,d2,...,dq),其中dj=|d1j×θ1-d2j×θ2…-dpj×θp|。
[0190] ·表示max计算,且DT·θ=(d1,d2,...,dq),其中dj=max(d1j×θ1,d2j×θ2,...,dpj×θp)。
[0191] 表示min计算,且 其中dj=min(d1j×θ1,d2j×θ2...,dpj×θp)。
[0192] 表示rel计算,且 其中θmax表示位于rel计算神经元前且max计算神经元后的神经元脉冲值,θdis表
示位于rel计算神经元前且dis计算神经元后的神经元脉冲值,ρ为记忆分辨系数,在故障诊断模型ΠF中取值0.5。特殊地,当故障诊断模型ΠF中仅有一个记忆事件标签时,即仅有s个感知神经元与s个记忆神经元时,
[0193] 表示取标签计算,且 其中为取标签运算,当且仅当 内部各非0元素均相同时,dj=d1j×τ1,否则dj=0;
其中 当且仅当 内部各非0元素均相同时,
ei=e1i×ν1,否则ei=0。
[0194] 表示求和计算,且 其中
[0195] 上标T表示向量和矩阵的转置,下标g表示推理步数。
[0196] S45、计算各个故障诊断模型ΠF的记忆标签值所对应的脉冲值均值fz,并将fz中最大值对应的记忆标签值所表示的故障基本事件作为疑似故障元件的故障诊断结果,所述记忆标签值所对应的脉冲值均值fz的计算公式为:
[0197]
[0198] 其中z表示输出神经元的记忆标签值,取值为[0,c]上的整数, 表示正序电压故障诊断模型ΠFP中输出神经元的记忆标签值为z时对应的脉冲值, 表示负序电压故障诊断模型ΠFN中输出神经元的记忆标签值为z时对应的脉冲值, 表示零序电压故障诊断模型ΠFZ中输出神经元的记忆标签值为z时对应的脉冲值, 表示遥信量故障诊断模型ΠFB中输出神经元的记忆标签值为1时对应的脉冲值, 表示遥信量故障诊断模型ΠFB中输出神经元的记忆标签值为2时对应的脉冲值。
[0199] 下面以IEEE-14节点标准母线系统为诊断对象,以实验例1为例,给出本发明的详细诊断过程,以促进细节理解。
[0200] 实验例1预设的故障情景如表1所示:
[0201] 表1
[0202]
[0203] 首先当故障发生时,故障发生时刻作为基准时刻(0s),取分别取0.1s、0.2s、0.5s的遥测量电压幅值做归一化处理。然后利用FCM算法做聚类分析,得到疑似故障区域聚类结果,如图12所示,其中B12离其他元件最远,判定为疑似故障区域。因此,母线B12及与其相连的元件均被判定为疑似故障元件,需对其分别建立量测篡改攻击识别模型ΠT,即应对B12、L1206与L1213分别建立量测篡改攻击识别模型ΠT。以线路L1213为例,获得其模型中感知神经元与记忆神经元的脉冲值曲线,如图13所示。
[0204] 由图13可知,由于实验例1中元件L1213并未遭受量测篡改攻击,因此此时感知神经元脉冲值与记忆神经元脉冲值基本吻合。然后执行L1213量测篡改攻击识别模型ΠT的TRMA算法,得到模型输出神经元的脉冲值,如图14所示。
[0205] 由图14可知,L1213的正序(正方形)、负序(圆形)与零序(三角形)分量量测篡改攻击识别模型中,其输出脉冲值均大于检测阈值0.8,故此时不存在攻击行为,因此判定此时L1213未遭受到攻击。
[0206] 最后建立线路L1213故障诊断模型ΠF,并执行其FDMA算法,得到模型输出神经元记忆标签值及其对应的脉冲值,如表2所示。
[0207] 表2
[0208]
[0209]
[0210] 由表2可知,当标签值为2时,L1213的正序、负序与零序分量诊断模型的输出神经元脉冲值均超过0.95,此外故障诊断模型ΠF标签值为2时,f2为0.979,明显大于其他标签值,因此判定标签值2对应的故障事件为此次故障诊断结果,即线路L1213发生单相接地故障,故障可信度为0.979。
[0211] 下面以实验例2来对本发明的有益效果作进一步说明:
[0212] 实验例2预设的故障情景如表3所示:
[0213] 表3
[0214]
[0215] 图15为本发明实施例中所示故障诊断方法首先检测出量测篡改攻击的结果。图15中横坐标为神经元编号,纵坐标为脉冲值大小,显然图15(a)中在神经元编号大于1600时,零序诊断模型输出脉冲值(三角形表示的部分)明显低于检测阈值0.8,且负序诊断模型输出的脉冲值(圆形表示的部分)同样有部分低于0.8。根据本发明实施例的检测判定方法,认为此时量测篡改攻击发生,元件L0102遭受量测篡改攻击。而图15(b)中正序诊断模型(正方形表示的部分)、负序诊断模型(圆形表示的部分)及零序诊断模型(三角形表示的部分)输出神经元的脉冲值几乎分布于0.96以上,远大于检测阈值0.8,根据本发明实施例的攻击识别依据,元件B1未遭受量测篡改攻击,这与预设故障情景一致,在此种情况下,SCADA系统中的故障遥信量为虚假动作,故此时诊断系统不启动。实验例2给出多种方法在此种情况下的故障诊断情况,如表4所示。
[0216] 表4
[0217]
[0218] 表4中故障元件左上角的M表示元件出现错误诊断,可以看到实验例2情况下,由于其他传统故障诊断方法不具有识别量测篡改攻击的能力,因此在量测篡改攻击发生时,这些方法均出现对L0102元件的误诊断。而本发明方法建立了有效的量测篡改攻击识别模型,可对实验例2中的L0102元件的被攻击行为进行有效识别。此外,实验例2还出现了与母线B2有关的遥信量错误信息,此时传统基于遥信量的方法会出现针对B2元件错误诊断,而本发明方法并未出现对B2的错误诊断,这是因为本发明综合利用了遥信量和遥测量信息实现故障诊断,可降低基于单一故障信息的诊断风险。此外,这些传统方法由于只利用了SCADA故障遥信量,诊断结果只能显示故障元件,而本发明方法由于综合利用了遥测量与遥信量,故其诊断结果更加丰富,能诊断出具体故障类型。
[0219] 表5
[0220]
[0221] 表5给出了各方法在建模性能上的对比情况,可以看到本发明方法综合利用了故障遥测量与遥信量,这能比其他方法获得更丰富的诊断结果。本发明的故障诊断方法无需ANN方法的复杂庞大的学习训练过程,因此在时效性上较优;而本文方法也无需类似FPNS、tFRSNPS、IFSNP基于产生式规则的建模方式,因此能有效综合利用故障遥测量与遥信量,故其诊断结果更加丰富,能诊断出具体故障类型。
[0222] 本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。