You are on page 1of 330

Flow Chart-Example 1

 Bank with one teller; Arrival of customers follows


exponential distribution with an average of one
customer every 2 minutes. Service time follows normal
distribution with an average of 2.4 minutes and a
standard deviation of .5 minutes. Waiting line is limited
to 7 customers.
Arrival
Entity = Customer Routing Exit
Teller Waiting Line Teller Window
Frequency = e(2) min First 1 Units = 1, Capacity = 1
FIFO, Capacity = 7
Service time: N(2.4,.5) min

1
Flow Chart-Example 2
 Same bank as before, but with two tellers and 40% of arriving customers first sit at a desk and fill
out forms. Time to fill forms takes between 2.5 and 5.5 minutes. Assume total customers in the
bank cannot exceed 13.

2
Flow Chart-Example 3
 Same bank as in example 2, but with an ATM and a drive-
thru window. The waiting line for ATM is limited to 3
customers. For customers arriving at the lobby, assume
40%-40%-20% for customer directly joining the queue, sit
down to fill forms and joining the ATM waiting line,
respectively. The time to complete the ATM transaction
follows normal distribution with mean = 2 minutes, and
standard deviation =.5 minutes.
  

3
Flow Chart-Example 3
 For the drive-through line, cars arrive according to
exponential distribution with a mean of 5 minutes.
Service time for drive-thru window is triangular with
minimum of 1 minutes, mode of 2 minutes and maximum
of 5 minutes. There are only two tellers serving the two
teller windows inside the lobby of the bank and the drive-
through window. Also, assume only three cars can wait in
line for drive-thru service.

4
Flow Chart-Example 3

5
Simulation Using Promodel

ProModel is a discrete event simulation software developed by


ProModel, Inc.
It is used for evaluating, planning or designing manufacturing,
warehousing, logistics and other operational and strategic
6
situations.
System Definition

 What is a system?
----System is a collection of elements that functions
together to achieve a desired goal
 A system consists of multiple elements

 Elements are interrelated & work in cooperation

 A system exists for achieving specific objectives

7
SYSTEM to ProModel MODEL
entity arrivals

L E

entity exits
L EXIT

8
ProModel Modeling Elements
The main elements are: entity arrivals

L E
 LOCATIONS (object)
 ENTITIES (object)
L
 ARRIVALS (interaction)
 PROCESSING (interaction)
L
 RESOURCES
entity exits
L EXIT
9
ProModel™ - Sequence
 It is usually easier if you draw a picture / flow chart / etc.
 It is also usually easier to work backwards

10
ProModel™ - Sequence
Once a clear picture of what is required is defined, then
declare and define the following modules within
ProModel:
 Locations
 Entities
 Arrivals
 Processing
 Variables
 …

11
ProModel™ - Locations
 Locations represent fixed places in the system where
entities are routed for processing,delay, storage, decision
making, or some other activity.
 some type of receiving locations to hold incoming entities.
 processing locations where entities have value added to
them.

12
ProModel™ - Locations
Things to define in the Location module found under
the “Build” tab:
 Name
 Capacity – How many entities at a time
 Units – How many of this location type
 DTs – Downtime logic (covered later)
 Rules – Decision rules (FIFO, random, etc.)
 Color, size, and layout placement can be done.

13
ProModel™ - Entities
 Anything that a model can process is called an entity.
Some examples are parts or widgets in a factory,
patients in a hospital, customers in a bank or a grocery
store,and travelers calling in for airline reservations.
 The entities are often also limited in number,
depending upon the program type, so creativity may
again be required.
 Entities are discrete units that can be bundled. This
aspect is covered later.

14
ProModel™ - Entities
Things to define in the “Entities” module under the
“Build” tab:
 Name
 Speed of Travel (default is 150 fpm)
 Color, size, etc.
 Attributes are set by a separate module under “Build”
and cover locations and entities. This is a future topic
as well.

15
ProModel™ - Arrivals
 The mechanism for defining how entities enter the
system is called arrivals. Entities can arrive singly or in
batches.
 Can be a single occurrence, infinite, or anything in
between, as defined in the logic.
 Each entity entering the system will have its own arrival
protocol.

16
ProModel™ - Arrivals
Things to define for “Arrivals” under the “Build” tab:
 Entity Name
 Location of arrival
 Quantity at each arrival
 First time of arrival

17
ProModel™ - Arrivals
Things to define for “Arrivals” under the “Build” tab,
continued:
 Batch size: the number of entities arriving at a time
(Qty each).
 Frequency: the time between the arrivals of successive
entities
 Occurrences :the total number of batches of arrivals
The batch size, time between successive arrivals, and
total number of batches can be either constants or
random (statistical distributions).
 First Time:the first time that the arrival pattern is to
begin is termed
18 Logic – Special conditions, etc.

ProModel™ - Processing
This is where the meat of the program is defined.
 Processing describes the operations that take place at a
location
 such as the amount of time an entity spends there, the
resources it needs to complete processing,and anything else
that happens at the location, including selecting an entity’s
next destination.

19
ProModel™ - Processing
Things to define for “Processing” under the “Build” tab:
 Incoming Entity (one entry allowed)
 Location – where the entity is NOW
 Operation – What logical steps are to be applied to the
entity at the location above. Can be waits, updates on
tracking variables, costing, etc.
 Output – Declare the SAME entity unless you are
really intending to change entities in this step.

20
ProModel™ - Processing
Things to define for “Processing” under the “Build” tab,
continued:
 Destination – The target location. Can be more than
one, but each location is defined separately, using the
return key. If more than one location is used as a
target, you need rules for selection.
 Rule – This section defines the logic for how and
which location gets the entity, whether as a preloaded
subroutine or a user-defined subroutine.
 Move Logic – Used for Resources, primarily.

21
ProModel™ - Variables

 Variables are used for tracking system, location and


entity performance.
 Can be used for verification purposes.
 Essentially there is no limit on the number of variables
that can be issued.

22
VARIABLE (continued)
 
INC/DEC statements +, -, / , *, =
 INC variable ID,  Valid in any logic field
increment value DEC (operation, move logic)
variable ID, decrement
value
 default
increment/decrement
value is one.

23
ProModel™ - Variables
Things to define for “Variables” under the “Build” tab:
 ID – Declares the variable name
 Type – Integer or real, default is integer
 Initial Value
 Notes – Useful for large programs to track what this
variable is supposed to do.
 Icon – This tells you when a counter appears on the
layout.

24
ProModel™ - other elements
 More items available, and to be discussed later:
 Resources – Forklifts and the like.
 Path Networks – used to constrain movements
within a shop model, for example.
 Arrays, Macros, User Distributions, etc. help
convert the process into a definable model.
 Background Graphics can be used for labeling and
identifying components in a layout.

25
ProModel™ - Distributions

Distributions are declared in ProModel shorthand,


thusly:
 N(12,3) means a normal distribution with mean 12
and standard deviation of 3.
 U(10,1) means a uniform distribution with a center
of 10 and a half-width of 1 (ranges from 9 to 11).
 T(1,2,3) means a triangular distribution with a
minimum of 1, a mode of 2, and a maximum of 3.
 E(5) means an exponential distribution with a
mean time between events of 5.

26
ProModel™ - Distributions

 All distribution types have theoretical expected values


and variances

 The expected values are to be used for model


verification in comparison to the model-generated
confidence intervals.

27
Limits of ProModel Student version

 20 Locations
 8 Entity Types  
 8 Resource Types  
 5 Attributes
 15 RTI parameters

28
Building your First Model
Customers visit the neighborhood barbershop Fantastic
Dan for a haircut.
The customer interarrival time is triangular distribution
with min 7, mode 8, and max 9
Dan (the barber) takes anywhere from 8 to 10 minutes,
uniformly distributed (mean and half-width of 9 and 1
minute respectively) for each haircut.This time also includes
the initial greetings and the transaction of money at the end
of the haircut.
Run the simulation model for one day (480 minutes). Find
these answers:

29
Cont…

30
Cont…

31
Cont…
Locations
window

32
Cont…

33
Cont…

34
Cont…

35
Cont…

36
Cont…

37
Cont…

38
Cont…

39
Cont…

40
Cont…

41
42
Cont…

43
44
45
46
Cont…

47
Cont…

48
49
Cont…

50
Cont…

51
Cont…
a. About how many customers does Dan process per day?
Entity summary
total exits=52 customer

b. What is the average number of customers waiting to get a


haircut? What is the maximum?
Location summary
Waiting line
Average contents=2.73
Maximum contents=6

52
Cont…
c. What is the average time spent by a customer in the
salon?
Or The average time spent by a customer in the barbershop?
 32.28 minutes

Entity summary
average time in system(min) = 30.13
average time in system(min)=
average time waiting + average time in operation + average time blocked
d. What is the utilization of Barber Dan?
Location summary
Dan, utilization= 98.07%

e 53
Cont…
e. Explain the difference between total entries and total
exits?
Total entries=59, total exits=52, and the currently
quantity in system =7

f. What is the average time a customer spends waiting


for Barber Dan? Or What is the average customer
waiting time in the queue?
Location summary
Waiting line
Average time per entry(min) =22.25 min
54
 Warm up period : the time that the simulation will run
before starting to collect results.
 The warm-up time refers to the amount of time to let the
simulation model run to achieve steady state
 behavior. Statistics are usually collected after the warm-up
period is over.
 The run time begins at the end of the warm-up period

55
56
 Repeat the simulation for Dan’s barber model by using a
warm up period = 2 hours

57
 Note that the simulation runs for 2 hours ( which is the
warm up period)+ run time ( 8 hours)

58
 Replicates : the repetition of a test or complete
experiment with different random number seeds

59
[9.85, 7.91]

60
61
 Repeat the simulation for Dan’s barber model with
replicates = 5

62
 The results are shown for average of repetitions.

 If you want to see each repetition alone, you can choose it


by clicking on this part

63
Another Example_ Bank with one teller
 Bank with one teller; Arrival of customers follows
exponential distribution with an average of one
customer every 2 minutes. Service time follows
normal distribution with an average of 2.4 minutes
and a standard deviation of .5 minutes. Waiting line
is limited to 7 customers. Simulate the operation
from 11 a.m. to 1 p.m. Let the warm-up period be 2
hours with 30 replicates

64
Modeling Bank with
one teller

65
Modeling the problem: Entities

66
Locations

67
Processing

68
69
Arrivals

70
Another Example_ Bank with one teller

71
Another Example_ Bank with one teller

72
Another Example_ Bank with one teller

73
Another Example_ Bank with one teller
 Out put

74
Another Example_ Bank with one teller

Find the following using your results

75
Another Example_ Bank with one teller

Find the following using your results

76
Another Example_ Bank with one teller

77
Errors may occur

Solution: Conveyor: double click : queue

Solution: build, arrivals, occurrences: inf


Or build, arrivals, qty each: 1

78
Another Example_ Bank with two teller
 Same bank as before, but with two tellers and 40% of
arriving customers first sit at a desk and fill out forms
with capacity of 3 . Time to fill forms takes between
2.5 and 5.5 minutes. Then two teller will be to serve
them . Assume total customers in the bank cannot
exceed 13.

79
Another Example_ Bank with two teller
 Same bank as before, but with two tellers and 40% of
arriving customers first sit at a desk and fill out forms
with capacity of 3 . Time to fill forms takes between
2.5 and 5.5 minutes. Then two teller will be to serve
them . Assume total customers in the bank cannot
exceed 13.

80
Note the teller_window
includes two units inserted
81
below .
82
Here, The entity picture is replaced with four graphics, each one
with different color. Uncheck new, then choose the picture with
its color

Graphic 3
Graphic 1

83
Graphic 2 Graphic 4
84
85
customer at desk will
go to teller waiting line
so first 1 teller line and
no need for blk number
for desk

1 refers to that there is one route is allowed not both of them, either
getting to the desk or to the waiting line. one route ONLY is allowed.
Randomly selects a location listed in a block of routings based on a
probability. Several probability routings should be used together and the
sum of
86
all probabilities must equal one. The entity will wait to be routed
87
88
89
90
Another Example_ Bank with two teller

91
Another Example_ Bank with two teller

92
Another Example_ Bank with two teller

93
Another Example_ Bank with two teller

94
Another Example_ Bank with two teller

  Lobby
Total number of customers served = 59.33

Average length of waiting line = .4 customers


Average wait time for all customers including 0. 76 + 0.01 = 0.77 minutes
ones still in the bank (minutes) = (avg wating timeon queue + door)
% of time waiting line is empty = 74.57%
% of time waiting line is full = 0%
% of time desks are empty = 45.16%
% of time desks are full = 4.43%
Utilization of teller windows: Window # 1 =67.59%, Window #2 = 50.72%, Overall = 59.15%
95
Another Example_ Bank with two teller

96
Another Example_ Bank with two teller
 Errors

 In process, in line 2: wait U(4, 1.5)


 In line 4 : wait N(2.4, .5)
 In same arrange

97
ProModel™ - Attributes
 Two types: Entity and Location. Entity is more
common.
 Attributes can be examined and acted upon by the
logic in any part of the program from arrivals to
departures.
 Some examples of attributes are part type, customer
number, and time of arrival of an entity, as well as
length, weight, volume, or some other characteristic
of an entity.
 Attributes of an entity are copied over whenever an
entity is cloned. This happens when entities are split,
for example.
98
ATTRIBUTES
 Carry information about the object (entity, location), either
for decision making or for output reporting
 Are assigned to and stay with entities
 Defined at: Build | Attribute
 Assigned to entities at: Build | Arrivals – Logic
 Used and Modified during the simulation at: Build |
Processing
• Reflect changing values
• Gather information
• Location rules / routing rules…
• If…then, etc.
99
ProModel™ - Attributes
 Within ProModel, select the Attribute field from the drop-
down Build menu.
 The required elements are “name”, “type” (integer/real),
and classification.
 Values are assigned in the logic.
 Attributes are especially useful when assigning a user
condition for routing.

100
Decision Statements
 In ProModel you can make use of several general
control statements for decision making. ProModel
meets the modern standards of
structured program design.
sequences, decisions, and loops:

• Sequences: Program statements are executed one


after another.
• Decisions: One of two blocks of program code is
executed based on a test for some condition.
• Loops: One or more statements are executed
repeatedly as long as a specified condition is true.
101
IF-THEN-ELSE Statement
 An IF block allows a program to decide on a course of
action based on whether a certain condition is true or
false.
 A program block of the form:
IF condition THEN
action1
ELSE
action2

102
continued
 WHILE-DO Loop
The WHILE-DO block repeats a group of statements
continuously while a condition remains true. If the condition
is false, the loop is bypassed.
 DO-WHILE Loop
The DO-WHILE block repeats a group of statements
continuously while a condition remains true. This loop will
be executed at least once; use it for processes that will be
executed at least once and possibly more.
 GOTO Statement
The GOTO block jumps to the statement identified by the
designated label. A label should follow the normal rules for
names. A colon follows a label.

103
Example _Using Attributes and IFTHEN to Track Customer
Types

Problem Statement:
Customers visit the neighborhood barbershop Fantastic Dan
for a haircut. Among the customers there are 20 percent
children, 50 percent women, and 30 percent men. The
customer interarrival time is triangularly distributed with a
minimum, mode, and maximum of seven, eight, and nine
minutes respectively. The haircut time (in minutes) depends
on the type of customer and is given in following Table. This
time also includes the initial greetings and the transaction of
money at the end of the haircut. Run the simulation model
for one day (480 minutes).
104
Example _Using Attributes and IFTHEN to Track Customer
Types
Problem Statement:
Note that the haircut time (in minutes) depends on the type of
customer. This differs than the previous example, the hair cut
was the same for all. So we didn’t need attributes their but here
we need it.

Build attributes : attr1


Build more elements: user distribution, ID= customer_type
Build arrivals: logic: attr1= customer_type

105
The Haircut Time for All
Customers

106
Cont…
a. About how many customers of each type does Dan
process per day?
b. What is the average number of customers of each type
waiting to get a haircut? What is the maximum?
c. What is the average time spent by a customer of each
type in the salon?
What is the maximum?

107
Modelling
Build:
 Locations: 1. customer line 2. Dan
 Entities : 1. customer 2. children ( graphic 1)
3. Women ( graphic 2) 4. men ( graphic 3)
 Attribute : attr1
 More elements => user defined table, ID= customer_type
 Arrivals : logic: attr1= customer_type
 Processing
 Simulation option

108
109
110
111
User Defined Tables

112
User Defined Tables

113
Its better to write it at Logic window to assure
that the same names are taken

114
To allow three routs, first 1 must be selected for the
three types of customer not only for the first type.
This is done by routing rule, start new block.
Uncheck new entity, if it is unchecked, the * appears
near the route, and the route is undefined. Quantity is
Don’t forget wait 1
If * appears in route 2 and 3, there will be an error in
simulation, routes undefined

3 route for each type of customers


because they are independent of
115
each other
 In processing:

 If attr1=1 then
{ Graphic 1 Route 1}

Else
{ If attr1=2 then
{Graphic 2 Route 2}

Else
{Graphic 3 Route 3 }}

116
117
897\8

118
119
solution

Same as route 2
120
Simulation outputs

121
Cont…
a. About how many customers of each type does Dan
process per day?
Customer type: total exits
Children: 7
Women: 22
Men:15
b. What is the average number of customers of each type
waiting to get a haircut? What is the maximum?
Here the average and maximum for all customer types
because the arrivals are customer not customer- type
for the waiting line
122
Cont…
Average : 7.05
Maximum: 16

c. What is the average time spent by a customer of each


type in the salon?
Customer type: average time in system
Children: 49 min
Women: 68.25 min
Men:67.71 min

123
Other way
 Using Attributes and IFTHEN to Track Customer
Types
 But this way don't track each type of customers
 The difference in building process

124
No operation
The output is customer and there is one
route only

125
The output is customer

The entity is customer to Dan

Wait instead of route

126
 If Attr1
= 1 Then
{Graphic 1 WAIT U(8, 2)}

Else
{If Attr1 = 2 Then
{ Graphic 2 WAIT U(12, 3) }

Else
{Graphic 3 WAIT U(10, 2) }}

127
128
cannot track each type of customers

129
cannot track each type of customers

130
131
Cycle Time
 The Clock and Log are functions built into ProModel to
allow us to keep track of system events such as cycle
time, lead time, or flow time within the system.
 The Clock function returns the current simulation clock
time in hours, minutes, or seconds.
 The value returned is real.
 The Log function is used to subtract an expression from
the current simulation clock time and stores the result
with a text string header.
Time_In = Clock()
Log "Cycle Time =", Time_In

132
Example : Clock and log model
 Clients visit the neighborhood center for a haircut Client
interarrival time is uniformly distributed with a mean and
half width of 2 and 1minutes respectively. The center
opens from 8 a.m. to 4 p.m.
 At the first six hours from the opening the client visit
the teller in the auditor window then go to the next
teller at service 1 window. The related service time at
each window are given in following Table.
 Then from 2 p.m to 4 p.m the service changes to, so
client visit the teller in loan window to get it, then go
to the next teller at service 2 window The related
service time at each window are given in following
Table
133
Activity / service time TIME ( min)
Auditor window T(5,6,8)
Service 1 window U (1,2)
Loan window T (4.5,5,7)
Service 2 window N(2.1,1.3)

Run the simulation model for one day (480


minutes) and define a log that save the
cycle time of All clients
a) What are the average, maximum and minimum cycle
times for the clients?
b) What are the average, maximum and minimum cycle
times for the clients in each route?
134
Example : Clock and log model
Build
 location

1. Indoor 2. Outdoor 3. Auditor 4. Service


5. Loan 6. Service 2
 entities
 arrivals
 attributes : ct stands for cycle time and it is used in
process
 Build process
Initially: If clock(hr) <= 6 Then { Graphic 1 Route 1}
Else { Graphic 2 Route 2}
ct= Clock(min)
Finally
135 log ”cycle time ”, ct
136
137
138
139
140
Client loan will not go
to auditor so 2 routes
are introduced

141
142
results

143
Results
Total exit 78 client
Avg time in system 12.42 min
Avg time per entity at loan 5. 20 min
window
Total entries 22 clients
Avg time per entity at auditor 6.40 min
window
Total entries 58
Log
Max 477.8
Min 8.34
Avg 250.33
Number of observation 78
144
145
ProModel™ - Arrival Cycles

 Used to meter arrivals, such as when lot sizing is


used
 Used to create a variable arrival cycle. This can
model the customer flow to more accurately reflect
peak vs. slow periods.

146
ProModel™ - Arrival Cycles

Build -> More Elements -> Arrival Cycles


Fields:
 ID – The user-defined name
 Qty /% - Defines the basis for the total number of
arrivals per cycle occurrence
 Cumulative – Selects whether the cumulative
format is used for the data table.
 Table – Forwards the user to the edit field.

147
ProModel™ - Arrival Cycles
Table Editing
 Two fields: Time and Qty / %.

The time field is always cumulative in terms of hours.


 The arrivals are randomly spaced within the arrival
band.
 Once the table is defined, the next task is to summon
it from the Arrivals menu.

148
ProModel™ - Arrival Cycles
Arrivals Editing
 The fields affected are the Qty each, Number of
Occurrences and Frequency
 Qty Each – Use the expression for the numerical quantity
for the whole cycle, and select the cycle by name from the
drop-down menu.
 Number of Occurrences – Defines the number of cycles
expected per simulation run
 Frequency – Sets the time between the start of on cycle
until the start of the next cycle. This must be longer than
the cycle time or you will get a runtime error.

149
ProModel™ - Arrival Cycles
Problem Statement:
Customers visit the neighborhood barbershop Fantastic Dan
for a haircut. Among the customers there are 20 percent
children, 50 percent women, and 30 percent men. If the arrival
quantity of customers is normally distributed with an average
of 100 and standard deviation of 5 minutes respectively. the
number of times to repeat the cycle is infinite and the time
between the start of each cycle is 30 hours.
The haircut time (in minutes) depends on the type of customer
and is given in following Table. This time also includes the
initial greetings and the transaction of money at the end of the
haircut. Run the simulation model 60 hours
150
ProModel™ - Arrival Cycles

151
Customer Arrival Pattern at Fantastic Dan

152
Customer Arrival Pattern at Fantastic Dan

153
Customer Arrival Pattern at Fantastic Dan

154
Customer Arrival Pattern at Fantastic Dan

155
Customer Arrival Pattern at Fantastic Dan

156
157
error

solution

158
a. About how many customers of each type does Dan
process per day?
b. What is the average number of customers of each type
waiting to get a haircut? What is the maximum?
c. What is the average time spent by a customer of each type
in the salon?

159
160
Multicapacity locations.
 Locations are modeled as a single unit with
multicapacity.
 All elements of the location perform identical
operations.
 When one element of the location is unavailable due
to downtime, all elements are unavailable. Only
clock-based downtimes are allowed.

161
Multiunit Locations.
 Locations are modeled as single capacity but
multiple units.

 These are locations consisting of two or more parallel and


interchangeable processing units.
 Each unit shares the same sources of input and the same destinations for
output.
 This method provides more flexibility in the assignment of downtimes
and in selecting an individual unit to process a particular entity.

162
Multiple, single-capacity locations
 Locations are modeled as individual and single
capacity.
 Usually noninterchangeable locations are modeled
as such.
 By modeling as individual locations, we gain the
flexibility of modeling separate downtimes for each
element.
 In addition, we now have complete flexibility to
determine which element will process a particular
entity.

163
Multi-Unit / Multi-Capacity / Multiple
Locations

Single Unit LL Single Unit


L Single Capacity Multi-Capacity

L L Multi-Unit LL LL
Multi-Unit
Single-Capacity LL L Multi-Capacity
L L L

164
IAT T(7, 8, 9)
Simulation run (8 hr)

Service time
U (5,1)

165
Single unit
Single capacity

Single unit
multicapacity

166
Multiunit
Single capacity

Multiunit
Multicapacity Multi location or multiple
location

167
Single unit
Single capacity

168
Single unit
Multiple capacity

169
Multiple unit
Single capacity

170
Multiple location
Multiple capacity

171
Comparison of Techniques
Multiunit/multi capacity Single unit/ single capacity

Single unit/ Multi capacity Multi unit/ Single Capacity

172
Entity and Entries
 ENTITY()
 Use ENTITY() to determine what type of entity is
processing when an entity type of ALL is specified at a
location.
 ENTITY(value)
 ENTITY(3) returns the name-index number of the third
entity in the group.

173
Example
 All cars from the motor pool must be washed after
sending to parking. All cars except vans require 5 minutes
to wash, and vans require an 20 minutes.
 All interarrival time is exponentially distributed of 1 min
 Wait 1 minute in parking for all.
 Simulate for 8 hours.
 1. how many cars and vans being served?
 2. what is the average total time spent in the system for
cars and vans.
 what is the average time for all at washing and
parking locations.
174
Example
 All cars from the motor pool must be washed after
sending to parking. All cars except vans require 5 minutes
to wash, and vans require an 20 minutes.
 The cars interarrival time is exponentially distributed of 1
min
 Wait 1 minute in parking for all.
 Simulate for 8 hours.
 1. how many cars and vans being served?
 2. what is the average total time spent in the system for
cars and vans.
what is the average time for all at washing and
parking locations.
175
176
177
178
Entries()
 Returns the total entries to a location. This function
returns an integer
 All cars from the motor pool must be washed after
sending to parking. All cars except vans require 5 minutes
to wash, and vans require an 20 minutes.
 All interarrival time is exponentially distributed of 1 min
 Wait 1 minute in parking for all.
 Before washing processes 10 entities, the entity is car and
we want to wait 5 minutes.
 After washing processes 10 entities, the entity is van and
we want to wait 20 minutes.
179
180
181
Move Logic
Four choices of constructs are available in the Move Logic
field:
• MOVE—to move the entity to the end of a queue or
conveyor.
• MOVE FOR—to move the entity to the next location in
a specific time. Move for 1 min
• MOVE ON—to move the entity to the next location
using a specific path network.
• MOVE WITH—to move the entity to the next location
using a specific resource (forklift, crane).

182
Poly Furniture Factory
 Wooden logs are received at the receiving dock of the Poly Furniture
Factory at the rate of one every 10 minutes.

 Logs go to the splitter, where four pieces are made from each log.
The splitting time is Normal (4,1) minutes.

 The individual pieces go to the lathe, where they are turned for
another Triangular (3,6,9) minutes and made into rounds.

 The rounds go on to a paint booth, where they are converted into


painted logs. Painting takes Exponential (5) minutes. Painted logs go
to the store.

Consider a material handling time of one minute between each


process.
Make a simulation model and run the simulation for 10 hours.

183
Poly Furniture Factory

The solution is on user guide promodel

184
Poly Furniture Factory
Wooden logs are received at the receiving dock of the Poly
Furniture Factory at the rate of one every 10 minutes.

Wooden Logs go to the splitter, where four pieces are made from
each log. The splitting time is Normal (4,1) minutes.

The Wooden logs either they go to the bin then to lathe , or they
directly go to the lathe for Triangular (3,6,9) minutes.

TheWooden logs go on to a paint booth. Painting takes


Exponential (5) minutes. Then the Wooden logs go to the store.

Consider a material handling time of one minute between each


process.
The capacities for all locations are 1
Make a simulation model and run the simulation for 10 hours.
185
186
187
188
189
Bin will go to lathe so
first 1 for lathe and no
need for blk number

190
191
192
ProModel™ - Resources
A Resource is person, L E
equipment item, or
device that performs the
following functions: L
 Entity transport
 Assisting in operations
L
(such as an inspection)
 Location maintenance
 Resource maintenance L EXIT

193
ProModel™ - Resources
 Resources can consist of one or more units with common
characteristics, such as a group of forklifts.

 Resources can be dynamic (requiring a path network) or


static. Downtimes are also included as part of the model.

 Resources have names and name-index numbers. Path


networks also have names and nodes.

194
ProModel™ - Resources

Static Resources
 Will appear in only one location during the
operation of the model, however, it can be used
logically to move entities between locations.
 There is no status light, but the resource will be
green when in use and red when down (if no other
graphics are used).

195
ProModel™ - Resources
Dynamic Resources
 Requires definition of the Path Network before
creation, since it will be referenced in the
Specifications dialog box.
 The Specifications dialog box defines the rules by
which the resource will operate.
 Each Resource is defined using the Build ->
Resources task sequence

196
ProModel™ - Resources
Fields for Building Resources, continued
 Specs – Provides exact details for Resource
implementation. set the speed, and define pickup /
delivery times.
 Search – Separate from the one in Specifications, this
refers to the work search (where the jobs are) or the
park search (where idle time is allowed)
 Logic – Logic defined for when networks are
accessed or left, to define any optional logic to be
executed whenever a resource enters or leaves a
particular path node
 Pts – Used for graphical location of icons where
multiple resources may appear graphically
197
ProModel™ - Resources
Specs, continued
 Resource and Entity Search – These define the rules for
selecting the next resource and entity to be used.
 Motion – These define the speeds and handling times for
entities processed by the resource.

198
Static Resources
 In each move logic put
 MOVE with Forktruck for 1 min THEN FREE

 Note
 If the resource is static, a time (FOR <time>) may be
specified for the move.
 The resource used to make the move is only freed if
the THEN FREE option is used.
 At the exit don’t use .

199
ProModel™ - Resources
Fields for Building Resources
 Name – The user-defined name of the resource
 Units – The program will give it a suffix similar to the
location 1
 DTs – As for Locations, Clock and Usage only. Individual
units can be selected.
 Stats – The desired statistics, if any, to gather for this
resource. Statistics can be collected over all units of a
resource, or individually for each

200
201
202
203
ProModel™ - Resources
Dynamic Resources
Resource Searches:
 Work Search – A list of locations where entities are
waiting for pickup. Can be exclusive (can only service its
list), or non-exclusive (will default to the Resource
Search rule if no work is available in its list)
 Park Search – A list of nodes where the resource will
park if no work is available

204
ProModel™ - Path Networks
 Select from Build -> Path
Networks
 Name – The network name
 Type - Passing or non-passing,
where the network segment has
to be clear to run a resource
along it
 T/S – Selects the basis for
measuring movement along the
node, either as Time or Speed
and Distance

205
ProModel™ - Path Networks
 Paths – The number of path segments in the network.
Clicking on the heading button opens the edit table
 Interfaces - The number of location-node interfaces
in the network (entity dropoff / pickup points)
 Mapping – Used to specify nodes for restricting
movements
 Nodes – The number of nodes in the network,
controlled using the Node Edit table

206
ProModel™ - Path Networks
Path Segment Editing
 From and To - The beginning and ending segment nodes.

 BI – Used to specify whether uni- or bi-directional travel


is allowed on the segment.
 Distance (or Time) – The specified distance between the
nodes. Default is based on the network graphic layout

207
ProModel™ - Path Networks
Interface Editing
 Node - The node number
 Location – Used to specify what location is attached
to a node number. Locations can be only interfaced
with one node, but a node can be interfaced with
multiple locations
 Mapping Editing – Multiple-branch networks will
select paths with the minimum path length. Mapping
forces a specified path for a given node destination.

208
ProModel™ - Path Networks
Node Editing
 Node - The node number
 Limit – The maximum number of resources that can
occupy a given node. Blank means unlimited.
 Path networks are assigned to resources using the
resource dialog box described earlier

209
ProModel™ - Path Networks
Neat ways to avoid trouble
 Start by defining the nodes in the “Node” menu. Make all
locations singles, and left click to get the node spot. One
node for each location.
 Then, assign the nodes logically with the Interface editor
by double-left-click on the spots just created

210
ProModel™ - Path Networks
 Neat ways to avoid trouble, continued
 Next, build the network from the Paths editor using the
left click, right click to set pairings.
 Pay attention to which direction you are setting the
segments, since that will be the direction assigned if the
segment is a unidirectional one.

211
ProModel™ - Path Networks
 Today’s exercise:
 Using the prologue model we have developed over the
course of the lab, create a resource (forklift) and the
associated path network.

212
213
ProModel™ - Path Networks

214
ProModel™ - Path Networks

215
ProModel™ - Path Networks

216
Receivin splitter bin lathe painting storage
g
Receivin
g - 2.3
splitter
2.3 - 3∫5 8
bin
5∫3 - 1.5
lathe
8 1.5 - 12
Painting
12 - 26.5
storage
26.5 -
ProModel™ - Path Networks

218
Please note

When your simulation is compiled and run,


ProModel will automatically define
destinations for your network mapping,These
computer-generated mappings will not appear
in the Dest. column of the Mappings table, but
the From and To columns will contain
information on these mappings. Do not delete
the information in these columns.
Use
 Captures a resource or combination of resources as each
resource becomes available
 Once the resource has been captured it is used for the
specified amount of time, and then freed when the
specified duration is over.
 If an entity uses a USE statement to capture a resource,
the resource must complete its operation before you can
preempt the entity.
 USE worker FOR N(4, 1) MIN
 USE 2 worker FOR E(5) MIN
 USE {<quantity>} <resource> FOR <time>
226
 If multiple units of a resource type are defined in the USE
statement, the time specified after the FOR will be treated
as "total man-hours".
 For example, in the statement "USE 2 Worker FOR 1
HR," a total of two man-hours is required
 (i.e. 2 units x 1 hour = 2 man-hours).

227
 In the case where only one unit of the Worker resource is
available, that unit could be used for a total elapsed time
of two hours if a second unit never becomes available
during the process.
 USE 2 Worker FOR 1 HR

 1units x 2 hour = 2 man-hours

228
 if one unit is captured and used for one hour after which
time the second unit is then captured, the remaining one
man-hour of time will be divided between the two units
and together will complete it in half an hour. In this case,
the entity would be processed in an elapsed time of 1.5
hours.

229
230
231
Temporary Batching—GROUP/UNGROUP
 For such temporary batching, use the GROUP statement.
 For unbatching, use the UNGROUP statement.
 Note : the capacity of the location where Grouping
occurs must be at least as large as the group size.
 Quantity of entities into a single GROUP shell entity.
 The group retain their identities, attributes, and resources
 and are divided from the group when an UNGROUP
statement is encountered.
 GROUP <expression> AS <entity name>
 Group 20 as GR
232
Temporary
Batching—GROUP/UNGROUP
 A factory produces three type of entities A,B,C and each
type of entity received in the following table :
Quantity each Occurrence Frequency

ENT_A 7 10 20
ENT_B 5 10 20

ENT_C 8 10 20
 As receiving each type will be prepared as the following
service type depend on the type of the entity:
Service time locations
ENT_A E(2) Loc_A
ENT_B U(3,1) Loc_B
ENT_C N(2.1,2) Loc_C
233
 After that 20 entities will be grouped at turning centre ;
location as temporary batch and then the batch will wait 2
min in the turning canter machine
 Then the batch will be travelled to the inspection location,
one inspector checks the individual entities for 2 min
 then 3 lathe machines (Lathe_A, lathe_B and lathe_C are
used to machining the entities , ( each machine is
specialized for one type of entities )
lathing time
 Simulate for 8 hours ENT_A 2 min
ENT_B 3 min
ENT_C 4 min
234
Group/ungroup
from to move
Ent-A Loc_A Wait E(2) turning MOVE FOR 1.2
Ent-B Loc_B Wait U(3,1) turning MOVE FOR 1.5
Ent-C Loc_C Wait N(2.1,2) turning MOVE FOR 1.35
All Turning center Group 20As
batch
Batch Turning center Wait 2 Inspection MOVE FOR 3
Batch Inspection Ungroup
Ent-A Inspection Use inspector Lathe_A MOVE FOR 2
for 2
Ent-B Inspection Use inspector Lathe_B MOVE FOR 2
for 2
Ent-C Inspection Use inspector Lathe_C MOVE FOR 2
for 2
Ent-A Lathe_A Wait 2 exit MOVE FOR 0
Ent-B Lathe_B Wait 3 exit MOVE FOR 0
Ent-C Lathe_C Wait 4 exit MOVE FOR 0
235
Group/ungroup

 MOVE FOR 0

A move-time of zero may be entered to cause events for


other entities occurring at the same simulation time to be
processed before any additional logic is processed for the
current entity. If no move related statement (MOVE
FOR, MOVE ON, MOVE WITH) is specified, the entity
instantly enters the next location and immediately begins
executing the operation logic for that location.

236
237
238
239
GROUP/UNGROUP

240
Variable
 Variables are of two types: global and local.
  Global variables are place holders defined by the user to
represent changing numeric values.
 Local variables are place holders which are available only
within the logic that declared them. Local variables
function as though they were temporary attributes defined
in a specific logic .
 Variables can contain either Real numbers or Integers, 
 BUILD >> Variables

241
Variable

242
Variable

243
Variable

244
Variable

245
Variable

246
Variable

247
Variable
This edit table is used to define Variables used globally in the model. A description of each field is given below.

Icon This field shows "Yes" if an icon for the variable appears on the layout. A variable’s icon looks like
a counter and displays the variable’s value.
ID The variable’s name.
Type The type of variable, real or integer.
Initial Value The initial value of the variable to be assigned at the start of the simulation. By default,
initial values are 0, but can be changed in the edit table to whatever value you want. Any expression can
be entered here (including previously defined variables) except attributes and system functions.
Stats ProModel collects statistics for each variable on three levels of detail, None, Basic, and Time
Series.
• None No statistics are collected for this variable during simulation.
• Basic Collects basic statistics such as total changes, average minutes per change, current value, and
average value.
• Time Series Collects all the basic statistics plus the value history based on time or observations. When
you select Time Series, ProModel collects either time-weighted or observation-based statistics for the
variable
248 depending upon the type selected.
Variable

249
Variable
Variable Layout
An icon to show a variable’s value during a simulation may be placed anywhere on the layout. The
window below shows the icons for the variables Current and Total at the right side of the screen.
Each icon has been labeled with a background graphic.

250
Variable

How to place an icon for a variable on the layout:


1. Highlight the desired variable in the Variable edit table.
2. Click on the layout where the icon is to appear.
3. Size the icon by dragging an edge or corner of the sizing box.
How to remove an icon for a variable from the layout:
1. Double click on the icon.
2. Choose Delete from the resulting menu. The icon is removed
from the layout, but the variable remains in the model.

251
Variable

A variable’s icon can be customized as necessary by simply double clicking on the icon and choosing
Edit. A dialog box appears as shown below for specifying the characteristics of the variable icon or
counter.

 
How to edit a variable’s icon:
1. Double click on the icon.
2. Click on the Digit Color, Frame, or Font buttons to adjust the respective setting.
3. Click on OK.
4. All other variable icons that you create from now on will retain these modifications.

252
Variable

253
Variable

254
Variable

255
Variable

256
Variable

257
Variable

258
Variable

259
Variable

260
Permanent Batching—COMBINE
 In some situations, multiple entities of the same type
or different types are batched together permanently.
 After batching, a single batch entity is formed,
alternatively with a different name.
 In such permanent batching, the characteristics of the
individual entities are lost; that is, the individual
entities cannot be ungrouped later.
 When defining the location, the capacity of the
location where you use the COMBINE statement
should be at least as large as the combined quantity.
 COMBINE <expression> {AS <new entity name>}
 COMBINE 2 AS batch

261
Permanent Batching—COMBINE
 Combine
 Entity-Related Operation Statement
 Syntax samples
 COMBINE <expression> {AS <new entity name>}
 COMBINE Var1
 COMBINE 3 AS EntQ
 COMBINE Var1 as ENT(Attr1)

262
Permanent Batching—COMBINE
 Description
 Accumulates and consolidates a specified quantity of entities into an entity,
optionally with a different name. Unlike the GROUP statement, combined
entities lose their identities and attributes and cannot be ungrouped later. Use
COMBINE when several entities need to be combined, such as when eight spark
plugs are combined in a box. Note that after several entities have been combined
at a location, no additional statistics will be collected for any of the combined
entities at that location.
 When specifying COMBINE <expression> AS <new entity name> in the
operation logic, there must be another operating block at the same location. In
this case, the incoming entity at the new operating block is the new entity name
specified in the COMBINE statement.
 Valid In
 Operation logic only. COMBINE may not be used in combination
with CREATE, GROUP, UNGROUP, LOAD, UNLOAD, SPLIT AS, or other
combine statements in the same process logic.

263
Permanent Batching—COMBINE
 Components
 <expression>
 The number of entities to combine. Negative values generate an error
message. If this expression evaluates to zero, it is ignored. If it evaluates to
one, then no entities are actually combined, but the entity that encountered the
combine statement is renamed (if the AS option has been specified).
 This expression is evaluated every time an entity encounters the COMBINE
statement, so the amount of entities to be combined can vary as the simulation
progresses. If an entity arrives that changes this expression to a number lower
than the number of entities already waiting to be combined, all of the entities
waiting to be combined are combined, including the entity that just arrived.
 AS <new entity name>
 The optional name of the resulting entity. If left off, the new entity will have
the same name as the last combined entity or the output entity name.

264
Permanent Batching—COMBINE

265
Combine example
 A factory received three type of entities A,B and C to
locA, locB and locC with capacities 70,50,80
respectievely
 As receiving each type will be prepared
 After that 20 entities will be grouped as permanent batch
at the turning machine( capacity =20) and wait 2 min in
the machine
 Then the batches will be travelled to the inspection
location, one inspector checks the batch for 2 min
 Then one lathe machine is used to machining the batch for
5 min
 Material handling 1 min
266
267
268
269
Permanent Attachment— JOIN
 Sometimes one or more entities are attached permanently
to another entity, as in an assembly operation.
 The assembly process is a permanent bonding: the
assembled entities lose their separate identities and
properties. The individual entities that are attached cannot
be separated again.
 Entities to be joined must be routed to the current location
with a JOIN rule. JOIN 4 EntA

270
Permanent Attachment— JOIN
 Join
 Entity-Related Operation Statement
 Syntax samples
 JOIN <expression> <entity name> {,<priority>}
 JOIN 4 EntA
 JOIN Var1 EntA, 1
 Description
 Joins a specified quantity of a designated entity type to the current entity. The
entities joined to the current entity lose their identities and any resources owned by
the joining entities are transferred automatically to the base entity. Use JOIN to
simulate a component being assembled to a main part, such as when wings are
attached to the fuselage of an airplane.
 Entities to be joined must be routed to the current location with a JOIN rule. The
current entity waits until enough entities to fill its request have been routed to the
current location with a JOIN rule.

271
Permanent Attachment— JOIN
 Valid In
 Operation logic only. More than one JOIN statement may be used in the same logic.
 Components
 <expression>
 The number of entities to be joined. A zero value is ignored and a negative value generates an
error. This expression is evaluated when each entity first encounters it, but is not re-evaluated
as the requested entities are joined.
 <entity name>
 The entity type to be joined to the base entity. Joining entities must come from a JOIN routing
and lose their identity once joined.

272
Permanent Attachment— JOIN
 Example:
 A certain location on an assembly line manufacturing cars attaches doors built on another
assembly line. When the Body of the car arrives at the Assembly location, we attach a left door,
Ldoor, and a right door, Rdoor, with a JOIN statement. The paint station paints the doors and
routes them to Assembly with a JOIN rule. Note that the Body will wait until we join both
doors before routing to the next location.

273
 Memories arrives at paint with occurrences 100 and
frequency = 1.5 min.
 Mother boards arrive at assembly with occurrences 50 and
frequency = 3 min..
 The paint station paints the memory for 30 minutes and
routes them to Assembly with a JOIN rule
 A certain location on an assembly line manufacturing
motherboards attaches 2 memories built on another
assembly line. When the motherboard arrives at the
Assembly location, we attach memory.
 Then body will be routed to the cleaning station .

274
Routing rules
join
 Join
 Syntax samples
 Join {<expression>}
 Description
 Selects a location whenever a Join request is issued at that location. Since a joining
entity does not require capacity, there is no need to check for available capacity at
the destination. Multiple Join requests are filled according to the oldest waiting
request with the highest priority. Entities routed with the Join routing rule are not
actually sent to their destination until a Join statement is encountered at the
destination location.
 Valid In
 The rule field of the Routing edit table only.
 Components
 <expression>
 The total entities output from the process. This expression is valid only for the first
routing of a routing block. For more information on this expression, see Processing.
275
Routing rules
join

276
Routing rules
join

277
join

278
join

279
join

280
281
282
283
284
285
ProModel™ - Downtimes
 Location Downtimes
 A downtime stops a location or resource from operating. A
down resource or location no longer functions and is not
available for use.

 Downtimes may represent scheduled interruptions such as


shifts, breaks, or scheduled maintenance. Or, they may
represent unscheduled, random interruptions such as
equipment failures. Downtimes may also be given
preemptive or non-preemptive priority and may require
one or more resources for repair times.

286
ProModel™ - Downtimes
 Location Downtimes
 For single capacity locations, downtimes may be based on
clock time, usage time, number of entities processed,a
change in entity type, or called using the DOWN
statement. Multi-capacity locations have only clock and
called downtimes.

 Downtimes are elements used to model situations where a


part of the simulation is not available for operations.
 The setup field is available for Locations and Resources,
primarily

287
ProModel™ - Downtimes
 For locations, select the Build -> Locations sequence.
 For a given location, go to the DTs field and select the
task button.

 Resource Downtimes
 Resource downtimes refer to the times when a resource is
unavailable due to scheduled events like breaks and shift
changes, or unscheduled events like illness and random
failures.

288
ProModel™ - Downtimes
 For scheduled events, it is much easier and more
straightforward to define these downtimes using the Shift
Editor (see Shifts & Breaks).

 Unscheduled downtimes, based on the elapsed time of the


simulation clock or resource usage time, are defined in the
Resources edit table by clicking on the downtime heading
button.

289
ProModel™ - Downtimes
 How to specify a location downtime:
 1. Select the desired location in the edit table.
 2. Click on the DTs... button. This brings up the downtime
selection menu shown here for single-capactiy locaitons.
(Multi-capacity locations will only have the Clock and
Called options.)
  
 3. Each selection opens an edit table for specifying the
required elements of the downtime.

290
ProModel™ - Downtimes
 How to define resource downtimes:
 1. Select Resources from the Build menu.
 2. Select the resource for which the downtime is to be
defined.
 3. Click the DTs... button from the Resources edit table.
 4. Select the downtime basis: Clock or Usage.
 5. Enter the required information in either the Clock
Downtime or Usage Downtime edit table. Each of these
tables is described in the following pages.

 There are two types :


291
Clock-Based Downtime
 Clock-based downtimes for resources are specified
through the Clock Downtimes edit table

 Frequency  : The time between downtimes. This may be a


constant time as shown above, a distribution, or an
expression.
 First Time The time of the first downtime occurrence,
Leave this field blank if the first occurrence is to be
determined from the frequency field.
292
Clock-Based Downtime
 Clock-based downtimes for resources are specified
through the Clock Downtimes edit table

 Priority The priority of the downtime (0-999). The


default priority is 99, which is the highest non-preemptive
priority.
 Scheduled... Select YES if the downtime is to be counted
as a scheduled downtime.

293
Clock-Based Downtime
 List A list of the individual units of the resource to be
affected by the downtime. You may list individual units of
the resource, specify ALL, or leave blank to affect all
units.
 • 1,2 Units 1 and 2 only
 • 1-3,5 Units 1 through 3 and 5 only
 • none You may use none to indicate that no unit will
adopt this downtime. This is useful in creating a run-time
interface.

294
Clock-Based Downtime
 Node This field applies only to dynamic resources and
defines the node to which the resource will travel to go
down. If no node is entered, the resource stays at the
current node.
 Logic... Specific logic to be performed when the
downtime begins. , typically a WAIT statement Wait 5 min

 Disable Select YES to disable a downtime without


removing it from the table.

295
Usage-Based Downtime
 A usage-based downtime is a downtime based on how
long a resources has been used, such as how often a
forklift needs to be refueled. Usage-based downtimes for
resources are specified through the Usage Downtimes edit
table shown below.
 models downtimes on a time basis, regardless of entity usage.
Also, usage is only available for single-capacity locations.

296
Usage-Based Downtime
 Usage downtimes are used to model downtimes that occur
after a location has been operating for a certain amount of
time, such as if a machine fails due to wear after so many
hours of operation.
 Usage downtimes are different from clock downtimes
because usage downtimes are based on location operation
time, which does not include blocked time. Clock
downtimes are based on total elapsed simulation time
(operation time, blocked time, idle time).
 Usage downtimes are available only for single-capacity
locations.

297
ProModel™ - Resources
 The Usage Downtime Editor consists of the edit table
shown below.

298
ProModel™ - Resources
Details on New Things
 Specs – Subunits include the defined path network
(not assigned if static), the node specifications, the
search logic for resources and entities, and motion
rules. (Net1, N1)
 Node specifications – the “home” node is where the
resource begins the simulation. Check the “Return
Home” if the resource is to return to the home node if
idle. Otherwise, it waits where it is.

299
ProModel™ - Resources

300
Dts for clock type

E(50) MIN 20 MIN 99 No 1-4 WAIT 20 MIN No

301
Dts for clock type

302
Dts for USAGE type

303
Dts for USAGE type

304
Shits and breaks
 The Shift Assignment module allows you to model
everyday, real-life situations involving scheduling and
availability issues, and you can easily define logic to
control the way your model handles these problems.
 If you have an employee that works a split shift, assign
two shifts to the resource with the corresponding start
times. If you have a processing location that can only be
used during specifically scheduled hours, set up a separate
shift for that location.

305
Shits and breaks

When you select Shifts from the


Build menu, two options are
displayed: Define and Assign.
You must define a shift before
you can assign a resource or
location to it.

306
Shits and breaks
 Youtube

 https://www.youtube.com/watch?v=hhZu7xro8gE

 https://www.youtube.com/watch?v=LWyy_y7Kqc4

 https://www.youtube.com/watch?v=XMLTOOIXHCY

307
Shifts and breaks

308
Shifts and breaks

309
Shits and breaks

310
Shits and breaks

Build: shifts: define : shift location for paint store working


from 2-5 with break from 3-4

311
Shits and breaks
Build: shifts: define: shift for resource from 8 – 8 at 12-1 break

312
Shits and breaks
Build: shifts: assign

313
ProModel™ - Reporting
 Reporting the Results
 The last step in the simulation procedure is to make
recommendations for improvement in the actual system
based on the results of the simulated model. These
recommendations should be supported and clearly
presented so that an informed decision can be made.
Documentation of the data used, the model(s) developed
and the experiments performed should all be included as
part of a final simulation report.
 A simulation has failed if it produces evidence to support
a particular change which is not implemented; especially
if it is economically justified.
.
314
ProModel™ - Reporting
 Reporting the Results
 The process of selling simulation results is largely a
process of establishing the credibility of the model. It is
not enough for the model to be valid, the client or
management must also be convinced of its validity if it is
to be used as an aid in decision making. Finally, the results
must be presented in terms that are easy to understand and
evaluate. Reducing the results to economic factors always
produces a compelling case for making changes to a
system.

315
ProModel™ - Reporting
 Reporting the Results
 In presenting results it is important to be sensitive to the
way in which recommendations are made. It helps to find
out whether recommendations are being sought or
whether a simple summary of the results is wanted

316
ProModel™ - Reporting

 Within the output viewer, “Sheet Properties” must be


selected from the task bar, and the confidence intervals,
etc., are in the additional reports section.
 Each report section has to be set up individually.

317
ProModel™ - Reporting
 export

 Summary data

 export

318
ProModel™ - Reporting

319
ProModel™ - Reporting

Export: Chart data: report

Export: chart data: chart

Export: chart data: all

320
ProModel™ - Reporting

Key items that are useful for reports are:


 Locations: Maximum Contents (for queues), Current
Contents (for queues), Average Time Per Entry (Locations
with no blockages, backs up the operation variable), Pct
Utilization (for operations)
 Entity Activity – All times and the exits (for throughput)

321
ProModel™ - Reporting

 Variables: Total Changes (functions as a de facto


counter),
 Average Time Per Change,
 Min/Max Times (for operation tracking variables)
 Current value (for counter variables, and for some
operational items)
 average value (for operation variables)

322
ProModel™ - Reporting

 With respect to the variable reports, it is important to


remember that the Total Changes count is done after the
warmup period, while the Max, Min, Current, and
Average all function and track during the entire simulation
run. So, for throughput in a given steady state period, use
the Total Changes field.

323
ProModel™ - Reporting
 On ProModel the reporting broken up into discrete
elements.
 It is also a little more complicated to get the confidence
intervals printed automatically. The sheet modification
tool is on the taskbar, and has to be assigned for each
report page, each time it is used.

324
ProModel™ - Reporting

 Reporting the experiment is a vital part of the process.


There is a reason that the experiment was run in the
first place. The key elements for this course is as
follows:
 Executive Summary / Introduction – This is a one- or
two-paragraph statement of what the problem is,
including background information, limitations, etc.
This sets the scene for the reader.

325
ProModel™ - Reporting
 Solution Process – This section addresses the process
involved in solving the problem stated in the
summary. Pseudocode, flow charts, and a description
of the program highlights (such as why a particular
construction was used) are appropriate here. Detailed
logic statements are not.
 Results – This section is used to report the results of
the simulation, and the significant highlights for
results. Tables are usually useful here with
appropriate commentary and 95 % C. I. s.

326
Use reports from previous
examples to discuss with student

327
Stat::Fit
Consider an experiment where we've measured the
time to failure for 50 identical electrical components.
Data points are as follows:

328
Stat::Fit
 Notice that only one variable has been measured -- the
components' lifetimes. There is no notion of response and
predictor variables; rather, each observation consists of
just a single measurement. The objective of an analysis for
data like these is to describe the full distribution of
possible lifetimes. This is distribution fitting with
univariate data.

329
Stat::Fit

330

You might also like