GPOPS-II (pronunciado "GPOPS 2") es un software de propósito general para MATLAB que resuelve problemas de control óptimo continuo mediante colocación de cuadratura gaussiana adaptativa hp y programación no lineal dispersa. El acrónimo GPOPS significa " Software de Control Óptimo de Propósito General " y el número romano "II" indica que GPOPS-II es el segundo software de este tipo (que emplea integración de cuadratura gaussiana).
Formulación del problema
GPOPS-II [ 3 ] está diseñado para resolver problemas de control óptimo multifase de la siguiente forma matemática (dondees el número de fases):
- sujeto a las restricciones dinámicas
- las restricciones del evento
- las restricciones de la trayectoria de desigualdad
- las restricciones de parámetros estáticos
- y las restricciones integrales
- dónde
- y las integrales en cada fase se definen como
Es importante señalar que las restricciones de eventos pueden contener cualquier función que relacione información al inicio y/o al final de cualquier fase (incluidas relaciones que incluyan tanto parámetros estáticos como integrales) y que las fases en sí mismas no tienen por qué ser secuenciales. Cabe destacar que el enfoque para vincular fases se basa en formulaciones bien conocidas en la literatura. [ 4 ]
Método empleado por GPOPS-II
GPOPS-II utiliza una clase de métodos denominados-Colocación de cuadratura gaussiana adaptativa donde los puntos de colocación son los nodos de una cuadratura gaussiana (en este caso, los puntos Legendre-Gauss-Radau [LGR]). La malla consta de intervalos en los que el intervalo de tiempo totalen cada fase se divide y se realiza la colocación LGR en cada intervalo. Debido a que la malla se puede adaptar de tal manera que tanto el grado del polinomio utilizado para aproximar el estadoy el ancho de cada intervalo de malla puede ser diferente de intervalo a intervalo, el método se denomina-método adaptativo (donde "" se refiere al ancho de cada intervalo de malla, mientras que "" se refiere al grado polinómico en cada intervalo de malla). El método de colocación LGR se ha desarrollado rigurosamente en las Refs., [ 5 ] [ 6 ] [ 7 ] mientras que-Los métodos de refinamiento de malla adaptativos basados en el método de colocación LGR se pueden encontrar en las Refs., . [ 8 ] [ 9 ] [ 10 ] [ 11 ]
Desarrollo
El desarrollo de GPOPS-II comenzó en 2007. El nombre del código de desarrollo del software era OptimalPrime , pero se cambió a GPOPS-II a finales de 2012 para mantener el linaje de la versión original de GPOPS [ 12 ] que implementaba la colocación global utilizando el método pseudoespectral de Gauss . El desarrollo de GPOPS-II continúa hoy, con mejoras que incluyen el paquete de diferenciación algorítmica de código abierto ADiGator [ 13 ] y el desarrollo continuo de-Métodos de refinamiento de malla adaptativos para un control óptimo.
Aplicaciones de GPOPS-II
GPOPS-II se ha utilizado ampliamente en todo el mundo, tanto en el ámbito académico como en la industria. La investigación académica publicada donde se ha utilizado GPOPS-II incluye las referencias [ 14 ] [ 15 ] [ 16 ] donde el software se ha utilizado en aplicaciones como la optimización del rendimiento de los coches de carreras de Fórmula Uno, la referencia [ 17 ] donde el software se ha utilizado para la optimización del tiempo mínimo de transferencias orbitales de bajo empuje, la referencia [ 18 ] donde el software se ha utilizado para el rendimiento humano en el ciclismo, la referencia [ 19 ] donde el software se ha utilizado para el aterrizaje suave en la Luna, y la referencia [ 20 ] donde el software se ha utilizado para optimizar el movimiento de un robot bípedo.
Referencias
- ↑ "Gente" .
- ↑ Sitio web de Anil V. Rao
- ↑ Patterson, MA; Rao, AV (2014). "GPOPS-II: Un software MATLAB para resolver problemas de control óptimo multifase utilizando métodos de colocación de cuadratura gaussiana adaptativos hp y programación no lineal dispersa" . ACM Transactions on Mathematical Software . 41 (1): 1:1–1:37. doi : 10.1145/2558904 .
- ↑ Betts, John T. (2010). Métodos prácticos para el control óptimo y la estimación mediante programación no lineal . Filadelfia: SIAM Press. doi : 10.1137/1.9780898718577 . ISBN 9780898718577.
- ↑ Garg, D.; Patterson, MA; Hager, WW; Rao, AV; Benson, DA; Huntington, GT (2010). "Un marco unificado para la solución numérica de problemas de control óptimo mediante métodos pseudoespectrales". Automatica . 46 (11): 1843– 1851. doi : 10.1016/j.automatica.2010.06.048 .
- ↑ Garg, D.; Hager, WW; Rao, AV; et al. (2011). "Métodos pseudoespectrales para resolver problemas de control óptimo de horizonte infinito". Automatica . 47 (4): 829– 837. doi : 10.1016/j.automatica.2011.01.085 .
- ↑ Garg, D.; Patterson, MA; Darby, CL; Francolin, C.; Huntington, GT; Hager, WW; Rao, AV; et al. (2011). "Optimización directa de la trayectoria y estimación de coestados de problemas de control óptimo de horizonte finito e infinito utilizando un método pseudoespectral de Radau". Optimización computacional y aplicaciones . 49 (2): 335– 358. CiteSeerX 10.1.1.663.4215 . doi : 10.1007/s10589-009-9291-0 . S2CID 8817072 .
- ↑ Darby, CL; Hager, WW; Rao, AV; et al. (2011). "Un método pseudoespectral adaptativo hp para resolver problemas de control óptimo". Optimal Control Applications and Methods . 32 (4): 476– 502. doi : 10.1002/oca.957 . S2CID 16065706 .
- ↑ Darby, CL; Hager, WW; Rao, AV; et al. (2011). "Optimización directa de trayectorias mediante un método pseudoespectral adaptativo de bajo orden variable". Journal of Spacecraft and Rockets . 48 (3): 433– 445. Bibcode : 2011JSpRo..48..433D . CiteSeerX 10.1.1.367.7092 . doi : 10.2514/1.52136 .
- ↑ Patterson, MA; Hager, WW; Rao, AV (2011). "Un método de refinamiento de malla ph para control óptimo" . Aplicaciones y métodos de control óptimo . 36 (4): 398– 421. doi : 10.1002/oca.2114 . S2CID 6266472 .
- ↑ Liu, F.; Hager, WW; Rao, AV (2015). "Refinamiento adaptativo de malla para control óptimo mediante detección de no suavidad y reducción del tamaño de la malla" . Journal of the Franklin Institute - Engineering and Applied Mathematics . 352 (10): 4081– 4106. doi : 10.1016/j.jfranklin.2015.05.028 .
- ↑ Rao, AV; Benson, DA; Darby, CL; Patterson, MA; Francolin, C.; Sanders, I.; Huntington, GT (2010). "GPOPS: Un software de MATLAB para resolver problemas de control óptimo multifase utilizando el método pseudoespectral de Gauss" . ACM Transactions on Mathematical Software . 37 (2): 22:1–22:39. doi : 10.1145/1731022.1731032 . S2CID 15375549 .
- ↑ Weinstein, MJ; Rao, AV (2 de junio de 2019). "ADiGator: Una caja de herramientas de MATLAB para la diferenciación algorítmica mediante la transformación de la fuente a través de la sobrecarga de operadores" . ADiGator .
- ↑ Perantoni, G.; Limebeer, DJN (2015). "Control óptimo de un coche de Fórmula Uno en una pista tridimensional: parte 1: modelado e identificación de la pista" . Journal of Dynamic Systems, Measurement, and Control . 137 (2): 021010. doi : 10.1115/1.4028253 . S2CID 121951098 .
- ↑ Limebeer, DJN; Perantoni, G. (2015). "Control óptimo de un coche de Fórmula Uno en una pista tridimensional: parte 2: control óptimo". Journal of Dynamic Systems, Measurement, and Control . 137 (5): 051019. doi : 10.1115/1.4029466 .
- ↑ Limebeer, DJN; Perantoni, G.; Rao, AV (2014). "Control óptimo de los sistemas de recuperación de energía de los coches de Fórmula Uno" . International Journal of Control . 87 (10): 2065– 2080. Bibcode : 2014IJC....87.2065L . doi : 10.1080/00207179.2014.900705 . S2CID 41823239 .
- ↑ Graham, KF; Rao, AV (2015). "Optimización de trayectoria de tiempo mínimo para transferencias de órbita terrestre de bajo empuje con múltiples revoluciones". Journal of Spacecraft and Rockets . 52 (3): 711– 727. doi : 10.2514/1.a33187 . S2CID 43633680 .
- ↑ Dahmen, T.; Saupeand, D. (2014). "Estrategia de ritmo óptima para una carrera de dos ciclistas competidores". Journal of Science and Cycling . 3 (2).
- ↑ Moon, Y; Kwon, S (2014). "Aterrizaje suave lunar con sistema de propulsión de masa mínima utilizando un sistema de cohete bipropelente de H2O2/queroseno". Acta Astronautica . 99 ( mayo– junio): 153– 157. Bibcode : 2014AcAau..99..153M . doi : 10.1016/j.actaastro.2014.02.003 .
- ↑ Haberland, M.; McClelland, H.; Kim, S.; Hong, D. (2006). "El efecto de la distribución de masa en la eficiencia de los robots bípedos" . International Journal of Robotics Research . 25 (11): 1087– 1098. doi : 10.1177/0278364906072449 . S2CID 18209459 .
Enlaces externos
- Página principal de GPOPS-II
- Artículo de revista sobre GPOPS-II publicado en ACM Transactions on Mathematical Software.
- Sitio web de Anil V. Rao
- Software de optimización matemática
- Control óptimo
- Software matemático
- Software numérico