GAMS(ID:4914/gam009)General Algebraic Modeling Systemfor General Algebraic Modeling System Algebraic language GAMS Development Corporation Anthony Brooke David Kendrick Alexander Meeraus Ramesh Raman References: 1.1 MOTIVATION Substantial progress was made in the 1950s and 1960s with the development of algorithms and computer codes to solve large mathematical programming problems. The number of applications of these tools in the 1970s was less then expected, however, because the solution procedures formed only a small part of the overall modeling effort. A large part of the time required to develop a model involved data preparation and transformation and report preparation. Each model required many hours of analyst and programming time to organize the data and write the programs that would transform the data into the form required by the mathematical programming optimizers. Furthermore, it was difficult to detect and eliminate errors because the programs that performed the data operations were only accessible to the specialist who wrote them and not to the analysts in charge of the project. GAMS was developed to improve on this situation by: · Providing a high-level language for the compact representation of large and complex models · Allowing changes to be made in model specifications simply and safely · Allowing unambiguous statements of algebraic relationships · Permitting model descriptions that are independent of solution algorithms 1.2 BASIC FEATURES OF GAMS Some basic features of GAMS are explained in the following subsections. 1.2.1 GENERAL PRINCIPLES The design of GAMS has incorporated ideas drawn from relational database theory and mathematical programming and has attempted to merge these ideas to suit the needs of strategic modelers. Relational database theory provides a structured framework for developing general data organization and transformation capabilities. Mathematical programming provides a way of describing a problem and a variety of methods for solving it. The following principles were used in designing the system: · All existing algorithmic methods should be available without changing the user's model representation. Introduction of new methods, or of new implementations of existing methods, should be possible without requiring changes in existing models. Linear, nonlinear, mixed integer, mixed integer nonlinear optimizations and mixed complementarity problems can currently be accommodated. · The optimization problem should be expressible independently of the data it uses. This separation of logic and data allows a problem to be increased in size without causing an increase in the complexity of the representation. · The use of the relational data model requires that the allocation of computer resources be automated. This means that large and complex models can be constructed without the user having to worry about details such as array sizes and scratch storage. overview of GAMS and its features. Many references are made to the GAMS user's Guide book, but they are only to tell you where to look for more details; the material here can be read profitably without reference to the rest of the book. The example is an instance of the transportation problem of linear programming, which has historically served as a 'laboratory animal' in the development of optimization technology. It is good choice for illustrating the power of algebraic modeling languages like GAMS because the transportation problem, no matter how large the instance at hand, possesses a simple, exploitable algebraic structure. You will see that almost all of the statements in the GAMS input file we are about to present would remain unchanged if a much larger transportation problem were considered. External link: Online copy at CiteSeer equilibrium analysis. The system introduces the Mathematical Programming System for General Equilibrium analysis (MPSGE, Rutherford 1987) within the Generalized Algebraic Modelling System (GAMS, Brooke, Kendrick and Meeraus (1988)). This arrangement exploits GAMS' set-oriented algebraic syntax for data manipulation and report writing. The system based on the tabular MPSGE input format provides a compact, non-algebraic representation of a model's nonlinear equations. This paper provides an overview of the modelling environment and three worked examples in tax policy analysis. External link: Online copy Resources
|