A modeling system for mathematical programming
Wilhelm F. Bürger · 1981
Mathematical programming has become an important tool for planning and decision making. Current technologies make the process of model construction and model solution slow and tedious. In this dissertation we concentrate on the model formulation process and the data management aspects of the model data in order to improve the situation and to bridge the gap between end-user and machine. The models we consider are restricted to Linear Programming (LP) models. The fundamental contribution of this research consists in the integration of concepts developed in programming language design, data base design, and man-machine interaction, and in their application to the area of operations research. We present a modeling system which uses a unified language for expressing data definition, data manipulation, and model formulation constructs. A module mechanism is introduced in order to break the modeling task into sub-tasks that can be handled separately. In particular model formulation and model data management are treated independently. A generalized model consists of a set of equations. Equations are expressed in algebraic notation. This notation is more natural to a model builder than for example the notation required for the matrix generation of LP models in commercial systems. A particular model is obtained by selecting the relevant equations. This is done by a problem definition. Models as well as model data are kept in a data base. The data handling facilities of the modeling system are based on the relational data model. A relation constructor for expressing simple queries in a non-procedural form is available. This notation is also applicable to the index constructs which appear in equations. An interactive environment is provided in order to support the design process of a model, and to allow the user to experiment with alternative problem solutions. We define a command language with which different modes of man-machine interaction can be initiated. Of importance is the browsing mode in which data definition and data manipulation facilities are available interactively. The browsing mode can be used to change or create data for different solutions, or it may be simply used to learn more about the data at hand. Results can be obtained in a short period of time. This makes the modeling system a valuable tool for decision making. The feasibility of a modeling system is demonstrated by discussing several implementation issues concerning the data base, the translator and the interpreter of a modeling system.