基于BP神经网络的架空输电线路树障隐患预测技术研究

2020-02-22 02:57于文滔
通信电源技术 2020年2期
关键词:桉树树木神经网络

于文滔,杨 芳

(广东电网有限责任公司清远供电局,广东 清远 511500)

0 引 言

社会经济的高速发展和人们对木材需求量的不断增长,促使人们大量推广种植速生经济林。目前,在南方地区的架空输电线下出现了大面积超高树木,如速生桉、湿地松、竹子等[1]。在一些山区,输电线路经过的区域山路十分陡峭,植被繁杂,基本无路可走。大部分输电线路分布在山区且跨越大片树林,造成巡视相对困难。据电网公司调查统计,由高杆植物造成的安全隐患占所有安全隐患的近一半,可见超高植物是影响线路安全运行的原因之一。

山林的经营权利是确定的,有些当地农民会在高压架空线下方种植大面积的高杆速生树种,由于巡线和树障处理不及时,高杆树木与导线的距离不足会造成树闪等输电故障。若栽种的树种是桉树,因为桉树的生长速度极快,成材的桉树能够到达30 m,将致使大部分线路都无法满足安全距离,即使将线路设计为高跨式。当前设计线路时需考虑树木最终的高度一般为20 m,否则无法满足线路所需的安全距离。当高杆植物生长到与导线之间的距离小于安全距离时,会导致导线对植物放电而引发跳闸事故。如果人距离桉树较近,甚至会对人造成伤害。

本文以速生桉树树高为研究对象,建立桉树树高的BP网络模型。人们为了控制林分密度和维护地力,获得更高的经济效益,一般会对桉树的胸径和树高的生长规律进行专门研究[2]。当前对桉树生长规律的研究主要是建立胸径、树高以及林分密度等因素之间关系的回归方程,而基于人工智能模型技术的桉树生长规律研究相对较少。总结起来,树高预测的方法主要有传统的建模和人工智能算法。传统建模需要了解树木的各种生长情况,不断调整模型的各类参数,实践相对麻烦;人工智能如BP神经网络模型方法不需要了解内部生长规律,只需要有历史数据便可以构建一个非线性模型,用于得到未来某一时刻的预测输出值。BP神经网络是一种经典的人工神经网络形式,于1986年由Runelhart等人首次提出,之后被不断改进并广泛应用于各个领域。近年来,BP神经网络在电力系统和林业领域开始有大量应用,如解决电力系统中的预测问题,但在解决电力系统与林业之间的矛盾领域少有研究。使用BP神经网络的一大优点是,不需要深入了解树木生长的内部规律就可以建立相对较复杂的非线性模型。目前,在国内林业研究领域中使用BP神经网络大多是用于建立文献[3-7]所述的林分生长模型,而很少有报道使用BP神经网络研究速生桉的生长模型。文献[8]开发了树木生长高度的简单数学模型,并应用于所研发的输电通道树木隐患点预警平台。但是,该模型只能粗略模拟树高生长情况,不能通过已有参数进行自主学习,使得其精度不够。本文以架空输电线路下方的人工桉树为研究对象,研究建立其高度与树龄和种植密度的BP神经网络模型,一方面为分析模拟和预测树木在各阶段的生长高度提供参考,另一方面为建立具有树高预测功能的架空输电线路树障隐患智能预警平台打下理论基础。

1 研究数据来源

实验使用的数据集来源于广东电网公司清远供电局的架空输电线路树障管理系统。该系统记录了每个树障点对应的树木生长数据,包括树种、树龄、树高、气象参数和地理位置等。清远供电局管辖的架空输电线路有500 kV、220 kV、110 kV和35 kV电压等级,共157条线路,树障点随机分布在广东省清远市的各个位置。使用管理系统数据库中记录的运行数据,数据包括树高、树种、地理位置以及对应位置的气温、降雨量等气象因子共1 000条数据,然后进行校验、剔除、归一化等预处理后用于训练和测试。

将数据集内的每条数据归一化到(0,1),即将不同表征的数据规约到相同的尺度内,以消除数据之间的量纲影响。

本文关注的是桉树树高,系统记录的1~7 a桉树生长高度如表1所示。可以看出,桉树的高度符合实际生长情况。基于国内相关权威实测统计数据,树高的整个生长过程是先加快后减慢,大致呈“S”形增长。

表1 部分研究数据

2 研究方法

2.1 BP神经网络

BP神经网络由非线性的变换单元组成。它处理信息的过程由网络的拓扑结构、神经元中的激活函数、连接权值以及阈值共同决定。通过计算公式反向传递网络输出值与实际值之间的误差,不断调整网络权值和阈值,直到整个网络的误差平方和达到最小。

如图1所示,在神经元的结构模型中,X1、X2、…、Xn是每一个神经元的输入量,y是每个神经元的输出量(也作为下一层神经元的输入量),W1、W2、…、Wn是权值,b是阈值,f是传递函数。

经典的BP神经网络由3层结构组成,分别是输入层、隐含层以及输出层,其中隐含层可以有多层。从理论上来说,单一隐含层的BP神经网络可以无限拟合任何一条连续的非线性曲线。

图1 BP神经网络神经元结构模型

2.2 模型构建

这里采用Python语言进行编程建模,并实现对模型的训练、测试和回归分析。这主要是基于以下考虑:一是Python具有丰富和强大的库,应用十分广泛;二是能够与其他编程语言的功能模块结合使用,因此常被称为胶水语言;三是容易将建好的预测模块与其他应用程序或者网站结合,以便将预测理论、方法应用到实际生产。基于Python 3.4软件平台建立单隐层BP神经网络树高预测模型,以估测尾巨桉树高。该模型有2个输入节点,2个隐层节点,1个输出节点,拓扑结构如图2所示。

图2 BP网络预测模型拓扑结构

查阅文献可知,若要确定任意一个3层的BP神经网络隐含层的节点数,可以使用公式。式中,S表示隐层节点数,j、k分别表示输入层和输出层的节点数;l取1~10之间的整数。

训练网络前,应该先对数据进行前期处理。这里先对输入层的变量林分密度采取归一化处理,以使网络以更快的速度收敛,同时可以提高训练和预测的精度。本研究将数据归一化到[-1,1],按照标准i=(2(xi-xmid))/(xmin-xmax)进行归一化。其中,xmid表示数据的中间值,xmax和xmin分别表示待归一化数据列表中的最大值和最小值,xi和i分别表示数据归一化前和归一化后的值。

研究中,选择桉树的林分年龄A和林分密度N作为BP神经网络的输入变量,选择树高总生长量H作为网络的输出变量,即H=f(A,N)。从经济性看,速生桉的砍伐年龄一般在7年左右,因此使用前5年的生长数据作为训练样本,后2年的数据作为测试样本,用于预测速生桉生长高度随树龄增长的变化情况。用logsig函数Y=1/(1+e-x)作为隐层神经元的激活函数,其中X、Y分别表示网络的输入和输出;使用purelin函数Y=aX+b当作输出层的激活函数,其中X、Y分别表示网络的输入和输出。然后,使用随机梯度下降法作为模型的训练算法,模型精度评价采用决定系数R2和均方误差MSE。当R2越大,MSE越小时,模型拟合精度越高。

其中:n为样本数,分别表示桉树树高的真实值、真实值的平均值和预测模型的输出值即预测值。

通过控制变量法对比设置不同网络参数下的训练效果,最终将模型的隐含层节点数设置为2,神经元数设置为2,学习率设为0.05,训练代数设置为2 000代,目标精度设置为0.01,训练的Python程序见附录,训练的误差变化如图3所示。可以看出,当到达最大迭代次数时,已基本达到目标精度。

图3 训练误差变化曲线

3 结果与分析

3.1 模型训练

模型用前5年的桉树树高和其影响因素实际值作为网络的训练数据,使用后2年对应的数据作为测试,检验所建模型的预测效果。当样本较少时,选取一组重复试验值加入训练,以此增强模型的泛化能力。训练和测试、分析平台选择Python 3.4,结合numpy、matplotlib、sklearn、pybrain等工具库,使用Python语言编程实现方式实现BP神经网络的构建。桉树树高BP人工神经网络模型训练结果、模型仿真输出和实际值对照如表2所示。

经过上面的模拟结果易得出结论,建立的BP网络模型对树高的平均预测精度为96.6%。从数据表面看,桉树的树高生长速度是随树龄的增大先加快后减慢,直到生长趋于停止,呈现“S”型增长。结果符合速生桉人工林的生长规律,即先快后慢的生长规律。表3是经过训练后的树高BP神经网络的各项主要参数。

表2 BP网络训练结果

表3 网络主要参数

3.2 回归分析

在Python 3.4平台中对建立的桉树人工林树高BP网络模型进行回归分析,以充分说明所建立的树高模型是合理、可行的。为了检验模型的拟合效果,可以使用树高实际值和网络模型的输出值建立回归方程。结果表明,建立的桉树树高BP神经网络模型对应的回归方程的斜率约为1,表明建立的网络的预测值与真实值的拟合效果良好,所以建立的网络效果是理想的。图4是建立的网络的仿真输出和实际输出的对比。

图4 仿真输出与实际输出对比

4 预警系统

通过研究分析,树高预测使用Python语言编写实现,预警系统通过调用预测模块实现树高和弧垂的预测,从而进一步求得树线净空距离的预测值,然后根据该预测值对比运行规程[9]要求的距离发出预警信息。当数据库中存储的树木生长信息有了较大的更新,数据精度有提高时,树木生长模型可自动进行重新训练,从而进一步提高预测精度。预测预警系统实现流程,如图5所示。

图5 预测预警系统实现流程

5 结 论

本文以桉树树龄和林分密度作为输入变量,以桉树树高作为输出变量,收集了桉树连续7年的生长数据,用前5年的数据做为训练样本,后2年的数据作为测试样本,通过大量的训练、调整和优选,最终确定建立了2个输入、2个隐层节点、1个输出的尾巨桉树高曲线BP神经网络。结果表明,BP神经网络树高曲线模型在建模样本拟合效果和检验样本预测效果方面表现出色。

此外,也可以使用传统的数学函数对树高曲线进行建模,但只是单一简单的非线性函数,与神经网络模型相比,只是神经网络中的一个神经元,不能代替其他类型的函数。使用传统数学函数建立的树高曲线模型无法脱离函数原来表示的曲线,而神经网络综合了诸多简单的非线性函数,它的特点是高度非线性和分布式。

结果表明,用BP神经网络方法建立非线性模型预测树木的生长高度是可以实现的,结果能够理想反映训练数据的情况,相对误差不大。当前的高压输电系统中,树闪引起的跳闸事故屡屡发生,若可以及时发现并处理架空线下的树木隐患,将有效减少输电线路故障。这需要一个功能强大的自动管理平台,用于记录和管理线路下方的树木生长情况,提早作出预警,而目前尚没有一个有效的树障管理、预警平台。Python是一种流行的编程语言,可以建立跨平台的应用程序。因此,可以用Python语言建立一个树障管理平台,方便巡线人员将调查结果记录在系统中。记录的数据包括线路下方树木的分布情况、树种、树高、树龄等,方便管理和查阅。同时,平台可根据记录的历史数据,预测未来某时刻某线路下方的树障隐患情况。当预测输出树高超过安全高度时,自动发出预警信号,提醒运维人员及时清除树障隐患,防患于未然。用Python语言编写的预测程序方便管理平台进行直接调用,这样可以将理论与实际应用紧紧联系起来,而用MATLAB编写的程序没有这种实用性,因此本文的建模和分析都采用Python进行编程。

本研究有待改进的地方如下:

(1)样本数据过少,树龄跨度大,希望获取树木生长情况的月度数据,以得到更精确的模型;

(2)除了树龄和林分密度,影响树木生长高度的因素还有降雨量、气温、光照强度和土壤肥力等,应该将这些因素考虑在内作为BP网络输入,以达到更好的预测精度。

因此,后续研究将不断改进、完善相关算法,以期将本研究应用于实际生产和生活。

猜你喜欢
桉树树木神经网络
基于递归模糊神经网络的风电平滑控制策略
桉树的育苗造林技术与病虫害的有效防治
树木之最
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
彩虹桉树
桉树茶饮
辨认树木
基于Q-Learning算法和神经网络的飞艇控制
桉树会引发白血病?