办公建筑能耗模型校正软件的设计与开发
论文作者:草根论文网 论文来源:www.lw360.net 发布时间:2016年10月17日

一、引言

文章掌握IDF模型中的关键参数,并且确定了要使用的模型校正方法。为了进一步解决在实际工作生活中建筑能耗模型校正困难的现状,开发一套基于EnergyPlus计算内核、通过自适应粒子群优化算法实现能耗模型自动校正的软件。

二、开发工具选取

模型自动校正程序基于Java编程语言,编程环境为MyEclipse。软件运行过程中会涉及到的文件分为EnergyPlus建模软件使用的IDF文件和用来存放输出值的CSV文件。

Java是由Sun公司在1995年推出的面向对象的程序设计语言,具有简单性、面向对象、健壮性、可移植性、高性能、多线程和动态性等特征。MyEclipse是在eclips。的基础上,添加了多种插件组成的企业级集成开发环境。它的功能非常强大,支持也+分广泛。MyEclipse可以支持AJAX, Spring, Hibernate和JDBC数据库链接工具等多项功能,可以说MyEclipse是几乎囊括了现阶段所有主流开源产品的专属eclipse开发工具。

CSV是一种通用的文件格式,因为使用方法简单因此应用非常广泛。CSV文件通常是由纯文本形式的记录组成,每条记录被分割符分隔为字段,常见的分隔符有逗号和分号。它经常被用于程序之间转移数据。在本软件中间的数据存储就使用CSV文件来实现。

三、软件系统结构设计

现代智能优化算法通常需要通过多次循环才能找到最优解。建筑能耗模型自动校正算法的寻优过程同其他寻优过程不同,由于该过程是基于EnergyPlus软件实现的,仿真软件要在优化算法在每次迭代后对刚刚更新生成的粒子进行模拟房展,因此每次循环都是一个由建模模拟计算以及输入输出组成的完整的能耗计算过程。本自动校正软件的主要工作是完成自动校正软件和Energyrlus计算内核的数据接口和自适应粒子群优化算法的实现。模型自动校正程序的构架可以大致分为下面5个部分。

自动校正算法初始化模块

自适应粒子群优化算法在初始化的时候,要初始化出N个粒子,并且根据粒子每个参数取值的上下限,在取值范围内进行随机初始化,同时初始化例子速度。

2  IDF文件编辑模块

自动校正运行过程中的每次迭代都会产生一组新解,也就是一群新的例子,新粒子的位置对应着本次循环中仿真模拟参数的值,因此本部分的功能就是将上一次循环后刚刚产生的新解与建筑能耗模型的参数进行一一对应,并将其写入到IDF模型文件中。EnergyPlus根据IDF文件中的参数,将数据对应地提供给EnergyPlus主程序及其各个计算模块,并结合用户指定的气象数据文件完成计算,输出结果到标准文件。在整个过程中,EnergyPlus计算内核使用的是能耗模型就是IDF文件,因此优化算法每一次迭代之后,都需要将迭代之后的粒子的值对应的写入到IDF文件中,为下一步的计算做好准备。

3  EnergyPlus计算内核模块

建筑能耗模型校正实际上是通过对实际能耗数据和模拟计算出的能耗数据进行对比,来对输入参数进行调整的一个循环过程。在程序运行过程中,会不断地调用EnergyPlus计算内核来进行建筑能耗的模拟计算,直到目标函数达到要求。EnergyPlus官方提供了一个计算内核模块,也就是EnergyPlus.exe。外部可以通过调用批处理文件,也就是RunEPlus.bat,来调用内核模块并对输入模型(IDF文件)进行计算。

4  EnergyFlus计算结果分析模块

通过调用EnergyPlus计算内核,各个粒子对应的模型文件都将输出放到了程序中指定的位置,程序中需要根据输出文件来计算相应的目标函数,也就是根据输出文件中逐月的总耗电量、照明系统耗电量、设备系统耗电量和空调系统耗电量(制冷系统耗电量和风机耗电量)各个部分计算对应的均方差变异系数,并得到该组解的适应度值,也就是目标函数的值。该目标函数是最后判定校正结果的唯一标准。

自动校正算法模块

该部分是整个程序运行的重点,在本文中,自适应粒子群算法的实现是需要在上一个模块也就是EnergyPlus计算结果分析模块的基础之上,根据计算结果计算出本次迭代计算中的局部最优值和全局最优值,并依据自适应粒子群算法中粒子速度和位置的更新公式来对粒子进行更新。

四、重点功能模块设计

根据建筑能耗模型校正模拟工作的需要,模型自动校正程序的运行流程大致如下。

首先,建模人员根据所需要校正的建筑物的概况,建立该建筑对应的能耗模型(IDF文件),并且将该建筑物所处城市的天气文件保存到指定位置,以及该建筑物的实际能耗逐月数据按照规定写入到指定的csv文件中。然后,建模人员打开模型校正程序,对原始输入文件进行模型计算,并保存模型输出和目标函数的结果。最后,建模人员设定好最大迭代次数和目标函数中各个部分的权重,就可以进行自适应粒子群算法的自动校正。

自适应粒子群算法实现

在建筑能耗模型自动校正程序中,IDF文件编辑模块和EnergyPlus结果分析模块等同于是自适应粒子群算法实现模块和EnergyPlus计算内核模块之间的借口,实现了两者的祸合。

在整个运行流程中,自适应粒子群算法的实现是整个软件实现的重点和难点。因为JAVA是面向对象的语言,因此在程序设计上,将一组校正参数作为最小的对象。每一个粒子带有自身的当前值,局部最优值、当前速度、当前粒子对应的目标函数值和局部最优值对应的目标函数值。

当进行算法寻优时,首先由PSO算法随机生成一个粒子群,每个粒子的自身值和速度都是随机的,局部最优值为它的当前值,目标函数值均为0,这样,每个粒子都对应着一个参数值的组合。通过IDF文件编辑模块,将粒子的值替换到原来的模型文件中,生成新的模型输入文件,然后调用EnergyPlus计算核心进行能耗的模拟计算,在计算结束后,通过EnergyPlus结果分析模块对各个粒子的输入结果进行计算,得到各个粒子对应的目标函数值。最后通过自动校正算法模块根据各个粒子的适应度来更新粒子的速度和值。重复本步骤,直到目标函数达到目标或者达到迭代次数,就退出自动寻优。

2  EnergyPlus内核的调用

EnergyPlus官方提供了一个批处理文件,也就是RunEPlus.bat。通过调用该批处理文件实现,可以实现调用计算内核模块,只要在cmd命令中依次输入批处理文件的位置、IDF文件的名称(不包括文件后缀)、天气文件的名称(不包括文件后缀名)、IDF文件的位置(例如:E:\in\,需要注意的是最后需要加上反斜杠)、计算结果输出文件的位置(例如:E:\out\,需要注意的是最后需要加上反斜杠)、天气文件的位置(例如:EAin\,需要注意的是最后需要加上反斜杠),就可以成功调用EnergyPlus计算内核,也就是EnergyPlus.exe 。

五、小结

本章的研究内容主要是在前两章的基础上,开发了一款基于自适应粒子群算的,针对EnergyPlus建筑能耗模拟软件的建筑能耗模型自动校正程序。本章首先介绍了该软件的开发工具,然后对软件结构进行了模块的划分,并对每个模块的功能进行了详细的描述,最后对软件整个运行了流程进行了详细的解读,同时重点解释了自适应粒子群算法的实现细节和EnergyPlus计算内核的调用方法。


相关推荐
联系我们

代写咨询
 362716231

发表咨询
 958663267


咨询电话

18030199209


查稿电话

18060958908


扫码加微信

weixin.png


支付宝交易

ali.jpg

  • 在线客服
  • 认准本站客服
  • 代写咨询
    362716231
  • 发表咨询
    958663267
  • 咨询电话
  • 18030199209
  • 查稿电话
  • 18060958908
  • 扫描加微信
  • 支付宝交易
  • 返回顶部
    在线客服