2. 江苏省建筑智慧节能重点实验室, 苏州 215009;
3. 苏州市移动网络技术与应用重点实验室, 苏州 215009
Jiangsu Key Laboratory of Building Intelligent Energy Saving, Suzhou 215009, China;
Suzhou Key Laboratory of Mobile Network Technology and Application, Suzhou 215009, China
建筑作为能耗占比最大的领域, 虽然自身拥有巨大的节能潜力, 但是, 随着经济的高度发展, 建筑面临的高能耗低能效的问题也日益严峻. 近年来, 我国在建筑节能领域取得了明显进展, 但从能耗预测的角度看, 建筑能耗预测仍然存在很多不足之处[1]. 构建建筑能耗预测模型是预测建筑未来时刻能耗、在线控制能耗以及获取能耗运行最优策略的前提和核心[2–4]. 但是, 建筑具有面积大、能耗大和能耗复杂等特点, 并且建筑自身是一个包含多种系统, 设备相互连接的复杂非线性系统. 因此, 研发精度高、适应性强的能耗预测模型并非是件容易的事. 从建筑自身来说, 其能耗受到多种外界因素的影响, 例如外界气候、建筑物自身结构、内部设备运行特点、人员分布动态特征等, 这些因素使得建筑物能耗变得更加复杂, 也加剧了能耗预测的难度. 近年来, 国内外许多业界学者和专家的主要关注点在于如何在提高建筑能耗预测的准确性并简化能耗预测模型的同时, 实现在线控制及优化建筑能耗. 建筑的完整生命周期包括很多环节, 如设计、建造、运行、维护等, 其中每个环节运用的节能方法或者技术都能够对实现节能的目标产生重要影响, 因此, 能耗预测在建筑节能中就显得势在必行. 与此同时, 建筑在自身运行中产生的一大批真实能耗数据被搁置或者直接丢弃, 并没有真正实现任何价值, 对节能而言, 又是一种资源浪费.
强化学习在智能建筑领域, 尤其是在建筑节能问题上已经引起国内外相关学者的广泛关注. Dalamagkidis等人提出设计一种线性强化学习控制器, 可监督控制建筑热舒适度、空气质量、光照需求度、噪音等, 与传统Fuzzy-PD相比, 其效果更优[5]; Yu等人提出了一种用强化学习在线调整低能耗建筑系统的监督模糊控制器的无模型方法, 其中用Q-learning算法监控建筑物的能源系统[6]; Bielskis等人利用强化学习方法构建室内照明控制器, 通过强化学习方法自适应调节照明系统, 进而节约能源消耗[7]; Li等人提出一种多网格Q-learning方法, 通过近似建筑环境模型求解近似节能优化策略, 并将初始策略用于精确建筑模型, 在线学习最优控制策略, 加快算法求解实际问题中的收敛速度[8]; Liu等人提出基于强化学习Q-learning算法监督控制建筑热质量, 进而节约能源消耗[9]; Yang等人提出基于强化学习方法的建筑能耗控制方法, 该控制方法运用表格式Q学习和批量式Q学习在Matlab平台上实现建筑能耗控制, 实验结果表明, 该方法较其他方法多节约百分之十的能耗[10]; Zamora-Martínez等人给出一种利用位置环境在线预测建筑物能耗的方法, 该方法从一个完全随机的模型或者一个无偏的先验知识获得模型参数, 并运用自动化技术使得房屋适应未来的温度条件, 达到节能的效果[11]; Nijhuis等人提出一种基于公开可用的数据开发住宅负载模型, 该模型运用强化学习中蒙特卡罗算法, 基于时间使用规律对家庭居住房屋进行建模, 该模型中主要影响能耗的相关因素为天气变量、领域特征和人员行为数据, 通过对100多个家庭每周的用电量进行验证, 实验结果表明, 该方法的预测性能较其他类似方法更精确[12]; Liesje Van Gelder等人基于强化学习中蒙特卡罗方法提出一种整合影响建筑能耗诸多不确定因素的概率分析和设计方法, 该方法可以合并原模型, 取代原始模型, 并检查潜在情景的优化结果[13].
本文利用DBN将建筑能耗初始状态映射至高维特征空间, 结合强化学习中Q-learning算法, 将输出的状态特征向量作为Q-learning算法的输入, 实现对建筑能耗的预测. 实验表明, 运用强化学习进行能耗预测是可行的, 并且改进后的能耗预测方法精度更高, 这充分说明了强化学习在建筑能耗预测领域具有很大的研究潜力.
2 相关理论 2.1 马尔可夫决策过程能成功保留所有相关信息的状态信号就是具有马尔科夫性(Markov Property)的, 而只要具有马尔可夫性的强化学习问题就被称为马尔可夫决策过程(Markov Decision Process, MDP). 马尔可夫性可作如下定义: 假设强化学习问题中, 状态和奖赏值的数量都是有穷的, 在问题中, 学习器(Agent)与环境交互, 在
$\Pr \{ {x_{t + 1}} = x', {r_{t + 1}} = r\left| {{x_t}, {u_t}, {r_t},\cdots, {r_1}, {x_0}, {u_0}} \right.\} $ | (1) |
然而, 如果状态信号也是有马尔可夫性的, 那么Agent在
$\Pr \{ {x_{t + 1}} = x', {r_{t + 1}} = r\left| {{x_t}, {u_t}} \right.\} $ | (2) |
即当且仅当对所有的
MDP可以用来对强化学习问题进行建模, 其通常被定义为一个四元组,
强化学习的最终目标是要学习到一个能够获得最大期望累计奖赏的最优策略, 并利用该策略进行决策. 然而, 由于最终计算获得的最优策略可能是一个动作, 也可能是某个动作被选择的概率, 因此, 策略被分为确定策略(deterministic policy)和随机策略(random policy)两种. 其中, 确定策略
对Agent在给定一个状态或者状态动作对时, 为了评估该状态或者状态动作对的好坏程度, 在强化学习中给出值函数的定义. 几乎所有强化学习算法都是通过值函数对策略进行评估, 而值函数有状态值函数
$\begin{gathered} {V^h}(x) = \sum\nolimits_{u \in U} {h(x, u)} \sum\nolimits_{{x'} \in X} {T(x, u, {x'})} \hfill \\ {\rm{ }}[R(x, u, {x'}) + \gamma {V^h}({x'})] \hfill \\ \end{gathered} $ | (3) |
$\begin{gathered} {Q^h}(x, u) = \sum\nolimits_{{x'} \in X} {T(x, u, {x'})} [R(x, u, {x'}) \hfill \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;+{\rm{ }}\gamma \sum\nolimits_{{u'} \in U} {h({x'}, {u'})} {Q^h}({x'}, {u'})] \hfill \\ \end{gathered} $ | (4) |
其中,
$\begin{gathered} {V^*}(x) = {\max _{u \in U}}\sum\nolimits_{{x'} \in X} {T(x, u, {x'})} \hfill {\rm{ }}[R(x, u, {x'}) + \gamma {V^*}({x'})] \hfill \\ \end{gathered} $ | (5) |
$\begin{gathered} {Q^*}(x, u) = \sum\nolimits_{{x'} \in X} {T(x, u, {x'})[R(x, u, {x'})} \hfill \\\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; +{\rm{ }}\gamma {\max _{{u'} \in U}}{Q^*}({x'}, {u'})] \hfill \\ \end{gathered} $ | (6) |
上述两个公式也被称作最优Bellman公式.
2.2 Q-learning算法Q-learning是一种经典的离策略算法, 其更新准则:
算法1. Q-learning算法
1. 随机初始化
2. Repeat(for each episode)
3. 初始化
4. Repeat(for each step of episode)
5. 利用从
6. 采取动作
7.
8.
9. 直到
10. 直到
DBN可以应用在多种领域的问题中, 例如执行非线性维数减少、图像识别、视频序列和动作捕捉数据等问题. 此外, DBN可以根据不同的抽象层将学习任务分解成相应的子问题.
DBN由很多限制玻尔兹曼机堆叠在一起, DBN是一个时滞神经网络, 主要分为可视层
$E({\bf{v}}, {\bf{h}}) = - \sum\limits_{i, j} {{v_i}{h_j}{W_{ij}} - } \sum\limits_i {{v_i}{a_i} - } \sum\limits_j {{h_i}{b_j}} $ | (7) |
其中,
$p({\bf{v}}, {\bf{h}}) = \frac{{{e^{ - E({\bf{v}}, {\bf{h}})}}}}{Z}$ | (8) |
其中,
$\frac{{\partial \log (\sum\nolimits_h {\exp ( - E(v, h))} )}}{{\partial {W_{ij}}}} = {v_i} \cdot p({h_j} = 1\left| v \right.)$ | (9) |
在RBM中隐藏层和可视层被激活的概率可以用下面的公式来表示:
$p({h_j} = 1\left| {\bf{v}} \right.){\rm{ = }}\sigma ({b_j} + \sum\limits_i {{v_i}{W_{ji}}} )$ | (10) |
$p({v_j} = 1\left| {\bf{h}} \right.){\rm{ = }}\sigma ({a_j} + \sum\limits_j {{h_i}{W_{ji}}} )$ | (11) |
其中,
$\Delta {W_{ij}} = \frac{{\partial \log (p({\bf{v}}, {\bf{h}}))}}{{\partial {W_{ij}}}} = {\langle {v_i}{h_j}\rangle _0} - {\langle {v_i}{h_j}\rangle _\infty }$ | (12) |
其中,
总的来说, 一个深度信念网络是由一个任意的数字给出的. 其中, 可视层
$p({\bf{x}}, {{\bf{h}}^1}, \cdots, {{\bf{h}}^k}) = \prod\limits_{k = 0}^{l - 2} {p({{\bf{h}}^k}\left| {{{\bf{h}}^{k + 1}}} \right.)p({{\bf{h}}^{l - 1}}, {{\bf{h}}^l})} $ | (13) |
其中,
如图1所示, 一个DBN包含1个可视层和3个隐层, 其中,
3.2 环境建模
从历史数据可知, 每个时刻测量的能耗值在区间
假设预测的下一时刻的能耗值用
$r = - E$ | (14) |
即当预测的能耗值与实际能耗值越接近, 获得的
DBN将从环境中获取的初始状态映射到一个二值状态空间, 并且将获得的状态作为Q-learning算法的输入, 基于Q-learning算法的建筑能耗预测算法具体流程如算法2所示.
算法2. 基于Q-learning算法的建筑能耗预测算法
1. 初始化 DBN, 输入状态集
2. For each RBM in DBN
3. Repeat
4. For each
5. 令RBM可见层
6. 执行RBM, 训练出RBM的参数
7. 更新RBM的权重及各个节点的偏置, 固定RBM的参数
8. End for
9. Until converge
10. For each
11. 令RBM可见层
12. 推断出
13. 将
14. End for
15. End for
16. 将最后计算出的
17. 随机初始化
18. Repeat(for each episode)
19. 初始化
20. Repeat(for each step of episode)
21. 利用从
22. 采取动作
23.
24.
25. 直到是终止状态
26. 直到最优
4 实验及结果分析 4.1 实验设置为了验证本文所提出的建筑能耗预测方法的有效性, 本章节采用的实验数据是美国巴尔的摩燃气和电力公司记载的建筑能耗数据, 具体时间为2007年1月至2017年12月. 本节以其中General Service(< 60 kW)部分数据为实验数据集, 如图2所示, 子图1表示2017年9月共30天的能耗数据, 子图2展示的是2017年9月23日至9月29日共一周7天的能耗数据, 图2中数据采集的步长为1次/1 h. 在所有实验中, 数据集分为两部分, 一部分用于模型的训练, 一部分用来评估该能耗预测方法的性能, 学习速率
4.2 实验结果分析
图3和图4主要展示了Q-learning、基于DBN的Q-learning算法对一个星期的建筑能耗预测值与实际值的对比图, 横坐标表示时间, 纵坐标表示建筑能耗. 在实验过程中, 每个算法都被独立执行20次, 图中的数据即20次实验的平均值. 从两幅图中可以看出, 两种算法都可以预测出未来一周的建筑能耗值. 因此, 用DBN构建能耗动态模型, 并采用Q-learning算法进行建筑能耗预测的方法是可行的. 此外, 从图中可以清晰地看出, 改进的基于DBN的Q-learning算法的能耗预测准确性较经典Q-learning算法更高, 主要原因是通过DBN构造高维特征向量, 进一步提高函数逼近器的泛化能力, 提高算法预测的准确性.
表1主要表示了DBN隐藏层神经元个数不同时, 不同算法对能耗预测的性能分析. 表格中的数据表示建筑能耗实际值与预测值的均方根误差, 表格中的数据是算法被独立执行20次的平均值. 从表1还可以看出相同算法在不同隐藏层神经元的个数下, 算法的性能也不一致, 当隐藏层神经元个数为5, 10, 20, 50, 100时, 建筑能耗的预测值与实际值的均方根误差分别为0.325, 0.225, 0.122, 0.127, 0.138. 由此可以看出, 神经元个数越少, 预测的准确性越差, 而神经元个数越多时, 预测的准确性越好, 但是当神经元数量足够多时, 预测的准确性几乎保持一致, 甚至准确性变差. 由此可见, 为了提高建筑能耗预测的准确性, 选择合适的隐藏层神经元个数是有必要的, 由表1可知, 本文中, 隐藏层神经元个数取20.
表2主要表示了不同α值以及在不同数据步长对基于DBN的Q-learning算法预测性能的影响分析. 表格的第一行表示α的不同取值, 表格的第一列表示数据的步长, 即每个数据之间的时间间隔分别为1 h, 1 day, 1 week和1 month. 表格中的数据表示建筑能耗实际值与预测值的均方根误差, 都是算法被独立执行20次的平均值. 由表2可以清晰地知道, 当数据步长为1 h时, 尽管α的取值在不断变化, 建筑能耗的预测值与实际值的均方根误差总是比较稳定, 预测的准确性较高; 当数据步长为1 week时, α取值越大, 建筑能耗的预测值和实际值的均方根误差越小, 预测的准确性相对较低; 而当数据步长为1 week和1 month时, α取值越大, 建筑能耗的预测值和实际值的均方根误差越大, 预测的准确性更低. 同样的, 当α(α≥0.4)取值一致时, 数据的步长越小, 建筑能耗的预测值和实际值的均方根误差越小, 预测的准确性越高; 数据的步长越大, 建筑能耗的预测值和实际值的均方根误差越大, 预测的准确性越低. 综上所述, 为了最大化能耗预测的准确性, 这里我们选取数据步长为1 h, α取值我们选取0.4.
5 结束语
本文提出一种基于Q-learning算法的建筑能耗预测模型. 该模型通过深度置信网自动提取特征, 并利用贪心无监督的方法自下而上地训练深度置信网中的每一个RBM. 所提出的模型将隐层的输出作为下一个RBM的输入, 实现对能耗状态的预处理, 并以此构建高维状态向量. 此外, 该模型将能耗预测问题建模为一个标准的马尔可夫决策过程, 将深度置信网的输出状态向量作为Q-learning算法的输入, 利用Q-learning实现对能耗的实时预测. 为了验证模型的有效性, 本文采用美国巴尔的摩燃气和电力公司记载的建筑能耗数据进行测试实验, 实验结果表明, 所提出的模型可以有效地预测建筑能耗, 并且基于DBN的Q-learning算法较传统的Q-learning算法有较高的预测精度. 此外, 本文还进一步分析了相关参数对算法性能的影响.
本文主要对单一固定建筑能耗进行预测, 下一步, 将考虑对多样变化的建筑能耗进行预测和迁移研究, 同时不断完善模型, 更好地实现建筑能耗预测, 进一步达到建筑节能的目的.
[1] |
清华大学建筑节能研究中心. 中国建筑节能年度发展研究报告-2014. 北京: 中国建筑工业出版社, 2014.
|
[2] |
Zhao HX, Magoulès F. A review on the prediction of building energy consumption. Renewable and Sustainable Energy Reviews, 2012, 16(6): 3586-3592. DOI:10.1016/j.rser.2012.02.049 |
[3] |
Kim BG, Zhang Y, van der Schaar M, et al. Dynamic pricing and energy consumption scheduling with reinforcement learning. IEEE Transactions on Smart Grid, 2016, 7(5): 2187-2198. DOI:10.1109/TSG.2015.2495145 |
[4] |
Dalamagkidis K, Kolokotsa D. Reinforcement learning for building environmental control. In: Reinforcement Learning. Weber C, Elshaw M, Mayer NM, eds. London: IntechOpen, 2008.
|
[5] |
Dalamagkidis K, Kolokotsa D, Kalaitzakis K, et al. Reinforcement learning for energy conservation and comfort in buildings. Building and Environment, 2007, 42(7): 2686-2698. DOI:10.1016/j.buildenv.2006.07.010 |
[6] |
Yu Z, Dexter A. Online tuning of a supervisory fuzzy controller for low-energy building system using reinforcement learning. Control Engineering Practice, 2010, 18(5): 532-539. DOI:10.1016/j.conengprac.2010.01.018 |
[7] |
Bielskis AA, Guseinoviene E, Dzemydiene D, et al. Ambient lighting controller based on reinforcement learning components of multi-agents. Elektronika ir Elektrotechnika, 2012(5): 79-84. |
[8] |
Li BC, Xia L. A multi-grid reinforcement learning method for energy conservation and comfort of HVAC in buildings. Proceedings of 2015 IEEE International Conference on Automation Science and Engineering. Gothenburg, Sweden. 2015.
|
[9] |
Liu S, Henze GP. Investigation of reinforcement learning for building thermal mass control. Proceedings of the First National IBPSA-USA Conference. Boulder, CO, USA. 2004.
|
[10] |
Yang L, Nagy Z, Goffin P, et al. Reinforcement learning for optimal control of low exergy buildings. Applied Energy, 2015, 156: 577-586. DOI:10.1016/j.apenergy.2015.07.050 |
[11] |
Zamora-Martínez F, Romeu P, Botella-Rocamora P, et al. On-line learning of indoor temperature forecasting models towards energy efficiency. Energy and Buildings, 2014, 83: 162-172. DOI:10.1016/j.enbuild.2014.04.034 |
[12] |
Nijhuis M, Gibescu M, Cobben JFG. Bottom-up Markov chain Monte Carlo approach for scenario based residential load modelling with publicly available data. Energy and Buildings, 2016, 112: 121-129. DOI:10.1016/j.enbuild.2015.12.004 |
[13] |
Van Gelder L, Janssen H, Roels S. Probabilistic design and analysis of building performances: Methodology and application example. Energy and Buildings, 2014, 79: 202-211. DOI:10.1016/j.enbuild.2014.04.042 |
[14] |
Sutton RS, Barto AG. Reinforcement learning: An introduction. Cambridge: MIT Press, 1998.
|