El control predictivo basado en modelos ( MPC ) es un método avanzado de control de procesos que se utiliza para controlar un proceso cumpliendo un conjunto de restricciones. Los controladores predictivos basados en modelos se fundamentan en modelos dinámicos del proceso, generalmente modelos empíricos lineales obtenidos mediante la identificación del sistema . La principal ventaja del MPC radica en que permite optimizar el intervalo de tiempo actual, teniendo en cuenta los intervalos de tiempo futuros. Esto se logra optimizando un horizonte temporal finito, pero implementando únicamente el intervalo de tiempo actual y optimizándolo repetidamente, lo que lo diferencia de un regulador lineal-cuadrático ( LQR ). Además, el MPC tiene la capacidad de anticipar eventos futuros y tomar las medidas de control correspondientes. Los controladores PID no poseen esta capacidad predictiva. El MPC se implementa casi universalmente como un control digital , aunque se están realizando investigaciones para lograr tiempos de respuesta más rápidos con circuitos analógicos especialmente diseñados. [ 1 ]
Se ha utilizado en las industrias de procesos en plantas químicas y refinerías de petróleo desde la década de 1980. En los últimos años también se ha utilizado en modelos de balanceo de sistemas de potencia [ 2 ] y en electrónica de potencia [ 3 ] .
El control predictivo generalizado (GPC) y el control matricial dinámico (DMC) son ejemplos clásicos de MPC. [ 4 ] [ 5 ]
Descripción general

Los modelos utilizados en el control predictivo basado en modelos (MPC) generalmente están diseñados para representar el comportamiento de sistemas dinámicos complejos y simples . La complejidad adicional del algoritmo de control MPC no suele ser necesaria para proporcionar un control adecuado de sistemas simples, que a menudo se controlan bien con controladores PID genéricos . Algunas características dinámicas comunes que resultan difíciles para los controladores PID incluyen grandes retardos de tiempo y dinámicas de orden superior.
Los modelos MPC predicen el cambio en las variables dependientes del sistema modelado que será causado por cambios en las variables independientes . En un proceso químico, las variables independientes que el controlador puede ajustar suelen ser los puntos de consigna de los controladores PID reguladores (presión, caudal, temperatura, etc.) o el elemento de control final (válvulas, compuertas, etc.). Las variables independientes que el controlador no puede ajustar se utilizan como perturbaciones. Las variables dependientes en estos procesos son otras mediciones que representan objetivos de control o restricciones del proceso.
El MPC utiliza las mediciones actuales de la planta, el estado dinámico actual del proceso, los modelos MPC y los objetivos y límites de las variables del proceso para calcular los cambios futuros en las variables dependientes. Estos cambios se calculan para mantener las variables dependientes cerca del valor objetivo, respetando al mismo tiempo las restricciones tanto de las variables independientes como de las dependientes. El MPC generalmente solo envía el primer cambio de cada variable independiente que se debe implementar y repite el cálculo cuando se requiere el siguiente cambio.
Si bien muchos procesos reales no son lineales, a menudo pueden considerarse aproximadamente lineales en un rango de operación reducido. Los enfoques de control predictivo lineal (MPC) se utilizan en la mayoría de las aplicaciones, donde el mecanismo de retroalimentación del MPC compensa los errores de predicción debidos a la discrepancia estructural entre el modelo y el proceso. En los controladores predictivos basados únicamente en modelos lineales, el principio de superposición del álgebra lineal permite sumar el efecto de los cambios en múltiples variables independientes para predecir la respuesta de las variables dependientes. Esto simplifica el problema de control a una serie de cálculos directos de álgebra matricial, que son rápidos y robustos.
Cuando los modelos lineales no son suficientemente precisos para representar las no linealidades reales del proceso, se pueden utilizar diversos enfoques. En algunos casos, las variables del proceso se pueden transformar antes y/o después del modelo MPC lineal para reducir la no linealidad. El proceso se puede controlar con MPC no lineal, que utiliza un modelo no lineal directamente en la aplicación de control. El modelo no lineal puede ser un ajuste de datos empíricos (por ejemplo, redes neuronales artificiales) o un modelo dinámico de alta fidelidad basado en balances fundamentales de masa y energía. El modelo no lineal se puede linealizar para obtener un filtro de Kalman o especificar un modelo para MPC lineal.
Teoría detrás del MPC

MPC se basa en la optimización iterativa de horizonte finito de un modelo de planta. En el momentoSe toma una muestra del estado actual de la planta y se calcula una estrategia de control que minimiza los costos (mediante un algoritmo de minimización numérica) para un horizonte temporal relativamente corto en el futuro:Específicamente, se utiliza un cálculo en línea o sobre la marcha para explorar las trayectorias de estado que emanan del estado actual y encontrar (a través de la solución de las ecuaciones de Euler-Lagrange ) una estrategia de control que minimice el costo hasta el tiempo.Solo se implementa el primer paso de la estrategia de control; luego, se vuelve a muestrear el estado de la planta y se repiten los cálculos a partir del nuevo estado actual, lo que produce un nuevo control y una nueva trayectoria de estado predicha. El horizonte de predicción se desplaza continuamente hacia adelante, y por esta razón el MPC también se denomina control de horizonte deslizante . Si bien este enfoque no es óptimo, en la práctica ha dado muy buenos resultados. Se han realizado numerosas investigaciones académicas para encontrar métodos rápidos de solución de ecuaciones de tipo Euler-Lagrange, para comprender las propiedades de estabilidad global de la optimización local del MPC y, en general, para mejorar el método MPC. [ 6 ] [ 7 ]
Principios del MPC
El control predictivo basado en modelos es un algoritmo de control multivariable que utiliza:
- un modelo dinámico interno del proceso
- una función de coste J sobre el horizonte decreciente
- un algoritmo de optimización que minimiza la función de coste J utilizando la entrada de control u
Un ejemplo de función de coste cuadrática para optimización viene dado por:
sin violar las restricciones (límites bajos/altos) con
- :la variable controlada (por ejemplo, la temperatura medida)
- :la variable de referencia (por ejemplo, la temperatura requerida)
- :la variable manipulada (por ejemplo, válvula de control )
- : coeficiente de ponderación que refleja la importancia relativa de
- : coeficiente de ponderación que penaliza los cambios relativamente grandes en
etc.
MPC no lineal
El control predictivo de modelo no lineal, o NMPC, es una variante del control predictivo de modelo que se caracteriza por el uso de modelos de sistemas no lineales en la predicción. Al igual que en el MPC lineal, el NMPC requiere la solución iterativa de problemas de control óptimo en un horizonte de predicción finito. Si bien estos problemas son convexos en el MPC lineal, en el MPC no lineal ya no son necesariamente convexos. Esto plantea desafíos tanto para la teoría de estabilidad del NMPC como para su solución numérica. [ 8 ]
La solución numérica de los problemas de control óptimo NMPC se basa típicamente en métodos de control óptimo directo que utilizan esquemas de optimización de tipo Newton, en una de las variantes: métodos de disparo único directo , métodos de disparo múltiple directo o colocación directa . [ 9 ] Los algoritmos NMPC suelen explotar el hecho de que los problemas de control óptimo consecutivos son similares entre sí. Esto permite inicializar el procedimiento de solución de tipo Newton de manera eficiente mediante una estimación adecuadamente desplazada de la solución óptima calculada previamente, ahorrando cantidades considerables de tiempo de cálculo. La similitud de problemas subsiguientes se explota aún más mediante algoritmos de seguimiento de trayectoria (o "iteraciones en tiempo real") que nunca intentan iterar ningún problema de optimización hasta la convergencia, sino que solo toman unas pocas iteraciones hacia la solución del problema NMPC más actual, antes de proceder al siguiente, que está adecuadamente inicializado; véase, por ejemplo,... [ 10 ] Otro candidato prometedor para el problema de optimización no lineal es utilizar un método de optimización aleatorio. Las soluciones óptimas se encuentran generando muestras aleatorias que satisfacen las restricciones en el espacio de soluciones y encontrando la óptima en función de la función de costo. [ 11 ]
Si bien las aplicaciones de NMPC se han utilizado en el pasado principalmente en las industrias de procesos y químicas con tasas de muestreo relativamente lentas, NMPC se está aplicando cada vez más, con avances en el hardware del controlador y algoritmos computacionales, por ejemplo, preacondicionamiento , [ 12 ] a aplicaciones con altas tasas de muestreo, por ejemplo, en la industria automotriz, o incluso cuando los estados están distribuidos en el espacio ( sistemas de parámetros distribuidos ). [ 13 ] Como aplicación en el sector aeroespacial, recientemente, NMPC se ha utilizado para rastrear trayectorias óptimas de seguimiento/evitación del terreno en tiempo real. [ 14 ]
MPC explícito
El MPC explícito (eMPC) permite una evaluación rápida de la ley de control para algunos sistemas, en marcado contraste con el MPC en línea. El MPC explícito se basa en la técnica de programación paramétrica , donde la solución al problema de control MPC formulado como un problema de optimización se precalcula fuera de línea. [ 15 ] Esta solución fuera de línea, es decir, la ley de control, suele tener la forma de una función afín por partes (PWA), por lo que el controlador eMPC almacena los coeficientes de la PWA para cada subconjunto (región de control) del espacio de estados, donde la PWA es constante, así como los coeficientes de algunas representaciones paramétricas de todas las regiones. Cada región resulta ser geométricamente un politopo convexo para el MPC lineal, comúnmente parametrizado por coeficientes para sus caras, lo que requiere un análisis de precisión de cuantificación . [ 16 ] La obtención de la acción de control óptima se reduce entonces a determinar primero la región que contiene el estado actual y segundo una simple evaluación de la PWA utilizando los coeficientes de la PWA almacenados para todas las regiones. Si el número total de regiones es pequeño, la implementación del eMPC no requiere recursos computacionales significativos (en comparación con el MPC en línea) y es especialmente adecuado para sistemas de control con dinámica rápida. [ 17 ] Una desventaja importante del eMPC es el crecimiento exponencial del número total de regiones de control con respecto a algunos parámetros clave del sistema controlado, por ejemplo, el número de estados, lo que aumenta drásticamente los requisitos de memoria del controlador y hace que el primer paso de la evaluación PWA, es decir, la búsqueda de la región de control actual, sea computacionalmente costoso.
MPC robusto
Las variantes robustas del control predictivo basado en modelos (MPC) permiten tener en cuenta perturbaciones acotadas, garantizando al mismo tiempo el cumplimiento de las restricciones de estado. A continuación, se presentan algunos de los principales enfoques del MPC robusto.
- MPC min-max . En esta formulación, la optimización se realiza con respecto a todas las posibles evoluciones de la perturbación. [ 18 ] Esta es la solución óptima para problemas de control robusto lineal , sin embargo, conlleva un alto costo computacional. La idea básica detrás del enfoque MPC min/max es modificar la optimización "min" en línea a un problema "min-max", minimizando el peor caso de la función objetivo, maximizada sobre todas las plantas posibles del conjunto de incertidumbre. [ 19 ]
- MPC con restricción reforzada . Aquí, las restricciones de estado se amplían por un margen dado para que se pueda garantizar que se encuentre una trayectoria bajo cualquier evolución de la perturbación. [ 20 ]
- MPC de tubo . Este utiliza un modelo nominal independiente del sistema y un controlador de retroalimentación para asegurar que el estado real converja al estado nominal. [ 21 ] La cantidad de separación requerida de las restricciones de estado está determinada por el conjunto robusto positivamente invariante (RPI), que es el conjunto de todas las posibles desviaciones de estado que pueden ser introducidas por perturbaciones con el controlador de retroalimentación.
- MPC multietapa . Este método utiliza una formulación de árbol de escenarios, aproximando el espacio de incertidumbre con un conjunto de muestras. El enfoque no es conservador, ya que considera que la información de medición está disponible en cada etapa de la predicción y que las decisiones en cada etapa pueden ser diferentes y servir como recurso para contrarrestar los efectos de las incertidumbres. Sin embargo, la desventaja de este enfoque es que el tamaño del problema crece exponencialmente con el número de incertidumbres y el horizonte de predicción. [ 22 ] [ 23 ]
- MPC multietapa mejorado con tubo . Este enfoque combina el MPC multietapa y el MPC basado en tubo. Proporciona un alto grado de libertad para elegir el equilibrio deseado entre optimización y simplicidad mediante la clasificación de incertidumbres y la selección de leyes de control en las predicciones. [ 24 ] [ 25 ]
Software MPC
Existen paquetes comerciales de MPC que suelen incluir herramientas para la identificación y el análisis de modelos , el diseño y la sintonización de controladores, así como la evaluación de su rendimiento. SJ Qin y TA Badgwell realizaron un análisis de los paquetes disponibles comercialmente en Control Engineering Practice 11 (2003) 733–764.
Entre los paquetes de software de código abierto disponibles gratuitamente para el control predictivo de modelos (no lineales) se incluyen, entre otros:
- Rockit (kit de control óptimo rápido): un marco de software para prototipar rápidamente problemas de control óptimo.
- acados : un marco de software que proporciona solucionadores rápidos e integrados para el control óptimo no lineal.
- GRAMPC : un marco de control predictivo no lineal adecuado para sistemas dinámicos con tiempos de muestreo en el rango de (sub)milisegundos y que permite una implementación eficiente en hardware embebido.
- CControl : una biblioteca de álgebra lineal para ingeniería de control con MPC y filtrado de Kalman para microcontroladores integrados y de bajo coste.
MPC contra LQR
El control predictivo basado en modelos y los reguladores lineales-cuadráticos son ambos expresiones de control óptimo, con diferentes esquemas para establecer los costos de optimización.
Mientras que un controlador predictivo basado en modelos suele analizar conjuntos de funciones de error de longitud fija y con ponderación gradual, el regulador lineal-cuadrático analiza todas las entradas lineales del sistema y proporciona la función de transferencia que reducirá el error total en todo el espectro de frecuencias, equilibrando el error de estado con la frecuencia de entrada.
Debido a estas diferencias fundamentales, LQR tiene mejores propiedades de estabilidad global, pero MPC a menudo tiene un rendimiento más localmente óptimo[?] y complejo.
Las principales diferencias entre MPC y LQR son que LQR optimiza en todo el intervalo de tiempo (horizonte), mientras que MPC optimiza en un intervalo de tiempo que se reduce [ 4 ] , y que con MPC se calcula una nueva solución con frecuencia, mientras que LQR utiliza la misma solución (óptima) durante todo el horizonte de tiempo. Por lo tanto, MPC suele resolver el problema de optimización en un intervalo de tiempo menor que el horizonte completo y, por consiguiente, puede obtener una solución subóptima. Sin embargo, dado que MPC no hace suposiciones sobre la linealidad, puede manejar restricciones estrictas, así como la migración de un sistema no lineal fuera de su punto de operación linealizado, dos desventajas importantes de LQR.
Esto significa que el método LQR puede debilitarse al operar lejos de puntos fijos estables. El MPC puede trazar una ruta entre estos puntos fijos, pero la convergencia de la solución no está garantizada, especialmente si se ha descuidado la consideración de la convexidad y la complejidad del espacio del problema.
Véase también
Referencias
- ↑ Vichik, Sergey; Borrelli, Francesco (2014). "Resolución de programas lineales y cuadráticos con un circuito analógico" . Computers & Chemical Engineering . 70 : 160–171 . doi : 10.1016/j.compchemeng.2014.01.011 .
- ↑ Arnold, Michèle; Andersson, Göran; "Control predictivo basado en modelos de almacenamiento de energía, incluyendo pronósticos inciertos" https://www.pscc-central.org/uploads/tx_ethpublications/fp292.pdf
- ↑ Geyer, Tobias; Control predictivo de modelos de convertidores de alta potencia y accionamientos industriales , Wiley, Londres, ISBN 978-1-119-01090-6Noviembre de 2016.
- 1 2 Wang, Liuping (2009). Diseño e implementación de sistemas de control predictivo de modelos utilizando MATLAB® . Springer Science & Business Media. pág. xii.
- ↑ Morari, Manfred (2025). "Control predictivo basado en modelos: la génesis de una idea [Historias del control]". IEEE Control Systems . 45 (4): 86– 88. doi : 10.1109/MCS.2025.3573842 . ISSN 1066-033X .
- ↑ Nikolaou, Michael; "Controladores predictivos basados en modelos: una síntesis crítica de la teoría y las necesidades industriales", Advances in Chemical Engineering , volumen 26, Academic Press, 2001, páginas 131-204
- ↑ Berberich, Julian; Kohler, Johannes; Muller, Matthias A.; Allgöwer, Frank (2022). "Control predictivo de seguimiento lineal para sistemas no lineales: Parte I: El caso basado en modelos". IEEE Transactions on Automatic Control . 67 (9): 4390– 4405. arXiv : 2105.08560 . Bibcode : 2022ITAC...67.4390B . doi : 10.1109/TAC.2022.3166872 . ISSN 0018-9286 . S2CID 234763155 .
- ↑ Una excelente visión general del estado del arte (en 2008) se ofrece en las actas de los dos grandes talleres internacionales sobre NMPC, por Zheng y Allgöwer (2000) y por Findeisen, Allgöwer y Biegler (2006).
- ↑ Hedengren, John D.; Asgharzadeh Shishavan, Reza; Powell, Kody M.; Edgar, Thomas F. (2014). "Modelado no lineal, estimación y control predictivo en APMonitor" . Computers & Chemical Engineering . 70 (5): 133– 148. doi : 10.1016/j.compchemeng.2014.04.013 . S2CID 5793446 .
- ↑ Ohtsuka, Toshiyuki (2004). "Un método de continuación/GMRES para el cálculo rápido del control de horizonte deslizante no lineal". Automatica . 40 (4): 563– 574. doi : 10.1016/j.automatica.2003.11.005 .
- ↑ Muraleedharan, Arun (2022). "Implementación en tiempo real del control predictivo de modelo aleatorio para la conducción autónoma" . IEEE Transactions on Intelligent Vehicles . 7 (1): 11– 20. Bibcode : 2022ITIV....7...11M . doi : 10.1109/TIV.2021.3062730 . S2CID 233804176 .
- ↑ Knyazev, Andrew; Malyshev, Alexander (2016). "Preacondicionamiento disperso para el control predictivo basado en modelos". 2016 American Control Conference (ACC) . pp. 4494–4499 . arXiv : 1512.00375 . doi : 10.1109/ACC.2016.7526060 . ISBN 978-1-4673-8682-1. S2CID 2077492 .
- ↑ García, Míriam R.; Vilas, Carlos; Santos, Lino O.; Alonso, Antonio A. (2012). "Un robusto controlador predictivo multimodelo para sistemas de parámetros distribuidos" (PDF) . Revista de Control de Procesos . 22 (1): 60– 71. doi : 10.1016/j.jprocont.2011.10.008 . hdl : 10261/45364 .
- ↑ Kamyar, Reza; Taheri, Ehsan (2014). "Planificación y control de trayectorias óptimas de aeronaves basadas en terreno/amenazas". Journal of Guidance, Control, and Dynamics . 37 (2): 466– 483. Bibcode : 2014JGCD...37..466K . doi : 10.2514/1.61339 .
- ↑ Bemporad, Alberto; Morari, Manfred; Dua, Vivek; Pistikopoulos, Efstratios N. (2002). "El regulador lineal cuadrático explícito para sistemas restringidos". Automatica . 38 (1): 3– 20. doi : 10.1016/s0005-1098(01)00174-1 .
- ↑ Knyazev, Andrew; Zhu, Peizhen; Di Cairano, Stefano (2015). "Análisis de la precisión del control predictivo explícito basado en modelos". 54.ª Conferencia IEEE sobre Decisión y Control (CDC) de 2015. págs. 2389–2394 . arXiv : 1509.02840 . Bibcode : 2015arXiv150902840K . doi : 10.1109/CDC.2015.7402565 . ISBN 978-1-4799-7886-1. S2CID 6850073 .
- ↑ Klaučo, Martin; Kalúz, Martin; Kvasnica, Michal (2017). "Implementación en tiempo real de un gobernador de referencia explícito basado en MPC para el control de un sistema de levitación magnética". Control Engineering Practice . 60 : 99–105 . doi : 10.1016/j.conengprac.2017.01.001 .
- ↑ Scokaert, Pierre OM; Mayne, David Q. (1998). "Control predictivo de modelo con retroalimentación min-max para sistemas lineales restringidos". IEEE Transactions on Automatic Control . 43 (8): 1136– 1142. doi : 10.1109/9.704989 .
- ↑ Nevistić, Vesna; Morari, Manfred (1996-06-01). "Robustez de esquemas basados en MPC para el control restringido de sistemas no lineales" . IFAC Proceedings Volumes . 29 (1): 5823– 5828. doi : 10.1016/S1474-6670(17)58612-7 . ISSN 1474-6670 .
- ↑ Richards, Arthur G.; How, Jonathan P. (2006). "Control predictivo de modelo estable robusto con ajuste de restricciones". Actas de la Conferencia Americana de Control .
- ^ Langson, Wilbur; Crisocoos, Ioannis; Raković, Saša V.; Mayne, David Q. (2004). "Control predictivo de modelo robusto mediante tubos". Automática . 40 (1): 125– 133. doi : 10.1016/j.automatica.2003.08.009 .
- ↑ Lucia, Sergio; Finkler, Tiago; Engell, Sebastian (2013). "Control predictivo de modelo no lineal multietapa aplicado a un reactor de polimerización semicontinuo bajo incertidumbre". Journal of Process Control . 23 (9): 1306– 1319. doi : 10.1016/j.jprocont.2013.08.008 .
- ↑ Lucia, Sergio; Subramanian, Sankaranarayanan; Limon, Daniel; Engell, Sebastian (2020). "Propiedades de estabilidad del control predictivo de modelo no lineal multietapa". Systems & Control Letters . 143 (9) 104743. doi : 10.1016/j.sysconle.2020.104743 . S2CID 225341650 .
- ↑ Subramanian, Sankaranarayanan; Lucia, Sergio; Paulen, Radoslav; Engell, Sebastian (2021). "Control predictivo de modelo multietapa mejorado con tubos para un control robusto flexible de sistemas lineales restringidos". International Journal of Robust and Nonlinear Control . 31 (9): 4458– 4487. arXiv : 2012.14848 . doi : 10.1002/rnc.5486 . S2CID 234354708 .
- ↑ Subramanian, Sankaranarayanan; Abdelsalam, Yehia; Lucia, Sergio; Engell, Sebastian (2022). "NMPC multietapa robusto mejorado con tubos con garantías de estabilidad". IEEE Control Systems Letters . 6 : 1112–1117 . Bibcode : 2022ICSL....6.1112S . doi : 10.1109/LCSYS.2021.3089502 . S2CID 235799791 .
Lecturas adicionales
- Kwon, Wook Hyun; Bruckstein, Alfred M.; Kailath, Thomas (1983). "Estabilización del diseño de retroalimentación de estado mediante el método del horizonte móvil". International Journal of Control . 37 (3): 631– 643. doi : 10.1080/00207178308932998 .
- García, Carlos E.; Prett, David M.; Morari, Manfred (1989). "Modelo de control predictivo: teoría y práctica". Automática . 25 (3): 335– 348. doi : 10.1016/0005-1098(89)90002-2 .
- Findeisen, Rolf; Allgöwer, Frank (2001). "Una introducción al control predictivo de modelos no lineales". Escuela de verano sobre "El impacto de la optimización en el control", Instituto holandés de sistemas y control, CW Scherer y JM Schumacher, editores : 3.1 – 3.45 .
- Mayne, David Q.; Michalska, Hannah (1990). "Control de horizonte deslizante de sistemas no lineales". IEEE Transactions on Automatic Control . 35 (7): 814– 824. doi : 10.1109/9.57020 .
- Mayne, David Q.; Rawlings, James B.; Rao, Christopher V.; Scokaert, Pierre OM (2000). "Control predictivo de modelo restringido: estabilidad y optimalidad". Automatica . 36 (6): 789– 814. doi : 10.1016/S0005-1098(99)00214-9 .
- Allgöwer, Frank; Zheng, Alex, eds. (2000). Control predictivo de modelos no lineales . Progress in Systems Theory. Vol. 26. Birkhauser.
- Camacho; Bordones (2004). Control predictivo del modelo . Springer Verlag.
- Findeisen, Rolf; Allgöwer, Frank; Biegler, Lorenz T. (2006). Evaluación y direcciones futuras del control predictivo de modelos no lineales . Lecture Notes in Control and Information Sciences. Vol. 26. Springer.
- Diehl, Moritz M.; Bock, H. Georg; Schlöder, Johannes P.; Findeisen, Rolf; Nagy, Zoltan; Allgöwer, Frank (2002). "Optimización en tiempo real y control predictivo de modelos no lineales de procesos gobernados por ecuaciones diferenciales-algebraicas" . Journal of Process Control . 12 (4): 577– 585. doi : 10.1016/S0959-1524(01)00023-3 .
- Rawlings, James B.; Mayne, David Q.; y Diehl, Moritz M.; Control predictivo basado en modelos: teoría, computación y diseño (2.ª ed.), Nob Hill Publishing, LLC, ISBN 978-0975937730(Octubre de 2017)
- Geyer, Tobias; Control predictivo de modelos de convertidores de alta potencia y accionamientos industriales , Wiley, Londres, ISBN 978-1-119-01090-6Noviembre de 2016
Enlaces externos
- Caso práctico . Planta de tratamiento de aguas residuales de Lancaster: optimización mediante control predictivo basado en modelos de Perceptive Engineering.
- acados - Marco de código abierto para control predictivo de modelos (no lineales) que proporciona solucionadores rápidos e integrados para optimización no lineal. (Interfaz disponible en C, MATLAB y Python)
- μ AO-MPC : paquete de software de código abierto que genera código a medida para controladores predictivos de modelos en sistemas embebidos en código C altamente portable.
- GRAMPC : Marco de software de código abierto para el control predictivo de modelos no lineales embebidos mediante un método lagrangiano aumentado basado en gradientes. (Código C simple, sin generación de código, interfaz MATLAB).
- jMPC Toolbox - Caja de herramientas de MATLAB de código abierto para MPC lineal.
- Estudio sobre la aplicación de NMPC a la criogenia superfluídica (proyecto de doctorado).
- Caja de herramientas de control predictivo de modelos no lineales para MATLAB y Python
- Caja de herramientas de control predictivo basado en modelos de MathWorks para el diseño y la simulación de controladores predictivos basados en modelos en MATLAB y Simulink.
- Controlador predictivo de modelo de paso de pulso - simulador virtual
- Tutorial sobre MPC con ejemplos de Excel y MATLAB
- GEKKO: Control predictivo basado en modelos en Python
- Teoría de control