Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.4%) to scientific vocabulary
Keywords
Repository
Model predictive control python toolbox
Basic Info
- Host: GitHub
- Owner: do-mpc
- License: lgpl-3.0
- Language: Python
- Default Branch: master
- Homepage: https://www.do-mpc.com/
- Size: 88.1 MB
Statistics
- Stars: 1,208
- Watchers: 27
- Forks: 196
- Open Issues: 90
- Releases: 0
Topics
Metadata Files
README.md

Model predictive control python toolbox
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 was originally 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 Chair of Process Automation Systems (PAS) of the TU Dortmund by Felix Brabender, Joshua Adamek, Felix Fiedler and Sergio Lucia.
Installation instructions
Installation instructions are given here.
Documentation
Please visit our extensive documentation, 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, ...)
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: do-mpc
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- orcid: 'https://orcid.org/0000-0003-3490-1256'
given-names: Felix
family-names: Fiedler
email: felix.fiedler@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
- given-names: 'Benjamin '
family-names: Karg
email: benjamin.karg@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
orcid: 'https://orcid.org/0000-0002-9779-3101'
- given-names: Lukas
family-names: Lüken
email: lukas.lueken@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
orcid: 'https://orcid.org/0009-0004-5599-8282'
- given-names: Dean
family-names: Brandner
email: dean.brandner@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
orcid: 'https://orcid.org/0000-0003-1500-7064'
- given-names: Moritz
family-names: Heinlein
email: moritz.heinlein@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
orcid: 'https://orcid.org/0000-0002-2476-5919'
- given-names: Felix
family-names: Brabender
email: felix.brabender@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
orcid: 'https://orcid.org/0009-0007-0737-5998'
- given-names: Sergio
family-names: Lucia
email: sergio.lucia@tu-dortmund.de
affiliation: >-
Chair of Process Automation Systems, TU Dortmund
University
orcid: 'https://orcid.org/0000-0002-3347-5593'
identifiers:
- type: doi
value: 10.1016/j.conengprac.2023.105676
description: The DOI of the encompassing paper.
repository-code: 'https://github.com/do-mpc/do-mpc'
url: 'https://www.do-mpc.com/en/latest/index.html'
abstract: >-
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.
keywords:
- Nonlinear model predictive control
- Learning-based control
- Robust control
license: LGPL-3.0
preferred-citation:
type: article
authors:
- family-names: "Fiedler"
given-names: "Felix"
orcid: "https://orcid.org/0000-0003-3490-1256"
- family-names: "Karg"
given-names: "Benjamin "
orcid: "https://orcid.org/0000-0002-9779-3101"
- family-names: "Lüken"
given-names: "Lukas"
orcid: "https://orcid.org/0009-0004-5599-8282"
- family-names: "Brandner"
given-names: "Dean"
orcid: "https://orcid.org/0000-0003-1500-7064"
- family-names: "Heinlein"
given-names: "Moritz"
orcid: "https://orcid.org/0000-0002-2476-5919"
- family-names: "Brabender"
given-names: "Felix"
orcid: "https://orcid.org/0009-0007-0737-5998"
- family-names: "Sergio"
given-names: "Lucia"
orcid: "https://orcid.org/0000-0002-3347-5593"
doi: "10.1016/j.conengprac.2023.105676"
journal: "Control Engineering Practice"
month: 11
title: "do-mpc: Towards FAIR nonlinear and robust model predictive control"
volume: 140
year: 2023
GitHub Events
Total
- Create event: 2
- Release event: 2
- Issues event: 10
- Watch event: 226
- Issue comment event: 14
- Push event: 19
- Pull request review comment event: 1
- Pull request review event: 1
- Pull request event: 33
- Fork event: 16
Last Year
- Create event: 2
- Release event: 2
- Issues event: 10
- Watch event: 226
- Issue comment event: 14
- Push event: 19
- Pull request review comment event: 1
- Pull request review event: 1
- Pull request event: 33
- Fork event: 16
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 4
- Total pull requests: 18
- Average time to close issues: over 1 year
- Average time to close pull requests: 8 days
- Total issue authors: 4
- Total pull request authors: 6
- Average comments per issue: 1.5
- Average comments per pull request: 0.11
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 2
- Pull requests: 18
- Average time to close issues: N/A
- Average time to close pull requests: 8 days
- Issue authors: 2
- Pull request authors: 6
- Average comments per issue: 0.0
- Average comments per pull request: 0.11
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- guest-oo (3)
- jeff-hykin (2)
- frapaoli (1)
- skazaniyk (1)
- MohammedUzairKhan (1)
- gerhardadler (1)
- TeoGoddet (1)
- lamin574 (1)
- profxavr (1)
- ZeArteaga (1)
- xqb-python (1)
- 4flixt (1)
- pswpswpsw (1)
- ArtemJDS (1)
- JoshuaAda (1)
Pull Request Authors
- Mrfeli01 (10)
- davidzanger (4)
- JoshuaAda (4)
- naskarsourjya (3)
- DeanBrandner (2)
- zhenwe1ma (1)
- bunkerhill (1)
- smjsadam (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 5,441 last-month
- Total dependent packages: 3
- Total dependent repositories: 11
- Total versions: 25
- Total maintainers: 1
pypi.org: do-mpc
- Homepage: https://www.do-mpc.com
- Documentation: https://do-mpc.readthedocs.io/
- License: GNU Lesser General Public License version 3
-
Latest release: 5.0.1
published 9 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v2 composite
- actions/setup-python v1 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite