摘要:在解决电网配网运行过程产生的故障诊断问题时,需要考虑到当前大电网运行过程中产生数据库的规模大、维度高、模态多样及类型复杂等特点,而故障诊断中应用传统关联规则挖掘算法已无法适应处理大数据库数据量的实际需求。与此同时,以人工鱼群算法为代表的新兴智能算法在实际社会生产中得到了广泛的应用,因而提出一种基于人工鱼群算法改进Apriori数据挖掘算法的配电网故障诊断方法,构建出一种新型的改进Apriori算法模型。结合某一实际配网运行产生的数据,通过矩阵实验室(matrix laboratory, MATLAB)仿真软件进行仿真验证所提到的新型算法,并与传统数据挖掘算法进行比较。实验结果表明,改进后算法的准确率较高,响应速度快,更适用于对大规模数据库的处理。
关键词:人工鱼群优化算法; 关联分析; 数据挖掘; 配电网故障诊断
中图分类号:TM73文献标志码:A
doi:10.3969/j.issn.16735862.2023.04.013
Distribution network fault diagnosis based on artificial fish swarm improved Apriori algorithm
LI Haoxuan1, YUAN Manjiang1, CUI Ming1, HAO Yunfei2, GUO Lei2, SUN Yulai2, SUN Zhiqiang2, ZHU Zhen2, LI Yingxu3, QIAO Lilong4, ZHANG Dong1
(1. School of Electric Power, Shenyang Institute of Engineering, Shenyang 110136, China;
2. Shenyang Aircraft Industry(Group) Co., Ltd., Shenyang 110034, China;
3. State Grid Liaoning Electric Power Co., Ltd. Yingkou Power Supply Company, Yingkou 115002, China;
4. Dalian Changxing Island Secondary Vocational and Technical School, Dalian 116317, China)
Abstract:When solving the problem of fault diagnosis during the operation of power distribution network
, need to consider the characteristics of large-scale, high dimension, diverse modes and complex types of databases generated in the current large-scale power grid operation process, the application of traditional association rule mining algorithm in fault diagnosis has been unable to meet the actual needs of processing large database data. At the same time, the emerging intelligent algorithm represented by the artificial fish swarm algorithm has been widely used in the actual social production. Therefore, in this paper we propose a distribution network fault diagnosis method based on the improved Apriori data mining algorithm of the artificial fish swarm algorithm, construct a new improved Apriori algorithm model, and combine the data generated by an actual distribution network operation to verify the new algorithm through matrix laboratory(MATLAB) simulation software. Compared with the traditional data mining algorithm, the experimental results show that the improved algorithm has higher accuracy, faster response speed, and is more suitable for large-scale database processing.
Key words:artificial fish swarm optimization algorithm; association analysis; data mining; distribution network fault diagnosis
数据挖掘是一种从数据库中提取出有效数据信息并加以整合的数据处理方式。关联规则挖掘算法(association rule mining, ARM)是一种集统计学、数据库、模式识别、专家系统等于一身,并且寻找数据库中的频繁项或属性集之间相关性和因果关联的数据挖掘算法[1],它是由Agrawal等于1993年首次针对购物篮物品摆放等问题而提出,用于发现不同数据之间隐藏的关联性关系。目前,基于关联规则挖掘算法的相关研究已经发展得较为成熟,并分化出几种精确算法或智能算法,例如Apriori算法、FP-growth算法、Eclat算法等都是典型的数据挖掘算法。此类算法常常先在事务集合中找出相应的频繁项集,然后在频繁项集中挖掘出不同事务之间的强关联规则,方法简单稳定且容易实现。但在处理大量数据候选项集和复杂数据时需要多次扫描数据库,从而导致I/O负荷水平加大,会带来系统响应过慢、效率低下等问题,且算法运行产生的候选项集占用内存非常大,消耗设备大量的内存,内存不足时,极易导致内存抖动,造成运行时间剧增。因此,许多学者都对相关内容进行了研究。例如,文献[2]中提出了用粒子群优化算法对关联规则挖掘算法进行优化,并与其他各种智能算法相互比较,得出各种优化算法的优缺点。文献[3]中采用并行Apriori算法,构建分布式日志故障挖掘系统,针对电网系统相关设备后台日志数据,构建频繁项集并挖掘关联规则,形成系统故障规则库,用于系统故障诊断。文献[4]中采用模糊集结合关联规则挖掘算法对电力系统进行故障诊断,所建模型的执行效率及准确度相比原Apriori算法更高,且可进一步运用至变压器多源参数的关联规则挖掘。文献[5]中采用在进行K-means分析时利用规则产生的三角形迭代选择初始点,再将删除冗余后的规则进行聚类,有效提高了数据挖掘算法的效率。
以上研究表明,使用智能算法可以加快挖掘算法的响应速度,使得挖掘结果更具有参考价值。因此,本文采用人工鱼群算法针对Apriori算法进行优化,利用MATLAB仿真对所提方法进行验证。结果表明,改进后的算法准确率较高,响应速度快,可适用于庞大数据库的处理。
1相关算法基本原理
1.1人工鱼群算法基本原理
人工鱼群算法(artificial fish swarm algorithm, AFSA)是一种新型仿生智能算法,该算法设定水域中鱼数量最多的地方就是水中食物营养最丰富的地方。依据这一特征,人工鱼群算法模拟鱼群的行为,对鱼群中每一个个体在其周边视野范围内进行寻优,从而使群体达到全局最优的状态[6]。该算法在许多学科领域都有大量的研究成果和实际应用。在该类算法中,鱼群中每一条人工鱼封装了其自身数据信息(例如视野范围、移动步长等)和多种日常交互行为(觅食行为、聚群行为等),并且可以接收环境信息来做出相应动作反应,即通过AFSA仿生动作实现现实中鱼的觅食、聚群和追尾等一系列真实行为,在给定的范围中寻求最优解。
该算法采用X=(X1,X2,…,Xn)表示鱼群中鱼个体的状态,鱼所在地方的食物浓度设定为f(X)。Visual为人工鱼的视野范围;λ为拥挤因子;step为移动步长; try number为尝试次数[7]。该算法中存在的行为动作如下:
第1个行为是自由游动行为,已知状态为Xi的鱼,在没有执行其他任何行为的时候,鱼个体会在自己视野范围内随机移动。第2个行为是觅食行为,鱼个体在视野范围内选择一个新的状态Xj,如果f(Xj)lt;f(Xi),则鱼向该状态移动一个步长,如果f(Xj)gt;f(Xi),则重选另一个状态Xj,再次进行移动尝试,尝试次数超出设定次数后仍然不能完成移动动作时,则将鱼向周围随机移动一个步长。第3个行为是聚群行为,处于Xi状态的鱼在其视野范围内尝试搜索鱼群聚群的中心点位Xc,同时统计中心点位附近的同伴个数S。如果S/Nlt;λ,则表示该中心位置不拥挤,如果此时f(Xc)lt;f(Xi),则鱼向该方向前进一个步长,否则执行觅食行为。第4个行为是追尾行为,某一状态Xi的鱼在其视野范围内搜索其中表现最优的鱼个体Xmin。该Xmin鱼的视野领域范围内的同伴数量为S′,如果f(Xi)lt;f(Xmin)并且S′/Nlt;λ,表明该位置食物较多,且不拥挤,则当前鱼向该位置前进一个步长,否则继续觅食行为。
1.2Apriori关联规则挖掘算法
Apriori算法是一种迭代算法。关联关系支持度表示某2种可能出现的事件同时出现的概率,如式(1)所示。
support(XY)=T(X∪Y)T(1)
关联关系置信度表示一个事件和另一个事件同时出现的概率占第一个事件出现概率的比值[8],如式(2)所示。
confidence(XY)=T(X∪Y)T(2)
强关联规则指的是2组以上的数据之间的关联性能够满足关联规则设定的最小支持度和最小置信度,则这2组数据具有强关联规则的特性。
实际应用过程如下:
1) 得到频繁1-项集,筛选出L1。
2) 拼接产生候选项集。2个频繁(k-1)-项集拼接成候选k-项集,拼接条件为2个(k-1)-项集前k-2项相同。例如,2-项集(a,b)和(a,c)可拼接成候选3-项集(a,b,c)。
3) 扫描计数。依据Ck计数count,筛选出Lk。
4) 若执行结果非空,则跳转步骤2。
Apriori数据挖掘算法实例如下:
1) 设min_sup=3,数据库D中的事务分别为:〈(a, b, e), (b, d), (b,c), (a, b,d), (a, c), (b, c), (a, c), (a, b, c, e), (a, b, c)〉,首先对数据库D执行扫描,得到L1, sup(a)=6, sup(b)=7, sup(c)=6。
2) 逐次遍历数据库D,迭代产生Ck。筛选出大于既定阈值min_sup=3的L,L=〈(a, b)(a, c)(b,c)〉,且不存在满足条件的Ls。
3) 数据库访问记录。见表1。
通过对比经典算法实例可知,Apriori算法存在明显的缺陷,每个候选项集的计数都要扫描一次全部数据库记录(9条记录),因而针对数据库的优化使得扫描次数减少是针对Apriori算法优化的一种优化方式,可以提高算法的效率。
2人工鱼群优化Apriori算法
2.1人工鱼群优化Apriori算法
为了解决Apriori关联规则挖掘算法中数据库扫描时间长、次数过多的缺陷和需要人为设定置信度的难题,本文主要采用人工鱼群优化Apriori算法的数据库优化Apriori算法。
在人工鱼群算法中,鱼群的觅食行为指的是鱼群循着食物多的方向游动的行为。人工鱼Xi在其视野内随机选择一个状态Xj, 分别计算它们的目标函数值进行比较,如果发现Yj比Yi优(Yj和Yi分别为Xj和Xi的适应度值),则Xi向Xj的方向移动一个步长;如果不满足条件,Xi继续在其视野内选择状态Xj,然后判断是否满足前进条件,反复尝试设定的最大尝试次数后,仍没有满足前进条件,则随机移动一个步长使Xi到达一个新的状态。通过人工鱼群的觅食行为可以使得数据库中的数据改变其原本杂乱无章的情况,并按照某一基本规律进行排序,使得无序的数据库变为有序的数据库排列。
鱼群会为了保证自身的生存而聚集:人工鱼Xi搜索其视野内(djlt;visual)的伙伴数目n的中心位置Xc,然后Xi朝伙伴聚集中心点移动一个步长,否则,继续执行觅食行为。鱼群的聚群行为可以更好地达到Apriori算法中的强关联规则的数据集中的要求,相近或相似的数据被归为一类,根据具体要求,鱼群的聚群可以有不同的族群。鱼群聚群后,通过对鱼群数量的分析,提取关键的特征数据,过滤掉达不到最小设定值的无效数据和异常数据,进行数据整合,从而达到压缩并精简数据库、缩短扫描时间的目的[9]。
根据人工鱼群算法中人工鱼向其视野区域内的最优方向移动的特点,在处理数以万计的信息数据时,将人工鱼群算法改进后可以加快数据库压缩标准化的效率,更快地达到聚群的目的,能够避免经典Apriori算法处理数以万计的数据时存在的响应时间过长的缺陷。依据人工鱼群算法的特点,针对Apriori算法的改进的具体流程图如图1所示。
通过图1所示流程,可以最大化地达到优化压缩数据库的目的,并减少Apriori数据挖掘算法的数据扫描时间和重复次数。
为验证人工鱼群优化算法的有效性,现设定某配电网系统设备电气量特征信息量正常值为A,B,C,D,E,电气量特征信息量异常值为F,G,最小支持度为3个数据的集合。以Apriori算法原始数据库为例,取原始数据库中的15组数据,采用人工鱼群优化Apriori算法对Apriori算法数据库C1进行优化。第1步遵循觅食原则顺序排列生成L1;第2步压缩数据库,排除掉包含异常数据的数据组,生成数据库C2;第3步依照设定的最小支持度删除小于最小支持度的数据组,输出新数据库C3。相较于原始数据库D,C3数据库的精简程度和规则度均有大幅度提升。具体优化流程如图2所示。
2.2配电网故障信息与关联特征获取
在传统的配电网中,可以采用0-1模型来获取信息。本文以单电源配电网为例,电流由供电所指向用户,由故障产生的故障电流通过开关,开关处响应对其进行检测,未检测到故障时,状态量为“1”,检测到故障时,
状态量变为“0”,并相应记录故障区间[10]。例如,当S2状态量为1,S3状态量为0时,说明2线路存在故障,从而获取故障信息。单电源配电网简化示意图如图3所示。
配电网0-1模型可以作为故障信息获取源的一种,由其进行相应扩展,并与其他种类故障信息获取方法相结合,从而获得较为准确的配电网信息,在其中相应记录了各类设备的电气量特征信息、设备本身的属性信息及过往故障记录等。从多种来源的信息中,可以发现导致设备故障的因素,通过挖掘这些特征数据向量,使其作为设备故障分析的条件特征,然后将事故类型作为结果特征。
基于事故对象、事故时间、事故类型和事故原因,通过选取设备事故特征,形成设备事故发生的频繁项集和设备事故的实例。根据数据类型的区别,选取事故原因如下:
1) 设备因素。主要包括运行设备问题、监控系统故障问题、外力破坏问题或异物破坏原因。
2) 时间因素。设备事故时段、特殊时间段、节假日等。
3) 气象因素。雨天、雷电、台风等[11]。
各种因素相辅相成,构成电网设备的故障原因,其中存在很多与结果特征关联度很低的因素,可能达不到系统设定的标准。因此,需要通过人工鱼群算法对条件特征进行筛选,选取引起问题的主要因素作为分析因素,缩短故障检测的时间,增强对特定情况的适应能力,提高系统的准确性和稳定性。
3算例分析
本次实验数据选取了我国某一沿海城市2009—2018年共计10年的数据。在对实验数据处理后,把实验数据分为正常运行的记录数据和包含各种事故类型的记录数据并进行实验验证。
本文通过条件特征的选取选择了7条主要特征,分别是基于天气因素的雷击、晴天、浓雾、大风天、雨天,基于设备因素的外力破坏和设备故障。选取故障挖掘数据库中的100条故障记录和100条正常记录混合后得到200条记录的训练库,选取其中100条作为测试,利用人工鱼群算法改进Apriori算法进行数据挖掘。
3.1事故原因关联情况分析
事故因素关联分析结果见表2。从结果可以推断出,故障原因主要是由雷击和外力破坏或异物影响产生的,条件项和结果项的关联程度各不相同,线路故障和雷击、浓雾的天气因素具有强关联特性。
3.2人工鱼群改进Apriori算法性能分析
为了验证改进算法相对于经典算法在准确性和实效性上的提升,本文将采用的改进算法与经典的数据挖掘算法在多种不同的情况下进行比较,构建出4组训练库和测试库。
1) 200条记录,其中含有50条雷击线路事故的故障记录和150条正常的无故障正常运行的记录;
2) 400条记录,其中含有50条外力破坏或异物的线路事故的故障记录、50条雷击线路事故的故障记录和300条正常的无故障正常运行的记录;
3) 600条记录,其中含有50条外力破坏或异物的线路事故的故障记录、50条雷击线路事故的故障记录、50条其他情况下的线路事故的故障记录和450条无故障正常运行的记录;
4) 800条记录,其中含有50条外力破坏或异物的线路事故的故障记录、50条雷击线路事故的故障记录、50条其他情况下的线路事故的故障记录、200条正常运行可能存在缺失或错误的记录和450条无故障正常运行的记录。
通过人工鱼群算法对数据库进行优化后,原本杂乱无章的数据库数据呈现出由大到小的依次排列和向内收拢的形式,同时,通过对人工鱼感知范围、迭代次数、拥挤程度的设定,排除了距离正常数据范围过远的异常数据,保持了整体数据在一个合理的范围内,并防止了因异常数据导致数据挖掘出现的不合理结果。人工鱼群算法优化后数据库表现如图4所示。
针对上述4组数据构成的数据库通过人工鱼群算法进行优化,优化后的数据库通过Apriori数据挖掘算法进行计算,与经典Apriori算法进行比较,可以发现人工鱼群改进算法的训练速度快于经典Apriori算法,且数据量越大,改进算法优势越明显,结果如图5所示。
在数据库选取相同数据量的条件下,人工鱼群改进算法在训练时间上同样具有优势,验证了在数据量较少的情况下本文所提算法的准确率,具体见表3。
由表3和图6可知,人工鱼群改进算法的准确度较之经典Apriori算法有显著提升,但在大容量数据库上,可能由于某时段产生的畸变数据占总数据库比重较小被忽略而无法完全还原配网运行过程中的实际状况,因而该算法还有进一步改进优化的空间。
4结语
本文从人工鱼群算法和Apriori数据挖掘算法入手,通过示例查找Apriori数据挖掘算法的不足,利用人工鱼群智能算法对Apriori数据挖掘算法进行优化。同时分析了导致配电网故障的事故原因,并针对事故原因进行了关联程度分析,挖掘故障原因的关联关系。最后将人工鱼群改进算法与经典Apirori算法进行比较,得到了2种算法训练时间及准确度的有效数据。通过对比,表明改进后算法相较于基础算法的准确率和实时性有显著提升。
参考文献:
[1]郝林倩. 基于关联规则的数据挖掘算法分析[J]. 太原学院学报(自然科学版), 2020,38(3):42-45.
[2]钟倩漪,钱谦,伏云发,等. 粒子群优化算法在关联规则挖掘的研究综述[J]. 计算机科学与探索, 2021,15(5):777-793.
[3]潘磊. 基于并行Apriori算法的电网日志故障挖掘系统[J]. 软件导航, 2020,19(9):186-189.
[4]吴瞻宇,董明,王健一,等. 基于模糊关联规则挖掘的电力变压器故障诊断方法[J]. 高压电器, 2019,55(8):157-163.
[5]李珺,刘鹤,朱良宽. 基于改进的K-means算法的关联规则数据挖掘研究[J]. 小型微型计算机系统, 2021,42(1):15-19.
[6]张景煜,樊绍胜. 基于改进人工鱼群算法的配电网网架规划研究[J]. 电工材料, 2020(4):19-22.
[7]王培崇. 人工鱼群算法研究综述[J]. 中国民航飞行学院学报, 2013,24(4):22-26.
[8]李大鹏. 基于频繁项集的调控大数据平台设备故障关联分析研究[J]. 电网技术.2021,45(4):1455-1462.
[9]周凯,顾洪博,李爱国. 基于关联规则挖掘Apriori算法的改进算法[J]. 陕西理工大学学报(自然科学版),2018,34(5):40-44.
[10]胡珏,韦钢,谢素娟,等. 基于人工鱼群算法的主动配电网故障定位[J]. 智慧电力, 2020,48(6):112-118,124.
[11]侯仁政. 基于气象因素的电网故障原因推理研究[D]. 杭州: 浙江大学, 2017.