Jump to content

Search the Community

Showing results for 'wait in transfer node'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Simio Public Forums
    • Welcome and How To Become a Simio Insider
    • Simio News and Announcements
    • Simio Product Details
    • Simio-Related Positions Desired or Positions Available
    • Help Getting Started with Simio
  • Forums for Simio Insiders Only (See Public Forums Welcome topic to sign up)
    • SI General Discussions
    • SI Sprint Releases
    • SI Shared Items
    • SI Ideas and Suggestions
    • SI Known Issues and Workarounds
    • SI Performance Tips
    • SI Non-US Cultures
    • SI Student Competition
    • SI Educational
    • SI Libraries and Objects
    • SI Animation and Visualization
    • SI Distributions, Functions, and Expressions
    • SI Simio Tabs
    • SI Experimentation and Optimization
    • SI Functional Approaches
    • SI Industries / Domains
    • SI Types of Simulation
    • SI Emulation
    • SI API

Categories

  • Files
    • Academic Information
    • Product Information
    • Case Studies

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me


First Name


Last Name


Company/University Name


OCCUPATION


ICQ


WEBSITE


YAHOO


AOL


LOCATION


FACEBOOK


GOOGLEPLUS


SKYPE


TWITTER


YOUTUBE

  1. ExcelRead only reads String and Numeric values. These string values cannot be applied to an object type state. However, you can bind your Excel file to our Tables and import your data in that way. Attached is model that demonstrates this. First, bind the Excel file to a Data table: Create a data Table (no columns), Bind to Excel file, Change Column Type to Object>Node, and Import data. Check out Help Topic Importing and Binding To Tables for more info on binding. Import can be set to Automatic (default) or Manual. Then modify your process logic to use a SetRow step instead of ExcelRead, start ExcelRow as '1', and set the Transfer and SetNode to reference the table. TableBind Node Reference State variable.spfx
  2. Hi, I am looking for an event which can be used in a Wait step in a process which is triggered by an entity finishing processing in a station. Also potentially an event which is triggered when an entity exits a station. Do I have to manually fire an event with an addon process from every station which I wish to do this?
  3. Because we assign the speed of path 3 and 5 to PathXXX.Contents.NumberWaiting at assign3 step of process 1 which is triggered whenever an entity enters node A. As I said in my previous post this expression may not serve your purposes. This is only for illustrative purposes. Here the message is you can increase all existing entities' speed (but all of them at the same time) on path 3 and path 5 whenever the process1 is triggered. Also, you can trigger process 1 by using monitor elements (which seems more suitable for your purposes). For example, using a monitor element you can track the number of entities on each path seperately and whenever this value crosses some treshold value (got congested) you can trigger process1 using monitor element. Note that in your attached model status labels shows how many enitities exist on each path. At the end, change the assignment expression of assign3 step of process1 accordingly.
  4. 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 Node along their path, to increment with NewValue of "Ship_Dist + ModelEntity.TotalDistanceTraveled" then compute the total emissions for each type at the end of the run. Note that you would need an Assign If 'Custom Condition' like 'ModelEntity.Is.ShipEntity' for this to work. Happy modeling, Adam
  5. As far as I know you can not accelerate the speed of an entity on any link? you should use tricky solutions to overcome this difficulty. One of the trick is setting the speed of entities to infinity right after entering node a. then changing the desired speed of path 3 and path 5 to some meaningful values. In the attached model this trick is applied. Note that the assigned values (i.e., Path3.Contents.NumberWaiting) should be replaced by any reasonable values. This assignment is only for illustrative puposes. Note that by this way we made the speed of modelentities limitless but at the same time we limit their speed with the speed of paths. you can do any other tricks as well... One of them maybe changing the type of the modelentities right after entering path 3 and path 5 (say path3_modelentities and path5_modelentities) by creating a copy of the associatedobject. Be sure to destroy the original one. And then whenever you need to increase their speed you should search their population by a search step and then assign appropriate speeds to them individually. These are the ones that come to my mind at the moment, but you can find some better methods by pondering. EntitySpeed4_me.spfx
  6. Hello, We want to assign the entities to different servers. The first server has FIFO selection system, and the second has FIFO with entity type OTC as the first priority, and the third server has FIFO. Furthermore, the servers open and close sometimes, but the entities keep transfering to the closed server. How can we divide them after the described rules? We have tried to get the output node to select from a list of nodes with the input of the different servers, but then the entities always choose server1. OTC-and-prescription-model.spfx
  7. I have a series of gated processes that are defined in a sequence table. Occasionally sequential gates will use the same server. In our process, the entity doesn't actually move out of the server, but in Simio the entity has to exit the server and re-enter. What winds up happening is that if another entity is queuing for that server, it will enter first during the approximately 2 seconds it takes for the entity to travel from the output node to the input node , causing the entity that was in the server to queue. I would like the entity to stay in the server through multiple gates, according to the routing logic, without getting bumped by other entities in the queue. It's important to keep the gates separated instead of combining them into a single entry on the routing table, because I need to look at performance statistics for each gate separately. Thank you
  8. I have seen this error before with transporter/entity transfers... You may have conflicting logic here.... i.e. an event occurs that triggers a token into a delay or wait step based on a condition before transfer can complete, yet during this duration another event occurs that wants the transfer to occur for a second time or the entity to be directed somewhere else...the original token is not released and destroyed first... simple solution... I used dummy nodes to shift the transporter\entities around based on a precedence constraint structure whilst clocking the time of the transporter\entity at each node. This worked like a bomb. Also, if you don't need the original token, destroy it or don't attach any processes on the line after it.
  9. I have been utilizing SIMIO for a couple of months, but I am still relatively new to some of the features. One of the problems that I have recently encountered in my simulation is entities taking a path even when the receiving node (a separator) has an off shift rule. Specifically, I determine the availability of the separators based on 5 minute intervals with a TimeIndexedRow table reference. The attached image accurately represents my dilemma while simulating an airport checkpoint. The passengers are first processed in Server 1 and subsequently proceed into the paths leading to either separator 1 or separator 2, depending on which conveyor is available (has a value of 1) to process their luggage. In a specific scenario, lets assume separator 2 has a value of 0 meaning it is in the off shift position. When I simulate only one conveyor open, the passengers sometimes either take the inactive separator path and move back to server 1 to take the other route, or move back and forth the link until the separator becomes active again. Is there a way to block the path leading to that separator, for that 5-minute interval when separator 2 has a value of 0? Perhaps this could be done with an add-on process trigger, however I have not been able to formulate one. Any help will be greatly appreciated!
  10. Hello, I want to model an evacuation network design problem with Simio. My goal is to consider traffic congestion in the model. Congestion happens when road capacity is not enough for that amount of people immediately leave the source node. I was wondering if you could let me know how to consider capacity for either path or connector. I would be happy if you could share an example with me. Thanks, Nadere
  11. You can still use your various 'lists' of servers in SetA, SetB, etc.). You still will need a Sequence table with the Sequence Destination property column. This tells Simio within the Sequence table the destination to route. So, within your Facility window, add a TRANSFERNODE before each 'set' of areas, let's say named SetA, SetB, SetC, SetD. Then, within the TransferNode, use the 'Select From List' for Entity Destination Type property and specify the appropriate list (SetAList, etc.). Then, within the Sequence table, route to the TRANSFERNODE that uses the particular list - so in the above, you would have within your Sequence table, SetA, SetB, SetC, SetD and Input@Sink. Within each of your Server's output nodes, specify Entity Destination Type as 'By Sequence'. You may wish to look at the example named SchedulingDiscretePartProduction to see the layout of the nodes within each section and the Routings table used (this is a much larger example, but the concept of the nodes, the sequence table and in that case a RoutingDestinations table (which is like a node list in Lists) is basically the same.
  12. You could put the two (or more) separator input nodes on a list and then at the Server output node, select from the list of separators - then you could use the Selection Condition property to select between those that are actually available, using either a table value or something like 'Candidate.Node.AssociatedStation.Capacity' expression checking the status of the separator capacity (if offshift).
  13. Hello, I am simulating a restaurant queue with two servers. The queue is lineal and the entity order is FIFO. The 85% of the entities goes to Server 1 and 15% to Server 2. But I need that all the entities do the same path. So, those entities that have to go to Server 2, wait till Server 1 (capacity==2) is empty, and then go to Server 2 (capacity==2) without processing in S1, and those entities that go to Server 1, then, wait till Server 2 is empty, to move on without process in Server 2. The real example is a lineal queue where you have to choose between two foods, but independently which one you choose, you do the same line, taking the food in the server you choose and waiting for the people that is in the other server to finish in order to move on and pay. How can I do it? Thank you so much.
  14. Within each of the Source objects, you would specify (within the output node of the Source) that a worker is required to transport the entity(s) to the next node. The decision making of the worker is then handled by the worker itself. The worker has several decision making options - first of all, for transporting, the worker has Transport Logic properties, one of which is the Task Selection Strategy property, which can be set to First In Queue, Largest/Smallest Distance or Largest/Smallest Priority. In addition to that, under the Worker's Add-On Process Triggers properties, you have the Evaluating Transport Request process that can be used to accept or reject any transport request. You can add custom logic, a distribution, etc. within a Decide step in that called process and simply then accept (Token.ReturnValue == True) or reject (Token.ReturnValue == False) a request (which is the first in the allocation queue, as ranked as noted above). You can use the requesting entity location within the decision logic as well.
  15. I have entity1 and entity2 entering a server. I want entity1 to have priority over entity2 when in the input buffer waiting to be processed no matter how many entities are already in the input buffer. I'm using connectors leading the entities into the server input node. Any suggestions?
  16. All right to start solving the problem, I created logic for both the vehicles (add-on process triggers > Loaded) to Search through the opposite loop/vehicle's SequenceTable for the DestinationNode assigned to the loaded entity. If the Search step finds the DestinationNode in that Table, it assigns the DestinationNode.ID to a temporary integer state, and sets the entity's priority to the other loop's vehicle's priority. After the Assign Step, a SetNode step is used to set the entity's destination to TransferNode1 (the node between the two loops). At the TransferNode: Upon entered, a process is triggered in which a Decide step checks whether a entity or vehicle enters the Node (Entity.Is.DefaultEntity), and if it is a DefaultEntity, a SetNode step sets the Entity's DestinationNode to the temp variable assigned earlier. I used one transfernode/no paths between the loops as I would like to force the vehicles to wait for the entity to be picked up by the other vehicle before moving on. The above logic mostly solves my initial question, but I'm struggling with one more thing: - If both vehicles want to transfer entities at the mutual transfernode, they just pause and no swapping is possible. The node's capacity is set to infinity, must I rather place a delay in one of the vehicles' transfer logic to overcome this? Find attached the model for reference purposes Model_Transfer_Question.spfx
  17. To start with, Destinations in Simio are always nodes. So the table should have a column of type Object Reference Property > Node. Although its not on the pull-down list, when you specify a entity destination as Select From List, you can also specify a table column of type node list and it will automatically respect the table rows associated with that entity. Model_RandomRow_FilteredTable.spfx
  18. For each location where you want to start a time interval (Server 1 and "the very beginning" in your example) you would need to add a state to the ModelEntity (NOT to the model). Then for each place you want to end a time interval (server6, "the very end", and server4 in your example), you would need to add a TallyStatistic element and Tally and observation at the point. For example to record the time between between Server1 and Server6: create a modelentity state named TimeDepartingServer1 assign TimeDepartingServer1 the value of TimeNow when entity departs Server1 create a TallyStatistic element named Server1ToServer6Time record a Tally observation (using node or Tally step) at Server6 recording the value TimeNow-TimeDepartingServer1 to Server1ToServer6Time add a status or floor label using the expression Server1ToServer6Time.Average
  19. I have new question followed, eg: I have item1, item2, item3, serverA and serverB process super fast, but when they go through from server A to server B they have waiting time 3 min, 5 min, 1 min. For server B, I want to process the item who arrives first... But now it seems, item2 and item3 have to wait until item1 is done traveling which is not what I want. Because ideally we want to make improve the utilization of both servers.
  20. Hi Mauricio, You can create a mock warm-up period by using an OnRunInitialized Process. An OnRunInitialized Process is executed when the model is first initialized. For example, you can use OnRunInitialized to Create and Transfer Entities into specific Servers as soon as the model is initialized, which is similar to what a warm-up period does. You can read more about OnRunInitialized in the Simio Reference Guide under the topic "Processes". While using OnRunInitialized can give you similar results to a warm-up period, it is not exactly the same as the Warm-up Period in the Experiments window. Keep in mind doing this will affect your Experiment and any other statistics collected (i.e. if you use a Warm-up Period in the Experiment it will essentially warm-up twice). A second option to explore is using a Timer to trigger a Process that contains a Clear Statistics step. This Timer should only go off once. This option is more similar to what a Warm-up Period in the Experiments window actually does. All the best, Caleb Simio Technical Support
  21. Hi, I am new to Simio. I was trying to add a routing decision in my model based on average time waiting at a server. But this function only shows up in the status label but not when I try to use it in the Processes as shown in the images. An entity reaching a node should choose the route to a server which has minimum average time waiting. What I am trying to achieve is to create a dynamic routing so that the average Time in System of the entity will be minimized. I don't know whether this is the right method or if we need to work with API or functions to achieve this. Any help would be much appreciated. Thank you in advance.
  22. In my model a truck (vehicle) is delivering packages (ModelEntities) to customers (Sink) following the road (Paths). Now I want to model a drone (vehicle) that brings packages (ModelEntities) to the truck (vehicle) using free space. Challenges: - The drone and truck can only exchange packages when the truck is not moving. (He's at a customer location) How can i find the next stop of the truck and thus the destination that the drone needs to go to. - How do i best transfer packages from the drone onto the truck. Knowing that the truck goes from sink to sink and at these locations there is no buffer available.
  23. I almost always simulate this using fillers/extractors from the extended flow library rather than directly filling a container on a vehicle/entity. It sounds like you could do this with entities or vehicles as long as your decision making for entities is as simple as you describe. If you do it with entities, you will have to write a bit of decision logic to the entity. I would recommend doing this on the 'onVisitNode' process, which would basically be a decision of 'Should I park now?'... true being to park and then wait for some event (wake him up), false being to keep on towards the destination. If you do it with vehicles, you will need to make some sort of decision request for the vehicle to go to the relevant node for pick-up. Normally this is done by an entity at a transfer node using the 'ride' step. However, riding a vehicle is about transferring into the ride station, not filling a container.... I foresee many pitfalls with this methodology! I might have time to take a crack at this later -- no promises though.
  24. This is a very cool library, i have built two very simple examples to test before using it in a simulation in which they will represent Ship to Shore Cranes. First of all, it took me a moment to figure out that "entity destination" on my home node for the crane has to be set to "specific", can this work using "continue" ? Now, on attached example 1, the Crane picks the entity and will wait for an available vehicle to make the transfer, building a queue in the home node for the crane if there is no available vehicle. This is great since it reflects what happens in the actual operations, the crane waits for a truck to be below the crane to drop the container. crane_example1.spfx But there may be interest in simulating the crane dropping the entity into the floor and just keep unloading the ship, this means i now want to drop the entity without the vehicle being available. Is it possible to control this behaviour at will? I was looking for the option of an input buffer of some sort but for now I just add a normal node and allow the crane to drop it there it will build a queue waiting for the vehicle, this can be seen on example 2, I appreciate any ideas, crane_example2.spfx also, I tried scaling the elements and it gave me an error on height, so I was wondering what should i take into account when scaling (changing size) of this elements? I will take a screenshot next time I encounter the error. finally, I will be using this element in my simulation, and i was wondering what are the thoughts on "tulach" question: "5.) Crane and other crane components do generate a lot of data in trace. It would be nice to have possibility to swich this off just for some steps inside crane and co. I used it in a model that has a simulation time of 1 month and this made my trace impossible to filter and analyse." thanks best regards
  25. Hello. I would need to create a simulation where the first and the last entities created goes to a different server than other. To do that I have created a node with to exiting path where the rule is a decide and the rule is entity.id == 1 || 150. But when I start the simulation the first entity created has the id = 18. How can I put that the first entity created as the .1 ?? Thank you
×
×
  • Create New...