Introduction to simulation
The word simulate means to imitate or reproduce the appearance, character, or conditions. Thus, simulation simply means the act of imitating the behavior of some situation or some process by means of something equivalent, especially for the purpose of study or personnel training. Simulation modeling has been used in a wide range of physical and social sciences and engineering fields ranging from nuclear fusion to economic forecast to space shuttle design. In computer science, simulation modeling means the technique of representing the real world by a computer program with respect to time. A simulation model is a hypothetical description of a complex entity or the internal processes, which is developed by generating the artificial history of the system and observing this history to derive inferences concerning the operation characteristics of the real system. These inferences can be in the form of mathematical, logical or symbolic relationship between the entities of the system. Simulation is generally conducted for developing a new system or modifying and updating the existing system by altering its components.
System simulation is a set of techniques that use computers to develop a framework or model which imitates the operations of various real-world tasks or processes through simulation.
Real time simulation
Real time simulation refers to a computer model of the real system i.e. physical system. It is a digital prototype of any physical model that predicts its performance in the real world. This model helps designers and engineers to understand under what conditions whether a part of the system could fail or not and if yes, it helps to determine the possible ways to overcome it and the loads it can withstand.
A system is an assembly of interconnected components which interact with each other to fulfill certain objectives. It is basically composed of input components, processing components and output components as well as feedback components in some cases in order to validate the system performance. Any system is bounded inside system boundary.
The changes or events occurring outside the system that may affect the system is known as system environment. A system that is not affected by external events is a closed system and a open system is the one that is affected by external factors. A system has following elements;
An entity refers to discrete or separate components of a system. In a system simulation, only those entities that are relevant to the study are considered.
Attributes are the properties or characteristics of an entity.
Activity is an action taken in pursuit of objective over of certain interval of time.
An event is an instantaneous occurrence which may change the state of the system. It is of two types; exogenous and endogenous. The activities and events occurring within the system are called endogenous events. The activities and events occurring in the system environment that affects the system are called exogenous events.
The state of a system can be defined as the collection of variables that describe the system at a point of time relative to the objective of the study.
For example; In a banking system, customers are the entities, the account balance is the attribute, making deposits or withdrawal are the activities, the arrival or the departure of customers are events, the number of busy tellers and the number of customers waiting for service represent the state of the system.
Continuous and discrete systems
A system can be classified into two types; continuous and discrete systems. A discrete system is the one in which the state variables change instantaneously at separated points in time. In this kind of system, the state of the system is discrete, changes at particular time points and then remain in that state for some time. An example of such a system is the number of customers in a post office: the number of customers is discrete (integer) and the number of customers only changes when someone enters the post office or finishes its business at the counter.
A continuous system is the system in which the state variables change continuously with respect to time. An example of such a system is the amount of liquid in a tank and or its temperature. Such a system can be described by differential equations. Continuous simulation is a technique to solve these equations numerically.
Types of simulation model
A simulation model is a simplified digital representation of a system. This model contains only those parts of a system that are relevant to the objectives of the study. Simulation models can be categorized into following types;
The mathematical model represents the logical and quantitative relationships of a system that are manipulated and changed to see how the model reacts. Physical models do not represent the internal properties. Mathematical analysis includes queuing theory, differential equations and linear programming.
Dynamic physical model depends upon the analogy between the system being studied and some other system of a different nature. The analogy between the systems usually depends upon underline similarities in the forces governing the behavior of the system.
Steps in simulation study:
The simulation study begins with the identification and the statement of the problem. In this stage, the policy makers, system users and system analysts interact with each others to identify the existing problems as well as future needs of the system.
Setting of objectives and overall project plans
Setting the objectives indicates determining the questions to be answered after the production of output and also determining whether the simulation is an appropriate tool or not. Similarly, the overall project plan is developed which consists statements of alternative systems to be considered and a method for evaluating the effectiveness of these alternatives. The plan also includes the number of workers needed, cost of the study and the number of days required to complete each phase of simulation study.
It means developing a conceptual model by abstracting essential features of a system in co-ordination with the needs and ideas of system users which helps to increase the credibility of the system model.
There is continuous interaction between the construction of the model and the collection of the necessary input data. The type of data required is based on the objectives of the simulation study. Whenever there is a variation in the concept or the complexity of the system model, the type of data required also changes.
The huge amount of data collected needs processing and relevant storage. For this, based on the conceptual model and data collected, a simulation model is to be developed using special purpose simulation languages like GPSS, CSMP, SIMSCRIPT, etc or general languages such as C, C++ and FORTRAN can also be used for the same purpose. Hence, model translation simply means representing the conceptual model in a computer recognizable form by the use of different computer programs.
Once the computer program or simulation model is developed, it must be checked for its functional accuracy, i.e. determining whether it is performing properly or not. In other words, verification of the system must be performed in order to build the model right. For this, the program is compiled and checked for syntax errors. The errors are debugged and a correct representation of the conceptual model is developed.
Validation is concerned with building the right model which is used for determining whether a model is an accurate representation of the real system or not. Validation is achieved by calibrating the model with the expected outcome. The behavior of the built model is set under iterative comparison with the actual system behavior and the differences are discovered which are later used to improve the accuracy of the model.
The alternatives that were predetermined are considered for simulation study. For each of these system designs that are simulated, respective decisions are made regarding the length of initialization period, the length of simulation run and the number of replications made for each runs.
Production run and analysis
The production runs and their subsequent analysis are used to estimate the measures of performance for the simulated system designs.
More runs: Based on the analysis of runs that have been completes, the system analyst determines whether additional runs are needed and the designs those runs should follow.
Documentation and reporting
Documentation can be of two types; progress documentation and program documentation. The program documentation describes how the program operates which can be used in future for modification of the program codes. Progress report provides important written history of simulation project and the chronology of work done and decisions made.
The success of this phase depends upon the successful implementation of previous phases of simulation study. The users and the decision makers usually involved in the pilot implementation of the simulation model. Feedbacks are collected for necessary modification and final implementation.
Phases of simulation study
The whole process of simulation study is carried out in four major phases namely;
The first phase of simulation study is also known as the period of discovery or orientation. It consists of step 1 (problem formulation) and step 2 (setting of objectives and overall project plan.)
It is called model building and data collection phase. It includes five consecutive steps; model conceptualization, data collection, model translation, verification and validation. A continuous interaction between the different steps and the involvement of user is necessary.
Phase 3 is also known as model running phase. It includes steps like experimental design, production runs and analysis and finally additional runs step. This phase helps to estimate the performance measures of the system.
The implementation phase or the phase 4 of simulation study consists of step 11 and step 12; documentation & reporting and implementation. The successful implementation of previous phases and the interactive involvement of users is necessary for this phase to implement successfully.
Advantages of simulation modeling:
Following are the major advantages of simulation study:
New policies, operating procedures, information flows, etc can be explored without disrupting ongoing operation of the real system.
New hardware designs, transportation systems, physical layouts, etc can be tested without committing resource for their acquisition.
Since clock is self controlled, time can be compressed or expanded to allow for a speedup or slow down of the phenomenon.
Insights can be obtained about interaction of variables and important variables to the performance.
Bottlenecks analysis can be performed to discover where the system is delayed during the process of work.
A simulation study can help understand how the system operates.
“What if” questions for a system are answered.
Limitations of simulation:
Model building requires special training. However, vendors of simulation software have been actively developing packages that contain models that only need input templates.
Simulation results can be difficult to interpret.
Simulation modeling and analysis can be time consuming and expensive.
Areas of applications:
Construction engineering and project management
Logistics, supply chain and distribution application
Transportation modes and traffic
Business process simulation
Risk analysis (insurance, portfolio…)
Network simulation (internet backbone, LAN, Wireless, PSTS…)
Discrete Event Modelling and Simulation, A practitioner's approach, Gabriel A . Wainer