# APMonitor

APMonitor o Advanced process monitor és un llenguatge de modelització d'equacions diferencials algebraiques (EDA). És un servei web gratuït per a resoldre representacions de sistemes físics en forma de models EDA implícits. APMontir està indicat per problemes de gran escala i permet solucions de programació lineal, programació entera, programació no lineal, programació no lineal entera mixta, simulació dinàmica, estimació d'horitzó movent, i control no lineal. APMonitor no resol pas els problemes directament, sinó que crida solvers de programació lineal tals com APOPT, BPOPT, IPOPT, MINOS i SNOPT. L'API d'APMonitor passa les primeres i segons derivades exactes de funcions contínues als solvers per mitjà de diferenciació automàtica i en forma de matriu dispersa.

## Integració del llenguatge de programació

Julia, MATLAB i Python són llenguatges de programació matemàtics que tenen integració d'APMonitor a través d'APIs de servei web. El GEKKO Optimization Suite és una extensió recent d'APMonitor amb integració completa de Python. Les interfícies estan integrades en mòduls d'optimització per carregar i processar solucions de problemes d'optimització. APMonitor és un llenguatge de modelització orientada a objectes i suite d'optimització que es basa en llenguatges de programació per carregar, executar i recuperar solucions. Els models i les dades d'APMonitor es compilen en temps d'execució i es tradueixen en objectes que es resolen mitjançant un motor d'optimització com ara APOPT o IPOPT. APMonitor no especifica el motor d'optimització, que permet canviar diversos motors d'optimització. El mode de simulació o d'optimització també es pot configurar per configurar el model de simulació dinàmica, control predictiu per model no lineal, estimació d'horitzó movent o problemes generals en optimització matemàtica.
Com a primer pas per resoldre el problema, s'expressa un model matemàtic en termes de variables i equacions com el problema de referència Hock & Schittkowski # 71 utilitzat per provar el rendiment de solucionadors de programació no lineal. Aquest problema d'optimització en particular té una funció objectiva $\min _{x\in \mathbb {R} }\;x_{1}x_{4}(x_{1}+x_{2}+x_{3})+x_{3}$ i subjecte a la restricció de desigualtat $x_{1}x_{2}x_{3}x_{4}\geq 25$ i restricció d'igualtat ${x_{1}}^{2}+{x_{2}}^{2}+{x_{3}}^{2}+{x_{4}}^{2}=40$. Les quatre variables han d'estar entre un límit inferior d'1 i un límit superior de 5. Els valors inicials són $x_{1}=1,x_{2}=5,x_{3}=5,x_{4}=1$.

## Referències

* ↑ J.D. Hedengren; R. Asgharzadeh Shishavan, K.M. Powell, T.F. Edgar «Nonlinear modeling, estimation and predictive control in APMonitor». Computers & Chemical Engineering, 70, 5, 2014, pàg. 133–148. DOI: 10.1016/j.compchemeng.2014.04.013.
* ↑ Hedengren, J. «A Nonlinear Model Library for Dynamics and Control». CACHE (Computer Aids for Chemical Engineering) News, 2008. Arxivat de l'original el 2016-03-03 [Consulta: 25 juny 2015].
* ↑ Spivey, B. «Monitoring of Process Fouling Using First-Principles Modeling and Moving Horizon Estimation». Proc. Applications of Computer Algebra (ACA) Conference, 2009.
* ↑ Ramlal, J. «Moving Horizon Estimation for an Industrial Gas Phase Polymerization Reactor». IFAC Symposium on Nonlinear Control Systems Design (NOLCOS), 2007. Arxivat de l'original el 2009-09-20 [Consulta: 25 juny 2015]. Arxivat 2009-09-20 a Wayback Machine.
* ↑ W. Hock and K. Schittkowski, Test Examples for Nonlinear Programming Codes, Lecture Notes in Economics and Mathematical Systems, Vol. 187, Springer 1981.

## Enllaços externs

* APMonitor - Lloc web oficial