Image credit: ESG Elektroniksystem
A simulation of a system is the operation of a model of the system. The model can be reconfigured and experimented with; usually, this is impossible, too expensive or impractical to do in the system it represents. The operation of the model can be studied, and hence, properties concerning the behavior of the actual system or its subsystem can be inferred. In its broadest sense, simulation is a tool to evaluate the performance of a system, existing or proposed, under different configurations of interest and over long periods of real time.
Simulation is used before an existing system is altered or a new system built, to reduce the chances of failure to meet specifications, to eliminate unforeseen bottlenecks, to prevent under or over-utilization of resources, and to optimize system performance. For instance, simulation can be used to answer questions like:
What is the best design for a new telecommunications network?
What are the associated resource requirements?
How will a telecommunication network perform when the traffic load increases by 50%?
How will a new routing algorithm affect its performance?
Which network protocol optimizes network performance?
What will be the impact of a link failure?
The subject of this tutorial is discrete event simulation in which the central assumption is that the system changes instantaneously in response to certain discrete events. For instance, in an M/M/1 queue - a single server queuing process in which time between arrivals and service time are exponential - an arrival causes the system to change instantaneously.
On the other hand, continuous simulators, like flight simulators and weather simulators, attempt to quantify the changes in a system continuously over time in response to controls.
Discrete event simulation is less detailed (coarser in its smallest time unit) than continuous simulation but it is much simpler to implement, and hence, is used in a wide variety of situations.
Image: Autodesk
In a simulation study, human decision making is required at all stages, namely, model development, experiment design, output analysis, conclusion formulation, and making decisions to alter the system under study.
The only stage where human intervention is not required is the running of the simulations, which most simulation software packages perform efficiently.
The important point is that powerful simulation software is merely a hygiene factor - its absence can hurt a simulation study but its presence will not ensure success. Experienced problem formulators and simulation modelers and analysts are indispensable for a successful simulation study.
The steps involved in developing a simulation model, designing a simulation experiment, and performing simulation analysis are:
Step 1. Identify the problem.
Step 2. Formulate the problem.
Step 3. Collect and process real system data.
Step 4. Formulate and develop a model.
Step 5. Validate the model.
Step 6. Document model for future use.
Step 7. Select appropriate experimental design.
Step 8. Establish experimental conditions for runs.
Step 9. Perform simulation runs.
Step 10. Interpret and present results.
Step 11. Recommend further course of action.
Although this is a logical ordering of steps in a simulation study, many iterations at various sub-stages may be required before the objectives of a simulation study are achieved. Not all the steps may be possible and/or required. On the other hand, additional steps may have to be performed. The next three sections describe these steps in detail.
How to develop a Simulation Model?
Simulation models consist of the following components: system entities, input variables, performance measures, and functional relationships. For instance in a simulation model of an M/M/1 queue, the server and the queue are system entities, arrival rate and service rate are input variables, mean wait time and maximum queue length are performance measures, and 'time in system = wait time + service time' is an example of a functional relationship.
In the steps below their are so many mathematical formula and issues are being mentioned but those are really not understandable by me...So I am really sorry for adding those lines in here....!!
Almost all simulation software packages provide constructs to model each of the above components. Modeling is arguably the most important part of a simulation study. Indeed, a simulation study is as good as the simulation model. Simulation modeling comprises the following 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, i.e. will the model be used for a one-time decision (e.g.,capital expenditure) or over a period of time on a regular basis (e.g., air traffic scheduling). Identify the end user of the simulation model, e.g., corporate management versus a production supervisor. Problems must be formulated as precisely as possible.
Step 3. Collect and process real system data. Collect data on system specifications (e.g., bandwidth for a communication network), input variables, as well as performance of the existing system. Identify sources of randomness in the system, i.e., the stochastic input variables. Select an appropriate input probability distribution for each stochastic input variable and estimate corresponding parameter(s). Software packages for distribution fitting and selection include ExpertFit, BestFit, and add-ons in some standard statistical packages. These aids combine goodness-of-fit tests, e.g., χ2
test, Kolmogorov-Smirnov test, and Anderson-Darling test, and parameter estimation in a user friendly format.
Standard distributions, e.g., exponential, Poisson, normal, hyper exponential, etc., are easy to model and simulate. Although most simulation software packages include many distributions as a standard feature, issues relating to random number generators and generating random variates from various distributions are pertinent and should be looked into. Empirical distributions are used when standard distributions are not appropriate or do not fit the available system data. Triangular, uniform or normal distribution is used as a first guess when no data are available. For a detailed treatment of probability
distributions see Maria and Zhang (1997).
Step 4. Formulate and develop a model. Develop schematics and network diagrams of the system (How do entities flow through 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. For major simulation studies, experienced consultants advocate a structured presentation of the model by the simulation analyst(s) before an audience of management and system experts. This not only ensures that the model assumptions are correct, complete and consistent, but also enhances confidence in the model.
Step 6. Document model for future use. Document objectives, assumptions and input variables in detail
0 comments:
Post a Comment
Leave a comment