Simulation in Operations Research
Simulation is a technique which describes a process by developing a model of that process, and then
performing experiments on the model to predict the behaviour of the process over time.
"Models are abstractions built to understand a problem before implementing a solution ." - Anonymous
An example of simulation is in computer games (e.g., chess, field combat war games, etc.). If the sequence
of events in such games were predetermined, the player would quickly learn the sequence and become
bored. One solution would be to have a large number of games stored in the program, but this could take up
an inordinate amount of memory space. The usual solution is for the game program to choose its own moves
at random. In most games, the total number of possible combinations of events or moves is so
astronomically large that this method results in each game being unique. Some other examples of a
simulated environment are planetarium shows and the environments in a museum.
Experiments performed with simulation models can have many objectives like evaluating design alternatives
for some new operating system, examining the effects of changes on an existing system, etc.
Definitions
Simulation starts when all else fails, i.e., it is a "Method of Last Resort".
Simulation is a technique of problem solving based upon experimentation performed on a model of real
world situation.
Simulation is a numerical technique for conducting experiments on a digital computer, which involves
certain types of mathematical and logical relationships necessary to describe the behaviour and structure of a
complex, real world system over extended period of time.
When should simulation be used?
Actual observation of a system may be too expensive.
The problem is too big or intricate to handle with linear, dynamic, and standard probabilistic models.
The standard sensitivity analysis is too clumsy and computationally burdensome for observing the
actual environment.
It is not possible to develop a mathematical model. Even though a mathematical model can be
formulated, a straight forward analytical solution may not be available.
It is not possible to perform validating experiments on mathematical models describing the system.
There may not be sufficient time to allow the system to operate extensively.
Simulation Modeling Steps
Step 1. Identify the Problem: Enumerate problems with an existing system. Produce requirements for
a proposed system.
Step 2. Formulate the Problem: Select the bounds of the system, the problem or a part thereof, to be
studied. Define overall objective of the study and a few specific issues to be addressed. Define
performance measures – quantitative criteria on the basis of which different system configurations
will be compared and ranked. Identify, briefly at this stage, the configurations of interest and
formulate hypotheses about system performance. Decide the time frame of the study. Identify the
end-user of the simulation model.
Step 3. Collect and Process Real System Data: Collect data on system specifications, input variables,
as well as the performance of the existing system.
Step 4. Formulate and Develop a Model: Develop schematics and network diagrams of the system.
Translate these conceptual models to simulation software acceptable form. Verify that the simulation
model executes as intended. Verification techniques include traces, varying input parameters over
their acceptable range and checking the output, substituting constants for random variables and
manually checking results, and animation.
Step 5. Validate the Model: Compare the model’s performance under known conditions with the
performance of the real system. Perform statistical inference tests and get the model examined by
system experts. Assess the confidence that the end-user places on the model and address problems if
any.
Step 6. Document Model for Future Use: Document objectives, assumptions and input variables in
detail. Document the experimental design.
Step 7. Select Appropriate Experimental Design: Select a performance measure, a few input
variables that are likely to influence it, and the levels of each input variable. Generally, in stationary
systems, the steady-state behavior of the response variable is of interest. Ascertain whether a
terminating or a nonterminating simulation run is appropriate. Select the run length. Select
appropriate starting conditions. Select the length of the warm-up period, if required. Decide the
number of independent runs – each run uses a different random number stream and the same starting
conditions – by considering output data sample size. The sample size must be large enough (at least
3-5 runs for each configuration) to provide the required confidence in the performance measure
estimates. Alternately, use common random numbers to compare alternative configurations by using
a separate random number stream for each sampling process in a configuration. Identify output data
most likely to be correlated.
Step 8. Establish Experimental Conditions for Runs: Address the question of obtaining accurate
information and the most information from each run. Determine if the system is stationary
(performance measure does not change over time) or non-stationary (performance measure changes
over time).
Step 9. Perform Simulation Runs: Perform runs according to steps 7-8 above.
Step 10. Interpret and Present Results: Compute numerical estimates (e.g., mean, confidence
intervals) of the desired performance measure for each configuration of interest. Test hypotheses
about system performance. Construct graphical displays (e.g., pie charts, histograms) of the output
data. Document results and conclusions.
Step 11. Recommend Further Courses of Action: This may include further experiments to increase
the precision and reduce the bias of estimators, to perform sensitivity analyses, etc.
Steps of Monte Carlo simulation in operation research
The technique breaks down into five simple steps:
1. Setting up a probability distribution for important variables.
2. Building a cumulative probability distribution for each variable.
3. Establishing an interval of random numbers for each variable.
4. Generating random numbers.
5. Actually simulating a series of trials.
NOTE: Advantages and disadvantages of simulation??????????