顾明煜,丁雪峰,江红成,花 冉,赵 军
(国网江苏省电力公司南通供电公司,南通 226001)
变电站是电力能源传输系统中的重要一环。变电站所涉及的电力生产是一项复杂、高综合性的业务流程,所需处理的数据内容数量多、离散性强[1]。变电站进厂检修的必要条件是工作票,工作票是指在进场工作前由项目负责人按照工作任务要求对现场进行风险辨识,按工作内容要求确定检修人员、范围、工作时间等,并将采取的安全措施填写所成的票据。工作票可防止盲目性误操作,确保检修过程顺利进行,提高检修作业的安全可靠性。变电检修工作票是使检修全过程各工序之间科学协调和有序推进,真正达到预防为主,实现事故为零的目标[2]。工作票所涉及的知识体量十分庞大,利用传统技术仅仅依靠键值对匹配的方式去数据库中筛选开具工作票的方式,不仅对服务器性能的要求十分苛刻,而且匹配一个变电站每条线路的数据关系就需要花费很多的时间。
当前已有的工作票系统虽然已经能够开具一些简单通用的工作票,但对于高压电力电缆工作所需要的第一种工作票,目前还不能有效包含站内的具体安全措施,需要人工介入增补变电检修第一种工作票,使得开票和许可流程变得复杂,快速入站检修需求与严谨工作票管理要求之间的矛盾日益突出。
本文系统利用规则映射、人工智能、全文检索等相关技术,结合全文检索技术具备的高并发处理能力、快速检索性能[3],将繁琐庞大的工作票开具流程交由全流程自动化方式去实现,用一种基于数据表的新方法实现作业票管理系统的数据流转[4]。在实际生产工作中,变电站检修负责人只需要提供工作计划中对应停电间隔的一次接线图纸,由机器智能映射出各个设备的安全措施,生成对应的工作票,以实现工作票的快速生成、生产管理系统的自动填报,协助配网运维人员高效、便捷地完成工作票系统录入工作,保障工作票规范、准确[5]。
成票推理算法的核心是将设备规则和工作计划表中设备一一映射,从而推理成工作票安全措施。工作票自动成票的过程最重要的一个环节是根据设备规则表推断出每条工作计划中停电间隔重要设备关系及其属性、电气设备表的安全措施。即变电检修人员上传一条工作计划后,从工作计划中解析对应的变电站名称、停电间隔范围、工作设备和工作任务,结合设备规则表推理得出标示牌,断开开关等安全措施,最后将所有推理出来的安全措施整理到工作票页面上。
图1 工作票成票算法流程图
电气常量规则表,是指将电站不同种类的设备和不同种类的工作,按其所属的类别和名称进行排列,方便后续进行检索和分词时能够快速匹配到。结构见表1。
表1 电气常量规则表
停电间隔规则表,是指变电站某个停电间隔内所有设备组成的关系集合映射,方便后续对线路进行解析时,加载该停电间隔内的所有设备。结构见表2。
表2 停电间隔规则表
工作票规则表,是指不同设备和安全措施文本组成的关系集合映射,方便后续整理工作票页面的安全措施。结构见表3。
表3 工作票规则表
全文检索大致分为索引创建和搜索索引两个过程。索引创建是利用分词组件将文档切分(split)一个个单词、去除停词(通过与停词集合的比对,存在于分词组件中)、去除标点、最后获取词元。搜索索引指当用户输入一个检索短语后,对检索短语进行的词法分析:①关键字比对(内置关键字库),如不是关键字则作为普通词处理;②语法分析,将语句根据语法规则形成语法树。
本文利用文件系统中已经存在的变电站规则表数据,通过POI 工具首先加载表格中表单的内容,分词组件对不同文档进行切分,根据常见的切分规则对表格中相应的数据进行切分,加载到全文检索引擎内存中,开票时利用工作计划中的“变电站+停电间隔+工作内容”形成查询语句,进行后续的搜索过程。
2.2.1 算法流程
该分词方法基于人工标注的词性和统计特征,对文字进行建模,即根据观测到的数据(标注好的语料)对模型参数进行训练,在分词阶段再通过模型计算各种分词出现的概率,将概率最大的分词结果作为最终结果。机器学习是通过让计算机模拟人对句子的理解,达到识别词的效果[6],机器学习应用到分词算法中即衍生了基于统计的机器学习分词算法。算法描述如下:
假定句子S(W1,W2,…,Wn),Wi代表词,其概率为P(S)=P(W1,W2,…,Wn)根据条件概率公式,每个词出现的概率等于之前每个词出现的条件概率相乘。
但是这样计算量太大,句子越长越麻烦,因此Andrey Markov 提出了一种简化方法,即马尔可夫假设:假设任意一个词出现的概率只与它前面的一个词有关。
这就是二元模型(Bigram Model),相应的高阶语言模型即任意一个词Wi出现的概率只与它前面的i-1个词有关。元数越高越准确,但相应越复杂、越难实现。
2.2.2 具体实现
本文采用三元模型,在统计量足够大的情况下,任意词的出现概率描述如下:
P(Wi|Wi-1)=P(Wi-1,Wi)/P(Wi-1)= 联合概率/边缘概率=两个词一起出现的次数/单个词出现的次数
系统中需要对设备名称、设备类型等名词进行分词,以获取最简短和最精准的词语,方便检索出最匹配的规则表,就需要根据上述算法分词,去除干扰检索效率的词语,通常形容词、地名、符号等信息可以通过该分词算法去除,得到最大概率的短词。例如:“110 kV 华庆745 开关”通过分词算法,拆分成“110 kV”“华庆745开关”短语,把这两个任务分开处理,也就是不同任务使用不同的处理策略或两个任务按时间顺序先后被处理[7],后续通过检索技术可以大大缩小检索的时间。
工作票内容包括停电间隔内工作地点及设备双重名称、工作内容,应拉断路器(开关)、隔离开关(刀闸),应设遮拦、应挂标示牌及防止二次回路误碰等措施[6]。
技术路线描述如下:①建立停电间隔内设备的映射规则:首先将每种设备类型对应的关键字、名称、别名、属性的关系一一映射,将工作类型的关键字、名称一一映射,对于一个变电站解析出来的停电间隔应该有其详细的设备映射;②建立设备的工作票规则。
具体实施步骤如下:①任务开始时,初始化设备规则表,利用文本检索的方式,从规则表中用POI 工具读取表格中每个设备类型,依次加载到JVM 内存中;②初始化工作规则表,利用文本检索的方式,从规则表中以POI 工具读取表格中每个工作类型,依次加载到JVM 内存中;③初始化电气常量规则表,将上述两步初始化出来的设备规则表和工作规则表封装到电气常量规则表中;④解析用户提交的工作计划表项之工作内容,主要是检查:之前的顿号是不是停电间隔,如果是,再次拆分;⑤初始化停电间隔规则表,对停电间隔内容的设备名称、相邻名称以及属性进行解析;⑥构造停电间隔内设备的设备属性和相邻关系表,依次遍历该停电间隔内的设备属性和相邻关系;⑦汇总电气表内所有设备,根据设备全称获取设备对象信息体,封装成设备的集合,同时需要对重复的设备进行去重;⑧构造相邻关系表项的相邻设备信息,根据前面得到的停电间隔内的设备相邻关系表,再次迭代出相邻设备的信息;⑨将电气表内的所有设备信息以及相邻设备信息封装到电气表字典中;⑩得到电气表字典中信息后,通过每个设备所属的设备类型从工作票规则表中关联对应的安全措施文本,将所有安全措施文本一一填充到工作票的内容页面,再通过POI工具替换标记符,生成工作票文本。
算法系统软件流程图如图2所示。
图2 软件流程图
为验证工作票生成算法的有效性,需要输入实际工作计划表进行测试。下面以某110kV变电站为例,进行说明。变电站局部接线图如图3所示。
图3 变电站局部接线图
根据电气图,整理生成电气常量规则表,部分如表4所示。
表4 电气常量规则表
根据电气图生成110 kV 变电站的设备类型表,生成后的部分规则如表5所示。
表5 停电间隔规则表
生成工作票规则表,生成后的部分规则如表6所示。
表6 工作票规则表
上传变电站对应实际检修工作计划,列出部分测试数据如表7所示。
表7 工作计划表
考虑测试结果的准确性和有效性,提供10个变电站,每个变电站提供20 条工作计划进行测试。通过统计测试项目的分词准确率,工作任务推理准确率,安全措施推理准确率,平均生产时间,得出如下结果。
表8 工作票规则表
在前端界面上点击开票,生成该条工作计划表所对应的工作票,依次可以从生成的工作票界面上找到以上工作计划表中的变电所,以及所解析出来的工作设备和安全措施,在上述的规则表中都能够一一找到对应映射关系。
图4 工作计划图
图5 工作票图
本文针对电力行业的变电站检修工作任务,从工作计划表着手,基于“工作设备+工作任务”逻辑推导,设计实现了基于设备规则的开票算法。系统算法通过预定义的设备规则表,通过解析设备类型(开关、流变、压变、避雷器、主变、刀闸等设备),及设备类型的安全措施,通过检索的方式自动生成工作计划所需安全措施。系统测试表明,本算法具备开具变电站检修任务工作票的功能,已达到了算法和软件所设定目标。