Jump to content

Search the Community

Showing results for 'entity at node server available'.

  • 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

Calendars

  • Simio Calendar

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. You want to make the servers have a Capacity Type of Schedule and follow the default Standard Week. If you don't want to give them a lunch break, just change the definition of the Standard Day. Leave the default Off Shift Rule of Suspend Processing. The easiest approach for arrivals is to have a Source with an Interarrival time of 4.33 weeks (or 4 weeks) and an integer random distribution for the Entities Per Arrival. Doing a "first Monday" is possible, but a bit complicated because Simio time does not have the concept of Month because months are of varying size. You could probably specify the initial Time Offset to be early in a month, then maybe make the interarrival time be something like DateTime.DaysInMonth(DateTime.Month(Timenow),DateTime.Year(TimeNow)) which would make the next arrival be exactly one month later (same day of the month). When you say you have no buffers, what do you mean? If an entity arrives when all servers are busy, should it be balked (possibly disposed) or should it wait somewhere like on the server input node, on a path or in the Source output node? If the above arrival approach isn't exact enough, you can put exact arrivals in a data table. The arrival time could be specified at any exact datetime you desire and still have the Entities Per Arrival be a distribution.
  2. Hi all! I am simulating a facility with nearly 40 servers, each one starting with some entities in the input node at initialization and having a different capacity. Each server has a 0 input buffer capacity. My entity creation is currently set to having an interarrival time to be 4.33 weeks (1 month) with a random number of entities created. Currently, it runs 24/7 and does not care about the time, but I want to incorporate that. How can I make it so that the entities arrive once a month, let's say the first Monday, at 8am? How can I make it so the servers are only processing between 8am and 4pm Monday - Friday? The work schedule doesn't seem to work for me, but I could be doing it wrong, since I have a 0 input buffer, which I can't change as it's part of my routing logic for overflow. I would be happy with using timers or a process logic if someone can explain it to me. Ideally, the entities only arrive when it's during the working time, and the entities remaining after 4pm are just put on hold until 8am the next day. Thanks in advance!
  3. Hi I've got a model where the situation is like this: 1. 3 Worker: W1 W2 W3 2. 3 Server: S1 S2 S3 On Monday (work schedule), W1 will work in S1 in the morning and work in S2 in the afternoon. W2 will work on S2 in the morning and S1 in the afternoon. But on Tuesday, W1 will work in S2 in the morning and S3 in the afternoon. W2 will work in S3 in the morning and S2 in the afternoon. The server properties in the secondary resource are "select from the node list." But since the node list for S1 and S2 contain both W1 and W2, and they both have the same hour of working (4+4), when the S1 server seized the resource on Tuesday morning, instead of W1, W2 got allocated instead( W2 should be in S3). I have tried: 1. Using server selection goal to " smallest distance," but it didn't work since the worker will keep swapping the room every day 2. Giving each worker a new initial value and setting the selection goal to "smallest value," but they still have the issue. 3. Try setting idle action for the worker to stay at the node, but sometimes the worker will go to the wrong destination from the first entity, hence no one working in the other room. (2 worker stay together) Is there any method to realize this idea? Thanks in advance
  4. Hi! can you help me please? In my model I have a server that I want to function as storage, this server is linked to a combiner which will combine the member entities that leave the server with a parent entity that will arrive at it from another node. Each member entity has a state with a unique number linking it to a parent entity (there may be more than one member entity with the same state number). How can I extract from the server only the member entities whose state is equal to the state of the parent entity that arrives at the parentinput of the combiner? Thank you so much! 18.10.spfx
  5. Hello Everyone, please can someone help me with this situation? I want to use a Server as a storage place, entities coming out of it go into the MemberInput of a Combiner. I want the number of entities that leave the Server to depend on the state of the entity that will enter the ParentInput of the Combiner. How can I access the state of the parent entity that will enter the combiner from the Output Node of the Server? Thank you very much, Greetings! 14.10.spfx
  6. Hi All,

    In my model, I have a transfer node and the entity could go to either of the next 2 serves as in the picture.

    I have assigned product number(1,2,3...) to entities …., if product “1” moves from transfer node to S1 and the next product is also “1”, it should also move to S1 and if the product number changes its should change the server to S2. So the entire batch gets processed on one server.

    After processing from S1 and S2 the entity should flow in batch so that at S3 I have batch production

    Right now the entities go based on “By Link Weight” and randomly goes to the server which affects S1,S2,S3 servers setup time

    Any thoughts how can that be achieved, I do not want to setup a sequence table.

    SImioForumPicture.PNG

  7. You can place some enough transfer nodes at different distances and directions (In freespace it will be hard to stop modelentity object and seize the server object. This can be quite challenging task). Then you can randomly send the modelentities to one of these transfer nodes (This is for sending entities some vector away from the source). Then, define an entered add-on process trigger for each transfer nodes and place a move step onto this add-on process. In resource movement request of this step define object type specific (or from list), object name any server (or from list you set), and destination node as the transfer node itself. Then, you can try seize step to or transfer step to send the entity onto server object. You have to try some options.
  8. 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
  9. 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
  10. I appreciate your help as it solved the problem! However, I have one more question. When I apply the rule for only two separators there is no issue, but when I try to apply it to multiple separators a new challenge is encountered. Take the new picture as a reference. Instead of having one server being linked to two different separators, now I have multiple servers (Server 2-7) linked to a shared transfer node that is linked to multiple separators (Separator 3-8). If I apply the same rule, when all the separators are in the active position (value of 1), all the entities are prone to use separator 3 and 4 being that it is the closest to the transfer node. This occurrence generates an outstanding entity queue as none are being routed to separators 5 -8, even though they are active. Similarly, if I provide separator 3 and 4 with an off shift rule (value of 0), the entities are prone to use separator 5 and 6, and not take separator 7 and 8 to alleviate the queue. The question is: Is there a way to apply a routing logic in the transfer node that aside from taking the path to the active separator, also distributes the entities uniformly(or take the one with the shortest route)between all available (active) separators?
  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. 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?
  13. 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
  14. 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.
  15. Maybe my application is easier. I would like to create a batch of 150 entities, but only the first and the last should go to a different server than other 148. To do that, I have created a transfer node and I created a procces with to decide node, asking if the entity is the first or the last. But it does not work.
  16. 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
  17. I'm making a simple simulation model of a hospital and I'm having trouble with the routing of my model. For instance, a patient first goes through ED and then to OR. if there is no room in the OR, then the patient must stay in ED. How can I model this? I don't want the patient to wait at any input or output buffer, because then it assumes that the ED bed that the patient used to stay in is now free but it actually isn't. Each bed is modeled as a server and there are more ED beds than there are OR beds. Naturally, all ED beds connect to a single transfer node, which then connect to all OR beds.
  18. I'm pretty sure my whole approach is flawed, but I don't see how else to do this. The attached is a very simplified version of what I'm trying to do. In the real problem, I have empty containers that enter a detached queue based on when they are retrieved from customers. I also have workers that need to select (through a fairly complicated process) which of these containers to batch together to enter a filling station. This selection process is complicated because it depends on filling material, pressure, volume, and safety stock of the sku (multiple skus can be combined in same batch provided filling material, pressure, and volume of container match). Anyway, what I'm aiming for is Create a batch When the worker is idle, he will go to a node and search among empty containers in the detached queue to assemble a complete batch. If there aren't enough containers, the worker will wait, idle. As empty containers arrive at the detached queue, they should trigger, somehow, the worker to try to create a batch again. There are new containers now, so maybe a batch is possible. (Preferably, since hundreds of containers could arrive at a time, this trigger would be for all the containers arriving at this specific time, not each container doing a separate trigger.) With the batch, the worker should move to a server, seize it and wait while the containers are filled. Then move to a separator to separate out the batch, moving the containers to full inventory and the worker should go back to try to create another batch. I'm stuck in a couple of places, specifically (so far) . . . I can't seem to get the worker, once batched, to move to the filling station. In fact, the Move block in PickingStation_Entered doesn't even fire. I can't figure out how to get the entity to trigger the worker to reevaluate the batching process. However I try this, the batching process is executed by either the entity's token or a model token. I can't see how to get the worker to be the executing token. Any help or guidance would be appreciated. Model.spfx
  19. I'm trying to model airport ground operations using workers for the different processes, servers for the gates, entities for arriving airplanes and TransferNodes to control the flow of entities and workers. My research is focused on the control of these ground processes, but I can't get my process logic correct.. I attached a simple model to help answering the question. I want the workers to move to the right server before the entity arrives there and can immediately start processing the entities. One method is to use a global queue from which workers decide which entity to process next based on some criteria and dynamic rule selection. In the attached model I use two entities which go to Gate1 and Gate2. Gate 1 needs workers move to the node before it can start processing, Gate 2 does not. Using an add-on process, I move the worker to the gate before it is requested and wait for the entity to arrive. But for some reason it does not start processing immediately when the entity arrives and I can't figure out how to model this correctly.. It's the first time I'm using Simio, so I some help would be appreciated on how to set up the logic for my processes.. I'm kinda stuck now on how to get some basics thing in my model right or if I'm using the right processes steps.. Thanks in advance! TestModelWorkers.spfx
  20. Hi, I made a simple warehouse-retailer model with a source(warehouse), two servers(retailers), and a sink, where the entities(products) are carried from the source to the servers using a single vehicle. The current capacities(demand value at the retailer) of the servers changes after a specific time interval(12-hours and simulation run time of100 days). The Input and Output buffer capacities of both the servers are set to zero. The vehicle leaving the source (Home node) returns back only after serving the respective current capacities of the servers one after the other. As each entity enters the server, its capacity is reduced by 1 unit ultimately reaching zero-current capacity when the full capacity is served. The problem I encounter is that sometimes after my vehicle leaves the source, the current capacity value of the server changes and the new value might be smaller than the previous current capacity value. So my vehicle stays at the input node of the server with the extra entities carried until a new current capacity value is assigned, instead of moving to the next server with whatever entities are left in the vehicle. I don't intend to change the vehicle speed or time interval for capacity changes to rectify this issue. For example, the current capacity values of the servers at time period 1 are Server 1 = 10 & Server 2 = 12. So the vehicle carries 10+12=22 entities from the source to the server 1. Now while the vehicle is moving towards Server 1, if the current capacity changes to Server 1 = 8 & Server 2 = 12, the vehicle stays at server 1 after serving the 8 units and the remaining 14 units stays within the vehicle instead of moving to the next server to serve its capacity. Screenshot of the model is attached. Could anyone help me with this issue? I would really appreciate your support as I have been trying to fix this issue for a while.
  21. Greetings! I have this problem and I'm probably doing something wrong. I'm trying to use the Find Step to make my entities look for the closest server through the DirectDistanceTo Expression. This Process is triggered when the entity enters a Transfer Node. Based on these screenshots, can you tell me what am I doing wrong? I'm almost certain the Search Expression is incorrect. Thanks!
  22. In the example that I showed above, I didn't have the vehicle picking up the entity from the Source for movement to the Servers, thus, I didn't include the Output@Source1 in the sequence tables for the vehicle. That is why your entities don't get picked up at the source. To fix this, include the entire route that the vehicle will move when taking product/picking up from Server1 within a data table. Include the entire route that the vehicle should move when taking product/picking up from Server2 within a different data table. To change between the tables, you need to decide WHEN to make the change. In the example above, it was when the vehicle was requested to take an entity from server to sink, thus at the Output node of the server - Entered add on process. You may then decide to do this also at the output node of the source - and will need to check the destination location of the entity (server1, server2) to determine how to change the vehicle path table.
  23. Hello, One approach you could use is have an initial capacity of 0 at the Enfriado servers to hold the entities in the input buffer queues. During the entered event of the input nodes of the Enfriado servers, you could insert the tokens into a storage element. And a "controlling" server could then use process logic triggered by a scan step that determines if the number of entities in the input buffer queues are greater than 1, that would perform a search of those Storage.queue for the Entity with the longest processing time. To determine the processing time, one has to track it. The real state variable on the ModelEntity, ModelEntity.RealStateVariable, would be created and TimeNow would be assigned before processing. Then that is assigned TimeNow - ModelEntity.RealStateVariable after it processes at the previous servers. Once the entity is found from the storage queue, a transfer step would take that entity and pass it to the Cortador server's input node. The search step could look for Candidate.ModelEntity.RealState1 using a Backward search type and a limit of 1. Once the entity is transferred, the entity can be removed from the storage element. Judy
  24. Hi, I have few questions about workers. I have a model where there are 5 types of workers. A specific number of workers will be seized (let's suppose 10), but some will be seized using a "specific" seize request and some will be seized using different lists. After that, I want to move all workers with the entity to another server. Ideally, I want to move all of them using a few vehicles (more than 1), because I also have transporters restrictions (which makes me think that maybe is better modeling the workers as an entity). But before I take this path, I want to know if: 1. Is it possible to combine workers (similar to how we combine entities)? 2. Is it possible to use a transporter to move a worker? My guess is not, because the worker itself is a type of transporter. 3. Is there any way to only move an entity from one node to another by using multiple transporters? I know we can select the transporter from a list, but I could not figure out a way to move the entity using multiple transporters. If the answers for the above questions are no, is there a simple way to keep track of the indexes of the workers being seized by a specific entity (e.g. by using tables or state vectors)? Thanks for your insights. If you can point me to any SimBits I would definitely appreciate it.
  25. As I downloaded the model it had an error in the RankingRuleExpression of Cashier 1. This field requires a number and you were giving it an entity type. Instead: --Set priority of OTCustomer to be 1 and set priority of Prescription customers to 2. --Set this ranking rule as Smallest Value First with the expression "Entity.priority". Now, whenever both types of entities are waiting, the OTC will be selected first. To select from the set of cashiers, --Create a Node List named Cashiers (graphically or in Definitions tab) containing Input@Cashier7, 6, ...Input@Cashier1. The order matters. --For your WaitingArea node select: ----EntityDestination: SelectFromList ----NodeListName: Cashiers ----SelectionGoal: Preferred Order (or experiment with other rules) ----SelectionCondition: Candidate.Node.AssociatedObject.Name=="Cashier1" || Entity.Priority==2 The first 3 properties above force all entities to individually select a cashier, starting from bottom to top (selecting Cashier1 only if no others are available). The SelectionCondition says Any entity can select Cashier1 or priority 2 entities can select any cashier. The BlockedDestinationRule of Select Available Only forces entities to wait at that Waiting_Area node until a Cashier is available. Unfortunately node doesn't have a way of displaying entities that are waiting. If you want to display and control entities I recommend replacing that node with a Server with 0 process time. This is an easy way to provide an output node with a station where entities can wait. Without changing it to a server, entities will wait on the incoming path. Change the AllowPassing option to False on both those paths to see the entities waiting there. This doesn't solve all your problems but it should give you a good start while not taking away your opportunity to learn (why I gave you instructions instead of a model )
×
×
  • Create New...