IPOPT , abreviatura de " I nterior P oint OPT imizer, pronunció IP-Opt", es un software de biblioteca de gran escala de optimización no lineal de sistemas continuos. Está escrito en Fortran y C y se publica bajo la EPL (anteriormente CPL ). IPOPT implementa un método de punto interior primal-dual y utiliza búsquedas de línea basadas en métodos de filtro ( Fletcher y Leyffer). IPOPT puede ser llamado desde diversos entornos de modelado y C .
Desarrollador (es) | Andreas Wächter, Carl Laird |
---|---|
Versión inicial | 26 de agosto de 2005 |
Lanzamiento estable | 3.12.11 [1] / 17 de septiembre de 2018 |
Sistema operativo | UNIX , Linux , macOS , Microsoft Windows |
Licencia | Licencia pública de Eclipse |
Sitio web | github |
IPOPT es parte del proyecto COIN-OR .
IPOPT está diseñado para explotar la información de la 1ª y 2ª derivada ( hessianas ) si se proporciona (normalmente a través de rutinas de diferenciación automática en entornos de modelado como AMPL ). Si no se proporcionan hessianos, IPOPT los aproximará utilizando métodos cuasi-Newton , específicamente una actualización de BFGS .
IPOPT fue desarrollado originalmente [2] por Ph.D. el estudiante Andreas Wächter y el Prof. Lorenz T. Biegler del Departamento de Ingeniería Química de la Universidad Carnegie Mellon . Su trabajo fue reconocido con el premio INFORMS Computing Society en 2009.
Arvind Raghunathan creó más tarde una extensión de IPOPT para programación matemática con restricciones de equilibrio (MPEC) [1] . Esta versión de IPOPT se conoce generalmente como IPOPT-C (donde la 'C' significa 'complementariedad'). Si bien, en teoría, cualquier programa de enteros mixtos puede reformularse como MPEC, puede o no tener solución con IPOPT-C. La solución de MINLP (programas no lineales de enteros mixtos) que utilizan IPOPT aún se está explorando [2] [3] .
Carl Laird y Andreas Wächter son los desarrolladores de IPOPT 3.0, que es una reimplementación de IPOPT en C ++ . Wächter y Laird recibieron el premio JH Wilkinson de software numérico 2011 por este desarrollo.
Ver también
Referencias
- ^ "Índice de / descarga / fuente / Ipopt" . coin-or.org .
- ^ Wächter, Andreas; Biegler, Lorenz T. (2006). "Sobre la implementación de un algoritmo de búsqueda de línea de filtro de punto interior para programación no lineal a gran escala" (PDF) . Programación matemática . 106 : 25–57. doi : 10.1007 / s10107-004-0559-y . S2CID 14183894 .
enlaces externos
- Página de inicio de IPOPT