沈嘉怡
(国网上海市电力公司,上海 200122)
国家电网公司已经建立了与电能信息采集相关的一系列系统,主要负责采集不同用户用电情况下的功率信息。现有的运行系统缺乏整体统一协调,各部门及专业之间未相互配合。对于个别电力业务有特殊要求时,没有考虑个别数据采集频率标准,无法进行数据实时共享,限制系统应用范围。在此基础上,文献[1]提出了基于北斗的同期线损用电信息采集系统,建立了基于北斗的接入设备模型,在保证原有电力系统基本功能的前提下,引入了多时段定时数据收集机制,可以有效地采集盲区数据;使用的基于大数据云平台的采集方法,文献[2]在大数据云平台的基础上,采用分布式的功率信息采集系统进行数据采集。通过构建大数据云平台,结合BP神经网络算法分析大数据,加强线损控制,准确预测用电负荷。但两种方法均受采集设备或人为因素影响,导致采集数据确实存在或产生异常数据检测不符合预期行为的问题。针对这一问题,文中提出了一种基于孤立森林算法的电力信息采集系统设计。
系统硬件结构包括三个部分:采集对象、通信通道和系统主站。该系统主要是一个独立的网络,防火墙用来实现与市场、其他应用系统及公用网络通道的安全隔离[3]。采样器是采集终端和现场测量设备,其主要有变电站关口终端、专业的采集终端、公用事业变压器采集终端、低压集中抄表终端和电能表[4]。
电力公司各工作站通过内部专网连接到省公司主站,图1 为电力用电信息采集系统物理拓扑图。
从图1 可以看出,在逻辑上,信息采集系统分为主站层、通信层和设备层,该系统将接口与其他应用系统接口的连接形式统一[5]。
电力用电信息采集系统实现了各种业务应用逻辑,包括电力控制逻辑、信息采集执行逻辑、数据库管理逻辑等,通过采集到的各个逻辑层数据将采集结果发送给智能控制终端。
通信层主要采用GPRS 公共网络通信通道,支持主站与终端之间的信息交互,是信息传输主站与采集设备的连接[6]。GPRS 公共网络通信是一种32 位无线模组,采用嵌入式操作结构,为系统提供RS232 接口,方便与串口设备直接连接,实现数据快速传输。
设备层具有电力用户计量、统计等功能,将其划分为N个终端子层,负责电力用户计量信息的采集,实现电力用户终端与主站之间的信息交互[7-9]。
1.3.1 数据库服务器
数据库服务器采用高性能PC 服务器和两机并发方式,以保证系统的安全性能。该数据库服务器采用两路配置,CPU 按1∶8 的存储器分配比例,根据数据使用合理分配分区,指定相应的分区运行[10]。图2 为数据库服务器的结构。
由图2 可知,UC8000 系列IPPBX 双机热备系统,配置在同一台服务器上,双机UC8000 服务器双机热备,实现实时运行检测。采用Eth1 接口检测,呼叫服务采用Eth0接口连接外部网络,默认关闭服务器Eth0端口[11]。当系统自动检测出主服务器出现故障时,备份服务器将自动为系统提供Eth0 接口,主服务器上的所有服务数据将快速传送到另一个服务器上[12]。
1.3.2 磁盘阵列
冗余阵列是存储在多个磁盘不同位置上的数据,这些数据均衡重叠,改善系统性能,通过增加磁盘平均故障间隔时间来提高系统容错性能[13]。双存储磁盘阵列柜结构如图3 所示。
从图3 可以看出,使用双存储磁盘柜将数据存储在本地磁盘上,通过双存储阵列的复制功能将存储的数据备份到其他存储阵列,保证数据不会丢失。
采用孤立森林算法检测孤立的异常数据点,并在此基础上设计了电力信息采集流程。
1)使用t个iTree 构建孤立森林,在异常样本较少的情况下,孤立森林适合于与正常样本的属性明显不同的属性。利用随机超平面对孤立森林进行数据分离,这样循环分离到子空间中只剩一个数据点[14]。孤立森林构建过程如下:
①将训练数据作为子样本集,作为树的根节点;
②这个门限是指当前点,用任意的门限作为切割步长;
③由切点构成超平面,并将数据分成两个子空间,在节点的左右两侧分别放置尺寸小于p和大于p的尺寸;
④循环执行②、③,形成新的节点,当数据不能继续分割或者分割次数到达log2λ时,停止分割。
2)判断进入滑动窗口数据的异常情况,利用滑动窗的流场数据研究孤立森林的异常检测,以此来判断每个滑动窗到达的异常[15]。输出结果为在(0,1)范围内的数据,其中(0,Y]表示处于正常状态的流数据,(Y,1) 表示处于异常状态的流数据,Y表示通过对初始孤立森林检测器进行历史数据计算得到的异常分数。基于历史数据的异常率得到分位数,公式为:
式(1)中,f表示一种连续计算某点概率的函数;F(x)表示孤立森林检测函数;x表示训练样本;z表示异常样本。
3)采集进入滑窗缓冲区的流量数据,以此判断该数据是否为异常数据,出现这种情况的概率为u':
式(2)中,n表示当前滑动窗口中的异常数据;nall表示当前滑动窗口中的所有数据。
4)根据更新后的数据,计算不同检测器下的数据异常率,在第i个子孤立森林检测过程中出现的数据异常率偏差为:
式(3)中,u(i)表示第i个子孤立森林数据异常率;uall表示全部数据异常率。按照数据异常率偏差计算结果,对更新后的子森林异常检测结果按照数据大小依次排序。
利用当前可移动窗口中的数据构造一个K-子孤立森林异常检测器,代替待更新子森林异常检测器,在孤立森林检测的基础上更新数据,完成孤立森林检测数据的实时更新,清除滑窗和缓冲区的数据[16]。
5)信息流收集设计,清除异常数据点,设计如图4所示的信息获取流程。
由图4 可知,客户端启动请求服务由采集接口服务处理,可以响应多个客户的请求。收到请求后,采集接口服务将请求队列放到接口请求队列中,请求队列任务被放置到协议解析服务的调度队列中。协议分析服务在写入消息后,通过物理通道的预通信服务发送数据采集请求;当请求返回时,前端通信服务将反馈信息放到协议反馈队列。通过分析所采集的数据消息,任务调度服务对其进行处理,并将结果返回给请求服务客户端进行显示操作。
系统于2019 年8 月在某省某市供电公司试点运行,截至2019 年10 月,已从电力负荷系统导入大型专变用户中。
以某地2019 年8 月5 日的6 000 个用户的日负荷数据为研究对象,采样间隔是20 分钟,共98 个测试点。对这些数据处理后,可得到4 500 个有效日负荷数据,其中包含50 个异常用户。
查全率、召回率、检测率和查准率是评价系统性能优良的重要指标,其中查全率计算公式可表达为:
式(4)中,W表示系统采集到的目标数量;X表示系统中所包含的全部采集到的信息中与某一用电行为相关的信息数。
召回率计算公式可表达为:
式(5)中,Y表示召回为正常的用电信息数。
检测率计算公式可表达为:
式(6)中,Z表示被正确采集到的用电信息数。
查准率计算公式可表达为:
式(7)中,R表示检索出的相关信息量。
分别采用基于北斗同期线损、基于大数据云平台的采集方法和基于孤立森林算法的采集方法检测电力用电信息数据,查找异常值。三种方法处理电力用电信息异常用户,ROC曲线对比结果如图5所示。
由图5 可知,使用三种方法的查全率均较高,但使用基于孤立森林算法的采集方法相比于基于北斗同期线损、基于大数据云平台的采集方法,可得到最高查全率为99%。三种方法处理电力用电信息异常用户,累积查准率对比结果如图6 所示。
由图6 可知,当检测到的异常值检测率在20%左右时,使用基于孤立森林算法的采集方法的查准率为70%;使用基于北斗同期线损的采集方法的查准率为60%;使用基于大数据云平台的采集方法的查准率为9%。
通过上述分析可知,使用基于孤立森林算法的采集方法,具有更高查全率和查准率,能够实现快速、全面采集目标信息。
用t个iTree 构建孤立森林,在此基础上设计了基于隔离森林算法的电力用电信息采集系统,实现了用电数据的异常分析。随着系统规模的不断扩大,多通道并发采集,数据的存储容量和效率将成为系统开发和应用的关键。要实现“全覆盖”,充分融入电力营销自动化流程,全面提升营销管理水平。