Optimization of dynamic systems

— Overview —

What is MoBA MUSCOD?

MoBA MUSCOD is a tool for the numerical solving of optimal control problems. Highly specialized and efficient algorithms are used. System models from different modeling environments can be integrated via the standardized model exchange format FMI.

Many engineering questions can be formulated as mathematical optimization problems

Many engineering questions can be formulated as mathematical optimization problems. If the dynamic behavior of the system under investigation cannot be neglected, then we are dealing with the class of optimal control problems. Optimization goals can be, for example, the highest possible energy efficiency or the lowest possible operating costs. The degrees of freedom of optimization are the paths of the control variables. Compared to static optimization problems, the complexity of this dynamic assessment increases significantly. In order to successfully solve real problems, highly specialized numerical optimization algorithms are required. MoBA MUSCOD is based on the software package MUSCOD-II, which has been developed by the group around Prof. Bock at the University of Heidelberg for more than 20 years.

In optimization projects, the modeling of the system under consideration is often the greatest effort

In optimization projects, the modeling of the system under consideration is often the greatest effort Only through the repeated interpretation of optimization results and the model changes derived from them can reliable results be produced. MoBA MUSCOD integrates into the familiar working environment of engineers. The system model can be developed in well-established modeling environments such as Simulink, Dymola or SimulationX. Via the standardized Functional Mock-up Interface, the model can be imported into MoBA MUSCOD and used for optimization. The results can then be exported in various formats and allow post-processing in the original modeling environment.

— Examples —

Various practical application examples

The possibilities of MoBA MUSCOD are best be illustrated by concrete examples. In the following, optimization applications for different dynamic systems are described. Contact us if you want to find out whether your application can be optimized with MoBA MUSCOD.

Dynamic System

Hot coffee (90°C) straight from the machine and cold milk (5°C) from the refrigerator. Both exchange heat with the environment (20°C). The manipulated variable is the mass flow of the cold milk poured into the coffee.

Optimal Control Problem

The coffee is to be drunk in 10 minutes, and should then still be as hot as possible. There should also be a certain amount of milk in the coffee. How should I pour the milk into the coffee?


With a time discretization of the manipulated variable in 200 intervals, the shown optimal course of the coffee temperature and the milk mass flow is obtained. As comparison, two non-optimal alternatives are also shown: pouring in the milk as early as possible or as late as possible.

Dynamic System

To pass on the waste heat of an internal combustion engine to the environment and to the vehicle interior for heating, a water/glycol circuit is used. All thermal capacities (components and liquid) are initialized at ambient temperature (20 °C). The waste heat flow of the combustion engine is imposed, in this case from a 10-minute uphill drive with a correspondingly high load. Manipulated variables are the valve opening, the pump speed and the fan speed.

Optimal Control Problem

The fluid temperature at the outlet of the cylinder block should be kept as close as possible to the set point of 90 °C. From a control engineering point of view, this is an under-determined system, since 3 manipulated variables are available for one controlled variable. The additional degrees of freedom should be used to keep the electrical energy requirement of the pump and fan as low as possible over the considered time period.

Gräber, M., Fritzsche, J. and Tegethoff, W., From system model to optimal control - A tool chain for the efficient solution of optimal control problems, Proceedings of the 12th International Modelica Conference, Prague, Czech Republic, May 15-17, Issue 132, 249-254, (2017)


For the scenario described above, the optimum course of the manipulated variables is shown. As a comparison, a non-optimal reference control with PI controllers is shown in all diagrams.

The optimum control system better fulfils the primary control objective: The fluid temperature reaches the setpoint earlier and shows no overshoot. This also applies to the secondary control objective, minimum energy consumption, the optimal control is much better. Above all, the energy requirement of the fan can be significantly reduced. In total, almost 20% less electrical energy is consumed.

With MoBA MUSCOD, optimization results of this kind can be calculated for various scenarios. These results can be used as a reference for existing control concepts or to find heuristic (almost optimal) control laws.

Dynamic System

The fermentation of penicillin takes place in a semi-batch reactor. During the process, the substrate supplied is converted into biomass, from which penicillin is then produced. The model used here was published by Visser et al (2000).

Visser, E., Srinivasan B, Palanki S. and Bonvin D., A feedback-based implementation scheme for batch process optimization. Journal of Process Control, Vol.10, 399-410, (2000).

Optimal Control Problem

The production time is fixed at 150h. At the end time (t=150h) the produced penicillin concentration should be maximum. The respective upper limits of the biomass concentration of 40 g/l and the substrate concentration of 0.5 g/l must be ensured. The supplied volume flow is the manipulated variable and thus a degree of freedom for optimization.


For the reactor described above, the shown optimum course of the manipulated variable results.

Optimal control results in a maximum penicillin concentration at the final point in time, while respecting the upper limits for the concentrations of substrate and biomass.

With MoBA MUSCOD it is possible to determine the optimal feed of semi-batch processes to optimize used recipes. Furthermore, it is also possible to determine the optimal heating and cooling strategy for batch as well as semi-batch processes. Instead of using the results of MoBA MUSCOD as a controller, it is possible to integrate the optimizer into a controller structure as an economic non-linear model-predictive controller (eNMPC).

— Documentation —

Documentation of MoBA MUSCOD

A documentation with tutorials and a description of the Pythons package can be found on an extra page.

To the documentation

— Other software products —

You can find additional software products on the website of our partner company TLK-Thermo .
We will be happy to advise you on this as well.

Please contact us.
We are looking forward to your inquiry.

Do you have any questions about our products or services? Do you want to learn more about how TLK Energy can support your project? We are happy to answer your questions at any time. Feel free to contact us via phone or e-mail.


Heinrichsallee 41
52062 Aachen

Phone, E-Mail & Web

phone. +49 241 412 50 645

Newsletter and LinkedIn

Stay informed. Subscribe to our newsletter and follow us on LinkedIn.

Newsletter LinkedIn