本发明涉及机器学习以及路径优化技术领域,具体涉及一种可靠性预测和粒子群优化的电力通信网路由规划方法。
背景技术:
智能电网以及集成的电力通信网一方面承载了电力基础设施的运行,一方面承载了相应的信息交换,状态监控以及管理等通信服务。在配套通信网络上运行的服务对于相关电力设备的可靠性而言至关重要。同时,就通信网络自身的鲁棒性而言,也有众多的服务从拥塞以及链路故障诊断和恢复的角度进行保护。
目前的电力通信网络通常和对应的电力系统共享同样的拓扑结构。作为一种典型的通信骨干网,网络节点之间通过光纤相连,承载路由以及qos服务等基本功能。构建电力通信网络的硬件设备和一般网络设备类似,不可避免的会受到各种外界因素的影响,导致信息延迟以及拥塞等情况的发生。此类影响有可能是急性的外部突发事件,比如灾害性天气导致的大范围通信中断。也有可能是慢性的长期因素比如设备老化等导致的特定链路以及服务的可靠性下降。
现有的电力通信网络故障恢复技术主要针对突发的故障实现诊断和恢复。此类技术通过对反映网络拥塞状态的一些状态进行直接检测,判断节点以及相邻链路当前是否受到干扰,并使用一些分布式部署的算法在判断受到干扰的情况下使用一些路由调整算法尽快的从故障中恢复。其中异常的路由队列长度等直接特征是最主要的参考因素。正因为此,此类算法通常到网络面临直接风险时才会起作用,仍然将系统暴露在一些潜藏的外部攻击中。
另一方面,从网络服务路由优化的角度而言,一些传统的方法如dijkstra(狄克斯特拉)算法等在寻路问题中显示出了较高的性能。然而现有方法通常都缺乏自动感知网络状态的功能,需要基于人工干预且基于经验常数才能较好的工作。对于实际的电力系统以及配套的通信网络而言,潜在的风险往往是长期存在且不可预测的。同时,通信服务所基于的网络硬件参数也是时变的,使用基于经验参数的固定算法进行路由优化在很多场合下不能满足需求。
技术实现要素:
为解决现有技术中的不足,本发明提供一种可靠性预测和粒子群优化的电力通信网路由规划方法,解决了现有电力通信网络动态路由规划缺乏自动感知网络状态导致规划不准确的问题。
为了实现上述目标,本发明采用如下技术方案:一种基于可靠性预测和粒子群优化的电力通信网路由规划方法,
通过训练好的电力通信网络的可靠性预测模型预测当前时刻网络节点和链路的可靠性,通过节点、链路的可靠性和基于粒子群优化算法得到最优的电力通信网络服务路由方案;
所述电力通信网络的可靠性预测模型基于递归神经网络构建。
进一步的,所述电力通信网络的可靠性预测模型的输入包括:节点缓冲的占用程度、光纤通信错误率以及光功率;输出为:通信网络上节点可靠性预测结果,链路可靠性预测结果为与之相连的两个节点可靠性平均值。
进一步的,所述节点缓冲的占用程度定义为:
其中,ov(t)表示时刻t的节点v上的缓存占用程度,nve(δt)为节点v在时隙δt期间内从与其相邻链路e接收到的包数量;
进一步的,所述递归神经网络采用长短期记忆单元作为递归神经网络的核心。
进一步的,所述节点可靠性r(t)定义为:
其中,ci(t)表示在t时刻以后第i天内链路翻转的次数,i表示天数,i=1,2,…,7;使用加权参数α1>α2>,…,>α7>0对ci(t)进行加权。
进一步的,所述通过节点、链路的可靠性和基于粒子群优化算法得到最优的电力通信网络服务路由方案,过程包括:
1)在t时刻给定当前的服务路由方案x和对应的积累可靠性预测r;
2)初始化np个粒子
3)迭代k步,每步操作为:
从当前所有粒子计算最优的粒子
对每个粒子
按照下式迭代每个粒子:
对每个结果粒子
4)最终得到最优的电力通信网络服务路由方案;
进一步的,所述服务质量的优先级约束条件为:服务的优先级约束,优先级从qos中获取。
本发明所达到的有益效果:本发明可以自动的学习正常与故障网络通信时的典型特征,将其与对应结果进行关联;并利用所学知识优化网络拓扑结构,最终提升服务的可靠性并在外部约束条件下对负载进行均衡。本发明能够自动感知网络状态,规划准确。
附图说明
图1是和电力网络共享拓扑结构的配套电力信息网络图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
一种基于可靠性预测和粒子群优化的电力通信网路由规划方法,包括步骤:
步骤1,构建基于递归神经网络的电力通信网络的可靠性预测模型并进行训练得到训练好的电力通信网络的可靠性预测模型,电力通信网络的可靠性预测模型的输入信号至少包括:节点缓冲的占用程度、光纤通信错误率以及光功率;电力通信网络的可靠性预测模型的输出为:通信网络上节点可靠性预测结果,链路可靠性预测结果为与之相连的两个节点可靠性平均值;
与电力网络共享拓扑结构的电力信息网络结构如图1所示。不同的网络服务之间通过共享的链路和节点进行信息传递。因此,服务的路由规划问题通常需要综合考虑设备可靠性和服务本身的重要性来解决。对于网络而言,服务重要性信息通常来说相对固定且可以直接获取,只需要预测节点和链路的可靠性参数就可以进行动态的路由规划。
传统的服务可靠性分析方法通常基于一些先验假设构建生成式模型。模型的输入通常有天气因素如灾害性天气,设备因素如设备老化或者设备缺陷以及人为因素如误操作等等。通过具体的先验知识构建输入参数与最终设备可靠性之间的数学模型,辅以固定的超参数实现预测。而固定参数无法跟随时间变化而变化,无法进行长期部署,自动运行。与这类方法相反,本发明采用神经网络这种鉴别式模型直接从运行记录学习影响节点和链路稳定性的相关因素,并使用这些相关因素对节点和链路的可靠性进行预测。
对于给定的电力通信网络,采用g(v,e)作为标记,其中v表示节点集合,e表示节点之间的链路集合。对于通信拥塞而言,最直接的相关特征即为节点缓冲的占用程度。对于时刻t的时隙δt而言,节点v上的缓存占用可以定义为:
其中,ov(t)表示时刻t的节点v上的缓存占用程度,nve(δt)为节点v从与其相邻链路e接收到的包数量。
作为基于光纤通信的主干网络,错误率以及光功率是另外两种直接反映电力通信网通信质量的主要指标。除了上述直接指标以外,还可以包括:诸如严重误码秒(ses)、前向纠错(fec)数量、crc(循环冗余校验)错误数量、电源电压以及设备周期、环境温度、本地天气报告数据等外部因素也作为模型输入参与节点和链路的可靠性预测。上述数据作为递归神经网络的输入信号进行学习,输出通信网络上节点可靠性预测结果。节点可靠性由预测模型直接输出,链路可靠性从与之相连的两个节点可靠性平均求得。同时,本发明采用了一些常见的预处理手段如归一化、中心化等方法对输入信号进行标准化以输入神经网络。
本发明采用了长短期记忆单元(lstm)作为递归神经网络的核心进行具体实现。长短期记忆单元由四个门函数和一个记忆细胞c构成。在t时刻给定lstm输入向量o(t),即电力通信网络的可靠性预测模型的输入信号,lstm输出向量r(t)作为预测结果,即通信网络上节点可靠性预测结果。同时,记忆细胞中的信息递归传递至t+1时刻。通过此方式,递归网络可以将关键信息持续的保存在网络内部。
在训练针对电力通信网络的可靠性预测模型时,模型的训练输入数据为:历史数据,包括:缓存占用程度,错误率以及光功率,还可以包括:严重误码秒(ses)、前向纠错(fec)数量、crc(循环冗余校验)错误数量、电源电压以及设备周期、环境温度、本地天气报告等外部因素数据;
模型的训练输出为:节点可靠性r(t);
节点可靠性的真实监督信息来源于运维记录中的人员操作记录。给出节点可靠性的定义,在t时刻,节点可靠性r(t)和链路被备份链路替换以及翻转的次数呈负相关:
其中,ci(t)表示在t时刻以后第i天内链路翻转的次数,i表示天数,i=1,2,…,7。链路翻转表示链路被替换后,故障排除结束链路复原;本发明使用加权参数α1>α2>,...,>α7>0对ci(t)进行加权。不同的权重对和t时刻更接近的日期进行了突出,因为越接近t时刻发生的链路变化和可靠度越相关。如公式(2)所示,本发明使用一个类似sigmoid的函数保证了在ci(t)∈[0,+∞]的情况下r(t)为一个概率分布。训练时采用历史运维记录中的链路翻转的次数,求解节点可靠性值,对模型进行不断的训练,直到模型的预测值跟实际值的误差小于阈值;
最终经过训练,得到了训练好的基于lstm递归神经网络的电力通信网络可靠性预测模型。
步骤2,通过可靠性预测模型预测当前时刻网络节点和链路的可靠性,通过节点和链路的可靠性和基于粒子群优化算法得到最优的电力通信网络服务路由方案;
通过训练好的可靠性预测模型可以实时对所有网络节点和链路给出可靠性预测。在此基础上,本发明采用粒子群优化方法实现服务路由的动态优化。在优化的过程中,不同服务的优先级直接从qos(服务质量)中获取。采用粒子群优化算法的意义在于,通过此方法可以在当前路由策略的基础上通过极少的几步迭代得到一个可以接受的次优解。而在每个时刻通过少量的消耗计算资源进行迭代,让所有服务的路由方案能够跟随实际情况进行缓慢的更新。当突发情况出现时,一些其他的短期故障恢复方法就可以作为一种补充性方法在本发明的基础上快速恢复网络功能。与此相比,dijkstra算法等传统方法通常倾向于使用大量计算资源求解全局最优的路由方案,带来不必要的资源浪费。
在使用粒子群优化算法进行路由规划时,每个粒子
1)在t时刻给定当前的服务路由方案x和对应的积累可靠性预测r。
2)基于高斯分布以一个小的方差初始化np个粒子
3)迭代k步,每步操作为:
1.从当前所有粒子计算最优的粒子
2.对每个粒子
3.按照下式迭代每个粒子:
4.对每个结果粒子
4)在最终步返回的最优粒子即为t时刻粒子群优化方法的结果,得到最优的电力通信网络服务路由方案。
公式(3)中,
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。