ADVANTAGES OF SIMULATION

Slides:



Advertisements
Similar presentations
Introduction into Simulation Basic Simulation Modeling.
Advertisements

Simulating Single server queuing models. Consider the following sequence of activities that each customer undergoes: 1.Customer arrives 2.Customer waits.
Parallel and Distributed Simulation
Modeling & Simulation. System Models and Simulation Framework for Modeling and Simulation The framework defines the entities and their Relationships that.
Experimental Design, Response Surface Analysis, and Optimization
Output analyses for single system
Event-drive SimulationCS-2303, C-Term Project #3 – Event-driven Simulation CS-2303 System Programming Concepts (Slides include materials from The.
FIN 685: Risk Management Topic 5: Simulation Larry Schrenk, Instructor.
Discrete-Event Simulation: A First Course Steve Park and Larry Leemis College of William and Mary.
Steps of a sound simulation study
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Simulation.
Simulation with ArenaChapter 2 – Fundamental Simulation Concepts Discrete Event “Hand” Simulation of a GI/GI/1 Queue.
Performance Evaluation
Discrete Event Simulation Event-Oriented Simulations By Syed S. Rizvi.
Parallel and Distributed Simulation Object-Oriented Simulation.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
SIMULATION. Simulation Definition of Simulation Simulation Methodology Proposing a New Experiment Considerations When Using Computer Models Types of Simulations.
Lab 01 Fundamentals SE 405 Discrete Event Simulation
Cmpt-225 Simulation. Application: Simulation Simulation  A technique for modeling the behavior of both natural and human-made systems  Goal Generate.
Basic Simulation Modeling II
Modeling and Simulation
Chapter 1 Introduction to Simulation
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
 1  Outline  stages and topics in simulation  generation of random variates.
Modeling & Simulation: An Introduction Some slides in this presentation have been copyrighted to Dr. Amr Elmougy.
Chapter 2 – Fundamental Simulation ConceptsSlide 1 of 46 Chapter 2 Fundamental Simulation Concepts.
Simulation is the process of studying the behavior of a real system by using a model that replicates the behavior of the system under different scenarios.
Parallel and Distributed Simulation Process Oriented Simulation.
Discrete Event (time) Simulation. What is a simulation? “Simulation is the process of designing a model of a real system and conducting experiments with.
Chapter 10 Verification and Validation of Simulation Models
Simulation is the process of studying the behavior of a real system by using a model that replicates the system under different scenarios. A simulation.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Dr. Anis Koubâa CS433 Modeling and Simulation
(C) J. M. Garrido1 Objects in a Simulation Model There are several objects in a simulation model The activate objects are instances of the classes that.
CDA6530: Performance Models of Computers and Networks Chapter 8: Statistical Simulation ---- Discrete Event Simulation (DES) TexPoint fonts used in EMF.
Advantages of simulation 1. New policies, operating procedures, information flows and son on can be explored without disrupting ongoing operation of the.
Chapter 2 Basic Simulation Modeling
CS433 Modeling and Simulation Lecture 09 – Part 02 Discrete Events Simulation Dr. Anis Koubâa 27 Dec 2008 Al-Imam.
Parallel and Distributed Simulation Process Oriented Simulation.
Csci 418/618 Simulation Models Dr. Ken Nygard, IACC 262B
ENM 307 Simulation Department of Industrial Engineering Anadolu University SPRING 2016 Chapter 1 Basic Simulation Modeling Onur Kaya END 201, Ext: 6439.
 Simulation enables the study of complex system.  Simulation is a good approach when analytic study of a system is not possible or very complex.  Informational,
1 CS 214 Modeling and Simulation Modeling. TERMINOLOGY lSystem –A group of objects that are joined together in some regular interaction or interdependence.
Clock Synchronization (Time Management) Deadlock Avoidance Using Null Messages.
MODELING AND SIMULATION CS 313 Simulation Examples 1.
CDA6530: Performance Models of Computers and Networks Chapter 8: Statistical Simulation ---- Discrete Event Simulation (DES) TexPoint fonts used in EMF.
Simulation Modeling & Simulation 33.  Simulation: It is a numerical technique for conducting experiments with certain types of mathematical models.
Introduction To Modeling and Simulation 1. A simulation: A simulation is the imitation of the operation of real-world process or system over time. A Representation.
Modelling & Simulation of Semiconductor Devices Lecture 1 & 2 Introduction to Modelling & Simulation.
Introduction to Simulation What is a simulation? A system that represents or emulates the behavior of another system over time; a computer simulation is.
PDES Introduction The Time Warp Mechanism
Computer Simulation Henry C. Co Technology and Operations Management,
OPERATING SYSTEMS CS 3502 Fall 2017
Prepared by Lloyd R. Jaisingh
Parallel and Distributed Simulation
Modeling and Simulation (An Introduction)
Chapter 1.
Simulation Department of Industrial Engineering Anadolu University
Modeling and Simulation CS 313
TexPoint fonts used in EMF.
Chapter 10 Verification and Validation of Simulation Models
Basic Simulation Modeling II
Onur Kaya END 201, Ext: 6439 ENM 307 Simulation Department of Industrial Engineering Anadolu University SPRING 2018 Chapter.
Parallel and Distributed Simulation
Discrete Event Simulation - Ch. 1
Discrete Event “Hand” Simulation of a GI/GI/1 Queue
Lecture 18 Syed Mansoor Sarwar
MECH 3550 : Simulation & Visualization
DESIGN OF EXPERIMENTS by R. C. Baker
Presentation transcript:

ADVANTAGES OF SIMULATION Most complex, real-world systems with stochastic elements cannot be accurately described by a mathematical model that can be evaluated analytically. Thus, a simulation is often the only type of investigation possible. Simulation allows one to estimate the performance of an existing system under some projected set of operating conditions. Alternative proposed system designs (or alternative operating policies for a single system) can be compared via simulation to see which best meets a specified requirement. In a simulation we can maintain much better control over experimental conditions than would generally be possible when experimenting with the system itself. Simulation allows us to study a system with a long time frame---e.g., an economic system---in compressed time, or alternatively to study the detailed workings of a system in expanded time.

DISADVANTAGES OF SIMULATION Each run of a stochastic simulation model produces only estimates of a model’s true characteristics for a particular set of input parameters. If a “valid” analytic model is available or can be easily de developed, it will generally be preferable to a simulation model. Simulation models are often expensive and time-consuming to develop. If a model is not a “valid” representation of a system under study, the simulation results, no matter how impressive they appear, will provide little useful information about the actual system.

DISADVANTAGES OF SIMULATION Each simulation model is unique In some studies both simulation and analytic models might be useful. In particular, simulation can be used to check the validity of assumptions needed in an analytic model. On the other hand, an analytic model can suggest reasonable alternatives to investigate in a simulation study.

Pitfalls to the successful completion of a simulation study Failure to have a well-defined set of objectives at the beginning of the simulation study Inappropriate level of model detail Failure to communicate with management throughout the course of the simulation study Misunderstanding of simulation by management Treating a simulation study as if it were primarily an exercise in computer programming Failure to have people with a knowledge of simulation methodology and statistics on the modeling team Failure to collect good system data Inappropriate simulation software Obliviously using simulation software products whose complex marco statement may not be well documented and may not implement the desired modeling logic

Pitfalls to the successful completion of a simulation study Belief that easy-to-use simulation packages, which require little or no programming, require a significantly lower level of technical competence Misuse of animation Failure to account correctly for sources of randomness in the actual system Using arbitrary distributions (e.g., normal, uniform, or triangular) as input to the simulation Analyzing the output data from one simulation run (replication) using formulas that assume independence Making a single replication of a particular system design and treating the output statistics as the “true answers” Comparing alternative system design on the basis of one replication for each design Using the wrong performance measures

Discrete-Event Simulation continued…

State Variables State: queue customer server State: InTheAir: number of aircraft either landing or waiting to land OnTheGround: number of landed aircraft RunwayFree: Boolean, true if runway available

Time Step Implementation /* ignore aircraft departures */ Float InTheAir: # aircraft landing or waiting to land Float OnTheGround: # landed aircraft Boolean RunwayFree: True if runway available Float NextArrivalTime: Time the next aircraft arrives Float NextLanding: Time next aircraft lands (if one is landing) For (Now = 1 to EndTime) { /* time step size is 1.0 */ if (Now >= NextArrivalTime) { /* if aircraft just arrived */ InTheAir := InTheAir + 1; NextArrivalTime := NextArrivalTime + RandExp(A); if (RunwayFree) { RunwayFree := False; NextLanding := Now + RandExp(L); } if (Now >= NextLanding) { /* if aircraft just landed */ InTheAir := InTheAir - 1; OnTheGround := OnTheGround + 1; if (InTheAir > 0) NextLanding := Now + RandExp(L) else {RunWayFree := True; NextLanding := EndTime+1;}

Problems With Time Step Approach State changes may occur between time steps Use small time steps to minimize error Multiple state changes within the same time step may be processed in the wrong order Solvable by ordering state changes within time step (this imposes more work) Inefficient Many time steps no state changes occur, especially if small time steps

Discrete Event Simulation Discrete Event Simulation: computer model for a system where changes in the state of the system occur at discrete points in simulation time. Fundamental concepts: System state (state variables) State transitions (events) Each event has a timestamp indicating when it occurs. A DES computation can be viewed as a sequence of event computations, with each event computation is assigned a (simulation time) time stamp Each event computation can Modify state variables Schedule new events

Discrete Event Simulation Computation Example: air traffic at an airport Events: aircraft arrival, landing, departure arrival 8:00 schedules processed event current event unprocessed event departure 9:15 arrival 9:30 landed 8:05 schedules simulation time Events that have been scheduled, but have not been simulated (processed) yet are stored in a pending event list Events are processed in time stamp order; why?

Events An event must be associated with any change in the state of the system Airport example: Event 1: Aircraft Arrival (InTheAir, RunwayFree) Event 2: Aircraft Landing (InTheAir, OnTheGround, RunwayFree) Event 3: Aircraft Departure (OnTheGround)

Event-Oriented World View state variables Integer: InTheAir; Integer: OnTheGround; Boolean: RunwayFree; Event handler procedures Simulation Application Arrival Event { … } Landed Event Departure Event Pending Event List (PEL) 9:00 9:16 10:10 Now = 8:45 Simulation Engine Event processing loop While (simulation not finished) E = smallest time stamp event in PEL Remove E from PEL Now := time stamp of E call event handler procedure

Example: Air traffic at an Airport Model aircraft arrivals and departures, arrival queuing Single runway for incoming aircraft, ignore departure queuing L = mean time runway used for each landing aircraft (exponential distrib.) G = mean time on the ground before departing (exponential distribution) A = mean inter-arrival time of incoming aircraft (exponential distribution) States Now: current simulation time InTheAir: number of aircraft landing or waiting to land OnTheGround: number of landed aircraft RunwayFree: Boolean, true if runway available Events Arrival: denotes aircraft arriving in air space of airport Landed: denotes aircraft landing Departure: denotes aircraft leaving

Arrival Events Arrival Process: New aircraft arrives at airport. If the runway is free, it will begin to land. Otherwise, the aircraft must circle, and wait to land. A: mean interarrival time of incoming aircraft Now: current simulation time InTheAir: number of aircraft landing or waiting to land OnTheGround: number of landed aircraft RunwayFree: Boolean, true if runway available Arrival Event: InTheAir := InTheAir+1; Schedule Arrival event @ Now + RandExp(A); If (RunwayFree) { RunwayFree:=FALSE; Schedule Landed event @ Now + RandExp(L); }

Landed Event Landing Process: An aircraft has completed its landing. L = mean time runway is used for each landing aircraft G = mean time required on the ground before departing Now: current simulation time InTheAir: number of aircraft landing or waiting to land OnTheGround: number of landed aircraft RunwayFree: Boolean, true if runway available Landed Event: InTheAir:=InTheAir-1; OnTheGround:=OnTheGround+1; Schedule Departure event @ Now + RandExp(G); If (InTheAir>0) Schedule Landed event @ Now + RandExp(L); Else RunwayFree := TRUE;

Departure Event Departure Process: An aircraft now on the ground departs for a new destination. Now: current simulation time InTheAir: number of aircraft landing or waiting to land OnTheGround: number of landed aircraft RunwayFree: Boolean, true if runway available Departure Event: OnTheGround := OnTheGround - 1;

Execution Example L=3 G=4 State Variables InTheAir OnTheGround Simulation Time State Variables RunwayFree InTheAir 1 2 3 4 5 6 7 8 9 10 11 true L=3 G=4 Time Event 1 Arrival F1 3 Arrival F2 Now=0 Processing: false 1 Time Event 4 Landed F1 3 Arrival F2 Arrival F1 Now=1 2 Time Event 4 Landed F1 Arrival F2 Now=3 1 Time Event 11 Depart F2 Depart F1 Now=8 2 true Time Event 8 Depart F1 11 Depart F2 Landed F2 Now=7 1 Landed F1 Now=4 Time Event 8 Depart F1 7 Landed F2 Time Event Depart F2 Now=11