文献标识码:A
DOI:10.16157/j.issn.0258-7998.182725
中文引用格式:杨烁,孙钦斐,朱洁,等. 基于大数据平台的电采暖用电量预测分析[J].电子技术应用,2018,44(11):61-63.
英文引用格式:Yang Shuo,Sun Qinfei,Zhu Jie,et al. Forecast and analysis of electric heating consumption based on big data platform[J]. Application of Electronic Technique,2018,44(11):61-63.
0 引言
近年来,研究人员对电力用户分类、用电行为特征等进行了一些研究。如,文献[1]以传统行业划分为基础提出基于聚类的用户分类研究;文献[2]进一步将居民电力用户类型作为研究对象,并通过云平台和聚类算法K-Means相结合的方式,将居民用户分为了5类并分析了各类用户行为;文献[3]-[6]从用电负荷的角度出发,对行业或家庭用户进行分类,为公司决策提供更有针对性的参考依据,例如有序用电、峰谷电量,具有一定的实际意义。研究人员进一步讨论形成的智能用电策略在有效提高用户的用电效率,减少家庭能耗,实现经济用电的方面很有指导意义。在家庭用户方面,文献[7]建立了家庭用户号、房屋面积、家庭成员数、每天用电量、峰谷电量、家用电器数等的数据维度模型,进而利用大量家庭用户用电数据进行分析挖掘。考虑到用户负荷除了受用户自身作息习惯和经济收入等直接因素影响外,还与节气、天气、当地最低气温、重要节假日和地域属性的间接因素密切相关,文献[8]-[10]分别考虑上述因素,实现对居民用电行为特性的差异化分析,为需求响应提供了有效的数据支撑,例如峰时耗电率、负荷率、谷电系数、平段的用电量百分比等。
本文基于大数据分析平台,通过BP神经网络预测方法,研究各种因素对用户采暖耗电量的影响,建立用户的采暖用电量预测模型,并最终应用在北京市“煤改电”工程智能服务平台上。本文充分考虑该工程数据体量大,找出影响采暖用电量的关键因素。此研究对于降低用户采暖成本以及完善配电网建设和用户用电负荷配置提供数据支撑,具有积极意义。
1 智能服务平台架构设计
本文中智能服务平台总体架构主要分为以下5个层次:基础层、数据采集层、数据分析层、综合应用层、展现层以及统一信息库,具体如图1所示。
平台功能架构如图2所示。
用户通过智能采暖APP实时监测家庭采暖设备、采集设备,对异常情况进行告警,同时通过智能采暖APP智能操控采暖设备,并对采暖设备的量费信息、补贴信息进行便捷查询,提升供电服务质量。
企业通过对“煤改电”工程的用户信息、采暖设备运行情况、室内温度、气象信息等数据的采集、运算和分析处理,了解用户的采暖习惯偏好,提高用户采暖用电数据预测的精准度,同时结合区域负荷数据,为完善配电网建设和用户负荷配置提供数据支撑。
值得指出的是,在平台底层采用了基于Hadoop的HDFS数据存储以及内存计算引擎Spark的大数据技术。HDFS分布式存储主要是供Hadoop应用程序使用,满足低成本、高容错、高吞吐等大数据处理需求特性。Spark具有构架先进、运算高效、简单易用等优点,同时可与Hadoop无缝连接,提供整体解决方案。此外Spark在机器学习方面有着天然的优势,在迭代处理计算方面比Hadoop快100倍,系统具有很好的可扩展性。
样本数据采集通过安装在选取的典型用户家中的温湿度传感器、电流电压传感器,按15 min的间隔频率进行数据采集,整个采暖季采集到上1 000万条设备监控数据,结合气象数据服务平台提供的采暖季历史气象记录数据,通过ETL工具从采集厂商提供的前置数据库读取到基于大数据的智能服务平台Hive数据仓库中。
NN模型训练及预测流程如图3所示。主要预测分析步骤如下:
(1)通过pySpark编写数据清洗的Job任务程序,对采集到的异常、缺失、重复数据进行数据预处理,并对每个时间段的耗电电量进行统计;
(2)通过对收集的特征数据进行相关性分析,去除相关性过低的特征数据,最终保留相关性大于0.5的5个特征数据;
(3)对特征数据进行规范化数据处理,并将数据集拆分为训练集和测试集两组;
(4)利用Spark引擎提供MLLib机器学习库中的K-Means聚类算法对训练集数据进行聚类模型分析;
(5)利用Spark引擎提供MLLib机器学习库中的线性回归算法LinearRegression进行线性回归分析;
(6)利用Spark引擎提供MLLib机器学习库中的BP神经网络算法NNbp进行模型训练和预测分析。
通过该平台能快速地对数据进行处理和分析,从而提升数据分析和决策效率。
2 BP模型设计和配置
本文采用BP网络(Back-Propagation Network)进行模型训练和预测分析。该BP网络由输入层、隐藏层和输出层组成。本次研究选用m×k×n的3层BP网络模型,网络选用S型传递函数f(x)=1/(1+e-x),通过反传误差函数E=Σi(Ti+Oi)2/2(Ti为期望输出,Oi为网络的计算输出),不断调节网络权值和阈值使误差函数E达到极小。
基于BP神经网络预测方法,以“室外温度、室外湿度、室内温度、用户房屋面积、人口数”为自变量,反复调节模型参数,建立预测模型。因此输入层的节点数为5,输出层的节点数为1。在网络设计过程中, 确定隐层神经元数量很重要。过多的隐层神经元会加大网络计算量,容易产生过度拟合问题; 太少的神经元个数会影响网络性能, 可能达不到预期效果。网络中隐层神经元的数量与实际问题的复杂性、期望误差的设置以及输入和输出层的神经元数直接相关。本次实验在选取隐层神经元个数的问题上参照了以下的经验公式:
其中,n为输入层神经元个数,m为输出层神经元个数,a为[1,10]之间的常数。
根据经验公式,神经元个数计算可取值为4~13之间,在本次实验中选取隐层神经元个数为6。Sigmoid可微函数和线性函数通常被BP神经网络采用作为网络的激励函数。由于网络的输出归一到[-1,1]范围内,因此预测模型选取S 型对数函数tansig作为输出层神经元的激励函数。本次预测模型网络迭代次数epochs选定为5 000,期望误差goal为0.000 1,学习速率lr为0.01。
3 实验和结果分析
本文对北京地区2017年~2018年实施了“煤改电”项目的用户的实测数据进行分析,所选数据集中包含:室外温度、室外湿度、室内温度、用户房屋面积、人口数及采暖耗电量。本文选取了实际使用电采暖大于40日的用户数据,对其进行数据处理与清洗,预测采暖小时耗电量。对数据归一化处理得到有效数据共24 150条。通过模型计算得到的用户采暖耗电量,对16 180条训练数据的预测结果如图4所示。
图4中列出了根据采集的特征数据计算得到的采暖负荷的真实值及预测值。根据相对误差和平均误差的计算公式,计算得到的训练集平均平方误差为0.821 94。从图中可以看出,实际数据曲线和预测数据具有一致性,在用户实时负荷数据完备且真实的前提下,本研究所采用的预测模型能够有效预测24小时用户的用电量。随着实际数据的积累和模型训练精度的提升,最终能够实现对实际用户数据的预测。
4 结论
本文建立了基于大数据分析的智能服务平台,并利用BP网络对用户用电量进行实际建模和预测,该预测结果和实际数据具有一致性。当然,实际的预测准确度不但与外界环境温度相关,而且与用户家庭人口数、房间大小和使用偏好等特性相关。因此,针对当前有效数据量的不足,能够通过后续的数据补充,进行针对性建模和预测,从而进一步提升模型的精度,让系统发挥更大的价值。本文所建立的系统已经应用在北京“煤改电”工程中,对完善配电网建设和用户用电负荷配置具有显著价值。
参考文献
[1] 冯晓蒲.基于实际负荷曲线的电力用户分类技术研究[D].保定:华北电力大学,2011.
[2] 张素香,刘建明,赵丙镇.基于云计算的居民用电行为分析模型研究[J].电网技术,2013(6):65-69.
[3] 王炳鑫,侯岩,方红旺.面向“削峰填谷”的电力客户用电行为分析[J].电信科学,2017,33(5):164-170.
[4] 张铁峰,顾明迪.电力用户负荷模式提取技术及应用综述[J].电网技术,2016,40(3):804-811.
[5] 孙毅,刘迪,李彬,等.基于家庭用电负荷关联度的实时优化策略[J].电网技术,2016,40(6):1825-1829.
[6] 孙毅,冯云,崔灿.基于动态自适应K均值聚类的电力用户负荷编码与行为分析[J].电力科学与技术学报,2017,32(3):3-8.
[7] 赵莉,候兴哲,胡君.基于改进k-means算法的海量智能用电数据分析[J].电网技术,2014(10):104-109.
[8] 李乐,辛江.北京农村“煤改电”用户负荷分析及供电策略[J].中国电力企业管理,2017(10):56-58.
[9] 刘旭,罗滇生,姚建刚.基于负荷分解和实时气象因素的短期负荷预测[J].电网技术,2009(12):98-104.
[10] 苏适,李康平,严玉廷.基于密度空间聚类和引力搜索算法的居民负荷用电模式分类模型[J].电力自动化设备,2018 (1):129-136.
作者信息:
杨 烁,孙钦斐,朱 洁,陈 平
(国网北京市电力公司电力科学研究院,北京100075)