0% found this document useful (0 votes)
25 views

Discrete Event Simulation

Discrete event simulation models systems as they change states at discrete points in time. It is stochastic and discrete. An example is modeling an airport system with a single runway. Key elements include defining events like aircraft arrivals and departures that change the system state, modeling time between events stochastically, tracking the queue and whether the runway is busy over time, and collecting output statistics. Relationships between events are defined, like an arrival joining the queue if the runway is busy, or taking off from the ground if the queue is empty.

Uploaded by

Muhammad Ans
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Discrete Event Simulation

Discrete event simulation models systems as they change states at discrete points in time. It is stochastic and discrete. An example is modeling an airport system with a single runway. Key elements include defining events like aircraft arrivals and departures that change the system state, modeling time between events stochastically, tracking the queue and whether the runway is busy over time, and collecting output statistics. Relationships between events are defined, like an arrival joining the queue if the runway is busy, or taking off from the ground if the queue is empty.

Uploaded by

Muhammad Ans
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 33

Discrete Event (time) Simulation

2011.10.26
Kenneth
What is a simulation?

• “Simulation is the process of designing a model of a real system and


conducting experiments with this model for the purpose either of
understanding the behavior of the system or of evaluating various
strategies (within the limits imposed by a criterion or set of criteria)
for the operation of a system.”
-Robert E Shannon 1975

• “Simulation is the process of designing a dynamic model of an actual


dynamic system for the purpose either of understanding the behavior
of the system or of evaluating various strategies (within the limits
imposed by a criterion or set of criteria) for the operation of a system.”
-Ricki G Ingalls 2002
2
What types of simulation are there?

3
Simulation Types

1. Static or dynamic models

2. Stochastic or deterministic models

3. Discrete or continuous models

4
Static vs. Dynamic

• Dynamic
• State variables change over time (System
Dynamics, Discrete Event)

• Static
• Snapshot at a single point in time
(optimization models, etc.)
5
Deterministic vs. Stochastic

• Deterministic model
• The behavior is entire predictable. The
system is perfectly understood, then it is
possible to predict precisely what will happen.

• Stochastic model
• The behavior cannot be entirely predicted.
6
Discrete vs. Continuous

• Discrete model
• The state variables change only at a
countable number of points in time. These
points in time are the ones at which the event
occurs/change in state.
• Continuous
• The state variables change in a continuous
way, and not abruptly from one state to
another (infinite number of states). 7
Discrete Event Simulation
Dynamic Stochastic Discrete

8
How to Implement a Discrete
Event Simulation?

• Consider an example: Airport System


• A certain airport contains a single runway on
which arriving aircrafts must land.
• Once an aircraft is cleared to land, it will use
the runway, during which time no other
aircraft can be cleared to land.
• Once the aircraft has landed, the runway is
available for use by other aircraft. The
landed aircraft remains on the ground for a
certain period of time before departing. 9
An Example: Airport System
Single Server Queue

Server Queue Customers

Ground
 Customer (aircraft)
 Entities utilizing the system/resources
 Server (runway)
 Resource that is serially reused; serves one customer at a time
 Queue 10
 Buffer holding aircraft waiting to land
An Example: Airport System
Single Server Queue

Server Queue Customers

Ground
 Performance metrics
• Average waiting time: average time that an aircraft
must wait when arriving at an airport before they are
allowed to land.
• Maximum number of aircraft on the ground: helps to
determine the required space of the parking area. 11
Simulation Development

• Events
• Stochastic model and system attributes
• System States
• Relationship among events
• Time handling
• Output statistics

12
An Example: Airport System
Single Server Queue

Server Queue Customers

D Sf Ss A
Ground
 Events: an instantaneous occurrence
that changes the state of a system
 Arrival (A)  Finish Service (Sf)
 Start Service (Ss)  Departure (D) 13
Stochastic Model and
System Attributes
• Customers
• Arrival process: schedule of aircraft arrivals
• Real trace
• Probability model: distribution of inter-arrival time
• i.i.d. (Independent and identically distributed )
• Uniform, normal, exponential …
• Servers
• How much service time is needed for each
customer?
• Probability model: i.i.d. and exponential distribution
• How many servers? 14
• Single
Stochastic Model and
System Attributes
• Queue
• Service discipline - who gets service next?
• First-in-first-out (FIFO), Last-in-first-out (LIFO), Priority,
Weighted-fairness (WFQ), random …
• Preemption?
• Queue capacity?
• k or infinite
• Ground
• Park time
• Probability model: i.i.d. and exponential
distribution 15
Stochastic Model and
System Attributes
• Uniform
• Given max and min
• 0 ≦ random() < 1
• = min + random() × (max - min)
• Exponential
• Given rate λ
• @p.30 of lec1.ppt

• Normal
• Asking Google
16
How to verify the correctness of
distribution generator?

ANS: you can verity it by using a program, Excel, Matlab, …

17
How to verify the correctness of
distribution generator via Excel?

• Inputting or generating sample data

• Generating pdf
• Applying “Histogram” of “Data Analysis”
• “Data Analysis” is in “Analysis Toolpack” (分析工具箱)

 18
How to verify the correctness of
distribution generator via Excel?

• Generating Broken-line graph for cdf of xi


• Generating ground truth of cdf

19
Simulation Development

• Events
• Stochastic model and system attributes
• System States
• Relationship among events
• Time handling
• Output statistics

20
System States

• System state
• A collection of variables in any time that
describe the system
• Event
• An instantaneous occurrence that changes the
state of a system State 1
Event Y Event X
Event X
Event Y
State 3 State 2
21
An Example: Airport System
Single Server Queue

Server Queue Customers

D Sf Ss A
Ground
 System States (Q:3 G:2 B:y)
 Q: # of aircrafts waiting for landing
 G: # of aircrafts on the ground
22
 B: y/n; y if the runway is busy
An Example: Airport System
Single Server Queue

Server Queue Customers

D Sf Ss A
Ground
Q:3 G:1
Q:4 G:2 A D B:y
B:y Q:3 G:2
Q:2 G:3
B:y B:y
IF Q>0 Q:3 G:3 Sf Ss 23
B:n
Simulation Development

• Events
• Stochastic model and system attributes
• System States
• Relationship among events
• Time handling
• Output statistics

24
Relationships among Events

• Each Event has a timestamp indicating when


it occurs System States

 Q: # of aircrafts waiting for landing


Arrival Event A  G: # of aircrafts on the ground
B: y/n, y if the runway is busy
@t 

N Start Service Event Ss


B? @t
Y
Q+ + B=Y

Arrival Event A Finish Service Event Sf


25
@ t+ArrivalTime() @ t+ServiceTime()
Relationships among Events

Finish Service Event Sf  System States


Q: # of aircrafts waiting for landing
@t 

 G: # of aircrafts on the ground


 B: y/n, y if the runway is busy
G+ +
Y Start Service Event Ss
Q > 0? @t
N
B=N Q--

Departure Event D Finish Service Event Sf


26
@ t+ParkTime() @ t+ServiceTime()
Relationships among Events

Departure Event D  System States


Q: # of aircrafts waiting for landing
@t 

 G: # of aircrafts on the ground


 B: y/n, y if the runway is busy
G--

27
Simulation Development

• Events
• Stochastic model and system attributes
• System States
• Relationship among events
• Time handling
• Output statistics

28
Time Handling

• How to progress Simulation time?


• Time-slices Approach
Processing Departure Event D
Finish Service Event Sf @ 00:59:06
@ 00:17:49Processing Finish Service Event Sf
Processing Arrival Event A @ 01:22:11
Arrival Event A @ 00:48:37
@ 00:02:19

A time-slice=5 min Simulation time


 Inefficient
Do Do
Nothing
Nothing
Do Do Do Do Do Nothing 29
00:00  Inaccurate
t = 00:40
00:45
00:30
00:35
00:05
00:10
00:15
00:20
00:25
00:50
Time Handling

• How to progress Simulation time?


• Event-driven Approach
Processing Departure Event D
Finish Service Event Sf @ 00:59:06
@ 00:17:49Processing Finish Service Event Sf
Processing Arrival Event A @ 01:22:11
Arrival Event A @ 00:48:37
@ 00:02:19

Simulation time
30
00:02:19
00:17:49
t = 00:48:37
Simulation Development

• Events
• Stochastic model and system attributes
• System States
• Relationship among events
• Time handling
• Output statistics

31
Output statistics

Q 0 1 0
G 0 1 0 1
B N Y N Y
00:02:19 00:17:49 00:48:37 00:59:06 00:48:37 01:22:11
Departure Event D
Finish Service Event Sf @ 00:59:06
@ 00:17:49 Finish Service Event Sf
Arrival Event A @ 01:22:11
Arrival Event A Arrival Event A
@ 00:48:37
@ 00:02:19 @ 01:12:28

Simulation time
32
Simulation Flow Chart

33

You might also like