Here are quick video summaries of some of the newest features of Simio 8.136. Detailed release notes are below.
Within the View ribbon, there are now two new icons under the Map grouping, including Set Map Location and Map View. Set Map Location allows the user to specify the latitude and longitude values that will correspond to the location within the Facility window or search for a location by name or by address. The Map View option allows for pulling in various internet maps as background into the Facility window. This new geographic information system, GIS, feature allows you to build your model on a map for a more realistic visualization. With this new feature, you can find the fastest route between nodes as well.
In the past Simio provided a 3D modeling environment where you could construct your model both 2D and 3D concurrently. Now with this new release, you can walk through your model virtually when using Oculus Rift 3d Headsets. This gives an entirely new perspective for viewing your model!
Snap to Grid will snap moving object and handle locations to grid lines to allow for object alignment. The snap locations will be dependent on the grid level.
The Assign step has been enhanced to include a Skip Assignment If property within the Assignments (More) to allow an assignment in the repeat group to be conditionally skipped. This new feature enabled new node state assignments. It will also be useful for conditional type assignments within a single Assign step. This new property allows the user to specify that an Assignment should only be made under certain conditions. If the specified condition is met, the assignment will take place. In the past, you would have needed to go into process logic and use a Decide Step to check the condition, but with this change, you can do all of that right inside of the object!
All Entity type objects, including ModelEntity, Worker and Vehicle, include a new property within the Properties window, Initial Travel Mode. This property can be set to ‘Free Space Only’, meaning an entity is required to perform travel movements in free space, ‘Network Only’, meaning an entity is required to perform travel movements using its currently assigned network, or ‘Network If Possible’, meaning a preference for the entity to perform travel movements using its currently assigned network, but if no followable network path exists to its next destination then travel in free space is allowed. This enhancement makes it easier to create models where entities travel both on a network of links and in Free Space. When the property is set to “Network If Possible”, the entities will travel on a network but will jump into Free Space if a network isn’t available. You no longer have to introduce process logic as you had to before.
COMPATABILITY NOTE: A model that has extra process logic executing Transfer to ‘FreeSpace’ steps for an entity that has an assigned network value, rather than relying on the Standard Library object behaviors where assumption is that Entity.CurrentNetwork==’Nothing’ to transfer an entity into free space, may have issues with the new Initial Travel Mode property set to ‘Network Only’ (default for existing models updated to sprint 133). Entities traveling between networks and free space should have the Initial Travel Mode property changed to ‘Network If Possible’.
If the entity then attempts to travel under the wrong conditions, the Transfer step ‘Failed’ exit point may be exited. See Help on the Transfer step for more details. Additionally, for Worker/Vehicle Pickups/Dropoffs & Resource Move Requests, if a Vehicle/Worker current travel mode is ‘Network If Possible’, then the Vehicle/Worker will accept any node in the same Facility view as a valid destination for pickups, drop-offs, processing tasks, etc., because the Vehicle/Worker’s travel movements will be able to be performed using either its currently assigned network or in free space.
Related to the above property on the Entity type objects is the addition of a state variable, CurrentTravelMode, that can be assigned during the simulation run to the same options – Free Space Only (0), Network Only (1) or Network If Possible (2). With this, the read-only CurrentNetwork function previously provided for an entity has been changed to be an assignable state. This allows the use of either an Assign or SetNetwork step to dynamically change an entity’s currently assigned network.
In conjunction with the Travel Mode for entities, the BasicNode and TransferNode objects now include an Outbound Travel Mode property. This property value can be set to ‘Continue’, which will provide no assignment to the entity’s CurrentTravelMode state. The entities will continue using their currently assigned travel modes. The property can be set to ‘Free Space Only’, ‘Network Only’ or ‘Network If Possible’, which will assign a new travel model to the entity.
Within both the BasicNode and TransferNode, we have added State Assignments repeatable properties on entering a node. Because transporters commonly travel through nodes, the state assignments functionality provided by the objects will make it easy for a user to distinguish between entity or transporter state assignments by providing an Assign If condition option.
Note that the available assign condition type choices (Custom Condition, Entity Entering, No Condition, Transporter Entering) are identical to the tally condition choices if defining a tally statistic using the node’s Tally Statistics -> On Entering repeat group.
The ModelEntity, Worker, and Vehicle of the Standard Library and ContainerEntity of the Flow Library are all considered ‘Entity’ type objects. Within each of these objects, we have added a new Free Space Steering Behavior property, as well as Update Interval and Avoid Collision supporting properties if the new steering behavior property is set to ‘Follow Network Path If Possible’.
The Free Space Steering Behavior property is the behavior that is used to steer an entity type object when traveling in free space to a destination. If the property value is ‘Direct To Destination’ the entity will move in a straight line to its destination. If the property value is ‘Follow Network Path If Possible’, the entity will be steered along a path following its currently assigned network, staying within the boundaries of the drawn path width. The entity’s travel mode should be set to ‘Free Space Only’.
It is important to note that the Update Interval can be adjusted based on the speed of the entity to assure the entity’s adherence to the network path.
The SetNode step has an additional property, Auto Clear If Visit Different Node, which indicates whether to automatically clear the assigned destination node if for any reason the entity visits a different node beforehand. This enhancement has primarily been made to support the free space enhancement.
A new node function, available for BasicNode and TransferNode, has been added to the software, OutboundLinks.SelectItemFor(entity). For a specified entity, this function returns a reference to a drawn outbound link from the node using the node’s outbound link selection-related properties to make the selection decision. The OutboundLinks.SelectItemFor(entity) function will use the same outbound link selection logic that would be used if the entity were located at the node and executing a discrete Transfer from ‘CurrentNode’ to ‘OutboundLink’. If the link decision is probability-based, then the value returned may not necessarily be the same as the link that the entity actually takes when it makes the decision. However, if the link decision is logic based (or shortest path to specific destination for example), the link name returned may be useful to some users in advance of the entity moving there.
We have enhanced the Navigation window with the ability to re-order project items in the project window via drag and drop. Moving a model can be done by simply highlighting, dragging and dropping it. A small blue curved “insert here” arrow will appear when moving it to display where it will be located when dropped into a new location.
Note that the various sections of the ‘tree’ are collapsible as well. When you click on one of the “v” symbols next to a model that has multiple experiments, it will close, and then contain a “>” next to it instead of a “v”.
Note that users can re-arrange the order of sibling items (nodes) by dragging them around, meaning you can re-order items within the same parent node:
The Server, Combiner, Separator, Workstation, Resource, Worker, and Vehicle of the Standard Library and Filler and Emptier of the Flow Library have been updated with a new Dynamic Selection Rule option, Standard Dispatching Rule.
When the Dynamic Selection Rule is set to ‘Standard Dispatching Rule’, the user will be prompted for a:
Dispatching Rule, Tie Breaker Rule and Look Ahead Window in Days.
Here are the standard dispatching rules to be supported. These new rules allows the user to easily experiment with using different rules to select jobs and then determine which rule is best for their system.
The Processes window now allows Shift-Click and Ctrl-Click to select multiple processes within the window for cut, copy, or paste of multiple processes at the same time. When in the Processes window, click on a given process, then use the Shift key and click on another process below the already highlighted one – the first, last and all processes in between will be highlighted. Additionally, using the Ctrl key and click on a process will continue to highlight selected processes (not in any necessary order). The Ctrl- X, Ctrl-C, and Ctrl-V can then be used to cut, copy, and paste these multiple processes. Alternatively, the Cut, Copy, andPaste buttons on the Project Home ribbon can be used.
Importing of tables has become easier by providing two options for Import including the import of the current table, as well as import of all tables. The Import All will bring in all data from those that are bound to an external data source.
Additionally, for Excel imports, when importing large Excel files into Simio tables, we only re-load the Excel file if its timestamp indicates that the contents have changed since the last time it was loaded.
Both the Suspend and Resume steps have been enhanced to allow multiple processes, object movements and/or regulatorflow to be suspended and/or resumed by using a single step. Repeatable properties of suspend actions have been added to the Suspend step and similar repeatable properties of resume actions have been added to the Resume step.
The three scheduling type examples that are included with the Simio Examples have been updated to incorporate the latest Standard Dispatching Rules. These examples include SchedulingDiscretePartProduction, SchedulingBicycleAssembly and SchedulingBatchBeverageProduction.
In support of the new features, we have added two new properties to the base fixed object, which includes Server, Combiner, Separator, and Workstation of the Standard Library and Filler and Emptier of the Flow Library.
ExpectedSetupTimeExpression – The expression used to estimate an expected setup time for an entity at a given fixed object.
ExpectedOperationTimeExpression – The expression used to estimate an expected operation time for an entity at a given fixed object.
In conjunction with the above properties, we have added functions for the same objects to include:
ExpectedSetupTimeFor(entity) – Returns an estimate of the expected setup time for a specified entity at the fixed object.
ExpectedOperationTimeFor(entity) – Returns an estimate of the expected operation time for a specified entity at the fixed object.
The Activity element has also been updated to include new functions:
ExpectedTotalDurationFor(entity) – Returns an estimate of the expected total time duration (in hours) for the specified entity to perform the activity, calculated under the assumption that the entity would be next to start the activity.
NumberBatchesRequiredFor(entity) – Returns the total number of sequential batches required for the specified entity to perform the activity.
CurrentBatchDurationFor(entity) – Returns the time duration (in hours) to perform the activity for the specified entity’s current batch. If the entity is not currently performing the activity then NaN is returned.
A new function for queue states includes:
TimeWaiting (object) – Returns the time that a specified object has been waiting in the queue. If the queue does not contain the object, then NaN is returned.
A new function for entity objects includes:
CurrentRoutingGroup – If the entity object is currently waiting in a route request queue, then this function returns a reference to the routing group being used. Otherwise, the Nothing keyword is returned.