QP formulation from the MPC toolbox
19 views (last 30 days)
Show older comments
Elias Prytz
on 20 Oct 2023
Commented: Emmanouil Tzorakoleftherakis
on 29 May 2024
Hi,
I am studying different QP solvers (e.g. qpOASES, OSQP, DAQP and Gurobi) for a project I am doing at my university. I want to test their capabilites in MPC. I have tested them in the aircraft example and gotten some reasonable results, but now I wonder which QP formulation Matlab's mpc generates.
Does it create some sort of reduced-space condensed QP based on the state-space model? I am guessing this is the case because the hessian (H) of the objective function is only 11x11 for the MPC example mentioned above, with a horizon of 50 (4 states and 2 inputs).
I am guessing that it is not some sort of step-response model formulation (not for the aircraft model at least) because the model has unstable poles.
Does anyone have insights into this?
Thanks
0 Comments
Accepted Answer
Emmanouil Tzorakoleftherakis
on 23 Oct 2023
Edited: Emmanouil Tzorakoleftherakis
on 23 Oct 2023
We are currently using the dense formula as you mentioned, but also working on adding support for sparse problems. The following two links may be helpful:
3 Comments
Muhammad
on 29 May 2024
Edited: Muhammad
on 29 May 2024
I hope you're doing well. I have one confusion, I designed MPC controller using mpcobj and Simulink MPC Toolbox, I didn't put any constrainst to my MPC controller keeping all the values as default inf,-inf.. Its work well but now my professor asked me one question does your unconstrained MPC uses QP solver or not? If not then what kind of solver matlab/simulink is using for unconstrained mpc?
I checked with mpcobj.Optimizer (without constraint and with constraints its give me same response)
Algorithm: 'active-set'
ActiveSetOptions: [1×1 struct]
InteriorPointOptions: [1×1 struct]
MixedIntegerOptions: [1×1 struct]
MinOutputECR: 0
UseSuboptimalSolution: 0
CustomSolver: 0
CustomSolverCodeGen: 0
More Answers (0)
See Also
Categories
Find more on Refinement in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!