Manual Gams
Ingeniería en Logística y Transporte
INVESTIGACIÓN DE OPERACIONES 1
1. RESUMEN DEL TRABAJO
La metodología que se va a emplear en el desarrollo de este proyecto se centrará principalmente en el modelado deun problema lineal realista en el que definiremos la construcción de la función objetivo y las restricciones con variables positivas que requerirá:
* Programación Lineal
El software necesario para llevar a cabo la elaboración del modelo y obtener los resultados numéricos del problema es el programa:
GENERAL ALGEBRAIC MODELING SYSTEM (GAMS)
2. MARCO TEÓRICO
3.1INTRODUCCIÓN A GAMS
El nombre GAMS deriva de las iniciales de General Algebraic Modelling System, que como su propio nombre indica es un lenguaje de modelización, más que un programa para resolver problemas de optimización.
La ventaja que presenta este programa, es que junto al módulo de modelización (base) incorpora diferentes solvers (algoritmos de resolución de problemas) tanto de programación nolineal, como lineal y entera.
El lenguaje GAMS posee diferentes versiones (estudiante, profesional, workstation, mainframe, etc.) que se diferencian básicamente en las posibilidades de resolución de problemas de diferente tamaño, así por ejemplo, en la versión básica de estudiante existen una serie de limitaciones en cuanto al tamaño del problema que admite un máximo de 1000 elementos distintosde cero en los problemas lineales y no lineales, y de 20 variables enteras.
Una de las grandes ventajas de GAMS es la facilidad de escalar a versiones superiores ya que el formato general es idéntico tanto en un PC como en un supercomputador en paralelo. Otra de las ventajas es también la capacidad de resolver diferentes versiones de un mismo modelo, tanto como problema no lineal, lineal yentero, y el poder usar diferentes solvers. De entre ellos podemos citar los siguientes:
Problemas Solver
NLP CONOPT, MINOS, etc.
LP OSL, CPLEX, MINOS, etc.
MIP OSL, ZOOM, CPLEX, etc.
MINPL DICOPT
Además, dentro de cada uno de estossolvers, se puede elegir diferentes opciones. Por ejemplo, para resolver los problemas lineales como la librería OSL, podemos elegir los siguientes algoritmos:
Primal Simplex
Dual Simplex
Todo ello solamente con definir una línea dentro del fichero de datos, con lo cual no será necesario tener un conocimiento exhaustivo de cada uno de los diferentes solvers. Todas estas ventajas, fueron por lasque se decidió utilizar GAMS en el desarrollo de este proyecto.
3.2 GENERALIDADES DEL LENGUAJE DE PROGRAMACIÓN GAMS
GAMS es un lenguaje de programación matemática. Los lenguajes de programación son lenguajes que permiten la formulación de problemas de optimización complejos. Son muy potentes por su capacidad de resolución y la indexación de las variables y ecuaciones. Entre loslenguajes de modelado más conocidos se pueden mencionar: GAMS y AMPL de origen estadounidense y AIMMS y XPRESS-MP de origen europeo, por citar algunos.
GAMS es el lenguaje más ampliamente difundido comercialmente con su propia lista de discusión de usuarios (gams-l@listserv.gmd.de) mientras que AMPL se está potenciando mucho en las universidades estadounidenses. Existe un proyecto denominado NEOS(www.neos.mcs.anl.gov) para el cálculo distribuido que permite el envío de problemas de optimización escritos en AMPL o GAMS a través de internet y éstos son resueltos en servidores de la red devolviendo los resultados de la optimización.
3.3 INFORMACIÓN BÁSICA
Un modelo en GAMS es una sucesión de comandos o enunciados (“statement”) en lenguaje GAMS. Para poder resolver un problema con...
Regístrate para leer el documento completo.