计算机系统应用  2019, Vol. 28 Issue (8): 142-147   PDF    
基于GIHCMAC神经网络的建筑电负荷预测方法
吴盼红1,2, 段培永3, 丁绪东1,2, 尹春杰1,2, 姬晓娃1,2, 邱钟1,2     
1. 山东建筑大学 信息与电气工程学院, 济南 250101;
2. 山东省智能建筑技术重点实验室, 济南 250101;
3. 山东师范大学 信息科学与工程学院, 济南 250358
摘要:随着能源供应与经济快速发展的矛盾日益加剧, 建筑节能成为可持续发展战略的一个关键环节, 研究一种快速、精准的建筑用电量预测方法是实现建筑节能优化控制的重要前提. 本文将遗传算法与蚁群聚类算法相融合, 对基于聚类的IHCMAC (Improvement Hyperball CMAC)神经网络的网络节点进行改进, 将GIHCMAC (Genetic Algorithm Ant Colony Clustering Algorithm based on IHCMAC)作为建筑电力负荷预测模型, 对潍坊某一办公建筑用电负荷进行预测. 研究结果表明, 该预测模型迭代次数最小、准确度较高, 其迭代次数、训练误差、泛化误差分别为9、0.0045、0.0014, 较IHCMAC、KHCMAC (K-means Hyperball CMAC)、IKHCMAC (Improvement K-means Hyperball CMAC)模型的收敛速度更快, 精度更高, 泛化能力更强.
关键词: 建筑电负荷预测    IHCMAC神经网络    GIHCMAC神经网络    遗传算法    蚁群聚类算法    
Building Electric Load Prediction Based on Improved GIHCMAC Neural Network
WU Pan-Hong1,2, DUAN Pei-Yong3, DING Xu-Dong1,2, YIN Chun-Jie1,2, JI Xiao-Wa1,2, QIU Zhong1,2     
1. School of Information and Electrical Engineering, Shandong Jianzhu University, Jinan 250101, China;
2. Shandong Provincial Key Laboratory of Intelligent Buildings Technology, Jinan 250101, China;
3. School of Information Science and Engineering, Shandong Normal University, Jinan 250014, China
Foundation item: National Natural Science Foundation of China (61773246, 61374187)
Abstract: With the increasing contradiction between energy supply and rapid economic development, building energy conservation has become a key link in sustainable development strategy. It is an important prerequisites for optimal control of building energy conservation that fast and accurate method research for predicting building electricity consumption. In this study, genetic algorithms and ant colony clustering algorithms are combined to improve the network node of IHCMAC (Improvement Hyperball CMAC) neural network based on clustering. As a building power load forecasting model, GIHCMAC (Genetic Algorithm Ant Colony Clustering Algorithm based on IHCMAC) is used to predict the electrical load of an office building in Weifang. The research results show that the prediction model has the smallest number of iterations and high accuracy. Its iteration number, training error, and generalization error are 9, 0.0045, and 0.0014 respectively. Compared with IHCMAC, KHCMAC (K-means Hyperball CMAC) and IKHCMAC (Improvement K-means Hyperball CMAC) model, GIHCMAC has faster convergence speed, higher accuracy, and better generalization.
Key words: prediction of electric load of building     IHCMAC neural work     GIHCMAC neural work     genetic algorithm     ant colony clustering algorithm work    

建筑作为能源消耗的主要领域, 在2015年消耗总量高达8.57亿吨标准煤, 占全国能源消费总量的19.93%, 其中公共建筑能耗占建筑总能耗的34%[1]. 由于社会经济的发展, 公共建筑数量不断增加, 促使建筑能耗占全国总能耗的比例也越来越大. 目前, 随着我国节能政策的实施, 构建快速、准确的建筑电负荷预测模型, 合理分配能源显得十分重要.

近年来, 国内外学者对建筑电能耗预测方法进行了广泛的研究, 主要包括回归预测法、神经网络法和支持向量机等. 李婉华等建立基于时间序列的随机森林用电负荷预测模型, 降低了预测误差[2]; 黎祚等使用k-means聚类、BP或RBF结合的方法建立负荷预测模型[3,4], 上述两种方法均取得较好结果, 但其方法需获得大量建筑能耗数据. Chae等采用人工神经网络建立短期建筑能耗预测模型, 可提前预测一天的用电量及日常高峰用电量[5], 但其易陷入局部最优; 王义军等采用PSO-SVM神经网络模型预测短期电力负荷, 提高了预测精度, 但结果易受核函数的影响[6]. 李明海等研究了一种基于GM-BP神经网络的预测模型预测校园能耗, 预测精度和拟合性有所提高, 但模型训练时间较长且收敛性不足[7]; Zhang Y等研究了一种基于PSO-RBF神经网络的建筑能耗预测模型, 提高了预测精度, 但其需要的训练样本较多, 运算量大[8].

基于聚类的超闭球小脑模型关节控制器HCMAC(Hyperball Cerebellar Model Articulation Controller)神经网络是在CMAC神经网络的基础上学习而来的[9], 具有局部泛化能力强, 模型结构简单, 收敛速度快, 易于软硬件实现等优点. 将其应用于建筑电负荷预测的关键在于聚类中心即网络节点的获取, 现有聚类算法采用的终止条件以及模糊聚类方法, 可能导致聚类结果不能到达最优结果. 因此, 文章采用遗传算法(Genetic Algorithm, GA)与蚁群聚类算法(Ant Colony Clustering Algo-rithm, ACCA)相结合的方法来确定聚类中心以及聚类数目, 建立基于遗传算法与蚁群聚类算法的超闭球小脑模型关节控制器GIHCMAC(Genetic Algorithm Ant Colony Clustering Algorithm based IHCMAC)神经网络预测模型, 实现办公建筑电负荷的准确预测.

1 基于GIHCMAC的建筑电负荷预测 1.1 基本原理 1.1.1 IHCMAC神经网络

IHCMAC神经网络[10]输入空间的量化不再使用等网格划分的传统方法, 而是采用模糊C均值聚类算法(FCM)[11], 降低了高维数据处理的复杂性. 首先对输入进行归一化处理得到m维的输入空间 $ {\bar x} = {[0,n]_1} \times {[0,n]_2} \times$ $ \cdots \times {[0,n]_m}$ , 然后用FCM聚类算法对输入空间 $\bar x$ 进行聚类, 得到L个聚类中心值, 即网络节点 $p = [{p_1},{p_2},\cdots,{p_L}]$ , 每个节点都是一个m维向量 ${p_i} = [{p_{i1}},{p_{i2}},\cdots,{p_{im}}]$ , $i = 1,2, \cdots ,L$ . 定义一个中心为 ${x_k}$ , 半径为 $R = \dfrac{{\left( {2 \sim 3} \right)}}{L}\displaystyle\sum\limits_{i = 1}^L {{\sigma _i}} $ 的超闭球, 当超闭球内的节点被激活时, IHCMAC神经网络可由式(1)表示为:

${\hat y} = \frac{{S_K^{\rm{T}}B({x_k})q}}{{S_K^{\rm{T}}B({x_k})B({x_k})S_K^{\rm{T}}}} = \frac{{\displaystyle\sum\limits_{{p_i} \in C({x_k})} {{b_i}({x_k}){q_i}} }}{{\displaystyle\sum\limits_{{p_i} \in C({x_k})} {{b_i}({x_k})} }}$ (1)

式中, ${b_i} = exp\left( - \dfrac{{{{\left\| {{x_k} - {p_i}} \right\|}^2}}}{{{\sigma ^2}}}\right)$ 为高斯基函数, 若节点未被激活, 则 ${b_i} = 0$ ; ${\sigma _i} = \dfrac{{min\left\| {{p_i} - {p_j}} \right\|}}{{\sqrt { - ln\delta } }}$ 为高斯基函数参数, 其中δ为重叠区系数, 一般取为0.5; $ B({x_k}) = diag[{b_1}({x_k}),$ ${b_2}({x_k}),\cdots,{b_L}({x_k})]$ 为基函数矩阵; ${S_k} = {[{S_{K,L}}]_{_{L \times 1}}}$ 为权系数选择向量, 激活节点时为1, 否则为0; q是权系数向量, 其中, qi为聚类中心所对应的权值.

权值训练算法采用改进的C-L算法, 由式(2)表示为:

$\Delta {q_{k - 1}} = \frac{{\alpha {e_{k - 1}}B({x_{k - 1}}){S_{k - 1}}}}{{\beta + S_{k - 1}^TB({x_{k - 1}}){B^T}({x_{k - 1}}){S_{k - 1}}}}$ (2)

式中, α, β为常数; ek–1为估计误差, 当0<α<2、β>0时, 算法收敛, 对于不同样本, 只需局部调整权系数即可[11].

1.1.2 蚁群聚类算法

蚁群算法[12]是1991年由意大利学者DorGIo M提出的一种模仿蚂蚁群体行为的仿生优化算法, 2004年Shelokar将蚁群算法运用于聚类分析中, 提出基于蚁群觅食原理的聚类算法(Ant Colony Clustering Algorithm, ACCA)[13]. 蚂蚁觅食时会释放随时间推移而挥发的信息素, 当某一路径上走过的蚂蚁数量越多, 该路径上的信息素强度就会增加, 从而吸引更多的蚂蚁, 这一过程也称为正反馈. 通过这种正反馈机制, 蚂蚁最终可以找到从蚁穴到食物源的最短路径[14]. 蚁群算法就是利用这种原理来求解最优解的.

1.1.3 遗传算法改进蚁群聚类

IHCMAC神经网络算法采用FCM聚类的方式确定网络节点, 虽然解决了高维数据处理过程中的维数灾难问题, 但不能反映输入数据的整体特征. 聚类终止条件是人为确定的, 并且由聚类准则函数收敛速度判断聚类数目的缺陷, 增加了运算量, 而且对训练模型的精度有着较大的影响.

蚁群聚类算法虽然可以较好的弥补IHCMAC算法的缺陷, 但其依赖于初始聚类中心的选择, 且易陷入局部最优的问题, 使聚类效果不够理想, 直接影响了预测模型的学习精度. 遗传算法是一种比较常用的随机搜索算法, 能在很大程度上减少陷入局部最优的情况. 因此, 文章采用遗传算法改进蚁群聚类[15,16], 首先, 蚁群算法快速地完成初始路径的选择, 得到各个样本到其对应的聚类中心的总偏离误差F, 作为遗传算法的初始种群进行全局搜索, 得到最佳聚类中心. 具体步骤如下:

(1) 初始化. 设定各参数σαβ, 蚁群数A, 聚类数K, 最大迭代次数t_max, 阈值P0, 变异率pls.

(2) 构造每只蚂蚁的解, 计算转移概率P. 若P>P0, 则将样本Xi分配到类mk中; 否则, 将样本Xi随机分配到类mk中.

(3) 根据式(4)和式(3)计算新的k个聚类中心和适应度值F, 同时更新信息素矩阵.

$F = \sum\limits_{j = 1}^k {\sqrt {\frac{1}{J}{{\sum\limits_{i = 1}^J {({X_i} - {m_j})} }^2}} } $ (3)
${m_j} = \frac{1}{J}\sum\limits_{i = 1}^J {{X_i}} $ (4)

式中, mj为聚类中心, J为该聚类中所有数据对象的个数, i=1, 2, …, n位样本数据个数, j=1, 2, …, k为聚类数目.

(4) 比较A只蚂蚁求的目标函数值的大小, 选出最小的记为此次迭代的最优值, 确定最佳路径.

(5) 根据最佳路径产生n维随机数组rp, 若rp(i)≤pls, 则对最佳路径进行变异, 产生新的聚类中心, 并计算新路径下的适应度值F_temp. 若F_temp<F, 则新路径为最佳路径; 否则转步骤(3).

(6) 若满足结束条件t>t_max, 则输出全局最优解; 否则迭代次数t=t+1, 转步骤(2).

文章采用遗传算法优化蚁群聚类算法, 改进了IHCMAC算法中确定神经网络节点的方式, 最终得到GIHCMAC (GA ACCA Improvement Hyperball CMAC)神经网络算法.

1.2 模型构建

以位于潍坊市某一办公建筑为研究对象, 获取实测数据. 每5 min采集一次, 采集2018年10月8日到14日一周的用电数据, 共2016组作为训练数据, 分为1008组学习样本和1008组测试样本, 其中2018年10月8日8:00–11:00的数据如表1所示. 模型的输入为前两个时刻的数据Pt–2, Pt–1, 输出为Pt. 模型的流程图如图1所示, 将输入数据进行归一化和滑动平均滤波处理, 利用遗传算法优化蚁群聚类算法来确定网络节点, 构建GIHCMAC神经网络预测模型, 最后输出模型误差值及建筑电负荷预测值.

表 1 样本部分数据

图 1 GIHCMAC神经网络建筑负荷预测流

2 实验仿真 2.1 数据处理 2.1.1 数据滤波去噪

实际数据在采集过程中, 会因为受到外界其它因素的影响产生干扰数据. 因此需要对数据进行滤波处理, 去除噪声. 滑动平均滤波法原理简单, 通常去噪效果比较好[17]. 设原始数据序列为fi(i=1, 2, …, N), N为样本数, 在固定窗口M中, 每采集一个新数据放入序列列尾, 则丢掉原始数据序列列首的一个旧数据, 并进行平均运算, 得到新的滤波数据, 其一般表达式为:

${f_i} = \frac{1}{{2n + 1}}\sum\limits_{i = - n}^n {{f_{i + 1}}} $ (5)

式中, i=n+1, n+2, …, Nn, M=2n+1.

2.1.2 数据归一化

在进行建筑能耗预测仿真之前, 需要将所有数据进行归一化处理, 即把所有建筑能耗数据都转化为[−1,1]之间的数值, 使所有数据都在统一的尺度内, 防止不同数量级引发建模病态问题.

${\bar U}$ 是有界输入空间, ${\bar U}$ =X1×X2×Xn, 其中 $ {\bar X_n} =$ $ \left[ {{{{\bar x}}_{{\rm{min}}i}},{{{\bar x}}_{{\rm{max}}i}}} \right]$ , i=1, 2, …, n为输入空间维数. 归一化处理公如下:

${x_i} = \frac{{{M_{ax}} - {M_{in}}}}{{{{{\bar x}}_{\max i}} - {{{\bar x}}_{\min i}}}}\left({{\bar x}_i} - {{\bar x}_{\min i}}\right) + {M_{in}}$ (6)

对任意输入 $\bar x$ , $\forall {\bar x} = \left[ {{{{\bar x}}_1},{{{\bar x}}_{_2}}, \cdots ,{{{\bar x}}_n}} \right] \in {\bar U}$ , $\exists x = [ {x_1},{x_2}, \cdots ,$ ${x_n} ] \in $ U, 对应的输出yR.

2.2 性能指标

以MATLAB R2014a为实验平台对模型进行仿真, 编写IHCMAC[18]、KHCMAC[19]、IKHCMAC[20]及文中建立的GIHCMAC神经网络模型程序, 以均方根误差RMSE作为训练模型的评价指标, 泛化误差GMSE作为测试模型的评价指标, 分别由式(7)、式(8)表示为:

${R_{{\rm{rmse}}}} = \sqrt {\frac{1}{n}\sum\limits_i^n {{{(\hat Y(i) - Y(i))}^2}} } $ (7)
${G_{{\rm{gmse}}}} = \left(\hat Y(i) - Y(i)\right)/\hat Y(i)$ (8)
2.3 数据分析

根据上述仿真实验, 通过聚类得到神经网络节点150个, 用学习样本对三种预测模型进行训练, 实验参数设定: 蚁群规模A=100, 最大迭代次数t_max=100, σ=0.7, α=0.5, β=0.2, P0=0.9, pls=0.1. 表2列出了4种模型的性能评价参数, 图2为四种模型的学习误差与泛化误差曲线图, 图3为建筑电负荷400组数据实际值与预测值的对比曲线图. 根据仿真结果表明, IHCMAC神经网络模型的迭代次数为25次, 较KHCMAC神经网络模型和IKHCMAC神经网络模型收敛速度较快; 而GIHCMAC神经网络模型因在蚁群聚类算法的基础上加入了局部寻优阈值pls (变异率), 减少运算次数, 加快了收敛速度, 所以其迭代次数降为9, 较IHCMAC神经网络模型降低了64%. IHCMAC模型的训练误差为0.0092, 较小于KHCMAC、IKHCMAC两种模型的训练误差, 而GIHCAMC模型的训练误差为0.0053, 较IHCMAC模型降低了42.39%, 其具有更好的学习精度. IHCMAC模型的泛化误差为0.0022, 较小于KHCMAC、IKHCMAC两种模型的泛化误差, 而GIHCMAC模型的泛化误差为0.0015, 较IHCMAC模型降低了31.82%, 其泛化能力更强. KHCMAC模型的迭代时间为3.75 s, 低于其它三种模型. GIHCMAC模型的迭代时间为5.16 s, 虽然后者的迭代时间略大于前者, 但是后者的误差较小, 证明在保证预测精度的前提下其实时性相对较 好. 由表3可以看出基于遗传算法改进的蚁群聚类的聚类效果方面优于蚁群聚类算法.

表 2 4种模型性能参数

3 结论

文章针对蚁群聚类算法与遗传算法的特点, 将两者相结合, 弥补蚁群聚类算法易陷入局部最优的缺陷, 实现对IHCMAC神经网络节点选择的优化, 建立基于GIHCMAC神经网络的办公建筑电负荷预测模型. 通过此模型, 得知前两个时刻的电负荷值, 则可以预测得到后一时刻的电负荷值. 实验表明, 该算法与IHCMAC神经网络方法、KHCMAC神经网络方法、IKHCMAC神经网络方法相比, 收敛速度快, 学习精度高, 泛化能力强.

图 2 4种模型的学习误差与泛化误差曲线

图 3 实际电负荷与模型预测值对比曲线

表 3 改进前后聚类效果对比

参考文献
[1]
侯恩哲. 《中国建筑能耗研究报告(2017)》概述. 建筑节能, 2017, 45(12): 131.
[2]
李婉华, 陈宏, 郭昆, 等. 基于随机森林算法的用电负荷预测研究. 计算机工程与应用, 2016, 52(23): 236-243. DOI:10.3778/j.issn.1002-8331.1606-0203
[3]
黎祚, 周步祥, 林楠. 基于模糊聚类与改进BP算法的日负荷特性曲线分类与短期负荷预测. 电力系统保护与控制, 2012, 40(3): 56-60. DOI:10.3969/j.issn.1674-3415.2012.03.011
[4]
黄磊, 陈浩, 衣乔木, 等. 基于k-means聚类和BP神经网络组合模型的用电负荷预测. 电力与能源, 2016, 37(1): 56-60.
[5]
Chae YT, Horesh R, Hwang Y, et al. Artificial neural network model for forecasting sub-hourly electricity usage in commercial buildings. Energy and Buildings, 2016, 111: 184-194. DOI:10.1016/j.enbuild.2015.11.045
[6]
王义军, 李殿文, 高超, 等. 基于改进的PSO-SVM的短期电力负荷预测. 电测与仪表, 2015, 52(3): 22-25. DOI:10.3969/j.issn.1001-1390.2015.03.005
[7]
李明海, 赵明强, 刘敏, 等. 基于GM-BP神经网络的校园建筑能耗预测. 建筑节能, 2016, 44(11): 80-83. DOI:10.3969/j.issn.1673-7237.2016.11.018
[8]
Zhang Y, Chen QJ. Prediction of building energy consumption based on PSO-RBF neural network. Proceedings of 2014 IEEE International Conference on System Science and Engineering. Shanghai, China. 2014. 60–63.
[9]
段培永, 邵惠鹤. 一种CMAC超闭球结构及其学习算法. 自动化学报, 1999, 25(6): 816-819.
[10]
李慧, 段培永, 张庆范. 基于聚类的超闭球CMAC神经网络改进算法. 吉林大学学报(工学版), 2012, 42(1): 170-175.
[11]
Kesemen O, Tezel Ö, Özkul E. Fuzzy c-means clustering algorithm for directional data (FCM4DD). Expert Systems with Applications, 2016, 58: 76-82. DOI:10.1016/j.eswa.2016.03.034
[12]
Dorigo M, Maniezzo V, Colorni A. Ant system: Optimization by a colony of cooperating agents. IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), 1996, 26(1): 29-41. DOI:10.1109/3477.484436
[13]
Shelokar PS, Jayaraman VK, Kulkarni BD. An ant colony approach for clustering. Analytica Chimica Acta, 2004, 509(2): 187-195. DOI:10.1016/j.aca.2003.12.032
[14]
单好民. 基于改进蚁群算法和粒子群算法的云计算资源调度. 计算机系统应用, 2017, 26(6): 187-192. DOI:10.15888/j.cnki.csa.005870
[15]
武书舟, 闫丽娜, 张秋艳, 等. 基于改进蚁群算法的聚类分析方法研究. 计算机与数字工程, 2018, 46(9): 1721-1725, 1849. DOI:10.3969/j.issn.1672-9722.2018.09.005
[16]
朱峰, 陈莉. 蚁群与遗传算法融合的聚类算法研究. 西北大学学报(自然科学版), 2009, 39(5): 745-749.
[17]
刘牮, 楼光海, 黄微. 结合双树复小波变换和滑动平均滤波的心电信号去噪方法. 电子测量技术, 2018, 41(19): 112-117.
[18]
段培永, 赵艳玲, 李慧, 等. 基于HCMAC神经网络的建筑动态冷/热负荷预测方法. 第27届中国控制与决策会议论文集. 青岛. 2015. 2637–2640.
[19]
段培永, 张洁珏, 崔冲, 等. 太阳能光伏发电功率短期智能预测方法. 山东建筑大学学报, 2016, 31(3): 205-211, 223. DOI:10.3969/j.issn.1673-7644.2016.03.001
[20]
邹明君, 丁绪东, 吴盼红, 等. 基于IKHCMAC神经网络的建筑冷/热负荷预测研究. 山东建筑大学学报, 2018, 33(1): 46-50.