Release 2, Sprint 39

This sprint provides new capability to assign states without using processes, interruption and preemption of processes, more effective choices for selecting destinations, and many new features added to the experiment window.

New 'State Assignments' Property Category for Standard Library Objects

For many standard library objects there is now a State Assignments property category where you can easily specify the assignment of state values when an entity is entering an object, or when an entity is ready to exit an object. This feature makes it much easier to do common state assignments without having to use add-on processes and manually place Assign steps.

This feature makes it much easier to do common state assignments without having to use add-on processes and manually place Assign steps.

Advanced Capability for Process Interruption

The Interrupt step may be used to interrupt process delays. A token delaying at a process' Delay step is considered a candidate for interruption if the Interruptible property of the Delay step evaluates to True. To add logic for handling interrupted items (e.g., re-routing logic), the Interrupt step can create new tokens that are associated with the interrupted items. These tokens will exit the 'Interrupted' exit point of the step.

The Interrupt step may be used to model resource preemption scenarios, allowing model logic to interrupt a process delay activity that is using a resource, in order to release the resource for a higher priority activity. This approach allows very flexible preemption capability with precise control over which entities are preempted and how the preempted entities are subsequently processed.

New SimBits

InterruptibleOperator - demonstrates how to interrupt a moveable operator to do more important work at a different location.

InterruptingServerWithMultipleCapacity - demonstrates how to preempt a resource away from low priority work and switch to higher priority work.

InterruptingAcrossMultipleServers - demonstrates how to interrupt processing at a one of several servers with a lower priority item to instead process a higher priority item.

InProcess Ranking Rule property on Station element

The Station element now allows you to specify the ranking rule of the station's InProcess queue that holds all of the entity objects physically located in the station.

The Standard Library objects were updated such all InputBuffer stations have the same InProcess Ranking Rule as the resource capacity allocation rule being used. Thus, for example, if entities are waiting to seize a Server object with a static ranking rule of Lowest Value First (Entity.Priority), the InputBuffer.InProcess queue where the entities are physically waiting will also be ranked Lowest Value First (Entity.Priority).

New InputLocation Functions For Nodes

For any external input node, a new set of InputLocation functions are now provided to return some basic information on the node's input location, such as the input location's capacity, remaining capacity, load, or overload. Such information on the input locations of input nodes is often useful or required to implement dynamic routing logic. For example, in the TransferNode object in the Standard Library, when setting an entity's next destination using the Select From List option, the new functions are useful in selecting the best destination node from a list of candidates.

Six new functions are provided:

  • InputLocation.Capacity - returns the current capacity of the location inside the associated object.
  • InputLocation.CapacityRemaining - returns the current available (unused) capacity of the location inside the associated object.
  • InputLocation.NumberInProcess - returns the current number of entities in the location.
  • InputLocation.NumberWaitingEntry - returns the current number of entities waiting to enter the location.b
  • InputLocation.Load - returns the “load” which is the sum of entities on their way to the node, waiting to enter the object, and now in the object.b
  • InputLocation.Overload - returns how much a location is overloaded (a positive value) or underloaded (a negative value) or more specifically Load minus Capacity.b

TransferNode Object Changes

Related to the above change, the default value of the destination Selection Expression when Select From List is now Candidate.Node.InputLocation.Overload. In many cases a selection of the smallest Overload will provide the server most capable to handle another entity because it takes into account many different aspects of actual and potential work load.

In many cases a selection of the smallest Overload will provide the server most capable to handle another entity because it takes into account many different aspects of actual and potential work load.

Experiment Changes

We are adding capability to the Experiments window to improve its usefulness as an analysis tool as well as to make it easier to use with various add-ins like OptQuest. Here are some of the latest changes:

  • Columns are categorized for easier reading. Columns and categories can be reordered.
  • Columns may be sorted and filtered. If you sort on a response, the rows (scenarios) will be dynamically resorted by your sort criteria. Multiple sorts can be added with shift-click.
  • A checkbox has been added to the left of each scenario. Only scenarios that are checked will be enabled. This provides a way to do additional replications on selected scenarios.
  • 'Completed' column now provides numerical and graphical feedback as the replications progress.
  • Responses now have Lower Bound and Upper Bound properties used for highlighting unacceptable scenario results and for use with user add-ons.
  • Responses now have an Objective property that will be used with ranking and with user add-ons.
  • There is now a Primary Response property on the experiment that is available for use with user add-ins (typically for defining an overall objective function).

We are adding capability to the Experiments window to improve its usefulness as an analysis tool as well as to make it easier to use with various add-ins like OptQuest.

 

Download the latest Simio Simulation Software Free

Do you want still more information? Examine the release notes for other recent releases.