El Gurobi Optimizer es un comercial optimización solucionador de programación lineal (LP), programación cuadrática (QP), programación cuadrática constreñido (QCP), número entero lineal mixto programación (MILP), mezclado número entero de programación cuadrática (MIQP), y enteros mixto cuadráticamente programación restringida (MIQCP).
Desarrollador (es) | Optimización de Gurobi |
---|---|
Lanzamiento estable | 9.1 [1] |
Tipo | Investigación de operaciones , Optimización matemática |
Licencia | Propiedad |
Sitio web | gurobi |
A partir de | 2019-05-07 |
Gurobi fue fundada en 2008 [2] y lleva el nombre de sus fundadores: Zonghao Gu , Edward Ro thberg y Robert Bi xby. Bixby también fue el fundador de CPLEX , mientras que Rothberg y Gu dirigieron el equipo de desarrollo de CPLEX durante casi una década. [3]
Características
Gurobi Optimizer admite una variedad de lenguajes de programación y modelado que incluyen: [4]
- Interfaces orientadas a objetos para C ++ , Java , .NET y Python
- Interfaces orientadas a matrices para C , Python , MATLAB y R
- Enlaces a lenguajes de modelado estándar: AIMMS , AMPL , GAMS y MPL
- Enlaces a Excel a través de sus Analítica Solver y SDK Solver productos
Gurobi Optimizer también incluye una serie de características para respaldar la construcción de modelos de optimización, incluido el soporte para: [5]
- Múltiples objetivos con flexibilidad en cómo se priorizan
- Las restricciones generales como MIN / MAX, ABS, AND / OR y las restricciones de los indicadores ayudan a evitar tener que convertir las restricciones que ocurren comúnmente en restricciones lineales
- Modelos con funciones objetivas lineales por partes convexas, para capturar ciertos problemas no lineales
- Funciones objetivas lineales por partes arbitrarias, para facilitar la expresión de esta característica de modelado común
- Sintonización distribuida, para acelerar la exploración de la configuración de parámetros para acelerar los tiempos de resolución
Gurobi Optimizer también tiene opciones para implementar en la nube [6] y para computación cliente-servidor. [7]