Truong X. Nghiem

|Software: MLE+|

MLE+: a Matlab-EnergyPlus Co-simulation Interface

© 2010-2012 by Truong X. Nghiem.

Contents

Update (Feb 20, 2012): /originally, MLE+ was a toolbox for interfacing Matlab with EnergyPlus. However, in the future, it will become a more general Matlab/Simulink toolbox for building energy simulation, analysis, optimization and control. The co-simulation engine with EnergyPlus will be a (core) part of the toolbox's simulation capability.

MLE+ is a Matlab toolbox for co-simulation with the whole-building energy simulator EnergyPlus. It is designed for engineers and researchers who are familiar with Matlab and Simulink and want to use these software tools in building energy simulation. MLE+ is particularly useful for:

  • Controller design: the energy simulation is carried out by EnergyPlus while the controller is designed and implemented in Matlab or Simulink.

  • Simulation and data collection: a large number of simulations, with different scenarios, can be carried out and their data is collected, stored and processed in Matlab. The data can then be used for various purposes, e.g. for learning a model of the building system.

  • Simulation-based optimization: a non-linear optimizer, e.g. one in the Matlab's Global Optimization Toolbox, can be used to find optimal parameters or control sequences of the building system, by considering the building as a black-box whose execution is performed by simulations by EnergyPlus.

MLE+ toolbox provides a set of Matlab functions and classes, as well as a Simulink library, for performing co-simulation with EnergyPlus.

Currently, EnergyPlus versions 6.0 and 7.0 are supported.

Developers

Currently, the sole developer of MLE+ is Truong X. Nghiem.

Screenshots

Below are several screenshots of MLE+ 1.0.

A Simulink model with MLE+ block simulates a building and a controller which computes the zone temperature set-points.

MLE+ in Simulink

A plot of results of the same system simulated by plain Matlab code using MLE+ functions and class.

MLE+ in Matlab code

Use cases

I plan to publish a list of real use cases of MLE+ on this website. If you have successfully used MLE+ in your research or application, and you want to share your story, please email me.

Change History

  • 2012/04/23: MLE+ development was split into 2 branches: MLE+-legacy (the old toolbox for co-simulation with EnergyPlus) and MLE+ (new toolbox with more functionalities). MLE+ now supports EnergyPlus 7.0.0. Also the development was moved from github to bitbucket due to a problem with the github system.

  • 2012/01/12: website is updated; MLE+ development is hosted on github (removed); (partially) fixed an error of MLE+ running on Windows.

  • 2011/02/01: MLE+ 1.0 r16 is released; fixed a problem with the dimension of input ports of the E+ Simulink block.

  • 2010/11/24: MLE+ 1.0 is released.

Download

The development of MLE+ is hosted on bitbucket.

  • Browse the source code of the toolbox.

  • Download an archive file of the source code of the toolbox.

  • Occasionally, official release of the toolbox may be available on this site. For now, there is no official release.

Documentation and Support

Citing MLE+

Truong X. Nghiem, “MLE+: a Matlab-EnergyPlus Co-simulation Interface.” URL: http://www.seas.upenn.edu/~nghiem/mleplus.html.

BibTeX code

@MISC{mleplus,
author = {Truong X. Nghiem},
title = {{MLE+}: a {Matlab}-{EnergyPlus} Co-simulation Interface},
howpublished = {\url{http://www.seas.upenn.edu/~nghiem/mleplus.html}}
}

License

MLE+ is open-source software. You are free to use it however you like. You may redistribute it. You may modify it to suit your need.

If you redistribute MLE+ or derive your work from MLE+, you should give credit to the authors by including their names and/or a link to the website of MLE+. You are encouraged to share any derivative work.

Disclaimer: MLE+ IS DISTRIBUTED WITHOUT ANY WARRANTY. THE AUTHORS MAKE NO EXPRESS OR IMPLIED WARRANTIES OR CONDITIONS INCLUDING, WITHOUT LIMITATION, THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE WITH RESPECT TO THE SOFTWARE. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES CAUSED BY USING THE SOFTWARE.