Jump to content
Simio Forum


  • Content Count

  • Joined

  • Last visited

  • Days Won


asneath last won the day on April 24 2020

asneath had the most liked content!

Community Reputation

3 Neutral

About asneath

  • Rank
    Adam Sneath


Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Process logic is typically added to a model on an as needed basis. For instance you will notice that some of our Scheduling examples, like SchedulingDiscretePartProduction (via Support ribbon -> Examples) does not use any process logic. There are several ways to initiate process logic which you could read more about in the "Processes" help topic. For instance, all objects in the Standard Library have an Add-On Process Triggers property category that allows you to specify specific points in the simulation that you would like to execute a process (like on Entered for a Server). A quick tip: y
  2. One approach would be to use an Output Table. There is a nice example provided in the UsingAddRowAndOutputTable SimBit. Keep in mind that each individual processing task has its own State Assignments and Add-On Process Triggers for 'Task Ready', 'Starting Task' and 'Finished Task' - these may be helpful in the endeavor. Happy modeling! Adam
  3. Hello, I would recommend looking into the notion of AssociatedObject, and ContextObject, for the Tokens moving through your processes. You can read more about this in the "Tokens" help topic. In some cases, the associated or context object is a ModelEntity so you can access it along with its data in your process steps. In some cases, though, ModelEntity is not associated with (or contextual to) the token executing the process! In this case there is an error if you try to use 'ModelEntity...' in your process. One way to check the AssociatedObject and ContextObject is using a Notify st
  4. Hello, I don't think you attached a file to your post. I would recommend looking at the Output Tables help topic. Instead of using the Server's built-in State Assignments, you may need to use an Add-On process with an Add Row step followed by an Assign step to update the Output Table. Happy modeling! Adam
  5. I noticed that the Source is not making just two entities, as you stated, it is actually making several as governed by your Interarrival Time. But since you have Output@Source1 (TransferNode) Blocked Destination Rule set to 'Select Available Only', all entities created after the first two are waiting until one of the Servers has finished processing. You will notice that once Server1 has finished processing, an entity is released from the Source (since its destination has been assigned). I would recommend exploring this further by enabling 'Model Trace', from the Run Ribbon, to see what is happ
  6. Double check that each Resource is hooked to the correct Work Schedule, and that you have the intended Day Pattern inputs for Mon - Sun in your Work Schedule(s). It sounds like you might need a separate (two total) Work Schedule for each group of 5 Resources. I would also recommend visually verifying that the Resources go OffShift (turn white) at the intended times. Other than that just make sure that the Off Shift Rule, in the Server's Secondary Resources, is also set to 'Suspend Processing'. Another way to check that the Server has suspended processing is to put some Dynamic Label Text on th
  7. Yes! You will need to use a "Table Based Work Schedule" instead of a "Pattern Based Work Schedule". You can create a Table Based Work Schedule in the Data tab, Work Schedules view, Schedule ribbon (near the top left). The data table, which may be bound to an outside source like any Simio data table, should have two DateTime columns called something like 'StartTime' and 'EndTime' along with an Integer column called something like 'CapacityValue'. You may read more about the implementation in the Simio Reference Guide (Help via the Support ribbon) "Work Schedules" topic. Happy modeling!
  8. The Server Initial Capacity property sets the capacity of the processing station within the Server. Regardless of the Initial Capacity value, each Server Object is regarded as a single Resource in terms of the Results provided by the simulation. This is a long way of saying that, if you want to analyze each firm separately, you will need a separate Server for each one or a pool of Secondary Resources like you had mentioned. Happy modeling!
  9. Hello, in general it sounds like your approach is good. You could use either an Object Reference State Variable or String State Variable (called something like 'WhichServer'), defined on ModelEntity, depending on the expression you use to make the assignment. For instance, with an Object Reference State Variable you could use 'ModelEntity.Location.Parent.Server'. With a String State Variable you would use 'ModelEntity.Location.Parent.Server.Name'. In terms of timing, you could make the assignment really anytime the ModelEntity is in the Server. You might use the Servers' On Entering State
  10. Michael, VehicleX is a Custom Object (Subclass of Vehicle) with several Definitions, Processes, etc. created by (I'm assuming) Dave. This is why you aren't seeing some of those Properties in your Vehicle Properties window. You may download the "VehicleWithDriver.spfx" file provided above and explore it further. Happy modeling, Adam
  11. Hi David, From your description and Error message, I expect that your Table column might need an adjustment. Since you are trying to assign a number (Integer?), you need to make sure that the Table column where you are trying to make the assignment is set up as an Integer Property, and not an Element Reference Property as the Error message indicates. The easiest way to do this is just make a new column from Schema (ribbon menu) -> Property drop-down -> select Integer. Delete the old column and give the new one its name so you don't have to rewrite your Logic. Maybe you know this alr
  12. Is the Combiner Property Must Simultaneously Batch set to 'False'? In Simio11 this is the default setting, but I believe it used to be 'True' by default, which could be why your Parent Entities are waiting indefinitely. Once set to 'False', the Parent will take all Members with the same 'Destination' from the queue once the triggering Event is fired.
  13. Hi Christa, It sounds like you have several Entities for the roll containers and one Entity for final order, right? It might be easier to accomplish your batching goal in two steps. For example, use a Combiner to batch Entities with the same 'Destination' via Member Match Expression 'ModelEntity.Destination', then deal with 'DeliveryMoment' separately. For a varying Batch Quantity you could set it to 'Infinity' then define a Release Batch Early Trigger to gather up all Entities in MemberInputBuffer (w/ same value of 'Destination') at a certain time interval or upon an event. You coul
  14. Simio offers user-defined work schedules in the Data tab. The SimBit ServerFollowsCapacitySchedule or others related to work schedules could be helpful. You can define a Pattern Based Work Schedule, to account for the shifts you described, and modify Server Properties like OffShiftRule (under Secondary Resources) to 'Finish Work Already Started' or 'Suspend Processing' depending on what makes sense for your Model. Adam 
  15. Hi Jason, If you just want to see the emissions for each Entity traveling through your Model, you could attach a Status Label to each Entity type displaying the TotalDistanceTraveled, or some calculation including it like TotalDistanceTraveled*0.323. To attach it just click on the Entity instance in Interactive mode and then draw the Status Label near it. Or you could define State Variables like Ship_Dist, Truck_Dist, Train_Dist to keep track of total distance traveled for all Entities of each type. You would then define State Assignments at their final destination (Sink), or some No
  • Create New...