Contact information
http://www.modelbenders.com
[email protected]
ph: 407.977.3310
Entertainment:
The entertainment industry makes wide use of simulation to create games that are enjoyable and exciting to play. These contain many, but usually not all of the components of simulation described in this article. Arcade games, computer games, board wargames, and role playing games all require the creation of a consistent model of an imaginary world and devices for interacting with that world. These simulations often appear very similar to training simulations, but differ in that their purpose is entertainment rather than practice for real-world events. This fact allows game developers the freedom to modify the laws of physics and other behaviors, rather than accurately capturing their real world equivalents. Advances in these simulations, together with the prevalence of the Internet, are allowing the creation of multi-player on-line games that pit players against multiple opponents around the world. Though the purpose of these simulations is entertainment, the technical challenges faced by their developers are just as daunting as those in the other categories.


Tank Simulator Computer Game
Courtesy of MaK Technologies, Interactive Magic, and Zombie Studios
All of the areas listed here allow systems to be understood without incurring the expenses or dangers of working with the actual system. As the benefits of simulation become more widely understood, and the complexity of modern problems increases, the user base for simulation will grow rapidly.

THE SIMULATION PROCESS

The creation and operation of a simulation was once a black art in which only experienced practitioners could claim competence and understanding. However, over the last several decades a definite process has evolved for developing, validating, operating, and analyzing the results of simulations. In this section we will describe the process illustrated in Figure 1.


Figure 1. Simulation Development Process

Define Problem Space:
The first step in developing a simulation is to explicitly define the problem that must be addressed by the model. The objectives and requirements of the project must be stated along with the required accuracy of the results. Boundaries must be defined between the problem of interest and the surrounding environment. Interfaces must be defined for crossing these boundaries to achieve interoperability with external systems. A model can not be built based on vague definitions of hoped for results.

Define Conceptual Model:
Once the problem has been defined, one or more appropriate conceptual models can be defined. These include the algorithms to be used to describe the system, input required, and outputs generated. Assumptions made about the system are documented in this phase, along with the potential effects of these assumptions on the results or accuracy of the simulation. Limitations based on the model, data, and assumptions, are clearly defined so that appropriate uses of the simulation can be determined.

The conceptual model includes a description of the amount of time, number of personnel, and equipment assets that will be required to produce and operate the model. All potential models are compared and trade-offs made until a single solution is defined that meets the objectives and requirements of the problem and for which algorithms can be constructed and input data acquired.

Collect Input Data:
Once the solution space has been determined, the data required to operate and define the model must be collected. This includes information that will serve as input parameters, aid in the development of algorithms, and be used to evaluate the performance of the simulation runs. This data includes known behaviors of working systems and information on the statistical distributions of the random variates to be used. Collecting accurate input data is one of the most difficult phases in the simulation process, and the most prone to error and misapplication.

Construct Software Model:
The simulation model is constructed based on the solution defined and data collected. Mathematical and logical descriptions of the real system are encoded in a form that can be executed by a computer. The creation of a computer simulation, as with any other software product, should be governed by the principles of software engineering.

Verify, Validate, and Accredit the Model:
Verification, validation, and accreditation (VV&A), is an essential phase in ensuring that the model algorithms, input data, and design assumptions are correct and solve the problem identified at the beginning of the process. Since a simulation model and its data are the encoding of concepts that are difficult to completely define, it is easy to create a model that is either inaccurate or which solves a problem other than the one specified. The VV&A process is designed to identify these problems before the model is put into operation.


Figure 2. VV&A Process
For the purposes of VV&A the simulation development process is divided into the problem space, conceptual model, and software model with definite transitions and quality evaluations between these stages as shown in Figure 2. Validation is the process of determining that the conceptual model reflects the aspects of the problem space that need to be addressed and does so such that the requirements of the study can be met. Validation is also used to determine whether the operations of the final software model are consistent with the real world, usually through experimentation and comparison with a know data set. Verification is the process of determining that the software model accurately reflects the conceptual model. Accreditation is the official acceptance of the software model for a specified purpose. A software model accredited for one purpose may not be acceptable for another, though it is no less valid based on its original design.

Design Experiments:
This phase identifies the most productive and accurate methods for running the simulation to generate the desired answers. Statistical techniques can be used to design experiments that yield the most accurate and uncompromised data with the fewest number of simulation runs. When simulation runs are expensive and difficult to schedule, experimental design can ensure answers at the lowest cost and on the shortest schedules.

Execute Simulation:
This is the actual execution of the designed, constructed, and validated model according to the experimental design. The simulation runs generate the output data required to answer the problem initially proposed. In the case of Monte Carlo models, many hundreds or thousands of replications may be required to arrive at statistically reliable results.

Collect Output Data:
Concurrent with the execution of the model, output data is collected, organized, and stored. This is sometimes viewed as an integral part of the model, but should be distinctly separated since it is possible to change the data collected without changing the model algorithms or design.

Analyze Data:
Data collected during the execution of a simulation can be voluminous and distributed through time. Detailed analyses must be performed to extract long-term trends and to quantify answers to the driving questions that motivated the construction of the simulation. Analysis may produce information in tabular, graphic, map, animation, and textual summary forms. Modern user interfaces have greatly enhanced this phase by displaying data in forms that can be easily understood by diverse audiences.

Document Results:
The results of the simulation study or training session must be documented and disseminated to interested parties. These parties identify the degree to which the simulation has answered specific questions and areas for future improvements.

Expand Model:
Simulation models are expensive and difficult to build. As a result, once a model is built, it will be modified for use on many related projects. New requirements will be levied, new users will adopt it, and the entire development process will be conducted many times over.

(Click to continue to the next page)