Artelys Knitro es un paquete de software comercial para resolver problemas de optimización matemática no lineal a gran escala .
KNITRO (el nombre original del solucionador) es la abreviatura de " Optimización de la región de confianza del punto interior de N -linear " (la "K" no se pronuncia), fue creado en conjunto por Richard Waltz, Jorge Nocedal , Todd Plantenga y Richard Byrd. Se presentó por primera vez en 2001, como un derivado de la investigación académica en la Universidad Northwestern (a través de Ziena Optimization LLC), y desde entonces ha sido mejorado continuamente por los desarrolladores de Artelys.
Los problemas de optimización deben presentarse a Knitro en forma matemática y deben proporcionar una forma de calcular las derivadas de funciones utilizando matrices dispersas (Knitro puede calcular la aproximación de las derivadas, pero en la mayoría de los casos es beneficioso proporcionar las derivadas exactas). Un enfoque que suele ser más sencillo es desarrollar el problema de optimización en un lenguaje de modelado algebraico . El entorno de modelado calcula las derivadas de funciones y Knitro se utiliza como "solucionador" desde dentro del entorno.
Clases de problemas resueltas por Artelys Knitro
Knitro está especializado en optimización no lineal pero también resuelve una amplia gama de problemas de optimización:
- Problemas no lineales generales (PNL), incluidos los no convexos
- Sistemas de ecuaciones no lineales
- Problemas lineales (PL)
- Problemas cuadráticos (QP/QCQP/SOCP), tanto convexos como no convexos
- Problemas de mínimos cuadrados / regresión, tanto lineal como no lineal
- Programas matemáticos con restricciones de complementariedad (MPCC/MPEC)
- Problemas no lineales de números enteros mixtos (MIP/MINLP)
- Problemas de optimización sin derivadas (DFO)
Algoritmos
Artelys Knitro contiene una amplia gama de algoritmos de optimización.
Solucionador de programación no lineal (PNL)
Knitro ofrece cuatro algoritmos de optimización diferentes para resolver problemas de optimización. [1] Dos algoritmos son del tipo de punto interior y dos son del tipo de conjunto activo . Se sabe que estos algoritmos tienen características fundamentalmente diferentes; por ejemplo, los métodos de punto interior siguen un camino a través del interior de la región factible mientras que los métodos de conjunto activo tienden a permanecer en los límites. Knitro proporciona ambos tipos de algoritmo para una mayor flexibilidad en la resolución de problemas y permite el cruce durante el proceso de solución de un algoritmo a otro. El código también proporciona una opción de inicio múltiple para promover el cálculo del mínimo global .
- Algoritmo interior/directo
- Algoritmo de gradiente interior/conjugado
- Algoritmo de conjunto activo
- Algoritmo de programación cuadrática secuencial (SQP)
Solucionador de programación no lineal de enteros mixtos (MINLP)
Knitro ofrece herramientas para resolver modelos de optimización (tanto lineales como no lineales) con variables binarias o enteras. El código de programación entera mixta (MIP) de Knitro ofrece tres algoritmos para la programación no lineal entera mixta (MINLP): [2]
- Rama y límite no lineal
- Algoritmo de Quesada Grossman
- Programación cuadrática secuencial de números enteros mixtos (MISQP)
Características
Artelys Knitro admite una variedad de lenguajes de programación y modelado, incluidos. [3]
- Interfaces orientadas a objetos para C++, C#, Java y Python
- Interfaces orientadas a matrices para Julia, C, Fortran, MATLAB y R
- Enlaces a lenguajes de modelado: AIMMS, AMPL, GAMS, JuMP y MPL
- Enlaces a Excel a través de Frontline Solvers
Artelys Knitro también incluye una serie de características clave:
- Un amplio conjunto de opciones de usuario bien documentadas [4] y un sintonizador automático
- Arranque múltiple (en paralelo) para optimización global
- Aproximación y comprobación de derivadas
- Presolvedor interno
Plataformas compatibles
Artelys Knitro está disponible en las siguientes plataformas:
- Ventanas 64
- Linux 64
- Mac OS 64
- Procesadores ARM para optimización integrada [5]
Referencias
- Nocedal, Jorge; Wright, Stephen J. (2006). Optimización numérica (2.ª ed.). Springer Publishing . ISBN 0-387-30303-0.
- Byrd, Richard H.; Nocedal, Jorge; Waltz, Richard A. (2006). «Knitro: un paquete integrado para optimización no lineal» (PDF) . Archivado desde el original (PDF) el 12 de octubre de 2016. Consultado el 17 de noviembre de 2017 .
{{cite journal}}: Requiere citar revista|journal=( ayuda )
Enlaces externos
- ^ Algoritmos de PNL de Artelys Knitro
- ^ Algoritmos MINLP de Artelys Knitro
- ^ Características de Artelys Knitro
- ^ Manual del usuario de Artelys Knitro
- ^ Artelys Knitro y procesadores ARM
- Jorge Nocedal, perfil en el departamento de Ingeniería Eléctrica, Electrónica y Computación de la Escuela de Ingeniería McCormick