Paper Reproduction#

Reproduction scripts are provided to validate our implementations by comparing them with the results presented in the referenced papers.

Data-Driven MPC for LTI systems#

The reproduction is implemented in robust_lti_dd_mpc_reproduction.py. This script closely follows the example presented in Section V of [1], which demonstrates various Robust Data-Driven MPC controller schemes applied to a four-tank system model.

To run the script, execute the following command:

python examples/lti_control/robust_lti_dd_mpc_reproduction.py

Data-Driven MPC for Nonlinear systems#

The reproduction is included in the example script nonlinear_dd_mpc_example.py, which closely follows the example presented in Section V of [2] for the control of a nonlinear continuous stirred tank reactor (CSTR) system.

To run the script, execute the following command:

python examples/nonlinear_control/nonlinear_dd_mpc_example.py --seed 0

The figures below show the expected output from executing these scripts. The graphs from our results closely resemble those shown in Fig. 2 of [1] and Fig. 2 of [2], with minor differences due to randomization.

Robust Data-Driven MPC Animation Nonlinear Data-Driven MPC Animation

Reproduction of results from [1]

Reproduction of results from [2]

References#

See the full citations of the reference papers in the Citation section.