CPLEX
IBM ILOG CPLEX Optimization Studio (a menudo denominado informalmente simplemente CPLEX) es un paquete de software de optimización.
Historia
El CPLEX Optimizer debe su nombre al método simplex implementado en el lenguaje de programación C, aunque hoy en día también admite otros tipos de optimización matemática y ofrece interfaces distintas a C. Fue desarrollado originalmente por Robert E. Bixby y vendido comercialmente desde 1988. por CPLEX Optimization Inc. Fue adquirida por ILOG en 1997 y posteriormente ILOG fue adquirida por IBM en enero de 2009. IBM continúa desarrollando activamente CPLEX.
Características
IBM ILOG CPLEX Optimizer resuelve problemas de programación entera, problemas de programación lineal muy grandes utilizando variantes primarias o duales del método simplex o el método del punto interior de barrera, problemas de programación cuadrática convexa y no convexa y problemas convexos cuadráticamente restringidos (resuelto mediante programación de conos de segundo orden, o SOCP).
CPLEX Optimizer tiene una capa de modelado llamada Concert que proporciona interfaces para los lenguajes C++, C# y Java. Existe una interfaz en lenguaje Python basada en la interfaz C. Finalmente, se proporciona un ejecutable independiente de Interactive Optimizer para depuración y otros fines.
Se puede acceder a CPLEX Optimizer a través de sistemas de modelado independientes como AIMMS, AMPL, GAMS, OptimJ y TOMLAB. Además de eso, AMPL proporciona una interfaz para CPLEX CP Optimizer.
El IBM ILOG CPLEX Optimization Studio completo consta de CPLEX Optimizer para programación matemática, CP Optimizer para programación de restricciones, Optimization Programming Language (OPL) y un IDE estrechamente integrado.
Historial de versiones
Antes de que IBM adquiriera ILOG, el equipo de CPLEX publicó un historial de versiones de CPLEX.
Versión | Fecha de lanzamiento | Características clave |
---|---|---|
22.1.1 | Diciembre, 2022 | Python 3.7 soporte caído, nuevo parámetro solucionador añadido. |
22.1.0 | Marzo, 2022 | Python 3.9 y 3.10 soporte añadido, nuevos parámetros de solucionador añadidos. |
20.1 | Diciembre, 2020 | Mejoras de rendimiento del MIP, nuevo modo 'emphasis MIP 5', etc. |
12.10 | Diciembre, 2019 | Mejoras del rendimiento del MIP y la adición de un callback genérico de ramificación a los otros callbacks genéricos introducidos en la versión 12.8. |
12.9 | Marzo, 2019 | Soporte directo para optimización multiobjetiva, mejora de funcionalidad de callback. |
12.8 | Diciembre, 2017 | Llamada genérica, grabador de API para facilitar la depuración, parámetros de control de subMIP, Descarga y Go. |
12,7 | noviembre, 2016 | Automated Benders descomposition, modeling assistance tool, runseeds command to better assess performance variability. |
12.6.2 | Junio, 2015 | Mejoras de rendimiento (principalmente para SOCP, MISOCP, QP no-convex), soporte para optimización basada en la nube. |
12.6 | Diciembre, 2013 | Soporte para no convex QPs and MIQPs, distributed parallel MIP and more parallelism at the root node for MIPs. |
12,5 | Octubre, 2012 | Mejoras del rendimiento del MIP, parámetro de semillas aleatorias para abordar la variabilidad del rendimiento, objeto remoto, duales para QCPs, herramienta de ajuste determinista. |
12.4 | Noviembre de 2011 | Soporte de límite de tiempo determinista, duales para SOCPs, API de expresión cuadrática en concierto, mejoras de rendimiento en todos los algoritmos, pero especialmente MIP. |
12.3 | Junio, 2011 | Apoyo a grandes conteos no cero que requieren 64 bits de indexación, optima local para QP no-convex, y globalización. |
12.2 | Junio, 2010 | Más paralelismo en el nodo raíz, optimización de LP paralela determinista, junto con algunas mejoras adicionales de rendimiento de barrera y herramientas adicionales para diagnosticar matrices de base mal condicionadas en MIPs. |
12.0 | April, 2009 | La primera versión después de que IBM adquiriera ILOG. Incluye conectores para Pitón, MATLAB y Excel. También se incluye la barrera paralela determinística. |
11.0 | Octubre de 2007 | Ganancias de rendimiento de gran alcance para los modelos de programación mixta de enteros (MIP) y optimización paralela de MIP. La función de la piscina de la solución MIP y la utilidad de ajuste de rendimiento se introducen. |
10.0 | Enero de 2006 | Mejoras de rendimiento en los métodos primal simplex y barrera, así como el optimizador MIP. Se introducen limitaciones de indicadores y soluciones de pulido heurístico y se realizan mejoras en el análisis de infeasibilidad. |
9.0 | Diciembre de 2003 | Mejoras de rendimiento en métodos primal y dual simplex y optimizador MIP. Incluye ILOG Concert Technology para. usuarios de NET y soporte para programas con restricciones cuadráticas. |
8.0 | Julio, 2002 | Mejoras del rendimiento del MIP y soporte para programas cuadráticos enteros mixtos. |
7.5 | Diciembre de 2001 | ILOG Concert Technology para usuarios de Java. |
7.0 | Octubre de 2000 | ILOG Concert Technology para usuarios C++. |
6.5 | March, 1999 | Mejoras significativas en los métodos primario y dual simplex, y ILOG CPLEX Mixed Integer Optimizer. |
6.0 | Abril, 1998 | Mejoras significativas en los métodos primario y dual simplex, y CPLEX Barrier Optimizer. |
5.0 | Septiembre de 1997 | Nuevo modelo de memoria para fácil integración C++. |
4.0.5 | March, 1996 | Parallel CPLEX Mezcla de Solver Integer se presenta. |
4.0 | Diciembre de 1995 | Interfaz de programación avanzada rediseñado (API) para permitir aplicaciones seguras de rosca. |
3.0.8 | Marzo de 1995 | Parallel CPLEX Barrier Solver es presentado. |
3.0 | Abril, 1994 | CPLEX Barrier Solver es presentado. |
2.1 | Marzo, 1993 | Introducción de CPLEX Presolve algoritmos. |
2.0 | Abril, 1992 | Mejoras del desempeño. |
1.2 | 1991 | Soporte para el método dual simplex y CPLEX Mixed Integer Optimizer. |
1.0 | 1988 | Primal Simplex Método |