<img align="left" width="30%" hspace="2%" src="https://raw.githubusercontent.com/do-mpc/do-mpc/master/documentation/source/static/dompc_var_02_rtd_blue.png">
# Model predictive control python toolbox
[![Documentation Status](https://readthedocs.org/projects/do-mpc/badge/?version=latest)](https://www.do-mpc.com)
[![Build Status](https://github.com/do-mpc/do-mpc/actions/workflows/pythontest.yml/badge.svg?branch=develop)](https://github.com/do-mpc/do-mpc/actions/workflows/pythontest.yml)
[![PyPI version](https://badge.fury.io/py/do-mpc.svg)](https://badge.fury.io/py/do-mpc)
[![awesome](https://img.shields.io/badge/awesome-yes-brightgreen.svg?style=flat-square)](https://github.com/do-mpc/do-mpc)
**do-mpc** is a comprehensive open-source toolbox for robust **model predictive control (MPC)**
and **moving horizon estimation (MHE)**.
**do-mpc** enables the efficient formulation and solution of control and estimation problems for nonlinear systems,
including tools to deal with uncertainty and time discretization.
The modular structure of **do-mpc** contains simulation, estimation and control components
that can be easily extended and combined to fit many different applications.
In summary, **do-mpc** offers the following features:
* nonlinear and economic model predictive control
* support for differential algebraic equations (DAE)
* time discretization with orthogonal collocation on finite elements
* robust multi-stage model predictive control
* moving horizon state and parameter estimation
* modular design that can be easily extended
The **do-mpc** software is Python based and works therefore on any OS with a Python 3.x distribution. **do-mpc** has been developed by Sergio Lucia and Alexandru Tatulea at the DYN chair of the TU Dortmund lead by Sebastian Engell. The development is continued at the [Laboratory of Process Automation Systems](https://pas.bci.tu-dortmund.de) (PAS) of the TU Dortmund by Felix Fiedler and Sergio Lucia.
## Installation instructions
Installation instructions are given [here](https://www.do-mpc.com/en/latest/installation.html).
## Documentation
Please visit our extensive [documentation](https://www.do-mpc.com), kindly hosted on readthedocs.
## Citing **do-mpc**
If you use **do-mpc** for published work please cite it as:
F. Fiedler, B. Karg, L. Lüken, D. Brandner, M. Heinlein, F. Brabender and S. Lucia. do-mpc: Towards FAIR nonlinear and robust model predictive control. Control Engineering Practice, 140:105676, 2023
Please remember to properly cite other software that you might be using too if you use **do-mpc** (e.g. CasADi, IPOPT, ...)
Raw data
{
"_id": null,
"home_page": "https://www.do-mpc.com",
"name": "do-mpc",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Sergio Lucia and Felix Fiedler",
"author_email": "sergio.lucia@tu-berlin.de",
"download_url": "https://files.pythonhosted.org/packages/4a/65/3a6fdf5829af04feb5934e8f81925b4e5712eaf5b7d4f7f5aa8ba5d685c2/do_mpc-4.6.4.tar.gz",
"platform": null,
"description": "<img align=\"left\" width=\"30%\" hspace=\"2%\" src=\"https://raw.githubusercontent.com/do-mpc/do-mpc/master/documentation/source/static/dompc_var_02_rtd_blue.png\">\n\n# Model predictive control python toolbox\n\n[![Documentation Status](https://readthedocs.org/projects/do-mpc/badge/?version=latest)](https://www.do-mpc.com)\n[![Build Status](https://github.com/do-mpc/do-mpc/actions/workflows/pythontest.yml/badge.svg?branch=develop)](https://github.com/do-mpc/do-mpc/actions/workflows/pythontest.yml)\n[![PyPI version](https://badge.fury.io/py/do-mpc.svg)](https://badge.fury.io/py/do-mpc)\n[![awesome](https://img.shields.io/badge/awesome-yes-brightgreen.svg?style=flat-square)](https://github.com/do-mpc/do-mpc)\n\n**do-mpc** is a comprehensive open-source toolbox for robust **model predictive control (MPC)**\nand **moving horizon estimation (MHE)**.\n**do-mpc** enables the efficient formulation and solution of control and estimation problems for nonlinear systems,\nincluding tools to deal with uncertainty and time discretization.\nThe modular structure of **do-mpc** contains simulation, estimation and control components\nthat can be easily extended and combined to fit many different applications.\n\nIn summary, **do-mpc** offers the following features:\n\n* nonlinear and economic model predictive control\n* support for differential algebraic equations (DAE)\n* time discretization with orthogonal collocation on finite elements\n* robust multi-stage model predictive control\n* moving horizon state and parameter estimation\n* modular design that can be easily extended\n\nThe **do-mpc** software is Python based and works therefore on any OS with a Python 3.x distribution. **do-mpc** has been developed by Sergio Lucia and Alexandru Tatulea at the DYN chair of the TU Dortmund lead by Sebastian Engell. The development is continued at the [Laboratory of Process Automation Systems](https://pas.bci.tu-dortmund.de) (PAS) of the TU Dortmund by Felix Fiedler and Sergio Lucia.\n\n## Installation instructions\nInstallation instructions are given [here](https://www.do-mpc.com/en/latest/installation.html).\n\n## Documentation\nPlease visit our extensive [documentation](https://www.do-mpc.com), kindly hosted on readthedocs.\n\n## Citing **do-mpc**\nIf you use **do-mpc** for published work please cite it as:\n\nF. Fiedler, B. Karg, L. L\u00fcken, D. Brandner, M. Heinlein, F. Brabender and S. Lucia. do-mpc: Towards FAIR nonlinear and robust model predictive control. Control Engineering Practice, 140:105676, 2023\n\nPlease remember to properly cite other software that you might be using too if you use **do-mpc** (e.g. CasADi, IPOPT, ...)\n",
"bugtrack_url": null,
"license": "GNU Lesser General Public License version 3",
"summary": "",
"version": "4.6.4",
"project_urls": {
"Homepage": "https://www.do-mpc.com"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d570a8798e0d9a61a31d153166a5fd07a94be1a69ebc8aca6681e9b2e9997c9a",
"md5": "44512c9b59b2dc3d187687f19819ce4f",
"sha256": "89b1a6db011ee9c939cafd9ad316f3616d8171dac689f92f0de39015569dc3fe"
},
"downloads": -1,
"filename": "do_mpc-4.6.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "44512c9b59b2dc3d187687f19819ce4f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 140352,
"upload_time": "2023-11-20T15:45:16",
"upload_time_iso_8601": "2023-11-20T15:45:16.990567Z",
"url": "https://files.pythonhosted.org/packages/d5/70/a8798e0d9a61a31d153166a5fd07a94be1a69ebc8aca6681e9b2e9997c9a/do_mpc-4.6.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4a653a6fdf5829af04feb5934e8f81925b4e5712eaf5b7d4f7f5aa8ba5d685c2",
"md5": "e608d4e9f2a32984343c5b68620ad2d8",
"sha256": "a6a59fc6b26f7c1c0228f14f7ff178456e1f9943e6657999b41db46b243c1078"
},
"downloads": -1,
"filename": "do_mpc-4.6.4.tar.gz",
"has_sig": false,
"md5_digest": "e608d4e9f2a32984343c5b68620ad2d8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 115424,
"upload_time": "2023-11-20T15:45:19",
"upload_time_iso_8601": "2023-11-20T15:45:19.082932Z",
"url": "https://files.pythonhosted.org/packages/4a/65/3a6fdf5829af04feb5934e8f81925b4e5712eaf5b7d4f7f5aa8ba5d685c2/do_mpc-4.6.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-20 15:45:19",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "do-mpc"
}