system: [SYSTEM]

user: 2. 研究方法 2.1. GM(1， 1)预测模型 1982年，邓聚龙教授首次提出了灰色理论(Grey system) [ 7 ] ，该理论对原始数作累加生成的的近似指数规律再进行建模的方法。灰色模型有严格的理论基础，最大的优点是所需数据少，一般只需要4个数据就能对未来数据进行预测，为此该理论被广泛应用于各个领域。能源需求量既有已知的信息，也有未确定的信息，可看做一个灰色系统。GM(1， 1)灰色模型 [ 8 ] 建立如下： 设原始序列为 X ( 0 ) 为非负原始序列： X ( 0 ) = ( x ( 0 ) ( 1 ) ， x ( 0 ) ( 2 ) ， ⋯ ， x ( 0 ) ( n ) ) ，对于满足光滑条件的序列，可建立灰色微分方程。经过累加生成 X ( 1 ) ，称 X ( 1 ) 为 X ( 0 ) 的1-AGO序列： X ( 1 ) = ( x ( 1 ) ( 1 ) ， x ( 1 ) ( 2 ) ， ⋯ ， x ( 1 ) ( n ) ) ，其中： x ( 1 ) ( k ) = ∑ i = 1 k x ( 0 ) ( i ) ( k = 1 ， 2 ， ⋯ ， n ) . (1) Z ( 1 ) 为 X ( 1 ) 的紧邻均值生成序列： Z ( 1 ) = ( z ( 1 ) ( 2 ) ， z ( 1 ) ( 3 ) ， ⋯ ， z ( 1 ) ( n ) ) ，其中： z ( 1 ) ( k ) = 0.5 ( x ( 1 ) ( k ) + 0.5 x ( 1 ) ( k − 1 ) ) ，   k = 2 ， 3 ， ⋯ ， n . (2) 为此，灰微分方程为： x ( 0 ) ( k ) + a z ( 1 ) ( k ) = b ，   k = 2 ， 3 ， ⋯ ， n . (3) 其中， a 为发展系数， b 为灰色作用量。 若 u = [ a ， b ] T 为参数列，且有 B = [ − z ( 1 ) ( 2 ) 1 − z ( 1 ) ( 3 ) 1 ⋮ ⋮ − z ( 1 ) ( n ) 1 ] ， Y = [ x ( 0 ) ( 2 ) x ( 0 ) ( 3 ) ⋮ x ( 0 ) ( n ) ] ， (4) 则式(3)的最小二乘估计参数列满足： u ^ = ( B T B ) − 1 B T Y (5) 若 B ， Y ， u ^ 满足式(4)和式(5)，相应的白化微分方程为 d x ( 1 ) d t + a x ( 1 ) ( t ) = b . (6) GM(1， 1)模型的时间序列为： x ^ ( 1 ) ( k + 1 ) = ( x ( 0 ) ( 1 ) − b a ) e − a k + b a ，   k = 1 ， 2 ， ⋯ ， n (7) 还原后， x ( 0 ) 的模拟值为： x ^ ( 1 ) ( k + 1 ) = x ^ ( 1 ) ( k + 1 ) − x ^ ( 1 ) ( k ) = ( 1 − e a ) ( x ^ ( 0 ) ( 1 ) − b a ) e − a k (8) 最后，对预测值进行检验。设残差为 ε ( k ) ，则有 ε ( k ) = x ( 0 ) ( k ) − x ^ ( 0 ) ( k ) x ( 0 ) ( k ) (9) 2.2. BP神经网络模型 1985年，美国加州大学的鲁梅尔哈特和麦克莱兰等人提出BP神经网络 [ 9 ] ，神经网络已广泛应用于各个领域。从结构上看，该模型具有输入层，隐含层和输出层，是一种典型的多层前向型神经网络。该网络广泛应用于图像处理、模式识别、语言处理、预测分析等领域。 1) 神经元模型 一个基本的BP神经元，具有 R 个输入，每个输入都通过一个对应的权值 w 和下一层相连，网络输出可表示为： Y = f ( w p + b ) (10) 其中， f 为输入与输出的传递函数， w 代表权值， b 为隐含层神经元的偏置值。 2) 激励函数 神经元的各种不同的数学模型的主要区别在于采用了不同的激励函数，使得神经元有不同的处理信息的能力。神经元输入层与输出层之间的关系由功能函数 f 决定，其 f 不同神经元的激励函数也不同，常见的激励函数有：阈值型、分段线性饱和性、S型、子阈累积性。其中最常见的是S型函数，其表达式为： f ( x ) = 1 1 + e − c x (11) 3) BP神经网络的学习算法 BP神经网络的误差反向传播算法基本思想是对一定数量的样本对输入和期望输出进行学习，将输入数据传送至各个神经元，经隐含层和输出层计算后，输出层输出对应的预测值。如果预测值与实际值误差较大时，输出层进行反向传播该误差，进行权值和阈值的调整，不断修正误差，直至满足精度要求。其算法核心的思想是：权值和阈值的调整总是沿着误差函数最快的方向，即负梯度方向。 设一样本 ( X ， Y ) ， X = [ x 1 ， x 2 ， ⋯ ， x m ] ′ ， Y = [ y 1 ， y 2 ， ⋯ ， y m ] ′ ，隐含层神经元为 O = [ O 1 ， O 2 ， ⋯ ， O m ] ′ 。输入层与隐含层神经元间的权值矩阵 W 1 和隐含层与输出层神经元间的网络权值 W 2 分别可表示为 W 1 = ( w i j 1 ) l × m ，       i = 1 ， 2 ， ⋯ ， l ，   j = 1 ， 2 ， ⋯ ， m (12) W 2 = ( w i j 2 ) n × l ，         i = 1 ， 2 ， ⋯ ， n ，   j = 1 ， 2 ， ⋯ ， l (13) 则隐含层神经元的输出为： O j = f ( ∑ i = 1 m w j i 2 x i − θ l 1 ) = f ( n e t j ) ，   j = 1 ， 2 ， ⋯ ， l (14) 其中， n e t j = ∑ i = 1 m w j i x i − θ l 1 ， j = 1 ， 2 ， ⋯ ， l ， f ( · ) 为隐含层的传递函数。 输出层神经元的输出为： z k = g ( ∑ j = 1 l w k j 2 O j − θ k 2 ) = g ( n e t k ) ，   k = 1 ， 2 ， ⋯ ， n (15) 其中， n e t k = ∑ j = 1 l w k j 2 O j − θ k 2 ，   k = 1 ， 2 ， ⋯ ， n ， g ( · ) 为输出层的传递函数。 网络输出与期望输出的误差为 E = 1 2 ∑ k = 1 n ( y k − z k ) 2 (16) 网络的输入误差是各层 w j i 1 和 w k j 2 权值的调整，调整权值可改变误差 E ，调整的数学表达式如下： Δ w j i 1 = − η ∂ E ∂ w j i 1 ， Δ w k j 2 = − η ∂ E ∂ w k j 2 (17) 式(17)中负号表明梯度下降， η ∈ ( 0 ， 1 ) 是常数，反映了学习过程中的学习梯度。BP神经网络仿真测试结束后，通过计算真实值与输出值的偏差情况，对网络训练的泛化能力进行评价，选取决定系数 R 2 评价模型的性能，其中 R 2 = ( l ∑ i = 0 l y ^ i y i − ∑ i = 0 l y ^ i ∑ i = 0 l y i ) 2 ( l ∑ i = 0 l y ^ i 2 − ( ∑ i = 0 l y ^ i 2 ) 2 ) ( l ∑ i = 0 l y i 2 − ( ∑ i = 0 l y i 2 ) 2 ) ， (18) 式(18)中， y ^ i 为预测值， y i 为真实值。决定系数在 [ 0 ， 1 ] 内，系数越接近于1，表明训练效果越接近真实值，反之，系数越接近于0，表明训练效果越差。 2.3. 组合灰色神经网络模型 单一的灰色系统模型预测效果往往不好，忽略了影响能源需求的因子，为此本文将影响能源需求量的因子和灰色预测模型的预测结果作为神经网络的输入层，以能源需求量的实际值作为神经网络的输出层。其结构图如图1。 设串联式灰色神经网络由 R 个输入包括 m 1 ， m 2 ， m 3 ， ⋯ ， m n ，和GM(1， 1)的预测值，其中 m 1 ， m 2 ， m 3 ， ⋯ ， m n 表示影响能源需求量的因子。隐含层共有 N 节点，第 i 个节点的参数向量为： [ w i 1 ， w i 2 ， ⋯ ， w i R ， θ i ] ，一个输出节点 Y t 。隐含层一部分参数用来映射灰色预测模型的解，其余部分参数用来学习影响能源需求量的主要因素对能源需求量的非线性作用。 为了综合评价所建模型的性能，本文选取误差的均方差作为评价指标，其表达式为： δ = ∑ k = 1 n ( x ( 0 ) ( k ) − x ^ ( 0 ) ( k ) ) 2 / n (19)