l1 - introduction - simulation 2019.ppt...statistical analysis. most analytical queuing models are...

41
1 Introduction - Simulation Simulation of Industrial Processes and Logistical Systems - MION40

Upload: others

Post on 03-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

1

Introduction -Simulation

Simulation of Industrial Processes and Logistical Systems - MION40

Page 2: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 3: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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)

Page 4: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 5: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 6: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 7: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 8: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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.

Page 9: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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)

Page 10: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 11: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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!

Page 12: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 13: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

13

Continuous simulation

State variables change continuously over time. Typically involve differential equations In this course, we will only deal with discrete event

simulation

Page 14: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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)

Page 15: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 16: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 17: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

17

Simulation software or general programming tools?Simlicity for model construction

Simulators

Simulation software

Generalprogramming

softwareFlexibility

Page 18: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

18

Decision model

Analytic solution to the problempossible?

Use analyticalsolution

yes

no

Real experimentpossible?

Desirable?

yes

noUse simulation

no

Use realexperiment

yes

Page 19: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

19

Examples of application areas

New projects System developments Problem solving Staff education Operational control

Page 20: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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)

Page 21: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

21

You cannot simulate everything

It is hard to simulate social activities in a computerized model

operational technical

social

Page 22: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 23: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 24: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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!

Page 25: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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?

Page 26: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

26

A cost/capacity tradeoff model

Process capacity

Cos

t

Cost of waiting

Cost of service

Totalcost

Page 27: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 28: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 29: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 30: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

30

Example – Two Queue Configurations

Servers

Multiple Queues

Servers

Single Queue

Page 31: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 32: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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.

Page 33: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 34: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 35: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 36: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 37: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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()

Page 38: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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

Page 39: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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)

Page 40: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

40

Properties of the Poisson Process

Page 41: L1 - Introduction - Simulation 2019.ppt...statistical analysis. Most analytical queuing models are based on the assumption of exponentially distributed service times, with some generalizations

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.