INDU6311:
Discrete System Simulation
Winter 2024
Marzieh Ghiyasinasab
1
Lecture 1: What is Simulation? +
Course Logistics
2
Agenda for this class
What is simulation?
Classification of simulation models
Examples of simulation
Simulation Model Components
Administration
Course goals
Grading
Lectures, labs, project
3
Simulation is …
The imitation, on the computer, of the operations of a real system over
time
The generation and observation of an artificial history of a system to draw
inferences about the real system
Discrete-Event System Simulation, J. Banks, J. S. Carson II, B. L. Nelson
4
Simulation involves …
building a model, i.e., a representation of the
system/process under study, usually on a computer
5
Systems
What is a system?
A collection of entities that act and interact together toward the
accomplishment of some logical end. (Schmidt and Taylor, 1970)
Examples of entities: product components; people
Examples of act/interact: move around, change status (e.g.,
customer starts service), change status of others (e.g., clerk
starts serving a customer)
Examples of a logical end: produce a product, serve a customer
In practice, how should we
define a system?
Depends on objectives of study!
Will limit the boundaries (physical and logical)
of the system
Will dictate the level of detail
Example 1: Drill Press System
Objective: determine whether we should
run the drill press at a higher speed
Drilling Center
Drill Press
Arriving Departing
Blank Finished
Parts Parts
Queue
Part in Process
Example 2: Production System
Objective: determine the cause of long lead times
Cutting Painting Drilling
Arriving Center Center Center
Blank Departing
Parts Finished
Parts
Discrete vs. Continuous
Systems
Types of systems (with respect to time)
Discrete
State variables change instantaneously at separated
points in time, e.g., bank – # of customers in line
changes only when a customer arrives or departs
Continuous
State variables change continuously as a function of
time, e.g., vehicle on a highway – position and
velocity of the vehicle changes continuously
Partly discrete, partly continuous
Ways to Study a System
a model is a representation of
the system/process under study
A. M. Law, Simulation Modeling
and Analysis, Chapter 1
Simulation Modelling of
Systems
Classification of simulation models
Based on time variable
– Static (independent of time, Monte Carlo) vs
– Dynamic (evolve over time)
Based on output variables (state variables) of a dynamic system
– Discrete (System state variables change instantaneously at separate points in
time (discrete events))
– Continuous (System state variables change continuously as a function of time
(continuous events))
Example of a continuous system:
Design of a tank: simulate the filling of a liquid tank.
We would like to know at what level the tank will be in time t=100 minutes.
14
Classification of simulation models
Classification of simulation models according to input variables
– Deterministic (differential equations, mathematical programming) vs
– Stochastic (laws of probability, random events)
Static
Mathematic Mont Carlo
programing Simulation
Marcov chains
Deterministic Stochastic
Discrete event
Differential equations simulation
Dynamic
15
Classification of simulation models
Models
Deterministic Stochastic
Static Dynamic Static Dynamic
Discrete Continuous
16
Classification of Simulation
Models (based on AnyLogic)
Agent-based – “if there are many
independent objects”
System dynamics – “if there is only
information about global dependencies”
Discrete-event – “if a system is easily
described as a process’’
Mixed – if the system has all three of
the above
https://www.anylogic.com/use-of-simulation/multimethod-modeling/
Example 1: Airport
Passengers arrive/depart (go through check-in, security, boarding)
Planes arrive/depart
resources are needed to “service” a plane (runway, gate, baggage
carousel, security personnel, re-fueling, re-stock food, …)
Simulation:
https://www.youtube.com/watch?v=JuXwEbAvk2Q
18
Example 2: Manufacturing
Raw materials and parts go through machines and conveyor belts, require storage
space
Machines require operators
Simulation:
https://www.youtube.com/watch?v=xtGZgSYBstI
19
Example 3: Healthcare
Emergency rooms with patients of different acuity requiring different types of
care/beds
https://www.rockwellautomation.com/en-hu/company/news/blogs/arena-simulation-
software-can-improve-patient-care.html
20
Additional Examples
See textbooks
See
https://www.rockwellautomation.com/en-us/company/news/case-studies.html
21
Why would you
want to simulate?
22
Simulation and Analytics
A simulation model is a descriptive model: it provides a detailed representation of
the system under study
A simulation model is also a predictive model: can be used for what-if analyses
Simulation models can also be part of prescriptive modelling when combined with
experimental design or optimization
(Rossetti 2021)
23
When to use simulation?
When an exact answer is not possible. Ex: Model is stochastic in nature
When we are looking for a good answer and not the optimal one.
For:
Analyze a new system without building it;
Analyze a current system without disturbing it;
Predict the behavior and evolution of a system.
24
Example 1: Airport
Can the airport handle an increase in the number of
arriving/departing flights per day?
Is this profitable for the airport?
How many more flights can the airport handle safely?
How many additional employees need to be hired?
25
Example 2: Manufacturing
How can we reduce lead times?
Install more machines? Hire more personnel? Which
one will be more effective?
Where are the process bottlenecks?
26
Example 3: Healthcare
How can we reduce patient wait times?
Prioritize patients differently?
Create a different work schedule for doctors?
27
Advantages of simulation
After building the model, it is possible to use it frequently in order to analyse plans or future
policies.
Simulation techniques can be used to assist the analysis of any proposed system, even if the
input data is approximate and imperfect, or system does not exist.
Through using analytical models, the analyst can usually measure only a limited number of
measurement criteria of the system performance, while data generated from simulation
models is applicable to estimate any expected criterion of performance measurement.
Reduce the cost of real changes in the system
28
Disadvantages of simulation
Cost of creation of the model
Requires in-depth knowledge
Simplification of reality
29
Examples of Simulation software
Simio
Anylogic
ARENA
Introduced by Takus and Profozich in 1997
A generic discrete-event simulation language with a powerful graphical
interface.
Consists of module templates, constructed around
SIMAN language patterns, augmented by a visual front end
30
Simulation steps
1. Determine the objective of the study, i.e.
the question?
2. Define the system, i.e. the entities,
resources, etc.(Conceptual model)
3. Build the computational model
4. Verify and validate the model
5. Run multiple simulations
6. Collect, analyze and document results
31
Simulation Model Components
Entities Arena preview: all of
these are used in Arena!
Attributes
(Global) Variables
Resources
Queues
Statistical Accumulators
Events
Entities
Usually representations of real entities
(e.g., parts, customers)
Dynamic objects
Are created (e.g., simulate arrival)
Move around/change status for a while
(e.g., simulate activities)
Usually are disposed of (e.g., simulate
departure)
Entities
There might be only one kind of entity
but many realizations
For example, many different parts of the
same type
Attributes
Common characteristic of all entities
BUT
with a specific value that can differ from
one entity to another
Examples: colour, due date, priority
Arena preview: built-in
vs. user-defined variables
Variables
Reflect some characteristic of your
system
Attributes are entity labels;
variables are “the writing on wall”
Examples: # in the queue,
#of busy servers, simulation clock
Resources
Resources serve entities
Examples: personnel, equipment, space
An entity…
initially seizes some # of units of a
resource
later releases these units when service is
finished
Queues
If an entity needs a resource but the
resource is being used by another
entity, it has to wait in a queue
Example: physical space buffer in a
factory; virtual queue of patients
waiting for an appointment with a
specialist
System State
System State: collection of variables and
their values necessary to describe the
system at a particular time
Might depend on desired objectives, output
performance measures
Examples:
Machine status (idle or busy)
Number of parts waiting in queue, etc.
Events
Recall that
State: collection of variables and their values
necessary to describe the system at a particular
time
Events: change the system state, i.e., change
the values of some (or all) of the variables
Events
An event involves (or may involve):
• Changes in the state of one (several) entities.
• Changes in the list of future events.
Two types of events
"B" (bound): Consequence of another event, its
beginning is fixed.
"C" (Conditional): It cannot be programmed in
advance because it only triggers when a set of
conditions are met.
Exemple : ATM
Type
Bound/conditio
Events nal Conditions Changes in states
Exemple : ATM
Type
Bound/conditio
Events nal Conditions Changes in states
Arrival of a Add 1 customer to
B
customer queue with "waiting"
status
Starting "Free" Customer 1
C switches to "using
the use of counter and
ATM at least 1 the counter".
customer in Counter changes to
line "Busy"
Finishing The client goes to
B
the use of out. The counter
ATM changes to "Free"
Discrete-Event Simulation
State variables change instantaneously at
separated points in time
State can change at only a countable number of
points in time
These points in time are when events occur
Your turn! Give an example of
entities, attributes, resources,
variables, and events
Time at painting center: Time at drilling center: 20 seconds for circle
1 minute parts, 30 seconds for diamond parts
Blank parts
arrive at a Painting Drilling
rate of Center Center Departing
2/minute Finished
Parts
c
Course Structure,Logistics,etc.
46
Objectives
At the end of this course, the student will be able to
recognize the usefulness of simulation as a decision support tool;
structure, propose and control a practical simulation project in a real context;
become familiar with the most popular tools of the simulation approach;
interpret the results obtained from the simulation and clearly understand the limitations regarding
the analysis of these results.
47
Course Material
Course outline, various guidelines
Weekly
Lecture slides
Lab handouts
Readings
Problem sets and (most) solutions
Video tutorials
Surveys/Activities
Course announcements
Discussion board
48
Course Material
Slides will be posted on course website
based on Dr. Daria Terekhov’s slides
based on slides from the “Simulation with
Arena” textbook by Kelton, Sadowski, Zupick
based on “Simulation Modeling and Arena” textbook
by Manuel D. Rossetti
based on “Simulation Modeling and Analysis” by A.
Law
49
Required Textbook
Open-source & free!
Rossetti, M.D. (2021). Simulation Modeling
and Arena, 3rd and Open Text Edition.
Retrieved from
https://rossetti.github.io/RossettiArenaBook/
licensed under the Creative Commons
Attribution-NonCommercial-NoDerivatives
4.0 International License.
50
Other Useful Textbooks
Simulation with Arena, Kelton, Sadowski and Zupick (any
edition but latest is 6)
Discrete-Event System Simulation,
J. Banks, J. S. Carson II, B. L. Nelson, D. M. Nicol
Simulation Modeling and Analysis,
A. M. Law
51
Learning Arena – Why?
As an Industrial Engineer, you need to
know at least one simulation package!
Can’t use simulation if you can’t
implement it on the computer!
Will be added to your toolbox… and
your CV!
52
Arena Software
Before next class:
• Install/Access Arena
Student version: download at • Watch online tutorials
https://www.rockwellautomation.com/en-
us/products/software/arena-simulation/buying-
options/download.html
Full version: connect to Concordia labs
H903 and H907
H835 and H837
are reserved for lab sessions
Important for being able to use the lab:
Activate your ENCS account
• Email IT support
• Ask from room 964 H building
54
Learning Arena
Mostly on your own (graduate school!)
Videos will be posted on Moodle
lab classes – you will have to work
through a set of problems
Practice, practice, practice!!!
55
Learning to Learn Software
Labs will provide you with a worksheet
You need to learn how to use the User
Manual and Variables Guide
You need to learn how to use new
features of the software
56
Grading
GRADING POLICY
Evaluation Tool Weight
Individual Assignment(s)/quizzes 25%
Midterm 25%
Project 20%
Final 30%
Total 100%
Passing Criteria:
In order to pass the class (get a C), your cumulative score must be above 50%, and your
midterm score must be above 50%. Your final score must be above 50%.
Note that your grade on any part of the course may be verified by an oral exam
57
Course Questions:
Method I :
Post question on DISCUSSION BOARD!
If you have a question, chances are that other students do too!
You can reply to other students’ questions!
You can ask for further clarifications!
Method II : Office Hours: Mondays 11 to 12/email or email
58
Lab questions
Lab instructors' office hours
Will be announced in Moodle
59
Course Rules
60
Rule #1
If you are not here to learn or if you
plan to slack off, drop the class
You are paying lots of money for this
education, so don’t waste the opportunity
to learn skills that will help you get a job!
61
Rule #2
Be polite during class
During class, please keep your phone
silent, while the instructor, TA, or
classmate is speaking
62
Rule #3
Prerequisite: Knowledge of probability
and statistics at the undergraduate level
is required.
63
Rule #4
There will be various group work and peer-
review exercises in the class – please be
constructive and respectful of others and
act professionally!
Disrespectful or unprofessional behaviour
toward other students, instructor or client
organizations will be reported to the Dean
64
Rule #5
Academic code of conduct
https://www.concordia.ca/conduct/academic-integrity.html
Any unauthorized collaboration or use of
material will be reported
What does unauthorized mean?
See above link
Example: if an assignment is individual but you
collaborate with your friend to solve it; if you ask
another person to conduct some or all of your work
65
Assignment submission
Make sure that your files will be opened correctly
Make sure you had uploaded all requested files
Make sure you uploaded the right file
Make sure you uploaded on-time
No submission by email will be accepted
66
Getting good grades
If you need to get a certain grade for any reason, ex. A+ or need to pass the course
What to do
Participate in classes and labs
Follow the lab handouts and practices
Be an active student
Work well on assignments and exams
Study well
Not to do ?
67
CRITICAL DATES (for the 2023 winter semester)
Date Week Topic
16-Jan 1 Introduction
23-Jan 2 Simulation Fundamentals: Logic, Hand Simulation,
Randomness
30-Jan 3 Arena Lab I
06-Feb 4 Arena Lab II
13-Feb 5 Validation, Input Analysis
20-Feb 6 Lab III: Validation and Input Analysis
05-March 7 Output Analysis
12-March 8 Midterm
19-March 9 Lab IV: Output Analysis
26-March 10 Random Number Generation and comparison of
alternatives
02-Apr 11 Lab V: process analysis
09-Apr 12 Presentations
68
Questions
51