how to improve a model predictive control in order to get a lower cost function for the system?

2 views (last 30 days)
Hello everyone,
I have implemented a model predictive control using a plant model (which has some disturbance in it), then I run the model and I got the cost function(figure2) equal to 8, and the inputs and ouptuts as shown in figure 3, and figure 4 shows the performance of the test which looks good, and the last figure include the parameters of the model, and my first question is how can I improve the model (by lowering the cost function)? could it be by changing the state estimation? or something.
and for the parameters of the simulink, they are as follow: constraints for the input and output, Nc, Np and sampling time.

Accepted Answer

Emmanouil Tzorakoleftherakis
You basically want to get a more aggressive response if I understand correctly, meaning that your outputs will converge faster to the desired values. First thing to try is increase the cost weights on these particular states.
  5 Comments
jana nassereddine
jana nassereddine on 4 May 2023
but the question is how? I just looked through the MPC and The plant model, and there is nothing that indicate that I can change the initial values of the states or other, and thank you a lot for your help
jana nassereddine
jana nassereddine on 5 May 2023
Hey again,
I just tried to apply different scale factors, and I got differents results for the cost function,but why does a scaler factor affect a cost function?
so first the cost function was 8,5*10^(24), then it was 4.5*10^5,
and I tried to change the optimal value for the input and the ouput, but I got higher cost function, except when the optimal value are 0 or 1, the cost was 4.5*10^5, as before, so why was the cost function better when the optimal value were 0 or 1?
and my last question is about the cost function: I have an article where they got the results about the cost function and they put it in a table indicating the cost function as 8,... and the cost function that I got was 8,5*10^25, so is it the same? I will upload a figure explaining, but the figue is 4.5 10^5, instead of 8.5*10^25, so what do you think?

Sign in to comment.

More Answers (0)

Categories

Find more on Model Predictive Control Toolbox in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!