MPC constraints are still being violated despite hardening constraints

5 vues (au cours des 30 derniers jours)
Gabrielle Simms
Gabrielle Simms le 18 Mai 2022
Hello everyone!
I have a MPC controller where I have set the initial constraints using the 'setcontraints' command, however, I would like to update these constraints during runtime. Thus, I set the 'CustomConstraint' property of an mpcmoveopt object to my new E,F and G values. My run-time constraints are still being HEAVILY violated.
I've tried hardening the constraint by defining V to be between 0 and 0.1 in the 'setconstraints' command (which is outside my control loop) which didn't work. I am not sure if there is another way to harden these mixed I/O constraints. Please help.

Réponses (1)

Aishwarya
Aishwarya le 7 Fév 2024
Hi Gabrielle,
From what I understand, you are looking to implement mixed input/output constraints for MPC Controller during run time, while ensuring that these constraints are not violated.
Here are some suggestions to help resolve the issue:
  • Ensure that the constraints are consistent with the plant model and the control objectives.
  • As the outputs are predicted using the model, it is possible that the constraints won't be satisfied if the model is imperfect.
  • It is advisable to avoid setting Output Variable (OV) bounds unless they are critical for your application. Instead, you can define an OV reference and adjust the associated cost function weight to maintain the OV near its target value.
  • If greater flexibility in constraint specification is required, consider switching to a Non-Linear MPC Controller, which can accommodate a broader range of constraint scenarios.
If you need additional information, please refer to the following documentation:
I hope this information is helpful!
Best Regards,
Aishwarya

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by