SIMPAC(ID:7991/)

Initial, exploratory version at SDC 


Earlier version of SIMPAC (1961 rather than 1962) that had "reference information"


Related languages
SIMPAC => SIMPAC   Evolution of

References:
  • Lackner, MR "SIMPAC: A research tool for simulation" (SDC document SP-228). Santa Monica, Calif.: System Development Corporation, March 13, 1961 view details
  • Lackner, M. R. "Toward a general simulation capability" view details Abstract: Simulation of a system by digital computer requires:
    -A model of the system which is intelligible to the student of the system while compatible with the limitations of the computer.
    -Translation of the model to computer code.
    -Movement of the model through time.
    -Recording the performance of the model.

    SIMPAC, a "simulation package," incorporates coherent techniques and devices for the accomplishment of these objectives: modeling concepts for building a computer-compatible model, a vocabulary for encoding the model, a computer program for moving the model through time and recording its performance, and an output presentation program.
    A model of a hypothetical business system has been implemented with the first version of SIMPAC for the purpose of studying management controls in a complex system.
    This paper discusses digital simulation and SIMPAC and introduces modeling concepts which may lead to a set of simulation systems, called 'Muse', which would assemble models of varying complexity from descriptive statements and analyze the models prior to simulation.
    Extract: Introduction
    Introduction
    The fundamental attraction of digital simulation to the analyst or designer of systems is that a dynamic model can be constructed whose behavior can he studied. Using traditional techniques of analysis, particular questions are asked and particular answers obtained. With a simulation model, a student of a system may see much more than end results of individual calculations. He may examine how things happen as well as what things happen.
    Problems too difficult to phrase with traditional techniques may be studied with simulation. Simple relationships may be assembled to form a model which defies traditional statement but which runs on a computer and produces a time series for every variable.
    Analysis and design have traditionally involved the use of models, such as architects plans and specifications. The first dynamic models were physical analogs; e.g., scale models. A simulation model must represent a dynamic situation. Actions as well as entities must be represented.
    Digital computers permit the implementation of dynamic, logical models; system models may be made machine interpretable and may be implemented by machines. A simulation model for a digital computer may represent entities with descriptive data and actions with algorithms -- series of individual arithmetic-logical operations upon the data. A computer is well suited for the elaborate bookkeeping involved in moving such models through time.
    Modeling and implementation have been time consuming and expensive. Several attempts have been and are being made to reduce time and expense of implementation while preserving the inherent versatility of the digital computer. This paper does not survey or evaluate these various simulation schemes but describes one such effort at System Development Corporation.
    The paper is in three parts; an introductory discussion of digital simulation; second, a description of SIMPAC, short for 'simulation package'; third, an outline of Muse, a set of simulation systems based upon general modeling concepts.
    Extract: Background
    Background
    For the purpose of studying management controls in a complex system, the Management Control Systems Project at System Development Corporation hypothesized and described an entire business system, a manufacturing concern, to be simulated on a digital computer. The Mark I business system model has been implemented with the first version of SIMPAC, which was developed and checked out in parallel with the construction of the first modules of the model.
    The problem of implementing a model of such a total system on a digital computer required the development of a method of system analysis capable of rendering the system in a form translatable to a digital simulation model and a means of implementing the model. These tools comprise a "simulation package" called SIMPAC.
    This first version of 'SIMPAC' differs in several respects from the version described in this paper. Most important of these differences is the treatment of what was called "reference information" in the earlier version. It was recognized then that all information in the model could be handled as "object information," i.e., contained in specific transient records, but it was felt that a network might become needlessly intricate if all information were so exchanged. (Some savings in running time were also involved. )
    Therefore, a means of aggregating information exchange operations had been provided in the form of "reference files. " Elimination of these reference files does away with several compromises and clarifies the operation of the system by requiring more explicit treatment of certain model components, such ns activity performers, previously handled by the reference files.
    The implementation of a digital simulation study is typically achieved in four sequential steps:
    Model construction,
    Model translation to computer code,
    Model performance,
    Performance evaluation.

    SIMPAC offers techniques and devices for the accomplishment of these objectives. They are described in the order in which they occur: modeling concepts; a vocabulary for encoding the model; a computer program for moving the model through time; and an output presentation program.
    Extract: Modeling Concepts
    Modeling Concepts
    The modeling concepts are derived from the problem of representing an aggregation of diverse activities as an information-processing system -- something which can he implemented with a digital computer.
    These observations can be made of many systems:
    - The system contains recurring activities which interact through exchange of information.
    - Activities are performed at different times or at different rates.
    - Buffers capable of storing information exist between activities.
    - A discrete performance of an activity takes place when:
         a) people or machines capable of performing the activity are assigned it, and
         b) information required for performance is accessible.
    - The duration of a discrete performance of an activity is a function of the quality and quantity of people and machines performing.
    - Records carrying transient information generated in the discrete performances of activities tend to form queues between activities performed at different times or at different rates.
    - There are more activities performed than there are people or machines who perform them.

    The controls to which these systems are sensitive are:
    Queue discipline: dictation of the order of transient records in queues, and the mode of selecting them;
    Resource allocation: assignment of activity performers to various activities they can perform; and
    Information routine: specification of the source of information input to an activity and the destination of output information.
    The basic modeling concepts are those of activity, activity performer, transient information record, and queue. A caricature of the system drawn upon these concepts places the system an information-processing context. Activities be defined as series of arithmetic-logical operations--algorithms. Activity performers may identified by quantitative and logical descriptors, and transient information records contain like descriptors by definition. Such a model is relatable to the phenomena under study and conveniently translated to computer code.

    In conducting this type of modeling:
    - Potential queues are identified,
    - Transient information in the system is identified,
    - Activities are separated from the people or machines who perform them,
    - Control activity is identified and characterized,
    - People and machines are measured in terms of their ability to perform activities.
    An activity is performed if
    - Activity performers are assigned it. These are the people or machines who can perform the activity. They are assigned by other activities (which are performed if .... etc.).
    - The transient information records required for its performance are in its input buffers. These records represent the information or physical entities required for performance.
    Activities in the system may exert direct or indirect control over other activities or merely exchange information with them.
    They may assign activity performers to and from other activities, modify the queue disciplines used by other activities when securing or storing transient information, or they may direct the flow of information by specifying input and output buffers for other activities. Extract: SIMPAC's Weltansicht
    SIMPAC is predicated upon a Weltansicht which recognizes systems as complexes of transient information, queues formed in the system's buffers by transient information records, algorithms which generate, use and destroy this information, and performers of these algorithms.

    This is a fairly general "world view" and, as a result, SIMPAC is a fairly general simulation tool.
    Muse is the name given to the project of developing a simulation capability more general and more efficient than SIMPAC. The name is appropriate in that simulation is a blend of art and science, and several - if not nine - simulation systems may be developed. These systems will be developed with more regard for pure theoretical considerations than was SIMPAC, whose development was greatly influenced by immediate, practical considerations. This is not to say that practical considerations will be ignored; they will be weighed, but the practical considerations will be tomorrow's rather than today's.
    Before introducing the special "world view" upon which Muse is based, several terms which have been used throughout this paper are defined.
    'Model' - 'A representation of an aggregate of phenomena'
    'Symbol' - 'A representation of a phenomenon'
    'Simulation' - 'Dynamic representation of dynamic phenomena'
    'System' - 'A body of phenomena'
    'Object system' - 'A system to be modeled; the system under study'
    A symbol is a representation of a unity, a whole. A model is a representation of an entirety, an aggregate whole. A simulation model is a  representation in time of an aggregate whole, a representation of a dynamic, aggregate whole.  Mere aggregations of phenomena need not be systems but may he modeled. An aggregation of phenomena is a system if it forms an organic whole.

    Weltansicht: there are things, and every thing may be from time to time, in several logical states. A logical situation is a particular pattern of certain things in certain states. Multiple occurrences of similar things in similar states may give rise to multiple occurrences of similar logical patterns and thus multiplicities of similar logical situations. Certain logical situations invite the exertion of forces which affect those things in the logical situations, destroying the situations. Thus things are created, destroyed, and placed in different states.
    The following definitions are adopted from this "world view."
    'logical situation' - 'A logical pattern formed of certain things in certain states'
    'Total logical situation' - 'The logical pattern formed of all things'
    'Event' - 'A change in a logical situation'
    'Evenement' - 'A change in total logical situation'
    'Unstable logical situation' - 'A logical situation which invites the exertion of a force'
    *Stable logical situation' - 'A logical situation which does not invite the exertion of a force'
    This definition of 'evenement' does not admit of simultaneous evenements. There may be simultaneous events, but they produce but one change in total logical situation.
    'F' - 'The class of forces'
    'Q' - 'The class of logical situations'
    'To - 'The class of things'
    Several simulation systems will be developed, based upon these concepts. In all models constructed within these systems, things and thing/ states are represented by symbols, forces are represented by algorithms, and logical situations are represented by patterns of thing/state symbols.
          in [AFIPS JCC 21] Proceedings of the 1962 Spring Joint Computer Conference in San Francisco, Ca. SJCC 1962 view details