Gams
Andrés Ramos
Universidad Pontificia Comillas
http://www.iit.upcomillas.es/aramos/
Andres.Ramos@upcomillas.es
Alternativas desarrollo modelos optimización
• Lenguajes de programación de propósito general (C, C++, Java, Visual
Basic, FORTRAN 90)
– C (CPLEX de ILOG, Gurobi from Gurobi Optimization, Xpress-Optimizer
from FICO)
– C++ (ILOG Concert de IBM,LINDO API de LINDO Systems, OptiMax
2000 de Maximal Software, FLOPC++ de Universidade de Aveiro)
– Dominio público [GNU Linear Programming Toolkit GLPK
(www.gnu.org/software/glpk), Computational Infrastructure for Operations
Research COIN-OR (www.coin-or.org), LP solver SoPlex
(http://soplex.zib.de) and MIP framework SCIP (http://scip.zib.de)]
• Lenguajes o entornos de cálculo numérico osimbólico (hojas de cálculo,
Matlab, Mathematica)
• Lenguajes de modelado algebraico [GAMS, OPL Studio, AMPL,
AIMMS, XPRESS-MP, MPL, Zimpl (http://zimpl.zib.de) (el último de
dominio público)]
• En OR/MS Today (www.orms-today.com) una vez al año hay artículos de
resumen de los diferentes entornos de optimización y sus características
Lenguajes de modelado algebraico. GAMS - 2Optimizadores en hojas de cálculo
• Ventajas
– Fáciles de usar
– Integración total con la hoja de cálculo
– Familiaridad con el entorno que facilita la explicación del modelo y
de sus resultados
– Facilidad de presentación de resultados en gráficos
• Inconvenientes
– No inducen una buena práctica de programación
– Presentan dificultades para verificación, validación, actualización y
documentaciónde los modelos
– No permiten modelar problemas complejos o de gran tamaño
Lenguajes de modelado algebraico. GAMS - 3
Biblioteca de optimización en C, C++
• Ventajas
– Tiempo de solución es crítico
– Permiten el uso de algoritmos de optimización específicos
– Posibilidad de implantación del modelo en un entorno software o
hardware especial
• Inconvenientes
– Mayor dificultad yconsumo de recursos para el mantenimiento del
modelo
Lenguajes de modelado algebraico. GAMS - 4
Ventajas lenguajes algebraicos (i)
• Lenguajes de alto nivel para formulación compacta de
modelos grandes y complejos
• Facilitan desarrollo de prototipos
• Mejorar productividad de modeladores
• Estructuran buenos hábitos de modelado
• Separación entre interfaz, datos, modelo matemático yoptimizador
• Formulación independiente del tamaño
• Modelo independiente de optimizadores
Lenguajes de modelado algebraico. GAMS - 5
Ventajas lenguajes algebraicos (ii)
• Facilitan reformulación continua
• Documentación simultánea al modelo
• Permiten construir grandes modelos “mantenibles” que se
pueden adaptar rápidamente a situaciones nuevas
• Permiten implantación de algoritmosavanzados
• Implantación fácil de problemas NLP, MIP, MCP
• Arquitectura abierta con interfaces a otros sistemas
• Independencia de la plataforma y portabilidad entre
plataformas y sistemas operativos (MS Windows, Linux, Sun
Solaris, HP UX, Digital True64Unix, IBM AIX, SGI IRIX,
Mac OS X)
Lenguajes de modelado algebraico. GAMS - 6
Desventajas lenguajes algebraicos
• No son adecuadospara usos esporádicos con problemas de
pequeño tamaño
• No son adecuados para resolución directa problemas de
tamaño gigantesco (1.000.000 x 1.000.000)
Lenguajes de modelado algebraico. GAMS - 7
Tendencias futuras
• Interfaz visual en formulación
• Interfaz más estrecha con hojas de cálculo y bases de datos
• Interfaz con funciones externas escritas en lenguajes de
propósito general• Resolución directa de problemas optimización estocástica
(OSLSE, DECIS)
• Selección automática de método de optimización y del
optimizador
Lenguajes de modelado algebraico. GAMS - 8
Aplicaciones reales
• En IIT se pasó de utilizar FORTRAN a utilizar GAMS
exclusivamente
• Problemas de hasta 500000 restricciones, 500000 variables y
2000000 elementos no nulos resueltos con facilidad...
Regístrate para leer el documento completo.