Setting initial conditions in MPC

25 views (last 30 days)
Mohit Punasiya
Mohit Punasiya on 17 May 2023
Commented: 曜星 on 21 Nov 2023
Hello,
I am using Adaptive Model Predictive Controller (MPC) to track the reference trajectory. While MPC is tracking the given reference it has to catchup from zero, is there any way I can set starting of output values to a nominal value (which wouldn't take much time to catchup). Can you suggest me what can be done about it.
pic 1 : Tracking starting from zero,
pic2 : tracking starting from nominal expected mid point
Here are few things that I have tried doing,
As I am using AMPC ( Adaptive Model Predictive Controller) block , I have set block parameter intial controller state to a nominal mpcstate object, though I still don't see starting from initial estimated point. here you can see what I mean,
pic3 : AMPC block parameter (mpcstateobj )
Can you suggest what can be done, any reference would be great help.
thanks
  1 Comment
Camilo Mahnert Cataldo
Camilo Mahnert Cataldo on 21 Nov 2023
Hi I have the same questions. Exist to solution for this problem? Thank you.

Sign in to comment.

Answers (1)

Emmanouil Tzorakoleftherakis
To get the behavior you mentioned, the initial states of your plant and controller must be the same. If the initial conditions for your system do not match, you can set the initial states of the controller to the plant initial states.
Here, it seems to me that you are setting the controller state properly, but your Simulink model does not have the proper initial conditions. I would check the Simulink model to make sure that it has the same IC as the MPC controller.
  2 Comments
Camilo Mahnert Cataldo
Camilo Mahnert Cataldo on 21 Nov 2023
Hi, but. How adjust the initial condition in Simulink? That is a really problem for mi.
曜星
曜星 on 21 Nov 2023
oh, i do have the same problem. how to set the startpoint.help me please

Sign in to comment.

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!