徐海燕,李 栋,吴 浩,2,邓思敬,董星星
(1.四川轻化工大学自动化与信息工程学院,四川 宜宾 644000;2.人工智能四川省重点实验室,四川 宜宾 644000)
据统计由配电网故障引起的用户侧停电达到用户侧停电总量的95%[1]。快速准确地判断出故障发生区段能够提高配电网的安全性和稳定性,同时能有效避免因配电网故障带来的巨大经济损失。许多配电网目前均装设了配电网自动化设备(如馈线终端单元(FTU)等),此类设备可实时获取线路运行信息,基于自动化设备反馈信息为基础的配电网故障区段定位方法具有原理简单且易于实现的特点[2]。
已有诸多学者研究了多种配电网故障定位方法,如精准定位的阻抗法[3-5]、行波法[6-7]和非精准定位的矩阵法[8-9]、人工智能算法[10-14]等。阻抗法根据线路阻抗与故障距离成正比的原理进行定位,但线路参数获知的精确度决定了阻抗法的精确度。行波法又可以分为基于故障行波在故障点与测量端往返时间精准定位的单端法和行波到达不同测量端的时间差精确定位的双端法。文献[6]通过提取线路电压和电流的行波首波头并计算电压电流的线模分量乘积判断线路是否发生故障,通过测量线路中点处电压线模行波的前两个波头达到的时间计算故障的发生点。但由于配电网规模庞大,支路多,行波的折反射情况较为复杂,因此行波信号的准确获取还存在巨大挑战[9]。矩阵法通过建立网络描述矩阵和基于自动化设备上传的信息形成的故障信息矩阵,构建故障判断矩阵进行故障定位。人工智能优化算法如鱼群算法[10]、免疫算法[11]、蝠鲼算法[12]、蝙蝠算法[13-14]以及遗传算法[15-16]等,此类未经改进的算法均存在收敛慢、易于陷入局部最优的缺陷,并且因运算时间长而无法满足故障定位的实时性和准确性的要求,而遗传算法相比于其他算法具有自组织和并行性,并不需要添加其他辅助信息便可评价个体。
针对上述问题,提出一种基于改进免疫遗传算法的配电网故障区段定位方法。通过引入精英保留思想对免疫遗传算法进行改进,利用精英保留对种群中的最佳个体进行保留,在其他个体依次进行遗传、免疫操作后,将保留的最佳个体替代新种群的最优个体。最后通过仿真验证算法的实用性和准确性。
遗传算法是通过借鉴生物界的自然选择和自然遗传现象演化而来的搜索方法[15-16]。从生成随机初始解开始,通过不断重复选择、交叉、变异等过程,从而逐渐寻求全局最佳解。
遗传算法的选择过程是根据自然界优胜劣汰的原则对解集个体进行选择,即根据适应度值的大小选出优秀个体,淘汰劣质个体。通常采用轮盘赌注的方式对种群进行选择,个体i被选中的概率如下:
其中:fi表示个体i的适应度函数值;N表示种群总个体数表示种群全部个体的适应度总和。
两条染色体的部分基因按照某种方式进行交换形成两个新个体的过程称之为交叉。二进制编码的交叉方式主要有表1 中显示的3 种交叉方式。在种群中随机选取一对染色体,根据位串长度,随机选择一个或多个位置进行交叉,本文选择采用多点交叉方式。
表1 交叉过程示例
交叉操作后,遗传算法将进行变异操作,以一定的概率从种群中随机抽出某个个体,将个体的某些基因值用其他等位基因进行替换,从而形成新个体,如表2 所示。变异运算中的变异算子可分为基本位变异、均匀变异、边界变异、非均匀变异等。
表2 变异过程示例
在遗传算法迭代过程中,随着种群不断迭代,种群中适应度值较大的个体将不断增多,将导致种群失去多样性并出现“早熟”现象。要保证种群的多样性,需要增加种群交叉率和变异率,但较大的交叉率和变异率又将会导致种群出现“退化”。
采用引入精英保留策略的思想对免疫遗传算法进行改进,改进后的免疫遗传算法可以有效避免因包含遗传算法而可能发生的最优个体丢失的情况。改进免疫遗传算法不仅具有免疫记忆功能、抗体多样性保持功能和自我调节功能,同时还保证了优秀个体不被丢失,因此改进免疫遗传算法具有很好的全局搜索能力,同时能避免“早熟”问题[17]。
2.1.1 节点状态编码
单端辐射型配电网采用改进免疫遗传算法进行故障定位时,规定系统电源流向用户或负载的潮流方向为正方向。当配电网中的馈线终端单元(Feeder Terminal Unit,FTU)检测到电流且电流方向与规定的正方向一致,规定此时的故障状态编码为“1”;当FTU 没有检测到电流时,故障状态编码为“0”。
节点编码规则:
2.1.2 区段状态编码
以配电网中的分段开关划分区段,当测量区段有故障电流经过时,区段状态记为“1”,若无故障电流经过则记为“0”,即:
区段状态编码:
在传统单端辐射型配电网中,规定系统电源到开关的区域为上游区域,开关到用户端的区域称之为下游区域。当某个区段发生故障时,只有电源端到该区段前一个节点的区域会有故障电流流过,该区段的后一个节点以及下游区域均没有故障电流经过,因此辐射型配电网的开关函数定义为:
其中:Ij*表示第j个分段开关的函数;Sj表示j号开关下游区域各区段的状态值;M表示区段总数;∏表示逻辑或运算。
构建适应度函数能够更好的评判故障定位的精度,适应度函数值是算法定位的核心,直接影响故障定位的准确性和可靠性[18]。利用最小集理论[19]对适应度函数进行构建,同时为防止算法误判,增加了权重系数,因此适应度函数构建如下:
其中:k为配电网节点总个数;Ij*(S)为配电网各开关函数的期望状态值;Ii为FTU 实际上报第i个开关状态值。μ为故障定位权重系数,取值在[0,1]之内,本文取0.5,Si为配电网中故障设备状态,“1”表示设备出现故障,“0”表示设备正常。根据构建的适应度函数能够看出,只有当各开关期望状态值和实际上报状态值完全相同时,适应度函数取得最小值。
在实际运算中,式(5)应转化为求解最大值问题,因此构建亲和度函数如下:
亲和度函数取得最大值时代表算法取得最优解,亲和度函数是评判“抗体”和“抗原”之间的匹配度的重要函数,当评价函数值越小,抗体和抗原之间的匹配度越高[20]。
种群中两个个体相似或相同所占的比例称为抗体浓度,为了保持个体之间的多样性,应该尽量保证个体之间的差异性,即浓度较大的个体应当舍弃,浓度较小的个体则保留。两个抗体之间若超过X位编码位置相同则表示两个抗体相似,计算公式如下:
其中:Cv表示抗体浓度;N表示抗体总数;Hv表示抗体是否相似;Sv表示抗体间的相似度;e表示抗体相似度的评价参数。
在进行遗传操作之前引入精英保留策略是为防止最优个体经过遗传算法的选择、变异操作后发生丢失,基于精英保留的思想,将精英保留策略引入免疫遗传算法中,通过精英保留策略对算法的最优个体提取、保留。在算法经过遗传操作和免疫算法操作后,用精英保留中的最优个体替代新种群中的最佳个体。
(1)确定免疫遗传算法的各个参数,如种群规模、变异系数、交叉系数、克隆个数、最大迭代次数等。
(2)根据FTU 上传的故障信息形成开关期望函数,构造亲和度函数。
(3)初始化种群,根据亲和度函数计算每个个体的亲和度,记录初始个体极值为Pbest,同时将Pbest中的最大值赋给全局极值gbest。
(4)根据精英保留策略提出种群中亲和度最高的个体进行保留。
(5)通过遗传算法的选择、交叉、变异操作对种群进行更新。
(6)克隆抑制。根据步骤(5)计算的种群亲和度,选取前K个亲和度较高个体进行免疫克隆操作,并分别计算每个个体的浓度和亲和度进行抑制,生成免疫种群。
(7)将步骤(6)产生的免疫种群与步骤(4)保留的个体与随机产生的新种群进行合并,更新种群。
(8)更新Pbest 和gbest。返回步骤(3)计算新种群亲和度值,并与之前得到的亲和度值进行比较,更新Pbest,同时将更新的局部极值gbest 与全部Pbest 进行比较,更新全局极值gbest,迭代次数加1。
(9)判断算法是否达到最大迭代次数,若达到最大迭代次数则跳出循环并输出最优个体和收敛曲线;若未达到,则返回步骤(4)。
改进免疫遗传算法流程如图1所示。
图1 改进免疫遗传算法流程图
以图2中的单端配电网示例图进行改进免疫遗传算法的仿真分析。图中节点1~12 为分段开关,(1)~(12)为区段编号。设置算法种群数目为50,最大迭代次数为100,交叉概率为0.20,变异概率为0.05,根据图中配电网拓扑结构个体长度设为12。假设配电网的故障类型为单相接地故障,开关节点有故障电流通过则FTU 上报信息对应节点值为1;若没有故障电流通过,则为0。算法输出结果中“1”表示对应区段发生故障,“0”表示对应区段没有故障。分别对配电网发生单重故障、双重故障和多重故障情况进行仿真。
图2 单端配电网示例图
发生单重故障时,如表3 中区段11 发生故障时,由于在单端配电网中,电流流向故障发生点,因此电流流过节点为1、2、3、6、11,经过改进免疫遗传算法定位输出[0 0 0 0 0 0 0 0 0 0 1 0],输出结果表示配电网区段11 发生单重故障。当FTU 上传信息中存在畸变时[1 0 1 0 0 1 0 0 0 0 1 0],即开关2 发生误报,最后经过算法定位结果依然表示区段11 发生故障。
表3 单重故障仿真结果
如表4 中配电网区段4、区段11 同时发生故障时,故障电流流过节点1、2、3、4、6、11,将上报信息[1 1 1 1 0 1 0 0 0 0 1 0]输入改进免疫遗传算法并得出区段定位结果。在相同故障情况下,FTU 上传的信息中发生少量的畸变[1 0 0 1 0 1 0 0 0 0 1 0],即开关2 和开关3 发生误报,该算法同样能够准确的进行故障区段定位。同理,当配电网发生三重故障时,如表5 中配电网区段5、区段9 和区段12 同时发生故障,配电网中只有节点9没有故障电流流过,因此FTU上传信息为[1 1 1 1 1 1 1 1 0 1 1 1],根据算法输出结果表明区段5、区段9 和区段12 发生故障。在同样故障情况下,开关2、开关3 和开关6 同时发生误报时,改进免疫遗传算法依然能够识别出故障区段。
表4 二重故障仿真结果
表5 三重故障仿真结果
配电网发生单重故障或多重故障时,通过改进免疫遗传算法都能够准确地进行故障区段的定位。从表中可以看出当故障信息出现畸变时,该算法同样能准确的定位出故障区段,证明了该算法的容错性。
假设图2中配电网单相接地故障,在种群规模、迭代次数等参数设置均不变的情况下,分别利用改进免疫遗传算法、免疫遗传算法以及标准遗传算法进行故障定位。图3(a)所示为线路区段3 发生故障后无信息畸变时3种算法的故障定位结果对比。图3(b)所示为线路区段9和12发生故障后,节点7处的FTU 发生信息畸变时3 种算法的故障定位结果对比。图3(c)所示为线路区段9 和12 发生故障后,节点3 和节点7 的FTU 发生信息畸变时3 种算法的故障定位结果对比。
图3 配电网故障畸变算法对比
从图3 可以看出,由于改进免疫遗传算法引入了精英保留策略,因此改进免疫遗传算法搜索最优解的迭代次数明显少于其他两种算法的迭代次数,算法的收敛性得到了有效提升。同时发现改进后的免疫遗传算法避免陷入局部最优解的能力明显强于其他算法,改进后的免疫遗传算法拥有更强的全局寻优能力和更好的收敛性。
针对标准遗传算法在配电网故障定位中存在收敛慢、易陷入局部最优的缺点,提出将免疫遗传算法应用于配电网故障定位中,在免疫遗传算法的基础上引入精英保留策略防止优秀个体丢失,强化了算法的全局搜索能力。通过建立配电网仿真模型对改进免疫遗传算法进行可行性验证,仿真结果表明在配电网发生单重故障、双重故障或多重故障后,该算法都能快速、准确地定位出故障区段,同时允许FTU 上传信息时存在少量的畸变信息,进一步验证了算法的可行性、容错性和稳定性。与标准遗传算法相比,改进后的免疫遗传算法具有更快的收敛性和更强的全局寻优能力。