StandardDeterministic MPC high-gain approaches are less efficient for problems involving long-term consequences of uncertainties and where the problem itself is not a simple regulation or tracking problem. This is the case in particular when the control task is to optimize some economic cost under constraints for which the outcome of the closed-loop operation can only be evaluated on the long term. This is the reason why Model Predictive Control (MPC)Model Predictive Control is described in detail in this chapter together with a dedicated freely available Python package MPC_solver. The MPC setting studied in this chapter is deterministic as this setting needs to be mastered before any uncertainty-related extra complication is added. The proposed implementation is based onCasadi the Casadi Python framework which is used to implement two options for the solver, namely: the widely used interior-pointInterior-point algorithm IPOPT and a hand-made version of the fast-gradient algorithm that uses the exact differentiation utility providedCasadi inside . The intention of this chapter is not to cover all possible available optimizationOptimization frameworks that are developed by a very dynamic research community. Rather, its intention is to give the interested reader a comprehension of the ingredients and keywords that are involved in any MPC problem statement together with a single meticulously introduced option that might be helpful for the reader to make his/her own way to other possible solvers and frameworks such as Pyomo [1] and Geckko [2] to cite but two alternatives that are not detailed in this book. Beyond familiarizing the reader with the ingredients and keywords of MPC, this chapter also underlines the very important topic of real-timeReal-time implementation of MPC through the examination of the change in the computation time and hence in the implementability of the resulting controller when some options, used in the implementation, are tuned. This smoothly prepare the reader to address the real-timeReal-time issue in much more details in Chap. 6 .

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Solving Deterministic Model Predictive Control Problems

  • Mazen Alamir

摘要

StandardDeterministic MPC high-gain approaches are less efficient for problems involving long-term consequences of uncertainties and where the problem itself is not a simple regulation or tracking problem. This is the case in particular when the control task is to optimize some economic cost under constraints for which the outcome of the closed-loop operation can only be evaluated on the long term. This is the reason why Model Predictive Control (MPC)Model Predictive Control is described in detail in this chapter together with a dedicated freely available Python package MPC_solver. The MPC setting studied in this chapter is deterministic as this setting needs to be mastered before any uncertainty-related extra complication is added. The proposed implementation is based onCasadi the Casadi Python framework which is used to implement two options for the solver, namely: the widely used interior-pointInterior-point algorithm IPOPT and a hand-made version of the fast-gradient algorithm that uses the exact differentiation utility providedCasadi inside . The intention of this chapter is not to cover all possible available optimizationOptimization frameworks that are developed by a very dynamic research community. Rather, its intention is to give the interested reader a comprehension of the ingredients and keywords that are involved in any MPC problem statement together with a single meticulously introduced option that might be helpful for the reader to make his/her own way to other possible solvers and frameworks such as Pyomo [1] and Geckko [2] to cite but two alternatives that are not detailed in this book. Beyond familiarizing the reader with the ingredients and keywords of MPC, this chapter also underlines the very important topic of real-timeReal-time implementation of MPC through the examination of the change in the computation time and hence in the implementability of the resulting controller when some options, used in the implementation, are tuned. This smoothly prepare the reader to address the real-timeReal-time issue in much more details in Chap. 6 .