Introduction to Simulation K.Sailaja Kumar 1 SYSTEM SIMULATION AND MODELLING Course Code: MCA 52 Faculty : Sailaja Kumar k
Introduction to Simulation K.Sailaja Kumar 2 What is this course about?(1/3) r Simulation is a technique to analyze and predict the behavior of existing or proposed systems by experimenting with representative models of the systems. r This course is primarily about imitating the operation of real-world systems using computer programs. Our focus will be on “discrete-event” simulations.
Introduction to Simulation K.Sailaja Kumar 3 What is this course about?(2/3) r We will learn how to: m Abstract real-world systems into models m Implement models using software m Experiment design r Systems modeling requires understanding of m Basic probability, statistics, elementary calculus
Introduction to Simulation K.Sailaja Kumar 4 What is this course about?(3/3) r In practice simulation models are mostly built on computer systems. Several languages and software packages facilitate the model building and experimentation process. r The Unified Modeling Language (UML) will be used for modeling and documentation when appropriate.
Introduction to Simulation K.Sailaja Kumar 5 Course Outline r Introduction to Simulation r Simulation Examples r General Principles & Queuing Models r Generating Random-Numbers r Generating Random-Variates r Input Modelling r Verification and Validation of Simulation Models r Output Analysis for a Single Model
Introduction to Simulation K.Sailaja Kumar 6 Books r Lecture material primarily drawn from: m Discrete-Event System Simulation (Third Edition), Banks, Carson, Nelson, and Nicol, Prentice-Hall, r References m Simulation Modeling and Analysis. (Fourth Edition), Averill M Law,W David Kelton, McGraw Hill m Discrete – Event Simulation: A First Course Lawrence M. Leemis, Stephen K. Park: Pearson / Prentice-Hall, 2006.
Introduction to Simulation K.Sailaja Kumar 7 Introduction to Modeling and Simulation r What is simulation? r Systems and system Environment r Components of a system r Discrete and continuous Systems r Model of a system r Types of models r Discrete-Event System Simulation r When Simulation is the appropriate Tool r When Simulation is not appropriate r Advantages and Disadvantages of Simulation r Application areas of simulation r Steps in a simulation study
Introduction to Simulation K.Sailaja Kumar 8 What is a simulation?(1/2) r Simulation – is imitation of the operation of a real world process or system over a time period, usually using a computer r The behavior of a system over a time period is studied by developing a simulation model r Simulation modeling can be used m As an analysis tool for predicting the effect of changes to existing systems m As a design tool to predict the performance of new systems under varying sets of circumstances.
Introduction to Simulation K.Sailaja Kumar 9 What is a simulation?(2/2) r A simple Simulation model can be developed by mathematical methods. r Many real world systems models are developed using numerical computer-based simulation methods. r The simulation-generated data is used to estimate the measures of performance of the system.
Introduction to Simulation K.Sailaja Kumar 10 When simulation is the appropriate tool (1/3) r To study and experiment with the internal interactions of a complex system or subsystem r To study the effect of informational, organizational and environmental changes on a system r Knowledge gained in designing a simulation model may help to suggest improvements r Changing inputs and observing resulting outputs reveals which variables are most important and how they interact r As a pedagogical device to reinforce analytic solution methodologies r To experiment with new designs or policies prior to implementation r To verify analytic results
Introduction to Simulation K.Sailaja Kumar 11 When simulation is the appropriate tool (2/3) r Simulation can be used for the following purposes: r Simulation enables the study of experiments with internal interactions r Informational, organizational, and environmental changes can be simulated to see the model’s behavior r Knowledge from simulations can be used to improve the system r Observing results from simulation can give insight to which variables are the most important ones r Simulation can be used as pedagogical device to reinforce the learning material r Simulations can be used to verify analytical results, e.g. queueing systems r Animation of a simulation can show the system in action, so that the plan can be visualized
Introduction to Simulation K.Sailaja Kumar 12 When to use simulations?(3/3) r Simulations can be used: m To study complex system, i.e., systems where analytic solutions are infeasible. m To compare design alternatives for a system that doesn’t exist. m To study the effect of alterations to an existing system. Why not change the system?? m To reinforce/verify analytic solutions.
Introduction to Simulation K.Sailaja Kumar 13 When simulation is not appropriate (1/2) Simulation should not be used, in the case r when problem is solvable by common sense r when the problem can be solved mathematically r when direct experiments are easier r when the simulation costs exceed the savings r when the simulation requires time, which is not available r when no (input) data is available, but simulations need data r when the simulation cannot be verified or validated r when the system behavior is too complex or unknown Example: human behavior is extremely complex to model
Introduction to Simulation K.Sailaja Kumar 14 When simulation is not appropriate (2/2) Simulations should not be used: m If model assumptions are simple such that mathematical methods can be used to obtain exact answers (analytical solutions)
Introduction to Simulation K.Sailaja Kumar 15 Advantages of simulation(1/3) r Policies, procedures, decision rules, information flows can be explored without disrupting the real system r New hardware designs, physical layouts, transportation systems can tested without committing resources r Hypotheses about how or why a phenomena occur can be tested for feasibility r Time can be compressed or expanded - Slow-down or Speed-up r Insight can be obtained about the interaction of variables
Introduction to Simulation K.Sailaja Kumar 16 Advantages of simulation(2/3) r Insight can be obtained about the importance of variables to the performance of the system r Bottleneck analysis can be performed to detect excessive delays r Simulation can help to understand how the system operates rather than how people think the system operates r “What if” questions can be answered
Introduction to Simulation K.Sailaja Kumar 17 Advantages of simulation(3/3) r Once a model is built, it can be used repeatedly r Simulation data can be less costly to obtain than data from the real system r Simulation methods can be easier to apply than analytical methods r Simulation models be more general and require fewer assumptions than analytical models r Sometimes simulation is the only way to derive a solution to a problem
Introduction to Simulation K.Sailaja Kumar 18 Disadvantages of simulation r Model building requires training, it is like an art. - Compare model building with programming. r Simulation results can be difficult to interpret - Most outputs are essentially random variables - Thus, not simple to decide whether output is randomness or system behavior r Simulation can be time consuming and expensive - Skimping in time and resources could lead to useless/wrong results
Introduction to Simulation K.Sailaja Kumar 19 Disadvantages of simulation r The disadvantages are offset as follows r Simulation packages contain models that only need input data r Simulation packages contain output-analysis capabilities r Sophistication in computer technology improves simulation times r For most of the real-world problems there are no closed form solutions
Introduction to Simulation K.Sailaja Kumar 20 Disadvantages of simulation r 1. Developing non-trivial simulation models may be costly r 2. Simulation is sometimes used when analytic techniques will suffice r 3. It is possible to become over-confident with the simulated results
Introduction to Simulation K.Sailaja Kumar 21 Advantages, disadvantages, and pitfalls in a simulation study r Advantages m Simulation allows great flexibility in modeling complex systems, so simulation models can be highly valid m Easy to compare alternatives m Control experimental conditions m Can study system with a very long time frame r Disadvantages m Stochastic simulations produce only estimates – with noise m Simulation models can be expensive to develop m Simulations usually produce large volumes of output – need to summarize, statistically analyze appropriately r Pitfalls m Failure to identify objectives clearly up front m In appropriate level of detail (both ways) m Inadequate design and analysis of simulation experiments m Inadequate education, training
Introduction to Simulation K.Sailaja Kumar 22 Systems and System Environment r System: A collection of objects that are joined together in some regular interaction or interdependence toward some purpose m E.g. A production system manufacturing automobiles. m Here the machines, component parts, and workers operate jointly to produce a high quality vehicle. r System Environment: changes occurring outside the system but affecting the system.
Introduction to Simulation K.Sailaja Kumar 23 Components of a System r Entity: Is an object of interest in the system. m E.g. Banking System Customers. r Attribute: It is a property of an entity m E.g. Checking balance in their account. r Activity: Represents a time period of specified length. m E.g. Making deposits.
Introduction to Simulation K.Sailaja Kumar 24 Components of a System r State : Is the collection of variables necessary to describe the system at any time, relative to the objectives of the study. m E.g. State variables for a Bank are Number of busy tellers, The number of customers waiting in line to be served and Arrival Time of next customer
Introduction to Simulation K.Sailaja Kumar 25 Components of a System r Event: It is an instantaneous occurrence that changes the state of the system. E.g. the arrival of a new customer. r Endogenous: used to describe activities and events occurring within a system. E.g. the completion of service of a customer r Exogenous: used to describe activities and events occurring in the environment that affect the system. E.g. the arrival of a customer
Introduction to Simulation K.Sailaja Kumar 26 How to study a system?
Introduction to Simulation K.Sailaja Kumar 27 Model of a System(1/2) r Model : It is defined as a representation of a system for the purpose of studying the system. m It is a simplification of the system. r Model represents only those aspects of the system that affect the problem under investigation r Model should be sufficiently detailed to permit valid conclusions to be drawn about the real system.
Introduction to Simulation K.Sailaja Kumar 28 Model of a System(2/2) r Model contains only those components that are relevant to the study r Different models of the same system are required for the purpose of investigation changes. r It is used to m study a system to understand the relationships between its components m Predict how the system will operate under a new policy.
Introduction to Simulation K.Sailaja Kumar 29 System vs. Its Model Simplification Abstraction Assumptions Real System Model
Introduction to Simulation K.Sailaja Kumar 30 Model Classification r Continuous-time vs. discrete-time models r Continuous-event vs. discrete-event models r Deterministic vs. probabilistic models r Static vs. dynamic models r Linear vs. non-linear models r Open vs. closed models
Introduction to Simulation K.Sailaja Kumar 31 r Physical model m Prototype of a system for the purpose of study. r Mathematical Model: m Uses symbolic notation and mathematical equations to represent a system. m E.g. A Simulation Model r Simulation Models: m Static vs. Dynamic m Deterministic vs. Stochastic m Discrete vs. Continuous
Introduction to Simulation K.Sailaja Kumar 32 Model Classification r Physical (prototypes) r Analytical (mathematical) r Computer (Monte Carlo Simulation) r Descriptive (performance analysis) r Prescriptive (optimization)
Introduction to Simulation K.Sailaja Kumar 33 Types of Simulation Models r Static/Dynamic m A static simulation model, sometimes called a Monte Carlo simulation, represent a system at a particular point in time. m A dynamic simulation model represents a system as it changes over time.
Introduction to Simulation K.Sailaja Kumar 34 Types of Simulation Models r Deterministic/Stochastic m Simulation models that contain no random variables are classified as deterministic m Deterministic models have a known set of inputs that will result in a unique set of outputs. m A stochastic simulation model has one or more random variables as inputs.
Introduction to Simulation K.Sailaja Kumar 35 Types of Simulation Models r Deterministic models produce deterministic results r Stochastic or probabilistic models are subject to random effects m Typically, they have one or more random inputs (e.g., arrival of customers, service time etc.). m Outputs from stochastic models are “estimates” of the true characteristics of the system m Need to repeat experiments number of times m Need to have confidence in the results
Introduction to Simulation K.Sailaja Kumar 36 Types of Simulation Models r Discrete/Continuous m State variables change instantaneously at separated points in time E.g Bank model: State changes occur only when a customer arrives or departs m State variables change continuously as a function of time E.g. Airplane flight: State variables like position, velocity change continuously
Introduction to Simulation K.Sailaja Kumar 37 Types of Simulation Models r Continuos systems in which the changes are predominantly smooth in time Natural events (rain, change of climate etc.) Mechanical systems Electrical systems r Discrete systems in which the state variable(s) change only at a discrete set of points in time Banks Manufacturing Computer systems
Introduction to Simulation K.Sailaja Kumar 38 Types of Simulation Models r Discrete systems: Is one in which the state variables change only at a discrete set of points in time. E.g. Banking system The number of customers changes only at discrete points in time
Introduction to Simulation K.Sailaja Kumar 39 Types of Simulation Models r Continuous systems: Is one in which the state variables change continuously over a time. E.g. The head of water behind a dam The head of water behind the dam, changes for this continuous system
Introduction to Simulation K.Sailaja Kumar 40 Continuous and Discrete-event models Distance traveled by plane Time (a) Continuous-event (b) Discrete-event Number of cust. in queue Time
Introduction to Simulation K.Sailaja Kumar 41 Types of Simulation Models r Continuous simulation – Typically, solve sets of differential equations numerically over time – May involve stochastic elements – Some specialized software available; some discrete-event simulation software will do continuous simulation as well r Combined discrete-continuous simulation – Continuous variables described by differential equations – Discrete events can occur that affect the continuously- changing variables – Some discrete-event simulation software will do combined discrete-continuous simulation as well
Introduction to Simulation K.Sailaja Kumar 42 Types of Simulation Models r Discrete-event simulation: a simulation using a discrete-event (also called discrete-state) model of the system m E.g., Widely used for studying computer systems r Continuous-event simulation: uses a continuous-state models m E.g., Widely used in chemical/pharmaceutical studies r Our focus will be on discrete-event systems.
Introduction to Simulation K.Sailaja Kumar 43 Discrete-event system simulation r Discrete and continuous models are defined similarly. r However, a discrete simulation model is not always used to model a discrete system, nor is a continuous model always used to model a continuous system. r Discrete-Event System Simulation r Discrete-event system simulation is widely used and is the focus of this course. r Discrete-event system simulation is the modeling of the systems in which the state variables change only at a discrete set of points in time.
Introduction to Simulation K.Sailaja Kumar 44 Discrete-event system simulation Modeling of a system as it evolves over time by a representation where the state variables change instantaneously at separated points in time More precisely, state can change at only a countable number of points in time These points in time are when events occur Event: Instantaneous occurrence that may change the state of the system Sometimes get creative about what an “event” is … e.g., end of simulation, Make a decision about a system’s operation Can in principle be done by hand, but usually done on computer
Introduction to Simulation K.Sailaja Kumar 45 More on models r Static and dynamic models m Static models – system state independent of time m Dynamic models - system state change with time r Linear and non-linear models m Linear models – output is a linear function of input parameters r Open and closed models (a) Open Model (b) Closed Model
Introduction to Simulation K.Sailaja Kumar 46 Areas of Application Application areas of simulation r Manufacturing applications r Semiconductor manufacturing r Construction engineering and project management r Military applications r Logistics, supply chain and distribution applications r Transportation models and traffic r Business process simulation r Health care r Call-center r Computers and Networks r Games r Human Systems
Introduction to Simulation K.Sailaja Kumar 47 Steps in a simulation study r 1. Problem formulation r 2. Setting objectives of study r 3. Model building r 4. Data collection r 5. Implementation r 6. Verification – is the implementation bug-free? r 7. Validation – is the model accurate? r 8. Experimental design r 9. Production runs & analysis r 10. Evaluate if results are satisfactory r 11. Report results
Introduction to Simulation K.Sailaja Kumar 48 Steps in a Simulation Study r 1. Problem formulation m Clearly understand problem m Reformulation of the problem r 2. Setting of objectives and overall project plan m Which questions should be answered? m Is simulation appropriate? m Costs? r 3. Model conceptualization m No general guide m Modeling tools in research, e.g. UML r 4. Data collection m How to get data? m Are random distributions appropriate? r 5. Model translation m Program
Introduction to Simulation K.Sailaja Kumar 49 Steps in a Simulation Study r 6. Verified? m Does the program that, what the model describes? r 7. Validated? m Do the results match the reality? m In cases with no real-world system, hard to validate r 8. Experimental design m Which alternatives should be run? m Which paramters should be varied? r 9. Production runs and analysis r 10. More runs? r 11. Documentation and reporting m Program documentation – how does the program work m Progress documentation – chronology of the work r 12. Implementation
Introduction to Simulation K.Sailaja Kumar 50