l1 - introduction - simulation 2019.ppt...statistical analysis. most analytical queuing models are...
TRANSCRIPT
1
Introduction -Simulation
Simulation of Industrial Processes and Logistical Systems - MION40
2
What is a model?
“A model is an external and explicit representation of part of reality as seen by the people who wish to use that model to understand, to change, to manage and to control that part of reality” Pidd ”Tools for thinking”, 1996
”A Model is defined as a representation of a system for the purpose of studying the system” Banks, Carson and Nelson ”Discrete-Event System Simulation”, 1996
3
Model types
PRESCRIPTIVE - formulate and optimize the problem DESCRIPTIVE - describe the behavior of the system
(numerical) DISCRETE - state variables change only at a discrete
set of time points (assuming only a finite set of values) vs.
CONTINUOUS - state variables change continuously and smoothly over time (assuming any real values)
4
Model types (cont.)
PROBABILISTIC - a response may take a range of values given the initial state and input (uses random variables - STOCHASTIC model)
DETERMINISTIC - all variables stated with certainty, completely determined by its initial state and inputs
STATIC - represent system at one point in time DYNAMIC - describe system over time
5
What is simulation? (I)• Experiment with a model mimicking the
real world system– Ex. Flight simulation, wind tunnels, …
• In Process Design situations computer based simulation is used for analyzing and evaluating complex stochastic systems– Uncertain service and inter-arrival times
6
Other definitions of Simulation…
”Simulation is the process of designing a modelof a real system and conducting experiments withthis model with the purpose of eitherunderstanding the behavior of the system or ofevaluating various strategies (within the limitsimposed by a criterion or set of criteria) for theoperation of the system”
– From Shannon R.E., ”Systems simulation: The art andscience”, 1975
7
Other definitions of Simulation…Cont.
”The basic principles are simple enough: the analyst builds a model of the system of interest, writes computer programs which embody model and uses a computer to imitate the system’s behavior when subject to a variety of operating policies”
– From Pidd, M., ”Computer Simulation in Management Science”, Third Edition, John Wiley, New York, 1992
8
System – model - reality
We use the concept system when we refer to the part of reality that we would like to study.
We use the concept model for the picture of realitythat we create.
9
Simulation…
Generally, imitation of a system (via computer) Involves a model — validity? Does not provide an analytic solution
– Do not get exact results (bad)– Allow for complex and realistic models (good)
Approximate answer to exact problem is better than exact answer to approximate problem (good)
One cannot analytically predict the behavior of a model by using simulation (bad)
10
Steps in a simulation project
8. Experimental Design
9. Model runs and analysis
10. More runsNoYes
3. Model conceptualization 4. Data Collection
5. Model Translation
6. Verified
7. ValidatedYes
No
No No
Yes
Phase 3
Experimentation
Phase 2
Model Building
11. Documentation reporting and implementation
Phase 4
Implementation
1. Problem formulation
2. Set objectives and overall project plan
Phase 1
Problem Definition
11
Building a simulation model – general principles
The system is broken down into suitable components or entities
The entities are modeled separately and are then connected to a model describing the overall system
A bottom-up approach!
12
Simulation vs. direct experimentation with the real system Cost
– Simulation may often be cheaper alternative Time
– Simulation allows to compress or expand time Replication
– Simulations are precisely repeatable Safety
– Simulation offers risk-free environment Legality
13
Continuous simulation
State variables change continuously over time. Typically involve differential equations In this course, we will only deal with discrete event
simulation
14
Time incrementation in discrete event simulation
Two different techniques1. ”next event time advance ” approach (move clocktime to
next event-time)2. ”time slice” approach (move forward one time-step and
check if something has happened)
15
The next event time advance approach Important observation: in discrete event systems state variables only
change when a discrete event occurs For example the arrival of a customer, or a job that finish processing
Sufficient to consider the system only at these events update the state variables and advance the clock to the next event. Examines the dynamics of the system from one event to the next The simulation is based on generating times between events An event list is used for keeping track of the type and time of the next
event Allows for significant time compression in running the simulation
model allowing long time horizons to be considered with short simulation run time
16
Illustration – next event time advance
e0 e1 e2 e3 e4 e5
0 t1 t2 t3 c2c1
A1 A2 A3
S1 S2
D2
Figure 7.2 Events timeline for a single server queing system
17
Simulation software or general programming tools?Simlicity for model construction
Simulators
Simulation software
Generalprogramming
softwareFlexibility
18
Decision model
Analytic solution to the problempossible?
Use analyticalsolution
yes
no
Real experimentpossible?
Desirable?
yes
noUse simulation
no
Use realexperiment
yes
19
Examples of application areas
New projects System developments Problem solving Staff education Operational control
20
Simulation modeling Pitfalls
Too detailed model (very complicated model) Looking for solutions that does not exist (e.g. Very high
fill rates and low inventory levels) Instable and chaotic systems (simulation of systems
which are highly sensitive to parameter values)
21
You cannot simulate everything
It is hard to simulate social activities in a computerized model
operational technical
social
22
Some simple rules when not to simulate 1) The problem can be solved with common sense analysis2) The problem can be solved analytically3) It is easier (better) to perform experiments on the real system4) The cost of simulation exceeds the projected benefits5) Appropriate resources are not available for a simulation project6) There is not enough time for the model results to be useful7) Lack of data8) The model cannot be verified or validated9) Project expectations cannot be met10) System behavior is too complex or cannot be properly defined
23
Queueing theory - basics
Important queuing models with FIFO discipline The M/M/1 model The M/M/c model The M/M/c/K model (limited queuing capacity) The M/M/c//N model (limited calling population)
Priority-discipline queuing models Application of Queuing Theory to system
design and decision making
24
What is queueing theory?
Mathematical analysis of queues and waiting times in stochastic systems. Used extensively to analyze production and service
processes exhibiting random variability in market demand (arrival times) and service times
Queues arise when the short term demand for service exceeds the capacityMost often caused by random variation in service
times and the times between customer arrivals If long term demand for service > capacity the queue
will explode!
25
Why is queueing theory important?
Capacity problems are very common in industry and one of the main drivers of process redesign Need to balance the cost of increased capacity against the gains of
increased productivity and service Queuing and waiting time analysis is particularly important in service
systems Large costs of waiting and of lost sales due to waiting
Prototype Example – ER at County Hospital Patients arrive by ambulance or by their own accord One doctor is always on duty More and more patients seeks help longer waiting times Question: Should another MD position be instated?
26
A cost/capacity tradeoff model
Process capacity
Cos
t
Cost of waiting
Cost of service
Totalcost
27
Components of basic a queueing process
Calling Population Queue
Service Mechanism
Input Source The Queuing System
Jobs
Arrival Process
Queue Configuration
Queue Discipline
Served Jobs
Service Process
leave the system
28
Components of a queueing process
The calling population The population from which customers/jobs originate The size can be finite or infinite (the latter is most common) Can be homogeneous (only one type of customers/ jobs) or
heterogeneous (several different kinds of customers/jobs) The Arrival Process
Determines how, when and where customer/jobs arrive to the system
Important characteristic is the customers’/jobs’ inter-arrival times To correctly specify the arrival process requires data collection of
interarrival times and statistical analysis
29
Components of a queueing process
The queue configuration Specifies the number of queues
Single or multiple lines to a number of service stations
Their location Their effect on customer
behavior Balking and reneging
Their maximum size (# of jobs the queue can hold) Distinction between infinite
and finite capacity
30
Example – Two Queue Configurations
Servers
Multiple Queues
Servers
Single Queue
31
Multiple v.s. Single Customer Queue Configuration
1. The service provided can be differentiated Ex. Supermarket express
lanes2. Labor specialization possible3. Customer has more flexibility4. Balking behavior may be
deterred Several medium-length lines
are less intimidating than one very long line
1. Guarantees fairness FIFO applied to all arrivals
2. No customer anxiety regarding choice of queue
3. Avoids “cutting in” problems4. The most efficient set up for
minimizing time in the queue5. Jockeying (line switching) is
avoided
Multiple Line Advantages Single Line Advantages
32
Components of a Basic Queuing Process The Service Mechanism
Can involve one or several service facilities with one or several parallel service channels (servers) - Specification is required
The service provided by a server is characterized by its service time Specification is required and typically involves data gathering and
statistical analysis. Most analytical queuing models are based on the assumption of
exponentially distributed service times, with some generalizations. The queue discipline
Specifies the order by which jobs in the queue are being served. Most commonly used principle is FIFO. Other rules are, for example, LIFO, SPT, EDD… Can entail prioritization based on customer type.
33
Mitigating Effects of Long Queues
1. Concealing the queue from arriving customersEx. Restaurants divert people to the bar or use pagers, amusement parks require people to buy tickets outside the park, banks broadcast news on TV at various stations along the queue, casinos snake night club queues through slot machine areas
2. Use the customer as a resourceEx. Patient filling out medical history form while waiting for physician
3. Making the customer’s wait comfortable and distracting their attention
Ex. Complementary drinks at restaurants, computer games, internet stations, food courts, shops, etc. at airports
4. Explain reason for the wait5. Provide pessimistic estimates of the remaining wait time
Wait seems shorter if a time estimate is given6. Be fair and open about the queuing disciplines used
34
Queueing Modeling and System Design• Two fundamental questions when designing (queuing)
systems – Which service level should we aim for?– How much capacity should we acquire?
• The cost of increased capacity must be balanced against the cost reduction due to shorter waiting time Specify a waiting cost or a shortage cost accruing when
customers have to wait for service or… … Specify an acceptable service level and minimize the capacity
under this condition• The shortage or waiting cost rate is situation dependent
and often difficult to quantify Should reflect the monetary impact a delay has on the
organization where the queuing system resides
35
Analyzing Design-Cost Tradeoffs Given a specified shortage or waiting cost function the
analysis is straightforward Define
WC = Expected Waiting Cost (shortage cost) per time unit SC = Expected Service Cost (capacity cost) per time unit TC = Expected Total system cost per time unit
The objective is to minimize the total expected system cost
Min TC = WC + SC
Process capacity
Cos
t
WC
SC
TC
36
Analyzing Linear Waiting Costs
Expected Waiting Costs as a function of the number of customers in the system Cw = Waiting cost per customer and time unit CwN = Waiting cost per time unit when N customers in the
system
LCnPCWC w0n
nw
Expected Waiting Costs as a function of the number of customers in the queue
qwLCWC
37
Analyzing Service Costs
The expected service costs per time unit, SC, depend on the number of servers and their speed
Definitions c = Number of servers = Average server intensity (average time to serve one customer) CS() = Expected cost per server and time unit as a function of
SC = c*CS()
38
A Decision Model for System Design
Determining and c Both the number of servers and their speed can be varied
Usually only a few alternatives are available Definitions
A= The set of available - options
WC)(CcTCMin s,...1,0c,A
Optimization:Enumerate all interesting combinations of and c, compute TC and choose the cheapest alternative
39
The Poisson Process
The standard assumption in many queuing models is that the arrival process is Poisson
Two equivalent definitions of the Poisson process1. The times between arrivals are independent, identically
distributed and exponential2. X(t) is a Poisson process with arrival rate iff:
a) X(t) have independent incrementsb) For a small time interval h it holds that
P(exactly 1 event occurs in the interval [t, t+h]) = h + o(h) P(more than 1 event occurs in the interval [t, t+h]) = o(h)
40
Properties of the Poisson Process
41
Stochastic Processes in Continuous (Discrete) Time
X(t)=# Calls
t
Definition: A stochastic process in continuous time is a family {X(t)} of stochastic variables defined over a continuous (discrete) set of t-values (periods).
Example: The number of phone calls connected through a switch board
Definition: A stochastic process {X(t)} is said to have independent increments if for all disjoint intervals (ti, ti+hi) the differences Xi(ti+hi)Xi(ti) are mutually independent.