Skip to content

Plugin module for the AgentLib, providing modules for nonlinear (distributed) model predictive control.

License

Notifications You must be signed in to change notification settings

RWTH-EBC/AgentLib-MPC

Repository files navigation

agentlib_mpc

License pylint documentation

This is a plugin for AgentLib. Includes functions for modeling with CasADi, and using those models in nonlinear MPC, central and distributed (based on ADMM).

See examples and the tutorial in the docs. Best example to start is an MPC for a single air conditioned room.

Installation

Install with:

pip install agentlib_mpc

To install with full dependencies (recommended), run:

pip install agentlib_mpc[full]

Optional Dependencies

AgentLib_MPC has a number of optional dependencies:

  • fmu: Support simulation of FMU models (https://fmi-standard.org/).
  • ml: Use machine learning based NARX models for MPC. Currently supports neural networks, gaussian process regression and linear regression. Installs tensorflow, keras and scikit-learn.
  • interactive: Utility functions for displaying mpc results in an interactive dashboard. Installs plotly and dash.

Install these like

pip install agentlib_mpc[ml]

Citing AgentLib_MPC

For now, please cite the base framework under https://github.com/RWTH-EBC/AgentLib.

A preprint is available under http://dx.doi.org/10.2139/ssrn.4884846 and can be cited as:

Eser, Steffen and Storek, Thomas and Wüllhorst, Fabian and Dähling, Stefan and Gall, Jan and Stoffel, Phillip and Müller, Dirk, A Modular Python Framework for Rapid Development of Advanced Control Algorithms for Energy Systems. Available at SSRN: https://ssrn.com/abstract=4884846 or http://dx.doi.org/10.2139/ssrn.4884846

When using AgentLib-MPC, please remember to cite other tools that you are using, for example CasADi or IPOPT.

Acknowledgments

We gratefully acknowledge the financial support by Federal Ministry \ for Economic Affairs and Climate Action (BMWK), promotional reference 03ET1495A.

BMWK

About

Plugin module for the AgentLib, providing modules for nonlinear (distributed) model predictive control.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages