About Resource Simulation

The Resource Simulation command's basic functions (e.g., the VCR-like buttons) function identically to those of Process Simulation .  However, the purpose of Resource Simulation differs from that of Process Simulation , and this page describes those differences.
There are two different ways to use Resource Simulation :
  • If you select the command first, the whole resource world (i.e. the whole hierarchy of the processes present in the resource tree) is included in the simulation.
  • If you select the resource first, before clicking Resource Simulation ,  only the selected resource’s behavior (as well as the behavior of all its children) is simulated. This simulation occurs in the context of the whole world, i.e., all events that occurred before that resource’s behaviors begin are first simulated in the background (without graphics), in order for the world to be at the state where the previous resources left off. Then the selected resource’s behaviors are simulated, in addition to everything else that runs in parallel with them.

Although this command is not intended to simulate individual activities under a resource behavior, you can run the command by selecting an individual activity first, also. In that case, Resource Simulation tries to find the closest ancestor of the preselected activity that:

  • is a logical resource and
  • has a valid Resource Behavior.

If no ancestor can be found to match this criteria, the root resource is simulated.


When You Select Resource Simulation First

  Starting with the root resource within the PPR tree's resource list, all the behaviors of the resources, and their child resources are included in the simulation.  The behaviors of different resources are not linked with timing constraints However, the physical activity of a resource behavior (known as a Task Specification Activity or TSA) may have links underneath the resource behaviors.  Possible links are:
  • precedence constraints
  • synchronization links (i.e., start/start and end/end links).

These are taken into account during the simulation. The TSAs belonging to the same behavior are linked through  control flow links. Also, the starting time sets for different TSAs are obeyed by the simulation, as long as the sets do not conflict with other time constraints defined for the given TSA.

In the absence of such links, all behaviors run in parallel, even if the behaviors are across multiple levels in the resource hierarchy.

When the TSAs under different behaviors are linked with precedence constrains or synchronization constraints, this determines the sequence of execution across behaviors. For example, suppose there are two stations: Station 1, and Station 2, and their child resource behaviors, Station1Behavior, and Station2Behavior.  Each station behavior includes a load and unload activity. If there is a precedence constraint between Unload1 (under Station1Behavior) and Load2 (under Station2Behavior), it is honored during the simulation, and therefore Station1Behavior and Station2Behavior do not run in parallel.


Physical Resources

  If a robot/physical resource appears in the resource hierarchy, but is not assigned to any TSAs, then its tasks are not simulated as part of simulating its parent resource behavior.
  If a TSA has a robot task assigned to it, then the simulation simulates the active robot task for that assignment and ignores any child activities of the TSA itself. This is consistent with and identical to how simulation treats robot tasks assigned to process activities in the process tree.

When You Select a Resource First

  When a logical resource is pre-selected, the logical resource’s behavior and/or its child behaviors are simulated (if resource behavior is absent then only child behaviors are simulated). However, the whole resource world as described in the previous section is included behind the scenes. This is for the purpose of updating the world to the state at which it would be at the beginning of the selected resource’s behavior/process. This is referred to as simulating the selected resource in the context of the whole resource hierarchy.
  If activities have precedence constraints, the precedence constraints are observable in the simulation.

3D States or Initial Conditions

  If 3D states or initial conditions are defined on individual TSAs, they are applied by the simulation engine at the beginning or end of the TSA itself