Jump to content

Search the Community

Showing results for 'buffer "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. What appears to be happening is that both the original token leaving the Original segment and the new token, leaving the Found segment, are both associated with the same Entity and therefore the Transfer Steps are trying to transfer the same entity. This is shown in the Trace when it says which entity it is trying to transfer. Therefore, when the second Transfer step attempts the transfer, it says that it cannot transfer because the entity is already in the middle of being transferred. It is difficult to determine why the process logic is having both tokens transfer the same entity, but the first thing I would suggest that you check is whether or not the Search step is finding the correct entity during it's search. Or if you are using the Entity Type property of the Transfer Step to transfer a specific entity, you might look to make sure you are transferring the correct entity.
  2. Hi Everyone I seem to be having a problem with a search step with a transfer step following depending on whether a match is found. I'm sure this is due top my lack of understanding of tokens - apologies, I'm pretty new to Simio! As I understand it, the Search step creates a new token when the match criteria is found but retains the original token which continues through the process. I think the original token is causing the problem. I guess my question is; is there a way to suppress the original token (or destroy it) once the new token is play? I believe the original is trying to initiate an unwanted transfer step which is clashing with the wanted step, resulting in a runtime error. I've attached the error message which may help. Any help, advice or direction to texts explaining tokens would be very much appreciated. .......Dave
  3. 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.
  4. Okay, cant open your model but I will try to explain.... Insert a Node on the floor where the vehicle is at the bottom of the lift....pos A -> f(x|y|z) = f(0,0,0)... Put an additional node at floor/Level 1...pos B -> f(x|y|z)=f(0,1,0)... and... Option 1: connect with a path where along vehicle can travel; in the vertical.... Option 2 : use a transfer block to move transporter between nodes.... Every time you direct the transporter to the destination node which is pos B...it will travel horizontally to pos A and then vertically to pos B... Use the shift->up key as a shortcut....This works....
  5. The nodes are already in vertical alignment and the transporter follows the path. My problem is that the vehicle must visually move up without changing position. It must work like a lift going up or down. Similarly to mole racking. A car must transfer the pallets up to a rack lane and then drive into that particular lane.
  6. Try positioning the nodes in the vertical....if the node is not connected to a path, you might have to use the transfer block....
  7. Hi, I have created a simple object to which I may add more complexity in the future. It is a batch server, which processes a certain amount of entities in a batch. It has the following properties: - Input and Output Buffer Capacities - Batch Size - Processing Time. I wanted to share it in case any one can debug it or make use of it. Regards, batch.spfx
  8. Thanks for immediate reply David, I just find the route step option myself, but it is good to know that there is no other elegant option. But as I want to transfer some entity to the node from node list not using a path, I use this construction. Route -> Assign (NodeState:=Model.Entity.DestinationNode) -> Transfer (to node: NodeState) I would be nice if we can just pick a random node form list with something like this List.MyListName.random Something we can do with populations.
  9. Hello, Currently I am modeling a simple logistics network, I used nodes to represent locations in the network. The transfer between the nodes is performed by vehicles. When entities enter a node, there are user defined processes in order to update Model Entity state variables. However, I get an error when the entity state variables are updated saying that there is a mismatch in the type; the expected type is still a transporter. I used a Drop-off step before the Assign step, but when the transporter rides more than one entity, this solution did not help. Do you have any suggestions how to solve this problem? When a transporter enters its destination node, doesn't it automatically drop-off all the entities that are riding with it? Thank you, Selin
  10. 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
  11. Hey guys, first of all, thanks for the contribution on these forums, I have learned a lot from the SimBit solutions along with forum threads. Herewith my first post/question: Based on the Vehicle Fixed Route SimBit, I've set up the following model: There are specific pickup/drop-off locations in each of the vehicles' fixed routes. Entities entering at the various Sources will each be allocated a destination location Sinks randomly (ie. at Source_1 Output Node the destination is randomly selected from a DestinationList, which contains all destination nodes). Enities in the right-side loop are only picked up by Vehicle 1, and entities in the left-hand loop are picked up by Vehicle 2. Sequence Allocated to Vehicle 1: Output@Source_1 -- Input@Sink_1 -- Input@Sink_3 -- Input@Sink_5 -- TransferNode1 Sequence Allocated to Vehicle 2: Output@Source_2 -- Input@Sink_2 -- TransferNode1 -- Input@Sink_4 Of course some entities' destinations in the right-hand loop are set to destination sinks on the left-hand loop, i.e. Source 1 entity destination is set to Sink 4, and vv. In this case I would like Vehicle 1 to transfer this specific entity to Vehicle 2 via TransferNode1, after which Vehicle 2 can drop the entity off at Sink 4. There can even be sort of a "swap" of entities which need to go to destinations not in its original vehicle's route/sequence. I've tried setting up a process where Vehicle 1 stops at TransferNode1, checks if entities need to be transferred, and if so, waits for Vehicle 2 which then picks up the entity from TransferNode1. Actually I don't know where to start with this process, or if I'm even thinking in the correct direction? Any ideas? Thanks in advance
  12. There are many ways to do this depending on the details. The SimBit OverflowWIP illustrates one approach using secondary resources. Or you could do something with events as illustrated in SimBit RegeneratingCombiner. Possibly the easiest is to represent the Stock as a 0 processing time Server with an infinite output buffer, and have a connector (or path with capacity 1) to MoldingA. MoldingA might have a 0 capacity input buffer. So each time a part leaves MoldingA, another part would leave the Stock to take its place.
  13. Attached is an updated crane library. This version includes the following changes. 1) Crane Specific Transfer Bridge List.....Each crane can use a different bridge list. This gives added flexibility and helps avoid blocks. (e.g. Crane A within a bay can choose Bridge A and Bridge B while Crane B can choose Bridge B and Bridge C). 2) Animation for the seizing of the Cross Bay Transfer Aisle zones....Now when a crane seizes the cross bay transportation bay zone, the zone is display as a dark grey. 3) Bay is no longer visible. This allows for status objects, status labels and symbols that are placed on the floor to be visible.
  14. One option would be to have the entities transfer into a station and use the Wait step to 'hold' them there until something else triggers them to exit with a Fire step. The advantage of having the entity transfer into/out of the station is that the statistics of the station are captured automatically - for example, the number (average/maximum) in the station, the holding time in the station, and the counts of number entered / exited the station. The Transfer and EndTransfer steps would be used to move the entities into/out of the station and the station.contents queue can be used to animate those entities waiting. See the attached example, built using Simio sprint 91. WaitInStation.spfx
  15. In my model, there is a transfer node that is connected to 6 servers. One of the servers (out of 6) should be selected to route the entity through it. A random score between 0 and 1 is assigned to each server and the server with the highest score will be selected to process the entity. How should I implement this routing logic in the transfer node ? Thanks,
  16. The Simbit "Select server with shortest line" might be what you're looking for. Create a list that contains the possible input nodes and set the transfernode destination type to "Select from List". Selection Goal: "Largest value" ("Random" if the score is always random and just a means to select a random server every time) Selection Expression: Depends on where the score information is stored, maybe "Candidate.Node.AssociatedObject.score" Another way would be to set the destination beforehand. For example, if the entities come from a source, you could add an add-on process trigger @ "Created Entity" which calls a routing process that you can define. The process would determine or at least read out the random scores and set the entity destination accordingly, using the "Set Node" step. The transfer node could then be set to Entity Destination Type = "Continue".
  17. Hello all, I’m having a tough time modeling a dynamic routing priority situation. I have entity instances that I would like to route to one of N servers. I currently have node lists that I use to route out of a transfer node per entity instance (actually, I have a list property defined on my entity, and the transfer node’s repeat group references ModelEntity.NodeListProperty). This seems to work well, but now I would like to embellish the model so that the priority can change on a given date. I already have logic to detect the date change—my question is how can I reference a new node list for each entity instance? Potentially complicating the issue: I have an additional requirement that the routing priorities be tied to an Excel input file. Lists cannot be bound to data (a lacking feature, in my mind), so my node lists are actually references to table cells that hold nodes. For example, NodeList1 = I am flexible on the table structure required to meet the new feature of changing to a different set of nodes. I tried using a state variable to point to a different set of rows in the table (i.e. NodeList1 = ; IntState increments on each priority change). However, it appears that the list property gets initialized for the entity population on model initialization (makes sense) instead of when the entity gets created. Also, there is not an option for a list reference state variable. I also considered having multiple list properties on each entity… but how do I dynamically change the node list property on the transfer node’s routing group? So, any thoughts? Thanks! DynamicRoutingPriority.spfx
  18. 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.
  19. Good day, I am using Simio for my final year project and was hoping to get some advice with regard to transporting entities with multiple vehicles. At each transfer node one can only specify the transporter type as “Specific” or “From list”. I therefore created a list containing the specific vehicles needed to transport the entities. I have tried numerous methods but failed to assign the vehicles to specific entities once the entities are created. I therefore need to use a certain property of a created entity as a decision basis for assigning the entity to a certain vehicle once it is created. Hope you can help . Kind Regards, Rhynard
  20. Hi, I tried this library and it is a nice thing to work with. Few suggestions: 1.) It took me some time to get the difference between ForwardandBack and LeftandRight. 2.) Crane can, to my great suprise, transfer entities to nodes out of Bay. This happens only if the node is outside bay in the direction of cab movement. If it is outside bay in the direction of Bridge movement, warning appears. 3.)If Crane initialnode must be the same as bridge initialnode, it should be nice to have this set by default. This is not possible in Simio at the moment I think. 4.) It would be nice to have transparent Bay with borders only (Or a choice to . Sometimes we have layout of factory and bay does not look good and hides important things on layout. Ok I found that I can change bay as any other object but still transparent color for objects would be nice. 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. 6.) If I have Bridge1 initialNode and CraneInitialNode the same as node where my entities go to be transfered, I get this error. I has something to do with fact, that bridge does not have to move, so it has movement.rate == 0 7.) In one model the lift started to fall into depth. This happens if entity has destination node set to specific and to the same node where it is. (e.g. if TransferNode1 is set to Entitity destination type specific, NodeName = TransferNode1) then crane will fall in the depths.
  21. Thank you very much. I was able to create a new model with two servers and have my entities queue up in the server1's input buffer. Then I tried to do something similar with three servers where I want server1's input buffer to have entities queue up when server3 is busy. I have server2 in between server1 and server3. I set server2's input and output buffers to 0 and set server1 and server2 and paths as described below. Is this correct, to set the in between server's input and output buffers to 0? Everything seems to work as expected and I get a long queue at server1's input buffer. I also used a rate table with many entities going through. An interesting thing I noticed was that if I change server1 and server2 process times to 3 and 2 seconds respectively and leave server3 process time to the default random.triangular(.1,.2,.3) minutes. I also changed a few selection weights. I barely ever get a queue at server1 input buffer, and when I do, the time in queue is very small. I would have expected a significant queue with the rate table I am using. Does this sound correct? I also ended up getting a Simio error that I ended up sending to Simio, subject [sIMIO EXCEPTION REPORT] from mmashaie. This email includes the model. Thanks again. Your help has been great. Maryam
  22. Sure. You can make tightly coupled servers by connecting them with a Connector and having Server1 output buffer capacity and Server 2 input buffer capacity set to 0. But it sounds like you want more loosely coupled servers, so for example you could set: -Server1 Output Buffer is 0 (nothing waits there) -Path2 Capacity is 1 (only 1 can wait there) -Server2 Input Buffer is 1 (only 1 waits there) -Server1 Capacity is 1 (only 1 can be there) So you can have a total of up to 3 entities in or on the way to Server 2. Beyond that Server1 will be blocked and and additional entities will wait in Server1 Input Buffer. (I would have attached a model if you had posted this in an SI folder, but attachments are limited in these public folders.)
  23. Hmmm, actually he didnt update the model, it works fine. What is the correct way to remove elements from a station? I can perhabs use transfer right? Can I destroy them?
  24. The Extended Flow Library discussed in this thread is now obsolete. Most of its objects are now integrated into the Simio Flow Library or included in the new Candidate Library: http://www.simio.com/forums/viewtopic.php?f=36&t=1740 The built-in Flow library includes very powerful features and capability, but is currently limited in scope to just a few basic objects. While we are enhancing that built-in library based on your feedback, we have provided an extended set of flow-related objects. This library includes objects such as Solidifier, Liquefier, Filler, Extractor and Stockpile. A Solidifier can be used to convert a specified quantity of flow into discrete entities. A Liquefier converts a discrete entity into an outbound flow. The Filler is similar to a Combiner that combines input flow of a specified volume with a discrete entity and the combined entity departs the Filler. The Extractor is the flow equivalent of the Separator. It will separate a batch member entity from the parent entity, with the flow transfer of the batch member entity then discrete transfer of the parent entity once flow is complete. The Stockpile object is similar to a Tank with different animation graphics. ExtendedFlowLibrary.zip As we receive customer feedback on both the Flow Library and the Extended Flow Library we will probably build more of this type of capability directly into the Flow Library. But in the interim, hopefully this extended library will help in your modeling. Like all Simio-provided libraries, this library is open so you can look at how it was built, learn from it, and subclass your own objects to improve them. But unlike our built-in libraries, this is not fully supported (although we can provide some help) and we may not continue enhancing it, particularly if we decide to build this capability into the base Simio products. We are anxious to receive your feedback on this library.
×
×
  • Create New...