General Algebraic Modeling System

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
GAMS
Entwickler GAMS Development Corporation
Aktuelle Version 24.2.1
(9. Dezember 2013)
Betriebssystem Plattformunabhängig
Kategorie Algebraische Modellierungssprache
Lizenz Proprietär
www.gams.com

Das General Algebraic Modeling System ist eine algebraische Modellierungssprache für mathematische Optimierungsprobleme, deren Ursprünge in einem Forschungsprojekt der Weltbank liegen. Ab 1987 wird das System durch die GAMS Development Corp., USA, weiterentwickelt und in Europa durch die GAMS Software GmbH vertrieben.

Neben großen linearen bzw. ganzzahligen Optimierungsproblemen lassen sich mit algebraischen Modellierungssprachen wie GAMS oder AMPL auch andere Modellierungssprobleme, wie etwa quadratische, nichtlineare, gemischtganzzahlig nichtlineare, quadratische, stochastische oder globale Optimierungsprobleme grundsätzlich unabhängig von den verwendeten Algorithmen effizient formulieren und lösen. Die grundsätzliche Trennung der Ebenen

  • Problemrepräsentation und -lösung,
  • Modellierungsebene und Benutzeroberfläche,
  • Modellformulierung und Daten,
  • Modellformulierung und Betriebssystem,

sowie umfangreiche Modellbibliotheken stellen weitere Elemente von algebraischen Modellierungssprachen dar.

Die Einsatzschwerpunkte des GAMS-Systems liegen in den klassischen Operations-Research-Bereichen. Daneben wird das System auch häufig für makroökonomische Fragestellungen etwa im Rahmen von Gleichgewichtsmodellen verwendet.

Modellbeispiel[Bearbeiten]

Transportmodell von George Dantzig. Dieses Modell ist Teil der GAMS-Modellbibliothek. In diesem Problem wird der Transportplan mit den niedrigsten Gesamtkosten gesucht, der sowohl die Marktbedingungen der Abnehmer also auch die der Produzenten erfüllt.[1]

 Sets
      i   canning plants   / seattle, san-diego /
      j   markets          / new-york, chicago, topeka / ;
 Parameters
      a(i)  capacity of plant i in cases
        /    seattle     350
             san-diego   600  /
      b(j)  demand at market j in cases
        /    new-york    325
             chicago     300
             topeka      275  / ;
 Table d(i,j)  distance in thousands of miles
                   new-york       chicago      topeka
     seattle          2.5           1.7          1.8
     san-diego        2.5           1.8          1.4  ;
 Scalar f  freight in dollars per case per thousand miles  /90/ ;
 Parameter c(i,j)  transport cost in thousands of dollars per case ;
           c(i,j) = f * d(i,j) / 1000 ;
 Variables
x(i,j) shipment quantities in cases z total transportation costs in thousands of dollars ; Positive Variable x ; Equations
cost define objective function supply(i) observe supply limit at plant i demand(j) satisfy demand at market j ; cost .. z =e= sum((i,j), c(i,j)*x(i,j)) ; supply(i) .. sum(j, x(i,j)) =l= a(i) ; demand(j) .. sum(i, x(i,j)) =g= b(j) ; Model transport /all/ ;
Solve transport using lp minimizing z ; Display x.l, x.m ;

Einzelnachweise[Bearbeiten]

  1. Dantzig, G B, Chapter 3.3. In Linear Programming and Extensions. Princeton University Press, Princeton, New Jersey, 1963.

Literatur[Bearbeiten]

  •  Anthony Brooke, David Kendrick, Alexander Meeraus: Gams: A User's Guide. Tutorial by Rick Rosenthal. GAMS Development Corporation, Washington, DC, USA 2010 (Online als PDF).

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]