화학공학소재연구정보센터
Computers & Chemical Engineering, Vol.92, 93-111, 2016
Framework in PYOMO for the assessment and implementation of (as)NMPC controllers
Model predictive control (MPC) is an advanced control strategy that has a growing interest for research and applications because of its good performance in many kind of processes and its ability to handle constraints, perform optimization, and consider economic aspects and nonlinearities of the process. However, its design, evaluation and implementation require a high level of expertise which might restrict the developments in this area. This paper presents a software framework developed in Pyomo, a mathematical modelling language embedded in Python, for the assessment and implementation of ideal nonlinear MPC and advanced step nonlinear MPC. The framework automates many of the aspects of MPC defining new classes in Pyomo for ideal NMPC (iNMPC) and advanced step NMPC (asNMPC). The user only has to define the prediction model of the process using new classes for manipulated variables, disturbances and initial conditions, and the real plant function to access to the states of the process in a similar way of other algebraic modelling languages. The model discretizaion, controller set-up, receding horizon and solution are done automatically. Three examples are presented in detail for explaining the use and advantages of the framework to evaluate iNMPC and asNMPC controllers. The software is freely available upon request and in the future it is expected to be an official extension of Pyomo. (C) 2016 Elsevier Ltd. All rights reserved.