You are on page 1of 24

Planning and Scheduling with Simio:

An Introduction to Simio Enterprise Edition


Introduction
Simio Enterprise Edition is a simulation tool for developing applications in Risk-based Planning and
Scheduling (RPS). RPS is the dual use of a simulation model to generate both a detailed resource
constrained deterministic schedule as well as a probability-based risk analysis of that schedule to
account for variation in the system. RPS is used to generate schedules that minimize risks and reduce
costs in the presence of uncertainty.

In this section we will focus on applications of Simio RPS to production scheduling. Although Simio is an
ideal tool for production scheduling applications, it has also been applied in other application areas such
as transportation/logistics and healthcare. In contrast to traditional scheduling tools, the Simio RPS
approach is built on a flexible custom-built simulation model of the system and hence is highly flexible.
This along with its ability to deal with uncertainty make it applicable to a wide range of scheduling
applications. Hence the concepts that we will discuss can be applied in many scheduling applications for
which traditional scheduling solutions do not apply.

Traditional Advanced Planning and Scheduling (APS) generates schedules by assuming there is no
variation or uncertainty in the system. A deterministic APS schedule quickly becomes obsolete as
machines break, processes vary in time, material arrives late, etc. APS schedules which appear initially
feasible become infeasible over time as variation degrades performance. By ignoring variation APS
schedules are optimistic by nature - they promise more than can be delivered. The user of traditional
APS has no way to assess or mitigate the underlying risk inherent in the schedule. RPS augments the
deterministic schedule with risk measures that allow the decision maker to properly account for the
underlying variation and uncertainty in the system.

RPS uses a purpose-built simulation model to fully capture both the detailed constraints and variations
in the system. This is a key advantage over traditional APS systems that rely on either a predefined or
mathematical model of the system that cannot represent the critical constraints in many systems. The
simulation model can be as simple or detailed as required, and may include complex processing and
material handling constraints such as ovens, forklift trucks, conveyors, moving operators, etc., as well as
complex work crews.

Simio Enterprise Edition can be operated in either design mode or scheduling mode. In design mode
both the full model building and scheduling features are available. This mode is used when building and
testing a scheduling solution. Scheduling mode is typically used to deploy a Simio simulation model in
an RPS application. The scheduling mode is specifically designed for use in day-to-day RPS applications;
all of the functionality related to model building is removed to focus the interface on activities directly
related to operational planning and scheduling. The Simio model is typically built using the Simio
Enterprise Edition in design mode, and then deployed to end-users using Simio Enterprise Edition in
scheduling mode. This mode is set in Files – Settings – Workflow by setting Start in Scheduling Mode to
True or False, and then restarting Simio.
Simio Enterprise provides a unique and patented approach to scheduling by using the custom-built
simulation model in two ways. The first is to generate a detailed schedule/plan. Because the exact
variability is at this point unknown, the model is executed in a purely deterministic mode; machines do
not break, process times are always constant, materials arrive on time, etc. This is the optimistic view
assumed by all scheduling systems and produces a deterministic plan/schedule. Once the schedule has
been generated, Simio then replicates this same simulation model with variation added back into the
system and performs a probabilistic analysis to estimate the underlying risks associated with the
schedule. The risk measures generated by Simio include the probability of meeting user-defined
targets, as well as expected, pessimistic, and optimistic schedule performance. This risk analysis is a
patented feature of Simio and not found in traditional scheduling tools.

By providing up-front visibility into the inherent risk associated with a specific plan/schedule, Simio
provides the necessary information to take early action in the operational plan to mitigate risks and
reduce costs. Simio provides a realistic view of expected schedule performance. Specific alternatives
such as overtime or expediting external material/components from suppliers can be compared in terms
of their impact on both risks of meeting schedule targets, and costs of mitigating those risks, thereby
providing a customer-satisfying operational strategy at a minimum cost.

Although Simio Enterprise Edition has a number of features specifically designed to support scheduling
applications, it can also be used as a general purpose simulation modeling tool. The same Simio
simulation model that is used for scheduling can also be used in a traditional role to analyze and
improve the design of the underlying production system by randomly generating orders over a long
planning horizon. For example, the model could be used to evaluate the long term impact on
performance of capital equipment purchases, changes in process flows, or new product introductions.
Hence the same simulation model can be used to both improve the facility design as well as provide the
detailed model logic for planning/scheduling of day-to-day operations.

Unified model support entire project lifecycle.

Although the Simio model that drives the scheduling solution can be built using any of the Simio
simulation products, Simio Enterprise Edition contains a number of unique features that are useful in
building planning and scheduling solutions. The Simio Enterprise Edition encompasses all the
functionality of the Simio Design/Team Edition plus additional scheduling functionality; it is the ideal
product for the internal/external consultant that is building a scheduling solution.

ERP and MES Integration


The Simio RPS model is typically integrated with the existing ERP and MES/SCADA system to provide the
data on the current status of the system and the actual jobs to be processed through the system. This
data is provided to Simio in the form of relational data sets that are imported and held in memory by
Simio for fast execution. These data sets typically contain data such as a list of jobs to be processed, a
bill of material for each job at each processing step, job routings including setup and processing times,
purchased material, etc., along with the status of all jobs in the system at the start of the planning
period. Simio does not have a fixed data schema – the data sets used by Simio scheduling applications
are configured as needed in the Simio Enterprise Edition to match the form of the external data. The
flow of jobs as defined by the data sets is then simulated by Simio using the custom Simio model to
generate a detailed schedule. A schematic of a typical implementation is shown below:
The ERP system (SAP, Oracle, Microsoft Dynamics, etc.) will typically employ its APS functionality to
perform master production planning to create a rough cut plan for what orders to produce, at what
facilities, and during which planning periods. These systems will also typically plan the material
requirements for these orders. This information is then imported by Simio (typically through an
integration layer) as input to the model. The MES system (Wonderware, GE Proficy, etc.) provides real
time information on the status of the production system, including machine states as well as the status
of work in progress. This information is used by Simio to initialize the model to the current state of the
production system. The scheduler then runs the Simio model to generate a detailed production
schedule that fully accounts for the constraints of the system, including limited resources such as
workers and equipment, as well as complex material handing such as AGVs or power-and-free conveyor
systems. The basic scheduling functionality provided to the scheduler includes the ability to
import/export ERP data, view and edit selected portions of the table data (as specified by the model
builder), view 3D animation of the orders flowing through the model, generate schedules and risk
measures, and view those schedules in the form of customized table reports, dashboards, and Gantt
charts showing a resource plan and detailed entity workflow.

For applications involving the widely used Wonderware MES system Simio provides tools for
automatically creating the necessary data tables and creating the associated Simio model for integrating
to the MES system. Simio can also automatically interface to the Wonderware MES to re-schedule work
in response to MES events such as machine breakdowns. This makes it much faster and easier to
implement Simio scheduling with a Wonderware MES system. For non-Wonderware installations we
also have some general purpose tools for simplifying the integration tasks.

Default Data Schema based on B2MML


The relational data schemas that are used to interface to the Simio model and generate the production
schedule are completely flexible. There are no restrictions on the number of tables, columns, or
relations, which is what is required for complex applications. Hence it is possible to define an order-
based routing schema or material-based routing schema with equal ease. Although any data schema
can be used, for production applications we recommend using the default data schema that is based on
the schema defined by the Business to Manufacturing Markup Language (B2MML), which is an XML
implementation of the ANSI/ISA-95 family of standards (ISA-95), known internationally as IEC/ISO
62264. Many ERP and MES systems have standardized on this schema and hence we have built a
number of features into Simio to make it particularly easy to create applications using this standard data
scheme. These features include the ability to automatically create the required data tables, and import
data from B2MML data sources.

Each data table is comprised of a set of input columns, output columns, and targets. Input columns are
data from the ERP/MES that are inputs to the model such as the material to produce, the quantity
required, and the due date. Output columns are values that are written to the table when the model
runs and the schedule is generated; examples include the ship date for the order or the total activity-
based cost to produce the order. In some cases, these output values may be sent back to the ERP/MES
system. Targets are special columns that are used to measure the quality of the resulting schedule. A
target is defined by an expression, an upper and lower bound for the expression, and custom defined
strings for classifying the result based on the value of the expression relative to these bounds. For
example, you might define a ship date target that has an upper bound that is the due date, no lower
bound, and the classification strings might be On Time, Late, and Incomplete for within bounds, above
upper bound, and no value, respectively. When executing a risk analysis Simio provides information on
the likelihood of meeting targets based on the underlying variation in the system.

Although the model builder (in design mode) has full access to editing both the data schema and values
in the tables, the scheduler has limited data access based on viewing/editing privileges defined by the
modeler. The modeler can set the Operational Planning column properties for a data column to specify
that the column is invisible or read-only by the scheduler.

The RPS scheduling examples that install with Simio are all based on the standard B2MML data schema.
These examples make use of one or more default data tables that can be automatically generated using
the Add Scheduling Lists and Tables add-in that is available from Add-Ins ribbon that is on the Planning
tab within Simio Enterprise in design mode. Once added using this Add-In, these tables can then be
modified or extended as necessary for specific scheduling applications. For example, you can change
the names of columns, add new columns, etc.

The following is a summary of the default tables that are based on the B2MML standard.

Manufacturing Orders:

A list of all production orders to be processed during this planning period.

Column Name Description


Order ID A unique string name assigned to this production order.
Material Name A foreign key reference to the Materials table for the material being produced.
Release Date The date-time this order is released to production.
Due Date The date-time this order is due.
Order Status The order status specified as New or WIP (work in process).
Priority The scheduling priority for this order.
Quantity The material quantity to be produced for this order.
Ship Date The ship date for this order (an output) based on the generated schedule.
Production Cost The production cost for this order (an output) based on the generated schedule.
Target Ship Date-Value The target ship date for this order
Target Ship Date-Status The target ship date status; OnTime, Late, or Incomplete.
Target Cost-Value The target cost for this order.
Target Cost-Status The target cost status: OnBudget, Overrun, or Incomplete.

Note that the Ship Date and Production Cost are both output columns in the Manufacturing Orders
table; they are written from the simulation model to the table as the schedule is generated by the
deterministic simulation run. Also note that the last four columns are targets.
Materials:

A list of materials that can be consumed or produced at this production facility.

Column Name Description


Material Name The unique name of this material.
Material Description A description of this material
Initial Quantity The initial quantity of material available.
Material Cost The cost per unit of this material.
Log Usage A Boolean that specifies if this material usage is to be logged.
Gantt Color The color used for drawing orders for this material in the Gantt.
Picture ID The entity symbol index for orders for this material in the Facility view.
Material Color The color index for computing color-dependent changeovers.

Note that the Gantt color defines the bar color to use for drawing entities associated with this material
in the Entity Workflow Gantt. All orders for this material will be drawn using this color. The Picture ID
determines which entity symbol should be used for drawing the entity that is associated with this
material in the Facility view of the model. All entities representing orders for this material will be
depicted in the Facility view using the specified Picture ID. The Material Color is used in the sequence
dependent changeover matrix for determining the color dependent changeover time. By default, this
table is configured for changeovers that are dependent on color. This column could be changed to Size
or another attribute that determines the sequence dependent changeover time.

Routings:

A list of job routings for each material specifying the resource and processing time for each task required
to produce the material.

Column Name Description


Routing Key The unique name for this routing step.
Material Name A foreign key reference to the Materials table for the produced material.
Route Number The routing number.
Sequence The resource sequence location where this step is performed.
Process Time The processing time for this step.

Depending upon the application this table might be extended with additional columns specifying a setup
time, operator, tooling, etc. The Routing Key is a key column that requires a unique name and is
typically specified as a material name with an underscore and step number appended. For example,
FinishedGoodA_10 would be step 10 for producing FinishedGoodA. The step numbers are typically
specified as 10, 20, 30, etc. The sequence is the resource location where this step is performed. This is
typically the input node of a specific workstation or a TransferNode from which downstream
workstations are dynamically selected. For example the TransferNode might be located at a group of
five similar machines, and then the entity is dynamically routed to one of the five machines based on
availability and a selection rule – e.g. smallest changeover time.
Bill of Materials:

A list of component materials that are required at a specific routing sequence location to produce a
material.

Column Name Description


Routing Key The material routing step where the material action takes place.
Component Material The name of the material.
Quantity The quantity of the material that is either consumed or produced.
Action Type Specifies if the material is to be consumed or produced.

The Routing Key is a foreign key reference to Routing table. Note that there is a many-to-one
relationship that supports multiple materials consumed/produced for the same Routing Key. All the
materials that are listed in this table with the same Routing Key will be consumed/produced at that
routing step.

The relationships between the key columns and foreign key references for the Manufacturing Orders,
Bill of Materials, Routings, and Materials tables are depicted below, where the key columns are marked
with a †. For simplicity only the key columns and foreign key references are show in this diagram. The
Manufacturing Orders table has a single key column (Order ID), and a foreign key reference to the
Material Name in the Materials table. The Materials table has a single key column (Material Name),
and no foreign key references. Note that this key column is referenced in many-to-one relationships
from the Manufacturing Orders, Bill of Materials, and Routings tables. The Routings table has a single
key column (Routing Key) which is referenced by the Bill of Materials table, and also references the
Materials table. The Bill of Materials table has no key columns, and references both the Material Name
and Routing Key as foreign key references.

Note that in this data schema a routing is specified for a material and not an order, and all orders that
produce that material reference a common routing. This is a typical configuration across many
applications, however it is also possible to define an order based routing data schema where each order
has its own separate routing.
Resources:

A list of fixed resources where processing steps are performed.

Column Name Description


Resource Name The unique name of this resource.
Description A description of this resource.
Update Location A Boolean that specifies if this resource is to be updated to the location.
X Location The location in meters along the X axis.
Z Location The location in meters along the Z axis.
Parent Resource Name The name of the parent resource for a machine group.
Object Type Type specified as Workstation or TransferNode.
Node List If a parent node specifies the node list associated with the machine group.

A compelling advantage of the Simio scheduling solution is the flexibility offered by a custom-built
model of the production system. However, for simple applications that do not require this flexibility the
Resource table can be used to eliminate the need to manually build the Simio model. The resources
that are defined in this table can be automatically placed in the Facility model by running the Configure
Resources Add-In. The first time this Add-In is run it places the resources at the specified X, Z locations
(within the 2D view the X axis increases as you move to the right, and the Z axis increases as you move in
the downward direction). Once placed the resources can be moved interactively using the drag-and-
drop features in the Facility view. Once placed the resource can also be repositioned using the table by
entering the new location in the table, setting Update Location to True, and then re-running the Add-In.

Work In Process:

A list of current orders that are in the system, along with their current status.

Column Name Description


Order ID Foreign key reference to the Order ID in the Manufacturing Orders table.
Current Route Number The current route number for this order.
Current Resource The current resource that this order is being processed on.
Completed Quantity The number of material units that have been processed on this resource.
Accrued Cost The activity-based cost accrued by this order at this point.

The information in this table is typically imported from the MES system and defines the current state of
all the active orders that are being processed in the system. The Order ID is a foreign key reference to
the orders that are listed in the Manufacturing Orders table with their Order Status specified as WIP.
The information in this table defines the current route number and resource where the order is being
processed, along with the quantity completed at this resource. The Accrued Cost is also specified in
applications where activity-based costing is being used to track the production cost for the orders.

An OnRunInitialized process is typically used in the model to search the Manufacturing Orders table for
WIP orders, and then initialize the model with entities representing each order. The process computes
the remaining processing time at the current resource based on the completed quantity of work, sets
the sequence number and accrued cost, and then sends the entity to the input node of the specified
resource.

Manufacturing Orders Output:

An Output Table defining order start and end time on each resource used for creating Table Reports.

Column Name Description


Order ID Foreign key reference to the Order ID in the Manufacturing Orders table.
Scheduled Resource The resource where this order was processed.
Scheduled Start Time The start time at this resource for this order.
Scheduled End Time The end time at this resource for this order.

The foreign key reference for the Order ID ties this output data to the other input tables for the model.
This makes it easy to create custom Table Reports on the relations data set that display relevant
information on the orders as well as the scheduled start and end time for each order on each resource
in the system.

The Scheduling Interface


Simio Enterprise Edition has a separate user interface for generating and viewing schedules based on
the underlying Simio model. In Design mode this interface is available under the Planning tab. This
makes it convenient to be able to instantly shift back and forth between model development and
schedule testing. In Scheduling mode, the window tabs for the model building features are all removed
and only the scheduling user interface is displayed. The following screen shot shows the scheduling
interface under the Planning tab in Design mode where the remaining modeling tabs are still available.
The Views panel on the left is used to switch between the six basic views of the scheduling model. The
Views panel can be opened / closed by clicking on the << and >> to the right of the Views caption. The
tabbed ribbons across the top provide basic controls for interacting with the views. For example, the
Run ribbon is used to control the running of the 3D animation when in the Facility Model view. The
available ribbons are automatically changed as you switch between views. You can collapse and expand
the ribbons by double-clicking on the ribbon tab. Note that tool tips automatically display on any
control when you hover the mouse over the control. The property grid on the right displays custom
table properties for a specific order. The display and read-only status of these properties are set by the
modeler.

The basic functionality provided by each of these six views is summarized below:

Resource Plan: Provides a Gantt chart (see above) that displays each resource along with time bars that
show each entity (e.g. a job) that utilizes the resource, or waits for the resource as a constraint on its
progress. This Gantt also allows direct editing of the resource capacity and the ability to drag and drop
entities within and between resources. Material availability can also be displayed in graphs in this view.

Entity Workflow: Provides a Gantt chart that displays each entity along with time bars that shows each
resource that the entity utilizes or waits for as a constraint on its progress. The Gantt also displays date-
time based milestones and targets for each entity, along with associated risk measures.

Logs: Provides a view of log data generated by the scheduling model. This view displays eight types of
log data to provide detailed information on the generated schedule. Three logs are focused on resource
information (Resource Usage, Resource State, and Capacity) and the Log Resource Usage option must be
set to ‘true’ for each resource in order for the log data to be generated. The Resource Plan includes
detailed logs for the resource and entity usage, and state changes in the resource. These logs may be
filtered and sorted by the user.

Tables: Provides a view of all table data used by the scheduling model. Selected columns (as specified
by the modeler) may also be editable by the scheduler. This view also provides selective import/export
functionality.

Facility Model: Provides a 3D animated view of facility that is useful for running and viewing the
animated construction of the schedule. The user can jump to a specific resource and time in the
animation by right clicking on a resource bar in the Resource Plan Gantt and selecting ‘Re-run to here’.

Results: Provides both summary and detailed results for the plan displayed within seven tabbed
windows. The Target Summary tab provides a high level summary of target performance including the
number and percent of entities that fall within target bounds (e.g. Late, TooEarly, OnTime, and
Incomplete). The Risk Plots provide a graphical summary of target performance including confidence
intervals and percentiles for each target. The Detailed Results tab provides detailed results for the plan
in a pivot grid that can sorted, filtered, and pivoted. This data can also be exported. The Reports tab
provides scheduling reports that can be printed, emailed or exported. The Dashboard Reports tab
provides custom dashboards to interactively drill into the details of a schedule. The Table Reports tab
provides custom designed reports on the data in the relational data set for the model. Both the
Dashboard and Table Reports can also be distributed using Simio Portal Edition to users throughout the
enterprise using any web-enabled device.
Creating the Plan – Analyzing the Risk
The Operational Planning ribbon can be used to both create a deterministic plan, and also analyze the
risk associate with the plan. Clicking on the Create Plan button causes the flow of entities defined in the
Manufacturing Orders table to be simulated using the facility model. As this model runs it automatically
records all resource usages start and end times. This simulation is run with all variation removed, and
causes the target values in the Manufacturing Orders table to be recorded, and the Status set
accordingly. Clicking on the Analyze Risk button then runs replications of this same model with variation
added in, and computes the average ship date and On Time probability. Note that this ribbon also has
options for the start and end time for the plan, as well as the number of replications and confidence
level (typically defaulted to 95%) to use in the risk analysis. Increasing the number of replications will
improve the quality of the risk estimates at the expense of longer run times.

We will now provide a detailed description of the functionality provided by each of the six scheduling
views.

Resource Plan
The Resource Plan provides a summary of how each resource in the system is utilized by each entity that
is processed by that resource. The Resource Plan presents this information in both a graphical view
(Gantt) and tabular view (Usage and State Logs). The resource Gantt displays each entity that utilizes
the resource as a time bar drawn from the starting to ending time of the usage period. In the default
data schema, the color for this bar is specified in the Gantt Color column in the Materials table. The
example RPS models that are installed with Simio also employ an outline color of red to indicate late
jobs. Resources can also be grouped hierarchically and expanded/contracted using the +/- keys.

The timeline for the Gantt is shown across the top. If you hover the mouse over a bar displays a tool tip
with detailed information on that order is displayed. The Gantt can be scrolled left and right by clicking
and dragging left and right using the mouse, and scrolled up and down using either the vertical scroll bar
or the mouse wheel. The time scale can be continuously zoomed by pressing the Ctrl key and dragging
the timeline left and right using the mouse. The size of a single resource row can be changed by dragging
and dropping the horizontal separator between the resource names. All resource rows can be
simultaneously resized by dragging and dropping any resource separator while holding down the Control
key. The Gantt ribbon may also be used to zoom in/out, zoom to all, zoom to a specific range (e.g. a
week), or scroll to a specific starting day (e.g. first day of the current week).

Each resource row also has a + symbol that can be opened to expose work day and period exception
editing as well as the constrained entities. The scheduler may use the exception editing to assign a
specific work day exception (e.g. double shift in place of the normal single shift) that replaces the normal
work schedule for that resource on that day, or assign a specific period exception (from 10 am to 11 am)
for that day to define a non-standard change in capacity – such as a breakdown.

Entity Workflow
The Entity Workflow view (see below) provides a detailed view of the progress of each entity through
the facility. In this case the rows correspond to entities (e.g. jobs), and the time bars going across
represent resource usages by that entity. Note that in some cases multiple resources are used at the
same time. This view also shows any date-time based milestones and upper/lower target values for
those milestones, along with the color code probabilities of meeting each target. By expanding the
splitter on the columns on the left we expose the target values. You can sort by target value by clicking
on the column heading. Note that by clicking on the + symbol for each entity the non-value added (NVA)
constraints are displayed. In the entity Gantt below we see that Order 14 is risky (79% chance of On
Time), and spends several days waiting for access to the Cut workstation. This suggests that adding
overtime to the Cut station might be a good risk mitigation strategy for testing. We can do this by adding
either a work day or work period exception directly on the resource Gantt.

Logs
Logs are detailed tabular data on a specific schedule. The logs can be filtered and sorted to analyze
specific details for a schedule. Although logs contain standard information, the modeler can also add
custom columns to the logs.

The Resource Usage and State logs provide the same information as the Resource Plan in a convenient
grid format that can be filtered and exported. The Usage log has a row for each entity that utilizes the
resource, and displays the resource name, entity name (owner), and the start time, end time, and
duration for the usage. The State log has a row for each change of state by each resource and along
with the start time, end time, and duration of each state. The Usage and State logs are also linked
together as a master-detail view. Each row in the Usage log has a + sign that can be expanded to display
the states for that resource for a specific usage. The following shows the Resource Usage log filtered to
Weld1, and expanded to show the states for Weld1 when processing Order01.
Note that in addition to the standard columns for the Resource Usage log, we have also included custom
columns for the Gantt Color and Outline Color which are used to define the fill and outline color for the
entities in the Entity Plan Gantt chart. The outline color is typically set to red to indicate tardy jobs.

The Resource Capacity log provides details of all changes in resource capacity, including shift changes
and breakdowns.

The Constraint Log is tabular listing off all non-valued added time, where an entity waits for a resource,
transporter, or material. The log includes the entity that waited, the cause of the wait, and the
duration. This log is useful for finding and correcting problems in the schedule caused by unnecessary
waiting for materials, resources, or other constraints in the system.

The Transporter Usage log is a tabular listing of all transporter movements that take place during the
schedule. This includes the start and ending node for the travel, the rider, and the travel time.

The Material Usage log is a tabular listing of all material that is consumed or produced during the
schedule. The log includes the material that is consumed/produced, the entity involved, the quantity,
and the ending stock level.

The State Observation log is a tabular listing of all State changes on a state variable for which the Log
Observations property has been set to True. The log includes the current state value and duration. Any
state variable that has been logged can also be displayed in graphical form on the Resource Plan.

The Tally Observation log is a tabular listing of all tally observations on a Tally Element for which the Log
Observations property has been set to True. The log includes the tally value and the time that the value
was recorded.
Tables
The Tables view in the scheduling interface is similar in many ways to the Data window that is accessible
in the Design mode of Simio Enterprise, however it is a simplified view that does not allow for the
creation/editing of the data schema. In addition, some data columns may be deliberately hidden in this
view, and some columns may be read only.

The Tables view displays of set of relational tables that contain input data, output states, and targets for
the model. Relational tables are tables that are interconnected by rows that reference each other using
the concept of a foreign key. The input data is comprised of data that is typically downloaded from an
ERP such as manufacturing orders, quantities, and due dates. The output states are values generated by
executing the model, such as a ship date for an order. A target is a comparison (less than or greater
than) between an output state (e.g. ship date) and a desired target value (e.g. due date). A scheduling
application can have multiple output states and multiple targets. Targets that are date based (e.g. ship
date < due date) are called milestones. Targets can also be based on costs or other types of units.

The following shows a sample Manufacturing Orders table. Note that this table contains a Target Ship
Date, and displays additional columns for the expected ship date and On Time probability based on the
risk analysis that has been performed by Simio. The risk are color coded as gray (low risk), yellow
(moderate risk) or red (high risk), based on the Performance Classification slider settings in the Table
ribbon.

Sometimes a table has a key column (denoted by the key icon beside the column name). In relational
tables one or more rows in one table can reference one or more rows in another table via a foreign key.
To be referenced a table must have a key column that is used to define the referenced rows. All values
within a key column must be unique. In our default data schema, the Manufacturing Orders table
(shown above) has a key column named Order ID, and the Materials table has a key column named
Material Name, the Routings table has a key column named Routing Key, and the Resources table has a
key column named Resource Name. The rows in these tables can then be uniquely referenced from
other tables based on using the unique name in the key columns. Whenever a row references another
row via a key column the key icon is shown in the referencing cell.
Simio provides a master-detail view that makes it easy to simultaneously view relational data across
multiple tables. Whenever a row with a key column in one table is referenced by rows in another table
(using a foreign key reference), the rows in the second table can be directly viewed in the first table by
expanding the + key in the row of the first table. This will display a list of rows in each table that
reference this specific key value. In the default data schema, the Materials table is referenced by bath
the Manufacturing Orders table and the Routings table using the foreign key reference to the Material
Name. We can use the master-detail features of Simio to view the data from all three tables directly
from the Materials table. The following screen shot shows the material named FinishedGoodsA
expanded to display to show the routing for that part.

You can view the tables one by one by clicking on the named tabs. You can also view multiple tables
simultaneously by clicking on the tab while holding the Control key, and then dragging the tab to one of
the available drop points that are displayed. You can also right-click on a table tab to make it the
prominent tab, to rebalance the layout of tables, or return the table to its previous tab group.

The Table ribbon may be used to insert/remove table rows, and to import/export the table data. To
import/export data for a table, select the tab for the table that you want to import/export, and then
click the Import or Export button.

Facility Model
The main purpose of the Facility Model view is to provide visibility into the scheduling of your facility by
providing a 3D animation of the generated schedule. This model would typically be a high fidelity
graphical representation of your actual facility, with realistic graphical depictions of each workstation
and material handling device. The animation shows the movement of entities between workstations, as
well as the movement of operators. The animation allows you to see exactly what your facility will look
like over time based on the generated schedule.

You control the running of this animation from the Run ribbon, which has four groups of controls for
Run, Animation Speed, View, and Named Views. The Run controls consist of the Run/Pause button, Stop
button, and Step, Fast-Forward, and Reset buttons. The Run/Pause button is used to start and pause
the running of the animation. The Stop button terminates the running of the simulation. The Step
button is used to move the simulation forward to the next significant point. The Fast-Forward is used to
run the simulation forward as fast as possible with the animation disabled. At the end of a Fast-Forward
the animation updates to the current state of the model. The Reset button initializes the model back to
its initial conditions.

The animation speed can be controlled using either the speed slider or the speed factor. The speed
factor represents the amount of simulated time between each frame of the animation. Note that
smaller values (less time between frames) produce slower/more fluid animations, and larger values
produce faster/coarser animations. Small adjustments (+/- 50%) can be made using the slider.

The View controls are used to switch between 2D and 3D views, as well as to zoom to view all. You can
also switch between 2D and 3D using the 2 and 3 keys on the keyboard. Note that you can move the
view by left clicking and dragging anywhere in the model. Within the 3D view you can rotate the view
by right clicking and dragging left and right with the mouse. You can zoom in and out using the mouse
wheel or by right clicking and dragging in and out. You can move the camera up and down using the
mouse wheel while holding the Control key. Finally, you can place yourself on the floor of the facility by
pressing the W key, and then use the arrow keys to “walk” through the facility using the
forward/backward or left/right keys.

The Named Views controls are used in large models to define a specific set of named views, and then
instantly move the camera to a selected 3D view. For example, a factory model might have named
views called Inspection, Components, Assembly, and Shipping. You can quickly add and manage views,
and then instantly move between views by clicking on the desired view in the Change View drop down
list.

Results
The Results view provides a wide range of options for viewing the log data, data tables, and risk
measures for a schedule. The different options for viewing this schedule data is displayed in tabs within
the Results view window, and includes Target Summary, Target Detail, Risk Plots, Detailed Results,
Reports, Dashboard Reports, and Table Reports. In addition to viewing these results directly in the Simio
scheduling interface, these results can also be published to the Simio Portal Edition, and then viewed in
various formats using any web-enabled device such as a tablet. This makes it very easy to disseminate
the results of the schedule across the enterprise.

It should be noted that the same scheduling data can be viewed in many different ways. For example, a
work-to-list at a resource can be displayed on an interactive Dashboard on a tablet, or alternatively
viewed using a standard Report, or viewed using a custom created Table Report. It also possible to
export this same information to external sources such as an HMI panel located at the resource. There
are advantages to each of these options depending upon the application.

We will now take a closer look of each of the seven Results tabs in the Simio scheduling interface.
Target Summary

The Target Summary tab provides an overview of the schedule performance relative to the upper/lower
bounds for each target. The following shows a sample of this Target Summary, where in case 66% have
Overrun the budget, and 70% are late.
Target Detail

The Target Detail tab displays a detailed summary of target performance for each entity. This includes
the target value, on status, expected value, and probability of being within bounds for the target. The
following sample shows results with two targets: one for cost and one for ship date.
Risk Plots

The Risk Plots tab provides a detailed summary of each of our targets that we have defined for the
model. This view is useful for analyzing the risk associated with an entity at a detailed statistical view.
This view displays a SMORE plot for the selected target for each entity. The SMORE plot consist of the
mean value (gold circle), confidence intervals (brown/blue bands), range (horizontal line), and median
and upper/lower percentiles (black vertical lines). The upper and lower bounds are shaded in red. The
Target Chart ribbon can be used to control the display of these items. The image below shows a sample
for the SMORE plot for the Target Ship Date target. Notice that it is currently selected in the Target drop
down near the top of the plot.
Detailed Results

The Detailed Results tab provides detailed performance measures for both the entities and resources in
the model. This data includes waiting times, utilizations, travel times, etc., and is presented in the form
a pivot grid that can be sorted, filtered and pivoted. This makes it very easy to quickly drill into the
details behind a specific schedule. The following sample shows this grid filtered to display the resource
states of the model.
Reports

The Reports tab provides both charted and graphical reports detailing information about the schedule
based on the data recorded in the logs. By default, three reports are provided which include a Resource
Dispatch List, Workflow Constraint Analysis, and Resource Utilization Summary. A specific scheduling
application may also incorporate custom reports. For each report type, the user is asked for parameters
of the report; e.g. resource name and start date and end date. The following sample shows a portion of
the Resource Dispatch List report for the Cut2 workstation resource.
Dashboard Reports

The Dashboard Reports tab provides both charted and graphical reports that are interactive and can be
deployed across the enterprise using the Simio Portal Edition. Dashboard Reports may be custom
designed for each scheduling application and provide a powerful way to display scheduling information
for planners, management, and shop floor workers. Dashboards can display data in form of charts,
grids, plots, and other graphical and tabular formats and can access data from the logs, data tables, as
well as external data sources such as databases. Dashboards can be viewed from within the Simio
Scheduling interface, or from any web-enabled device such as a tablet.

The following is a sample Dashboard viewed from within the Simio scheduling interfacce. In this
example the resource Cut2 has been selected on the card set, the resource states for Cut 2 are displayed
by the pie chart, and the list of orders processed by Cut 2 is listed in the tabular grid.
Table Reports

Table Reports are custom designed and are typically used to display tabular data that is contained in the
relational data tables for the model. Although graphical elements such as graphs or charts can be
added to Table Reports, they are most useful in situations where tabular data is being displayed. The
Table Reports can also be distributed across the enterprise and viewed on any web-enabled device (e.g.
a tablet) using the Simio Portal Edition. The following is a sample Table Report showing the dispatch list
for resource Cut2.
Summary
Risk-based Planning and Scheduling provides detailed and realistic plans/schedules along with the
associated risks. With Risk-based Planning and Scheduling a user can quickly access the quality of the
resulting schedule.

Two important advantages of the Simio scheduling solution are 1.) the flexibility of the underlying
facility model, and 2.) the flexibility of the in-memory relational data set for providing the necessary
data to drive the scheduling model. However not all applications require this flexibility, and when
possible there are advantages to working with the default Simio scheduling data schema based on the
BB2ML standard. This includes the ability to automatically generate the data schema and Simio model
using the provided add-ins, as well as using standard Dashboard Reports and Table Reports for
displaying the simulation results.

You might also like