Transcript Lab Module 02 Serial Manufacturing Line
Learning Simio Lab Series
Lab Module 07
Simio Processes and Add-on Processes
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 1
Objectives and Outline
• Lab Objectives – Continue learning basic Simio modeling – Learn about processes and add-on processes – Learn how to use stations as detached queues for model entities • Switched from 5.87 to 5.91 in this module • Lab Outline – Video 1 – Using Add-on Processes: TV Adjust/Inspect Model Revisited – Video 2 – Using Stations with Add-on Processes – Video 3 – Building a “Process Model” – Video 4 – Assignments
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 2
Video 1 – Using Add-on Processes: TV Adjust/Inspect Revisited
TV adjust-inspect model from Lab Module 05
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 3
Simio Processes
• A
process
is a set of actions that take place over time that may change the state of the system. • In Simio a process is defined using a flowchart including
steps
that are executed by
tokens
change the state of one or more
elements
.
and may • Steps perform actions such as: – Delay by a specified time.
– Seize or release an object.
– Wait for an event to occur.
– Decide based on a probability or condition.
– Transfer an entity into a station.
– ….
Tokens
• A token may have properties and states.
• A token carries a reference to both its parent object and associated object.
• The attributes of the associated object may be referenced using the class name; e.g.
ModelEntity.TimeCreated
• The attributes of the parent object may be referenced by name; e.g.
ProcessTime In the case of entity visits the associated object is the visiting entity.
Associated Object If the process is being executed inside the Server, then the Server would be the parent object.
Parent Object Tokens
Process Types
• A
standard process
is a Simio-defined process that is automatically executed by the Simio engine. For example OnRunInitialized is executed by Simio for each object on initialization.
– A
decision process
is a standard process used by the engine to ask the object to return a True/False decision (e.g., Will you pick me up?). Decision processes cannot have time delays.
• An
add-on process
is a user-defined process that is incorporated into the model of an object to allow the user of that object to insert special logic. • An
event-triggered process
is a user-defined process that is triggered by an event that fires within the model (e.g., [email protected]).
Video 2 – Using Stations With Add-on Processes
• Decoupling entity arrivals from “availability for processing” – In this example, random arrivals are stored and periodically made available for processing.
• Key Concepts: – Stations – Add-on processes – Search step – User-defined events
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 7
Input Buffer A
station
is an element that models a capacity constrained location for holding entities.
Processing
Stations
Output Buffer
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 8
Video 3 – Building a “Process-Model”
• A
standard process
is a Simio-defined process that is automatically executed by the Simio engine. For example OnRunInitialized is executed by Simio for each object on initialization.
– A
decision process
is a standard process used by the engine to ask the object to return a True/False decision (e.g., Will you pick me up?). Decision processes cannot have time delays.
• An
add-on process
is a user-defined process that is incorporated into the model of an object to allow the user of that object to insert special logic. • An
event-triggered process
is a user-defined process that is triggered by an event that fires within the model (e.g., [email protected]).
Video 3 – Building a “Process-Model”
Utilization (r) Number in System (L) Number in Queue (L q ) Time in System (W) Time in Queue (W q )
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved
0.800
4.000
3.200
0.083
0.067
10
Video 4 – Assignment 1
• Assignment 1 – Modify the TV Adjust/Inspect Model so that: – 5% of the TVs that fail inspection are immediately rejected (regardless of the number of adjustments). – When a TV is rejected, record a tally (to count) and destroy the entity from within the add-on process (i.e., there is no need to transfer to the ‘Bad’ sink).
– Animate the model to make it look like a TV adjust/inspect operation.
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 11
Assignment 2: Amusement Park Ride Model
• Passengers arrive at the rate of 9.6/minute and wait in line (of course). Every 10 minutes, up to 100 passengers move from the line to a room to watch a 7-minute video (the actual time is between 6 and 8 minutes, counting the startup and shutdown time for the video). After the movie, the passengers line up (of course) and are loaded into the ride. Two passengers can load at a time and loading takes between 8 and 10 seconds per passenger. After loading, the passengers start the ride. The ride has capacity of 50 passengers and takes 5 minutes. The first video should start 15 minutes after the park opens (passengers start arriving immediately).
• You are interested in: – Average group size (for the video); – Load process utilization – Ride process utilization – Waiting time from when a passenger arrives until s/he starts the load process • Run your model for 10 replications of length 160 hours for your experimentation
Copyright © 2013 - Jeffrey S. Smith and Simio LLC | All Rights Reserved 12