一种预测关键基础设施故障传播的方法转让专利

申请号 : CN201610798460.2

文献号 : CN106371422B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李大庆张家全路丹杨顺昆

申请人 : 北京航空航天大学

摘要 :

本发明提出一种预测关键基础设施故障传播的方法,包括:构建关键基础设施系统的系统复杂网络模型;对系统复杂网络模型的节点进行编号;搜集关键基础设施系统级联失效的历史故障数据,按照时间间隔对关键基础设施系统的历史故障数据进行截断,构建关键基础设施系统的故障数据集;建立机器学习模型,并确定机器学习模型的输入和输出;对所述故障数据集进行处理;所述机器学习模型对故障进行预测。通过本发明,当网络中发生级联失效时,利用节点自身的状态信息、节点相邻节点的状态信息和节点的空间属性来对网络中下一个时刻的状态进行预测,为系统微观动态演化的控制提供有价值的信息。

权利要求 :

1.一种预测关键基础设施故障传播的方法,其特征在于,所述方法包括:步骤1:构建关键基础设施系统的系统复杂网络模型,将关键基础设施系统中具有独立功能的子系统作为系统复杂网络模型中的节点;

步骤2:对系统复杂网络模型的节点进行编号,并提取节点静态空间信息;

步骤3:搜集关键基础设施系统级联失效的历史故障数据,按照时间间隔对关键基础设施系统的历史故障数据进行截断,构建关键基础设施系统的故障数据集;

步骤4:建立机器学习模型,并确定机器学习模型的输入和输出;

步骤5:根据确定的输入和输出,对所述故障数据集进行处理;

步骤6:所述机器学习模型根据所述处理过的故障数据集对故障进行预测。

2.根据权利要求1所述的方法,其特征在于:所述构建系统复杂网络模型,是用节点和边对关键基础设施系统进行抽象。

3.根据权利要求1所述的方法,其特征在于:所述节点静态空间信息包括每个节点周围各个不同距离下的节点数量以及节点之间的最短距离。

4.根据权利要求1所述的方法,其特征在于:所述级联失效是指复杂网络中节点之间耦合关系导致的故障传播。

5.根据权利要求1所述的方法,其特征在于:所述机器学习模型采用神经网络或支持向量机建立。

6.根据权利要求1所述的方法,其特征在于:所述机器学习的模型输入包括环境参数和/或空间属性。

7.根据权利要求6所述的方法,其特征在于:所述环境参数包括目标节点周围不同距离下的节点的故障状态,每一个距离下对应一个环境参数。

8.根据权利要求6所述的方法,其特征在于:所述空间属性包括目标节点与初始故障节点的距离。

9.根据权利要求8所述的方法,其特征在于:所述空间属性需要进行归一化处理。

10.根据权利要求1所述的方法,其特征在于:所述步骤6包括:步骤61:对所述机器学习模型中的参数进行初始化;

步骤62:用所述处理过的故障数据集对所述机器学习模型进行训练和测试;

步骤63:判断测试结果平均误差是否大于预设的阈值;

步骤64:如果测试结果平均误差是否大于预设的阈值,则执行步骤65;否则执行步骤

66;

步骤65:增加环境参数数量和/或调整机器学习模型结构,并返回执行步骤61;

步骤66:所述机器学习模型对故障进行预测。

说明书 :

一种预测关键基础设施故障传播的方法

技术领域

[0001] 本发明涉及一种系统故障预测领域,尤其涉及一种预测关键基础设施故障传播的方法。

背景技术

[0002] 系统故障预测是指系统在运行过程中,可以根据系统当前的运行状态并结合系统自身的一些结构特征、参数、环境条件以及历史数据来预测下一个或几个时刻系统的状态,给出系统故障发展的趋势和后果。故障预测要借助一些数据方法例如统计分析、模糊理论以及神经网络等对系统的故障数据进行分析计算,并建立故障预测模型。本发明旨在提供针对于具有空间特性的大规模关键基础设施,利用其自身的空间特性信息,结合故障传播数据,对其级联失效微观行为进行学习和预测的方法。
[0003] 交通路网和电网等这一类关键基础设施网络具有明显的空间特性,每一个节点只与它相邻的几个节点相连,相互之间传递各类负载。当其中某一个节点发生故障后,该节点要承担的负载要被其周围的节点承担。如果某些节点承担的额外的负载超过其阈值,则该节点也会发生故障,继而引发网络中的级联失效。研究发现,这种具有空间特征的网络的级联失效过程具有一定的空间规律,故障通常都是从初始故障节点向四周逐渐扩散,并且扩散的速度从统计上来看有一个恒定的值。
[0004] 传统的故障预测以及可靠性预计方法都是针对系统的宏观状态,而不研究系统中的微观故障演化过程。以电网为例,传统的故障预测都是只针对于某个区域的电网整体,即预测结果只是该局部电网在什么时候会发生故障,而没有办法定位发生故障的节点。因此预测的结果提供的信息十分有限,针对于大规模系统而言,更需要一种方法来预测系统中微观动态演化过程,提供每一个节点的状态趋势,为系统的动态维护和控制提供更多有价值的信息。
[0005] 传统故障预测方法只针对于单一的对象,预测结果只能提供有限的宏观信息。

发明内容

[0006] 针对现有技术存在的缺陷,本发明提出一种预测关键基础设施故障传播的方法,所述方法包括:
[0007] 步骤1:构建关键基础设施系统的系统复杂网络模型,将关键基础设施系统中具有独立功能的子系统作为系统复杂网络模型中的节点;
[0008] 步骤2:对系统复杂网络模型的节点进行编号,并提取节点静态空间信息;
[0009] 步骤3:搜集关键基础设施系统级联失效的历史故障数据,按照时间间隔对关键基础设施系统的历史故障数据进行截断,构建关键基础设施系统的故障数据集;
[0010] 步骤4:建立机器学习模型,并确定机器学习模型的输入和输出;
[0011] 步骤5:根据确定的输入和输出,对所述故障数据集进行处理;
[0012] 步骤6:所述机器学习模型根据所述处理过的故障数据集对故障进行预测。
[0013] 优选地,所述构建系统复杂网络模型,是用节点和边对关键基础设施系统进行抽象。
[0014] 优选地,所述节点静态空间信息包括每个节点周围各个不同距离下的节点数量以及节点之间的最短距离。
[0015] 优选地,所述级联失效是指复杂网络中节点之间耦合关系导致的故障传播。
[0016] 优选地,所述机器学习模型采用神经网络或支持向量机建立。
[0017] 优选地,所述机器学习的模型输入包括环境参数和/或空间属性。
[0018] 优选地,所述环境参数包括目标节点周围不同距离下的节点的故障状态,每一个距离下对应一个环境参数。
[0019] 优选地,所述空间属性包括目标节点与初始故障节点的距离。
[0020] 优选地,所述空间属性需要进行归一化处理。
[0021] 优选地,所述步骤6包括:
[0022] 步骤61:对所述机器学习模型中的参数进行初始化;
[0023] 步骤62:用所述处理过的故障数据集对所述机器学习模型进行训练和测试;
[0024] 步骤63:判断测试结果平均误差是否大于预设的阈值;
[0025] 步骤64:如果测试结果平均误差是否大于预设的阈值,则执行步骤65;否则执行步骤66;
[0026] 步骤65:增加环境参数数量和/或调整机器学习模型结构,并返回执行步骤61;
[0027] 步骤66:所述机器学习模型对故障进行预测。
[0028] 本发明与现有技术相比的优点在于:本发明通过利用网络的宏观静态属性以及节点空间特性,对不同节点的特征进行提取。当网络中发生级联失效时,利用节点自身的状态信息、节点相邻节点的状态信息和节点的空间属性来对网络中下一个时刻的状态进行预测,为系统微观动态演化的控制提供有价值的信息。而且,本发明预测的目标是每一个节点的状态,相比于传统的针对于整个网络的状态预测可以提供更多有价值的信息。

附图说明

[0029] 图1为本发明的一种预测关键基础设施故障传播的方法流程示意图;
[0030] 图2为本发明实施例中构建级联失效数据集的数据示例;
[0031] 图3为本发明中机器学习模型的典型示例图之一;
[0032] 图4为本发明中机器学习模型的典型示例图之二;
[0033] 图5为本发明中对机器学习模型进行训练和测试的流程示意图。

具体实施方式

[0034] 为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0035] 本发明提供一种可对具有空间特征的大规模关键基础设施的故障状态进行微观预测的方法,能够根据系统当前节点的状态以及节点的空间特征,结合系统的故障传播数据集,预测出未来一个或几个时刻系统中每一个节点的状态。
[0036] 如图1所示,本发明的一种预测关键基础设施故障传播的方法,包括如下步骤:
[0037] 步骤1:构建关键基础设施系统的系统复杂网络模型,将关键基础设施系统中具有独立功能的子系统作为系统复杂网络模型中的节点。
[0038] 构建系统复杂网络模型,是用节点和边对关键基础设施系统进行抽象。所述节点之间的连边则表示节点之间有数据和能量的交互,可以相互传递负载。比如对于交通路网来说节点就是道路的交叉点,十字路口和三岔路口等;每一条道路都连接着两个路口,构成交通网络中的边。
[0039] 步骤2:对系统复杂网络模型的节点进行编号,并提取节点静态空间信息。
[0040] 所述编号是为了对应后续机器学习模型的输入,保证系统复杂网络模型有关于网络状态的输入和节点一一对应。所述编号不需要特殊的规则。
[0041] 所述节点静态空间信息包括每个节点周围各个不同距离下的节点数量以及节点之间的最短距离(跳数)。
[0042] 所述静态空间信息用于后续的机器学习模型的输入的计算。
[0043] 步骤3:搜集关键基础设施系统级联失效的历史故障数据,按照时间间隔对关键基础设施系统的历史故障数据进行截断,构建关键基础设施系统的故障数据集。
[0044] 所述级联失效是指复杂网络中节点之间耦合关系导致的故障传播。
[0045] 所述历史故障数据需要按照时间序列排布,并且数据的时间间隔需要根据系统的故障传播速率适当选取,目的为体现级联失效的空间传播特征。当系统历史故障数据相对较少时,可利用仿真计算网络不同运行状态下的故障传播过程,对故障数据集进行补充。
[0046] 所述时间间隔根据实际需求确定。例如确定截断的时间间隔为10分钟,则以系统节点发生故障开始后10分钟时的系统状态代表系统t=1时刻的状态,20分钟时则代表t=2时系统的状态,以此类推。进行上述操作的原因是由于不同的系统故障传播的速率是不同的,所以故障传播数据要表现出空间相关性需要不同的时间间隔。如果故障数据间隔时间太短或者太长,都不能很好地体现出网络中节点的故障状态与节点空间属性的关系,会对预测的效果带来影响。时间间隔选取的标准包括:能从时间间隔序列中明显看出级联失效从中心逐渐向四周均匀扩散的特征。
[0047] 在本发明的一个实施例中,系统的历史故障数据相对较少,则需要通过仿真数据来进行补充。具体地,首先用关键基础设施系统正常运行时的历史信息对系统复杂网络模型中的边进行赋值,模拟关键基础设施系统运行时的状态。然后用Motter-Lai模型对网络级联失效过程进行仿真计算,对级联失效的数据集进行补充。
[0048] 如图2,数据示例:
[0049] 假设故障顺序为(初始为A)
[0050] 1:A
[0051] 2:A B C
[0052] 3:A B C D E
[0053] 4:A B C D E F
[0054] 对应故障数据集
[0055] 0:1,1,1,1,1,1
[0056] 1:0,1,1,1,1,1
[0057] 2:0,0,0,1,1,1
[0058] 3:0,0,0,0,0,1
[0059] 4:0,0,0,0,0,0
[0060] 步骤4:建立机器学习模型,并确定机器学习模型的输入和输出。
[0061] 所述机器学习模型采用神经网络或支持向量机等方法建立,以预测系统复杂网络模型中所有节点的状态。
[0062] 所述机器学习的模型输入包括环境参数和/或空间属性。
[0063] 所述环境参数包括目标节点周围不同距离下的节点的故障状态,每一个距离对应一个环境参数。所述目标节点即为要预测的节点。
[0064] 用距离所述目标节点跳数相同的节点的正常运行百分比代表节点所处的环境参数。
[0065] 如图2,跳数的定义为:
[0066] 以A为目标节点:
[0067] B,C跳数为1
[0068] D,E跳数为2
[0069] F跳数为3
[0070] 例如,如果某个节点相距为1跳的节点有4个,其中有1个已经发生故障,其余3个处于正常运行状态,则该节点距离为1环境参数为3/4=0.75。相应的,目标节点还有距离为2,3或更多的环境参数。所述机器学习的模型的输入要至少包含目标节点3个距离(如距离为
1,2,3)的环境参数。所述跳数和距离均为不考虑边的权重的节点间的最短路径,即两点之间连通所需的最少的边数。所述空间属性包括目标节点与初始故障节点的距离。所述空间属性需要进行归一化处理,需要除以系统复杂网络模型中最大的两点之间最短距离。
[0071] 所述节点的空间属性,是用目标节点与初始故障节点的跳数来代表节点的空间属性。所述空间属性表征的是节点在构建的系统复杂网络模型中的相对位置属性,比如距离中心节点的跳数、周围节点的数量等,而不代表节点真实的地域特征。
[0072] 所以,机器学习模型需要至少3+1个输入,即3个环境参数和1个空间属性。当测试的结果不能达到预期的时候,可以适当增加环境参数的数量,即加入要预测的节点跳数为4,5……的环境参数。即机器学习模型需要N+1个输入,N为大于等于3的整数。
[0073] 所述机器学习模型的输出包括要预测的节点下一个时刻的状态。用数字表示每个节点的状态,用0表示节点发生故障,1表示节点正常运行。附图3给出了预测节点状态的模型示例,其中,1、A为初始故障节点,其余加粗边框节点为当前故障的节点;2、数字表示的是该节点距离节点B的跳数。假设要预测节点B下一时刻的状态,则对应的模型输入如图4所示。
[0074] 步骤5:根据确定的输入和输出,对所述故障数据集进行处理。
[0075] 所述输入和输出是机器学习模型最基本的模块,需要进行定制。机器学习模型的输入、输出确定之后,因为步骤3中的历史故障数据只给出了每一步节点的状态,不能直接用于机器学习模型的训练和测试,所以步骤3中构建的故障数据集就要按照步骤4中确定的输入和输出来组织。
[0076] 具体地,步骤5包括:
[0077] 根据步骤3中构建的历史故障数据集,计算出针对于节点的并适用于步骤4中确定的机器学习模型的数据,所述机器学习模型的数据包括每一组所述输入和输出;具体地,统计每个节点周围节点的状态用于计算环境参数,并加上所述每个节点到初始节点的距离作为输入,以所述每个节点下一步的状态为输出(图4给出了一个节点的示例)。
[0078] 若干组根据历史故障数据集计算出来的机器学习模型的数据构成处理过的用于机器学习模型训练和测试的故障数据集。
[0079] 步骤6:所述机器学习模型根据所述处理过的故障数据集对故障进行预测。
[0080] 使用处理过的故障数据集对机器学习模型进行训练和测试,根据测试结果决定机器学习模型是否需要调整并重新进行训练,直到机器学习模型能学习到系统复杂网络模型微观动态演化的潜在规律,为网络的故障传播预测服务。
[0081] 具体地,所述步骤6包括:
[0082] 步骤61:对所述机器学习模型中的参数进行初始化;
[0083] 步骤62:用所述处理过的故障数据集对所述机器学习模型进行训练和测试;
[0084] 步骤63:判断测试结果平均误差是否大于预设的阈值;
[0085] 步骤64:如果测试结果平均误差是否大于预设的阈值,则执行步骤65;否则执行步骤66;
[0086] 步骤65:增加环境参数数量和/或调整机器学习模型结构,并返回执行步骤61;
[0087] 调整机器学习模型结构具体包括:对于神经网络方法,调整机器学习模型是指调整隐层节点数量;对于支持向量机方法,调整机器学习模型是指更改核函数。
[0088] 步骤66:所述机器学习模型对故障进行预测。
[0089] 在本发明的一个实施例中,所述预设的阈值为0.2。
[0090] 根据搭建的机器学习的模型,对系统级联失效的数据集进行进一步整理。将每一个节点的历史数据整理成符合输入输出一一对应格式的若干组数据,建立机器学习的训练测试训练集。通常将数据集中80%的数据用于模型的训练,其余20%的数据来测试模型学习的效果。
[0091] 如图5所示,这个过程中涉及到模型参数的初始化和某些参数的选择,而且当模型的测试结果不理想(一般当测试结果的平均相对误差大于0.2时认为结果不符合要求),需要修改模型或者模型中的参数,比如增加环境参数数量和/或调整神经网络隐层节点的个数。然后重复进行训练和测试,直到模型的预测能力达到理想的准确率为止。
[0092] 通过本发明能够根据系统当前节点的状态、节点的空间特征以及系统的宏观静态属性,结合系统的故障传播数据集,预测出未来一个或几个时刻系统中每一个节点的状态。
[0093] 尽管上文对本发明的具体实施方式给予了详细描述和说明,但是应该指明的是,我们可以依据本发明的构想对上述方式进行各种等效改变和修改,其所产生的功能作用仍未超出说明书及附图所涵盖的精神时,均应在本发明的保护范围之内。