An Introduction to Simio for Beginners

In many cases the service times are conveniently represented using a triangular distribution, which has three parameters that define the minimum, mode, and maximum value. In Simio you specify a random sample from a triangular distribution as Random.Triangular(minimum, mode, maximum), where mode is the most likely value. For example Random.Triangular(6,9,12) will generate random samples with a minimum value of 6, most likely value of 9, and maximum value of 12. By varying the minimum and maximum values you can see the impact of changing the variation of a service time on the waiting times and other performance measures in your system. As you reduce the range of samples for the service time the average waiting time will also reduce.

Variation is in nearly all real world systems, and it is the primary cause of inefficiency in our overall system performance. Simulation is a valuable tool for modeling these systems, and for understanding the impact of change.

A simple Simio model

Let's examine a Simio model of a very simple system in which entities arrive, are processed by a server, and then depart the system. This could represent work pieces being processed on a machine, or passengers checking in at a kiosk in an airport.

Although Simio provides a framework for building custom objects, it includes a Standard Object Library that lets you immediately start modeling with objects from the library. Use this library to quickly model a wide range of systems. This library is briefly summarized in the following table.

Name Description
Source Creates entities that arrive to the system.
Sink Destroys entities and records statistics.
Server Models a multi-channel service process with input/output queues.
Combiner Combines entities in batches.
Separator Separates entities from batches.
Workstation Models a 3-phase workstation with setup, processing, and teardown.
Resource Models a resource that can be used by other objects.
Vehicle Carries entities between fixed objects.
BasicNode A simple intersection of links.
TransferNode An intersection where entities set destination and wait on transporters.
Connector A zero-time connection between two nodes.
Path A pathway between two nodes where entities travel based on speed.
TimePath A pathway with a specified travel time.
Conveyor An accumulating/non-accumulating conveyor device.

For this simple system we make use of the Source, Server, and Sink, along with a Connector. The Simio model for this system is shown below. Entities enter the system at the Source, move to a Server where they are processed one at time, and then travel to a Sink and depart the system.

Source-Server-Sink in Simio's Simulation Software

You build this model by placing these objects in your facility model and entering property values for each object. For example the Source object has a property that specifies the time between entity arrivals (e.g. Random.Exponential(110)) which produces a random arrival process with a mean inter-arrival time of 10). The Server object has properties that specify things such as the capacity (i.e. the number of parallel operations that can be performed), and the processing time (e.g. Random.Triangular(6,9,12), which produces random processing times from a triangular distribution).