《人工智能在电力系统中的应用课件.ppt》由会员分享,可在线阅读,更多相关《人工智能在电力系统中的应用课件.ppt(151页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章第一章 概述概述人工智能是那些与人的思维相关的活动,诸如决策、人工智能是那些与人的思维相关的活动,诸如决策、问题求解和学习等的自动化问题求解和学习等的自动化(Bellman,1978(Bellman,1978);人工智能是一种计算机能够思维,使机器具有智力的人工智能是一种计算机能够思维,使机器具有智力的激动人心的新尝试激动人心的新尝试(Haugeland,1985Haugeland,1985);人工智能是那些使知觉、推理和行为成为可能的计算人工智能是那些使知觉、推理和行为成为可能的计算的研究的研究(Winston,1992Winston,1992);人工智能是关于人造物的智能行为,而智能
2、行为包括人工智能是关于人造物的智能行为,而智能行为包括知觉、推理、学习、交流的行为知觉、推理、学习、交流的行为(NilssonNilsson,19981998)。像人一样思考的系统、像人一样行动的系统、理性地像人一样思考的系统、像人一样行动的系统、理性地思考、行动的系统思考、行动的系统(Stuart Russell,2003Stuart Russell,2003)。1.1 1.1 人工智能定义人工智能定义1.21.2人工智能的研究途径与研究领域人工智能的研究途径与研究领域专家系统专家系统 (Expert Systems)(Expert Systems)人工神经网络人工神经网络 (Artific
3、ial Neural Networks)(Artificial Neural Networks)模糊逻辑模糊逻辑 (Fuzzy Logic)(Fuzzy Logic)进化算法进化算法 (如:遗传算法如:遗传算法Genetic Algorithm,Genetic Algorithm,粒子群粒子群Swarm Particle,Swarm Particle,禁忌搜索禁忌搜索TabuTabu Search,Search,模拟退火算法模拟退火算法Simulated Annealing,)Simulated Annealing,)多智能体系统多智能体系统 (Multi-agent system)(Mult
4、i-agent system)心理模拟,符号推演心理模拟,符号推演心理模拟,符号推演心理模拟,符号推演 生理模拟,神经计算生理模拟,神经计算生理模拟,神经计算生理模拟,神经计算 行为模拟,控制进化行为模拟,控制进化行为模拟,控制进化行为模拟,控制进化 群体模拟,仿生计算群体模拟,仿生计算群体模拟,仿生计算群体模拟,仿生计算1.31.3人工智能在电力系统的应用领域人工智能在电力系统的应用领域机组启停机组启停 Unit CommitmentUnit Commitment维护计划维护计划 Maintenance schedulingMaintenance scheduling负荷预测负荷预测 Loa
5、d ForecastingLoad Forecasting发电控制与保护发电控制与保护 Generation control and Generation control and protection protection潮流优化潮流优化 Optimal Power Flow AnalysisOptimal Power Flow Analysis电力系统安全分析电力系统安全分析 Security AnalysisSecurity Analysis电力系统稳定分析电力系统稳定分析 Stability AnalysisStability Analysis无功优化分配无功优化分配 VarVar di
6、spatch and planning dispatch and planning控制优化控制优化 Optimization of self-adaptive Optimization of self-adaptive controlcontrol第二章第二章 神经网络及其在电力系统神经网络及其在电力系统中的应用中的应用 人工神经网络是集脑科学、神经心理学和信息人工神经网络是集脑科学、神经心理学和信息科学等多学科的交叉研究领域,是近年来高科技领科学等多学科的交叉研究领域,是近年来高科技领域的一个研究热点。它的研究目标是通过研究人脑域的一个研究热点。它的研究目标是通过研究人脑的组成机理和思维方式
7、,探索人类智能的奥秘,进的组成机理和思维方式,探索人类智能的奥秘,进而通过模拟人脑的结构和工作模式,使机器具有类而通过模拟人脑的结构和工作模式,使机器具有类似人类的智能。它已在模式识别、机器学习、专家似人类的智能。它已在模式识别、机器学习、专家系统等多个方面得到应用,成为人工智能研究中的系统等多个方面得到应用,成为人工智能研究中的活跃领域。本章将简要介绍神经网络基本的概念、活跃领域。本章将简要介绍神经网络基本的概念、模型以及学习算法以及应用实例。模型以及学习算法以及应用实例。2.1 2.1 神经网络的基本概念及组成特性神经网络的基本概念及组成特性 神经元及其突触是神经网络的基本器件。因此,模拟
8、生物神经元及其突触是神经网络的基本器件。因此,模拟生物神经网络应首先模拟生物神经元。在人工神经网络中,神经元神经网络应首先模拟生物神经元。在人工神经网络中,神经元常被称为常被称为“处理单元处理单元”。有时从网络的观点出发常把它称为。有时从网络的观点出发常把它称为“节点节点”。人工神经元是对生物神经元的一种形式化描述。神经。人工神经元是对生物神经元的一种形式化描述。神经元主要由三部分构成:(元主要由三部分构成:(1 1)细胞体)细胞体;(2 2)轴突)轴突;(3 3)树突)树突2.2 2.2 人工神经网络的特性人工神经网络的特性 高度的并行性高度的并行性 ANNANN是由许多相同的简单处理单元并
9、联组合而成,虽然每个是由许多相同的简单处理单元并联组合而成,虽然每个单元的功能简单,但大量简单处理单元的并行活动,使其对信单元的功能简单,但大量简单处理单元的并行活动,使其对信息的处理能力与效果惊人。息的处理能力与效果惊人。高度的非线性全局作用高度的非线性全局作用 ANNANN每个神经元接受大量其它神经元的输入,并通过并行网每个神经元接受大量其它神经元的输入,并通过并行网络产生输出,影响其他神经元。网络之间的这种互相制约和互络产生输出,影响其他神经元。网络之间的这种互相制约和互相影响,实现了从输入状态到输出状态空间的非线性映射。从相影响,实现了从输入状态到输出状态空间的非线性映射。从全局的观点
10、来看,网络整体性能不是网络局部性能的简单迭加,全局的观点来看,网络整体性能不是网络局部性能的简单迭加,而表现出某种集体性的行为。而表现出某种集体性的行为。良好的容错性与联想记忆功能良好的容错性与联想记忆功能 ANNANN通过自身的网络结构能够实现对信息的记忆。而所记忆通过自身的网络结构能够实现对信息的记忆。而所记忆的信息是存储在神经元之间的权值中。从单个权值中看不出所的信息是存储在神经元之间的权值中。从单个权值中看不出所储存的信息内容,因而是分布式的存储方式。这使得网络具有储存的信息内容,因而是分布式的存储方式。这使得网络具有良好的容错性,并能进行聚类分析、特征提取、缺损模式复原良好的容错性,
11、并能进行聚类分析、特征提取、缺损模式复原等模式信息处理工作;又宜于模式分类、模式联想等识别工作。等模式信息处理工作;又宜于模式分类、模式联想等识别工作。十分强的自适应、自学习功能十分强的自适应、自学习功能 ANNANN可以通过训练和学习来获得网络的权值与结构,呈现出可以通过训练和学习来获得网络的权值与结构,呈现出很强的学习能力和对环境的自适应能力。很强的学习能力和对环境的自适应能力。2.3 2.3 人工神经网络的分类人工神经网络的分类 前向网络中,各神经元节点接受前一层的输出信前向网络中,各神经元节点接受前一层的输出信号,并将本层的输出作为下一层的输入,其特点是信号,并将本层的输出作为下一层的
12、输入,其特点是信号的流向是从输入流向输出。在号的流向是从输入流向输出。在ANNANN的实际应用中,的实际应用中,80809090的的ANNANN模型是采用模型是采用BPBP网络或它的变化形式,网络或它的变化形式,它也是前向网络的核心部分、体现了它也是前向网络的核心部分、体现了ANNANN精华的部分。精华的部分。前向神经网络前向神经网络2.3 人工神经网络的分类人工神经网络的分类 反馈神经网络反馈神经网络输出输出输入输入 反馈网络中,输出信号通过与输入连接而反馈网络中,输出信号通过与输入连接而返回到输入端,从而形成一个回路。在前向网返回到输入端,从而形成一个回路。在前向网络中,有单层感知器、自适
13、应线性网络和络中,有单层感知器、自适应线性网络和BPBP网网络。在反馈网络中,有离散型和连续型霍普菲络。在反馈网络中,有离散型和连续型霍普菲尔德网络。尔德网络。2.4.2 BP2.4.2 BP神经网络应用领域神经网络应用领域函数逼近:用输入矢量和相应的输出矢量函数逼近:用输入矢量和相应的输出矢量训练训练个网络逼近一个函数;个网络逼近一个函数;模式识别:用一个特定的输出矢量将它与模式识别:用一个特定的输出矢量将它与输入矢量联系起来;输入矢量联系起来;分类:把输入矢量以所定义的合适方式进分类:把输入矢量以所定义的合适方式进行分类;行分类;数据压缩:减少输出矢量维数以便于传输数据压缩:减少输出矢量维
14、数以便于传输或存储。或存储。2.4 BP2.4 BP神经网络神经网络2.4.4 BP2.4.4 BP神经网路的几种常见激活函数神经网路的几种常见激活函数 阀值型阀值型A-101fA-101-bf不带偏差的阀值型激活函数不带偏差的阀值型激活函数带偏差的阀值型激活函数带偏差的阀值型激活函数 2.4 BP2.4 BP神经网络神经网络2.4.4 BP2.4.4 BP神经网路的几种常见激活函数神经网路的几种常见激活函数 线形型线形型不带偏差的线性激活函数不带偏差的线性激活函数带偏差的线形型激活函数带偏差的线形型激活函数 2.4 BP2.4 BP神经网络神经网络A-101fA-101f-b2.4.5 BP
15、2.4.5 BP网络学习网络学习2.4 BP2.4 BP神经网络神经网络BPBP算法的学习目的是对网络的连接权值进行调整,使算法的学习目的是对网络的连接权值进行调整,使得调整后的网络对任一输入都能得到所期望的输出。得调整后的网络对任一输入都能得到所期望的输出。学习过程由正向传播和反向传播组成。学习过程由正向传播和反向传播组成。正向传播用于对前向网络进行计算,即对某一输入正向传播用于对前向网络进行计算,即对某一输入 信息,经过网络计算后求出它的输出结果。信息,经过网络计算后求出它的输出结果。反向传播用于逐层传递误差,修改神经元间的连接权反向传播用于逐层传递误差,修改神经元间的连接权值,以使网络对
16、输入信息经过计算后所得到的输出能值,以使网络对输入信息经过计算后所得到的输出能达到期望的误差要求。达到期望的误差要求。2.4.5 BP2.4.5 BP网络学习网络学习2.4 BP2.4 BP神经网络神经网络设输入为设输入为P P,输人有,输人有r r个,隐含层内有个,隐含层内有s s1 1个神经元,激个神经元,激话函数为话函数为F F1 1,输出层内有个,输出层内有个s s2 2神经元,对应的激活函神经元,对应的激活函数为数为F F2 2,输出为,输出为A A,目标矢量力,目标矢量力T T。kji隐含层隐含层输出层输出层输入层输入层2.4.5 BP2.4.5 BP网络学习网络学习2.4 BP2
17、.4 BP神经网络神经网络1、信息的正向传递、信息的正向传递(1 1)隐含层中第)隐含层中第i i个神经元的输出为个神经元的输出为:(2 2)输出层第)输出层第k k个神经元的输出为个神经元的输出为(3 3)定义误差函数为)定义误差函数为:2.4.5 BP2.4.5 BP网络学习网络学习2.4 BP2.4 BP神经网络神经网络1 1、误差反向传播误差反向传播(1 1)输出层的权值变化:)输出层的权值变化:对从第对从第i i个输入到第个输入到第k k个输出的权值有个输出的权值有:其中:其中:学习速率,过大容易震荡,过小调整过慢;:学习速率,过大容易震荡,过小调整过慢;:训练样本对目标输出;:训练
18、样本对目标输出;:神经网络实际输出;:神经网络实际输出;:输出层神经元传递函数的导数;:输出层神经元传递函数的导数;:误差;:误差;2.4.5 BP2.4.5 BP网络学习网络学习2.4 BP2.4 BP神经网络神经网络1 1、误差反向传播误差反向传播(2 2)输出层的阀值变化:)输出层的阀值变化:其中:其中:!注意:!注意:输出层的权值变化与输出层的阈值变输出层的权值变化与输出层的阈值变化的差别化的差别2.4.6 BP2.4.6 BP网络的限制与不足及改进网络的限制与不足及改进2.4 BP2.4 BP神经网络神经网络1 1 不足不足需要较长的训练时间需要较长的训练时间 对于一些复杂的问题,对
19、于一些复杂的问题,BPBP算法可能要进行几小时甚算法可能要进行几小时甚至更长的时间的训练。这主要是由于学习速率太小至更长的时间的训练。这主要是由于学习速率太小所造成的。可采用变化的学习速率或自适应的学习所造成的。可采用变化的学习速率或自适应的学习速率加以改进。速率加以改进。完全不能训练完全不能训练 这主要表现在网络出现的麻痹现象上。在网络的训这主要表现在网络出现的麻痹现象上。在网络的训练过程中,当其权值调得过大,可能使得所有的或练过程中,当其权值调得过大,可能使得所有的或大部分神经元的加权总和偏大,这使得激活函数的大部分神经元的加权总和偏大,这使得激活函数的输入工作在输入工作在S S型转移函数
20、的饱和区,从而导致其导型转移函数的饱和区,从而导致其导数非常小,从而使得对网络权值的调节过程几乎停数非常小,从而使得对网络权值的调节过程几乎停顿下来。通常为了避免这种现象的发生,一是选取顿下来。通常为了避免这种现象的发生,一是选取较小的初始权值,二是采用较小的学习速率,但这较小的初始权值,二是采用较小的学习速率,但这又增加了训练时间。又增加了训练时间。2.4.6 BP2.4.6 BP网络的限制与不足及改进网络的限制与不足及改进2.4 BP2.4 BP神经网络神经网络1 1 不足不足局部极小值局部极小值 BP BP 算法可以使网络权值收敛到一个解,但它并不算法可以使网络权值收敛到一个解,但它并不
21、能保证所求为误差超平面的全局最小解,很可能是能保证所求为误差超平面的全局最小解,很可能是一个局部极小解。这是因为一个局部极小解。这是因为BPBP算法采用的是梯度下算法采用的是梯度下降法,训练是从某一起始点沿误差函数的斜面逐渐降法,训练是从某一起始点沿误差函数的斜面逐渐达到误差的最小值。对于复杂的网络,其误差函数达到误差的最小值。对于复杂的网络,其误差函数为多维空间曲面,就像一个碗,其碗底是最小值点。为多维空间曲面,就像一个碗,其碗底是最小值点。但是这个碗的表面是凹凸不平的,因而在对其训练但是这个碗的表面是凹凸不平的,因而在对其训练过程中,可能陷入某一小谷区,而这一小谷区产生过程中,可能陷入某一
22、小谷区,而这一小谷区产生的是一个局部极小值。由此点向各方向变化均使误的是一个局部极小值。由此点向各方向变化均使误差增加,以致于使训练无法逃出这一局部极小值。差增加,以致于使训练无法逃出这一局部极小值。2.4.6 BP2.4.6 BP网络的限制与不足及改进网络的限制与不足及改进2.4 BP2.4 BP神经网络神经网络1 1 改进改进增加动量项增加动量项 标准标准BPBP算法在调整权值时,只按算法在调整权值时,只按t t时刻误差的梯度时刻误差的梯度下降方向调整,而没有考虑下降方向调整,而没有考虑t t时刻以前的梯度方向。时刻以前的梯度方向。为了提高训练速度,可以在权值调整公式中加一动为了提高训练速
23、度,可以在权值调整公式中加一动量项,其中量项,其中a a为动量系数:为动量系数:动量项反映了以前积累的调整经验。当误差梯度出动量项反映了以前积累的调整经验。当误差梯度出现局部极小时,虽然现局部极小时,虽然 但,但,使其跳出局部极小区域,加快迭代收敛速度。目前,使其跳出局部极小区域,加快迭代收敛速度。目前,大多数大多数BPBP算法中都增加了动量项,以至于有动量项算法中都增加了动量项,以至于有动量项的的BPBP算法成为一种新的标准算法。算法成为一种新的标准算法。2.4.6 BP2.4.6 BP网络的限制与不足及改进网络的限制与不足及改进2.4 BP2.4 BP神经网络神经网络1 1 改进改进引入陡
24、度因子引入陡度因子防止饱和防止饱和 误差曲面上存在着平坦区。其可预付调整缓慢误差曲面上存在着平坦区。其可预付调整缓慢的原因在于的原因在于S S转移函数具有饱和特性。如果在调转移函数具有饱和特性。如果在调整进入平坦区后,设法压缩神经元的净输入,整进入平坦区后,设法压缩神经元的净输入,使其输出退出转移函数的饱和区,就可改变误使其输出退出转移函数的饱和区,就可改变误差函数的形状,从而使调整脱离平坦区。实现差函数的形状,从而使调整脱离平坦区。实现这一思路的具体作法是在转移函数中引进一个这一思路的具体作法是在转移函数中引进一个陡度因子。陡度因子。2.5 2.5 使用使用MATLABMATLAB神经网络工
25、具箱神经网络工具箱 MATLAB MATLAB神经网络工具箱大大降低了开发各神经网络工具箱大大降低了开发各种神经网络应用的难度。设计者只需要调用相种神经网络应用的难度。设计者只需要调用相关函数即可,甚至通过关函数即可,甚至通过NNTOOLNNTOOL图形界面,不用图形界面,不用编写一行程序,就可完成一个神经网络的设计编写一行程序,就可完成一个神经网络的设计仿真。仿真。本节主要介绍本节主要介绍NNTOOLNNTOOL图形工具,神经网络图形工具,神经网络程序设计见程序设计见2.62.6。2.5 2.5 使用使用MATLABMATLAB神经网络工具箱神经网络工具箱第二步第二步 通过通过ImportI
26、mport从工作空间或通过从工作空间或通过New DataNew Data手动输入手动输入训练样本训练样本2.5 2.5 使用使用MATLABMATLAB神经网络工具箱神经网络工具箱第三步第三步 点击点击new networknew network建立神经网络建立神经网络该页面用来建立神经网络结构,主要设置的参数有:神该页面用来建立神经网络结构,主要设置的参数有:神经网络类型、训练函数、各层神经元数目及相应的传递经网络类型、训练函数、各层神经元数目及相应的传递函数等函数等2.5 2.5 使用使用MATLABMATLAB神经网络工具箱神经网络工具箱第四步第四步 设置训练参数设置训练参数 点击点击
27、traintrain进入进入training parameterstraining parameters页设置训练页设置训练参数,主要包括训练代数、允许误差、显示频度参数,主要包括训练代数、允许误差、显示频度等。等。2.5 2.5 使用使用MATLABMATLAB神经网络工具箱神经网络工具箱第四步第四步 点击点击traintrain进入进入training parameterstraining parameters页设置训练页设置训练参数,主要包括训练代数、允许误差、显示频度参数,主要包括训练代数、允许误差、显示频度等。等。2.5 2.5 使用使用MATLABMATLAB神经网络工具箱神经网络
28、工具箱第五步第五步 训练已经建立好的神经网络点击训练已经建立好的神经网络点击train networktrain network开开始训练。训练过程会显示误差随代数的变化。始训练。训练过程会显示误差随代数的变化。2.5 2.5 使用使用MATLABMATLAB神经网络工具箱神经网络工具箱第六步第六步 仿真验证,进入仿真验证,进入simulate页页,设置输入设置输入,点击点击simulate network。2.6 2.6 神经网络在电力系统应用实例神经网络在电力系统应用实例实例实例1 1:短期电力负荷预测:短期电力负荷预测实例实例2 2:变压器故障诊断:变压器故障诊断2.6.1 实例实例1
29、神经网络在负荷预测中的应用神经网络在负荷预测中的应用问题描述问题描述 以广东某城市的以广东某城市的20042004年年7 7月月2020日到日到7 7月月3030日的负荷值以及日的负荷值以及20042004年年7 7月月2121日到日到7 7月月3131日的气象特征状态作为网络的训练样本,日的气象特征状态作为网络的训练样本,来预测来预测7 7月月3131日的电力负荷为例日的电力负荷为例 2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用日期日期7 7月月2020日日7 7月月2121日日7 7月月2222日日7 7月月2323日日7 7月月2424日日7 7月月252
30、5日日电力负荷电力负荷0.24520.22170.25250.20160.21150.23350.14660.15810.16270.11050.12010.13220.13140.14080.15070.12430.13120.15340.22430.23040.24060.19780.20190.22140.55230.51340.55020.50210.55320.56230.66420.53120.56360.52320.57360.58270.70150.68190.70510.68190.70290.71980.69810.71250.73520.69520.70320.72760
31、.68210.72650.74590.70150.71890.73590.69450.68470.70150.68250.70190.75060.75490.78260.80640.78250.79650.80920.82150.83250.81560.78950.80250.8221气象特征气象特征0.24150.23850.22160.23520.25420.30270.31250.27010.25060.31250010.50广东某地区广东某地区7 7月月2020日日2525日日2424小时电力负荷表小时电力负荷表 2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的
32、应用日期日期7 7月月2626日日7 7月月2727日日7 7月月2828日日7 7月月2929日日7 7月月3030日日7 7月月3131日日电力负荷电力负荷0.23680.23420.21130.20050.21230.21190.14320.13680.12120.11210.12570.12150.16530.16020.13050.12070.13430.16210.22050.21310.18190.16050.20790.21610.58230.57260.49520.45560.55790.61710.59710.58220.53120.50220.57160.61590.71
33、360.71010.68860.65530.70590.71150.71290.70980.68980.66730.71450.72010.72630.71270.69990.67980.72050.72430.71530.71210.73230.70230.74010.72980.80910.79950.77210.75210.80190.81790.82170.81260.79560.77560.81360.8229气象特征气象特征0.26010.25790.23010.22340.23140.23170.31980.30990.28670.27990.29770.2936000.5100
34、广东某地区广东某地区7 7月月2626日日3131日日2424小时电力负荷表小时电力负荷表 2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用1.学习样本的分析与处理学习样本的分析与处理在预测日的前一天中,每隔在预测日的前一天中,每隔2 2个小时对电力负荷进行一次测个小时对电力负荷进行一次测量,这样一天可以得到量,这样一天可以得到1212组负荷数据,将前一天的实时负组负荷数据,将前一天的实时负荷数据作为网络的样本数据荷数据作为网络的样本数据;另外电力负荷还与环境因素有关,所以本例中还考虑了气另外电力负荷还与环境因素有关,所以本例中还考虑了气温和天气。即最高、最低气温和
35、天气特征,可以通过天气温和天气。即最高、最低气温和天气特征,可以通过天气预报得到预测日的最高、最低气温和天气特征预报得到预测日的最高、最低气温和天气特征(晴天、阴天、晴天、阴天、雨天雨天),可以用,可以用0 0、0.50.5、1 1 分别表示晴天、阴天、雨天,分别表示晴天、阴天、雨天,将预测当天的气象特征作为网络的输入变量,这样输入变将预测当天的气象特征作为网络的输入变量,这样输入变量量P P就是一个就是一个15 15 维的向量维的向量,即即n=15n=15;目标向量就是预测日当天的目标向量就是预测日当天的1212个负荷值,即输出变量个负荷值,即输出变量T T为一为一个个1212维的向量,维的
36、向量,m=12m=12。由于在输入的数据中各类型的数据大小、单位都不统一,由于在输入的数据中各类型的数据大小、单位都不统一,这样大大增加了系统的运算量、运算时间还降低了精度甚这样大大增加了系统的运算量、运算时间还降低了精度甚至可能使神经元趋于饱和不能继续运算。为了避免神经元至可能使神经元趋于饱和不能继续运算。为了避免神经元的饱和性的饱和性,在确定输入和输出变量后在确定输入和输出变量后,应对其进行归一化处应对其进行归一化处理理,将数据处理为一定范围之间。这样就降低了运算量,提将数据处理为一定范围之间。这样就降低了运算量,提高运算速度和时间。归一化的方式很多,高运算速度和时间。归一化的方式很多,M
37、ATLABMATLAB中也有归中也有归一化函数可对数据进归一化和反归一化一化函数可对数据进归一化和反归一化 2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用2.确定网络结构确定网络结构2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用2.确定网络结构确定网络结构MATLABMATLABMATLABMATLAB实现函数实现函数实现函数实现函数net=newff(minmax(P),10,12,tansig,logsig,trainlm)含义:含义:NewffNewff:建立建立BPBP神经网络结构函数神经网络结构函数参数的意思指该网络隐含层、
38、输出层神经元数目分参数的意思指该网络隐含层、输出层神经元数目分 别别为为1010个与个与1212个;个;传递函数分别为正切传递函数分别为正切S S函数与对数函数与对数S S函数;函数;训练函数选取增加动量项的训练函数选取增加动量项的BPBP算法;算法;minmax(Pminmax(P)指定输入样本的范围,使得网络初始权值指定输入样本的范围,使得网络初始权值 合理化。合理化。NetNet储存返回的神经网络,注意此时的神经网络还没有储存返回的神经网络,注意此时的神经网络还没有开始训练,只是指定了网络结构而已;开始训练,只是指定了网络结构而已;注意输入的是预测日头天的历史负荷数据与预测日的注意输入的
39、是预测日头天的历史负荷数据与预测日的天气数据,而输出是预测日需要预测的天气数据,而输出是预测日需要预测的2424小时负荷。小时负荷。2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用3.设置训练参数设置训练参数训练网络前,必须设置训练参数,训练网络前,必须设置训练参数,训练网络前,必须设置训练参数,训练网络前,必须设置训练参数,MATLABMATLABMATLABMATLAB神经网络设神经网络设神经网络设神经网络设置训练参数示例如下:置训练参数示例如下:置训练参数示例如下:置训练参数示例如下:net.trainParam.show=10;解释:每解释:每10代显示一次
40、代显示一次net.trainParam.lr=0.05;解释:设置训练速率解释:设置训练速率net.trainParam.mc=0.9;解释:解释:设置动量因子设置动量因子net.trainParam.epochs=100000;解释:解释:设置训练的代数设置训练的代数net.trainParam.goal=0.01;解释:解释:设置目标误差设置目标误差注意!上面的注意!上面的net指的是上一步已经建立好的指的是上一步已经建立好的BP神经神经网络网络2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用4.训练构建好的神经网络训练构建好的神经网络利用利用利用利用MATLA
41、BMATLABMATLABMATLAB神经网络工具箱的神经网络工具箱的神经网络工具箱的神经网络工具箱的traintraintraintrain函数即可对前面函数即可对前面函数即可对前面函数即可对前面指定好网络结构与训练参数的神经网络进行训练,指定好网络结构与训练参数的神经网络进行训练,指定好网络结构与训练参数的神经网络进行训练,指定好网络结构与训练参数的神经网络进行训练,traintraintraintrain函数的调用格式如下:函数的调用格式如下:函数的调用格式如下:函数的调用格式如下:Net=Train(net,P,T)解释:解释:P表示训练样本的输入矢量;表示训练样本的输入矢量;T表示训
42、练样本的输出矢量,为训练目标;表示训练样本的输出矢量,为训练目标;右边的参数右边的参数net指得的还未开始训练的神经网指得的还未开始训练的神经网 络,左边的变量络,左边的变量net指得的练好的神经网络指得的练好的神经网络保保 存的位置存的位置2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用5.仿真训练好的神经网络仿真训练好的神经网络利用利用利用利用MATLABMATLABMATLABMATLAB神经网络工具箱的神经网络工具箱的神经网络工具箱的神经网络工具箱的simsimsimsim函数即可对使用函数即可对使用函数即可对使用函数即可对使用traintraintrain
43、train函数训练好的神经网络进行仿真,以便验证训函数训练好的神经网络进行仿真,以便验证训函数训练好的神经网络进行仿真,以便验证训函数训练好的神经网络进行仿真,以便验证训练的效果是否达到预期的目标误差,练的效果是否达到预期的目标误差,练的效果是否达到预期的目标误差,练的效果是否达到预期的目标误差,simsimsimsim的调用格式的调用格式的调用格式的调用格式如下:如下:如下:如下:A=sim(net,P)解释:解释:P表示训练样本的输入矢量;表示训练样本的输入矢量;参数参数net指得的练好的神经网络指得的练好的神经网络 A指得是当训练好的神经网络指得是当训练好的神经网络net获得输入获得输入
44、P 时的实际时的实际 输出输出得到实际输出得到实际输出得到实际输出得到实际输出A A A A后,与训练样本目标输出后,与训练样本目标输出后,与训练样本目标输出后,与训练样本目标输出T T T T相比较,即相比较,即相比较,即相比较,即可得到误差可得到误差可得到误差可得到误差2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用5.仿真过程与结果仿真过程与结果下面是下面是采用增加动量项的采用增加动量项的BPBP算法训练函数算法训练函数traingdmtraingdm、隐层为隐层为1010个神经元的预测结果个神经元的预测结果 。左边是训练过程误差曲线,横坐标是训练代数,纵左边
45、是训练过程误差曲线,横坐标是训练代数,纵坐标是误差,该曲线是训练过程中自动产生的;坐标是误差,该曲线是训练过程中自动产生的;右边是实际输出与目标输出负荷曲线右边是实际输出与目标输出负荷曲线,横坐标是小时,横坐标是小时,纵坐标是负荷,注意负荷已经被正规化了。纵坐标是负荷,注意负荷已经被正规化了。2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用5.仿真过程与结果仿真过程与结果下面是下面是采用自适应学习速率训练函数采用自适应学习速率训练函数trainlmtrainlm、隐层、隐层为为1010个神经元的预测结果个神经元的预测结果 。左边是训练过程误差曲线,横坐标是训练代数,
46、纵左边是训练过程误差曲线,横坐标是训练代数,纵坐标是误差,该曲线是训练过程中自动产生的;坐标是误差,该曲线是训练过程中自动产生的;右边是实际输出与目标输出负荷曲线右边是实际输出与目标输出负荷曲线,横坐标是小时,横坐标是小时,纵坐标是负荷,注意负荷已经被正规化了。纵坐标是负荷,注意负荷已经被正规化了。2.6.1 实例实例1 神经网络在负荷预测中的应用神经网络在负荷预测中的应用6.训练结果数据表训练结果数据表 预测值预测值实际值实际值误差误差误差绝对值误差绝对值电力负荷电力负荷0.2256 0.2119 0.0137 0.0137 0.1627 0.1215 0.0412 0.0412 0.105
47、7 0.1621-0.05640.0564 0.2203 0.2161 0.0042 0.0042 0.5182 0.6171-0.09890.0989 0.5463 0.6159-0.06960.0696 0.7011 0.7115-0.01040.0104 0.7329 0.7201 0.0128 0.0128 0.6983 0.7243-0.02600.0260 0.7440 0.7298 0.0142 0.0142 0.8074 0.8179-0.01050.0105 0.8254 0.8229 0.0025 0.0025 平均误差平均误差0.0300 2.6.1 实例实例1 神经网络
48、在负荷预测中的应用神经网络在负荷预测中的应用7.主要的源码主要的源码%定义训练样本定义训练样本%P%P为输入矢量,为输入矢量,T T为输出目标矢量,注意样本的构成。为输出目标矢量,注意样本的构成。P=P=0.2452 0.1466 0.1314 0.2243 0.5523 0.6642 0.7015 0.6981 0.6821 0.6945 0.7549 0.8215 0.2415 0.3027 0;0.2217 0.1581 0.1408 0.2304 0.5134 0.5312 0.6819 0.7125 0.7265 0.6847 0.7826 0.8325 0.2385 0.3125
49、0;0.2525 0.1627 0.1507 0.2406 0.5502 0.5636 0.7051 0.7352 0.7459 0.7015 0.8064 0.8156 0.2216 0.2701 1;0.2016 0.1105 0.1243 0.1978 0.5021 0.5232 0.6819 0.6952 0.7015 0.6825 0.7825 0.7895 0.2352 0.2506 0.5;0.2115 0.1201 0.1312 0.2019 0.5532 0.5736 0.7029 0.7032 0.7189 0.7019 0.7965 0.8025 0.2542 0.312
50、5 0;0.2335 0.1322 0.1534 0.2214 0.5623 0.5827 0.7198 0.7276 0.7359 0.7506 0.8092 0.8221 0.2601 0.3198 0;0.2368 0.1432 0.1653 0.2205 0.5823 0.5971 0.7136 0.7129 0.7263 0.7153 0.8091 0.8217 0.2579 0.3099 0;0.2342 0.1368 0.1602 0.2131 0.5726 0.5822 0.7101 0.7098 0.7127 0.7121 0.7995 0.8126 0.2301 0.286