Jump to content

Search the Community

Showing results for 'multiple entities'.

  • 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. So I have a rather complex issue that needs to be resolved basis multiple entities in a wait block. I think this is actually the first decent use I have found for a storage queue as it seems to allow me to shuffle the entities within the wait block, basis entry and exit ranking rules. I can then just use the condition in the wait block to match the specific or subset of entities that adhere to the condition in the storage queue (see attached)
  2. Hi there - My entities are going into a wait step based on a condition. So at any point in time I may or may not have multiple entities in the wait step. When I fire an event to release entity from the wait step all the entities which are in the wait step at the time event is fired get released. I don't want that, I want wait to release only one entity every time release event is fired. Any ideas how I can achieve this? Thank you.
  3. Hi all, I've got a vehicle on a fixed route that has a capacity greater than one. Each entity has a loading and unloading time of 15 seconds. Now I want to let the vehicle dwell for 20 seconds at a node, but only if it has at least one pick-up or drop-off. When there is no pick-up or drop-off, there is no dwell time. So, if the vehicle loads or unloads only one entity it takes 20 seconds. But loading/unloading multiple entities at one node takes the loading/unloading time required. For a pick-up I can dwell only if the RidePickUpQueue of the current node is > 0. For a drop-off I'm however clueless what to put in the "dwell only if" How to implement this logic? Thanks!
  4. You could create multiple entity types through a single Source by using data tables and product mix- see the SimBit titled EntityFollowsSequenceWithTable.spfx. This would create entities based on the product mix specified in the JobTable data table. To create multiple of a specific type (man/woman) entering at a single time in a source, you could just simply create one type (man) and then use add-on process logic and a Create step to create the other type (woman) and have them continue processing.
  5. Hi, Is it possible to access the filter expression of standard Dynamic Selection Rules for use in processes? Basically I want to filter queues based on some Entity properties, eg, being a specific material. However standard dispatching rules only apply the filter if multiple entities are in the queue. Eg, if a an entity of "wrong" type arrives to the InputBuffer of a Server and the input buffer is empty it will seize the queue anyway. In my case I want to keep the server starved until an entity of correct type arrives. I found a way to implement that by filtering the queue with the same expression as used in the dynamic selection rule, however I need to add another property for that expression, which is a bit confusing. Thanks for your help Michael
  6. 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.
  7. I would add a process something like this to determine which entities have waited too long and Tally them: Then execute that process at the point you want to record it, something like this: Then an expression like LongWaitEntities.NumberObservations would give you the number of observations in that Tally. You will also see a TallyStatistic that provides the average value of the observations: I was having problems uploading multiple pictures so here is a composite, but out of order:
  8. One machine in my model needs to realize three type of failure event during the simulation. The first type of failure will happen every random.expo(3) minutes and need an operator to adjust it, the second type of failure will happen after every 100 entities be processed and need the same operator to deal with, the third type of failure is random.exponential(3) days and need engineer to repair. All the three types are independent occurred. How can I model this condition? Any suggestion will be appreciated!
  9. Hi, Currently modeling 2 assembly lines that are identical. They have 1 source that sends Batches of Segments. How our system works is that 1 order has multiple batches, so to identify them, we added the same order number to them. https://imgur.com/a/V971F Even though the 2 assembly lines have the same machines, they operate different batches, which can be identify by the diameter of the order. If Orders are "= N" they will go to Assembly line 1 and 2. If Orders are "=Y" they can only go to Assembly line 1. I'm using a transfer node to distribute the batches into the two assembly lines to maintain max usability in both lines. The path that are from the Source to the first server and from the Transfer Node to the first server have the diameter constraints. https://imgur.com/a/9h7Kp The problem I'm facing is that the transfer node seems to be separating orders that have the same number to both lines. For example order 1234 has 10 batches, 5 are going to line 1 and 5 are going to line 2. I need, per customer request, to have all batches with the same order number be processed by the same line. Is there a way to constrain the transfer node to keep Orders with the same number together? or a Add-on Process that will allow me to do so?
  10. I agree, it works when I use the expression on the "Entities Per Arrival" field. But it does not work for me when I enter the expression under "Other Arrival Stream Options > Arrival Events Per Time Slot" (where entities per arrival is set to 1). I'm using arrival events per time slot vs. entities per arrival because I am NOT looking for batch arrivals. I want multiple independent arrivals (each with their own realized arrival time deviations and no-show probabilities) per each time slot.
  11. I am modeling a healthcare environment where model entities (patients) are assigned to workers (physicians). For each model entity I keep track of which physician each patient is assigned to (Object Reference State Variable in ModelEntity) and use the same physician through multiple exam steps. Now I would like to count how many patient assignments a physician has, and assign patients to physicians by seizing physicians with the smallest number of patient assignments. How can I add a NumAssignments feature to workers? I've tried adding Model state variables (Transporter Reference State Variable in Model Definitions>States), but it doesn't show up in the selection expression for resource seizes. What I am looking for is something along the lines of: seize Physician with selection goal SmallestValue and selection expression Physician.NumAssignments. I would appreciate any feedback/suggestions. Thank you!
  12. Is it possible to do probabilistic routing? I have multiple model entities that have different sequences -- for this I am using a sequence table. However, when I set the entity destination type "by sequence", I do not see a probabilistic option (with some probability I want to go back to the previous server). I know probabilistic task sequences are possible. Is it possible to do probabilistic destination routing sequences? For a SimBit example, I have been referring to "Servers using task sequences with data tables". Essentially I want the JobSteps in the JobRoutings Sequence Table to be probabilistic. Hope the question is clear, and thanks in advance for your help.
  13. To send entities along different paths based on conditions, you can either specify logic within the Selection Weight property of the various paths themselves, or you could use an add-on process within the prior (leaving object/node before going to multiple servers) node based on conditions in the system. Alternatively, you could put the multiple server's input nodes into a List of nodes and select from that list using a Selection Condition. Regardless of which method you use above, you can evaluate entity and system information, such as ModelEntity.Is.Long (if the entity types are Long/Short), as well as either the Server.Capacity.Allocated or Node.AssociatedStation.Overload type functions. You may wish to look at some of the Sample SimBit Solutions (see button on Support ribbon) for examples of using some of these functions.
  14. Hi, I have model with multiple vehicles and servers in parallel. I made a process for my vehicles to wait for all the entities they carry to process before exiting. Now I would like to create a process for my vehicles to choose a server that is free (or has less number of entity processing). I have already tried to do so by selecting on the previous output node the entity destination to NodeList, and then Smallest value --> Candidate.Node.AssociatedStationLoad, but then my vehicle make a U-turn instead of dropping all entities at the same server. For my vehicle process I tried to put first a Search step : Collection type : NodeList Search Type : foward SearchCandidate.Server.Capacity.Allocated==0 Save Index found : not sure what to use ? Then I would like to set the next destination node of my vehicle to the one found by the search step, but I havn't found how to do it. Can someone be of any help ? Thanks in advance !
  15. Hello Simio-Community, I'm trying to make a process to reserve a vehicule at a server until all the entities he was carrying are ready. I used this proces that works good except if I want my vehicles to follow a time path between source/server/sink/source. Do you have an idea of how I could change the process model to make my vehicles follow a timepath and still keep being reserved by my server ? Thank you in advance, ReserveVehicleWithMuliCapacity.spfx
  16. Hello. I'm completely new to Simio, but I know it has a lot of potential. I was wondering if there is a way to make a workstation work on multiple entities simultaneously. (Much like the 'initial capacity' of a server) I have tried to work a little with the 'Operation Quantity' and 'Processing Batch Size', but they don't quite fulfill what I try to do. I have 8 different entity types that spawn from a Source. I would like the Workstation to be able to work on 28 entities simultaneously, such that, if 28 entities entered the workstation queue at once, all 28 leave the workstation at the same time (if the workstation is empty, of course). But if 14 are already in the workstation and another 14 arrive at the same time, they would still be processed simultaneously, but the 14 that are already in the workstation being processed of course are processed quicker than the rest, as they've been in the workstation a set amount of time. I hope this is possible, and thanks in advance. EDIT: I just decided to go with a server instead, which made it a whole lot simpler. Thanks for the help.
  17. There is an Interrupt step that will allow you to stop processing for higher priority (or whatever reason) entities. See several SimBits that are available including Interruptible Operator, Interrupting Across Multiple Servers and Interrupting Server with Multiple Capacity. These show various examples of having higher priority type jobs interrupt processing of other jobs currently being processed on a Server or with an Operator. SimBits can be found within the Support ribbon by pressing the Sample SimBit Solutions button. You can then search Interrupt either in the Basic or Advanced Search area.
  18. Hello, I have a DataTable that one source can use to create multiple entities. I would like these entities to be named properly. Instead the just come out named ent.11XX (a random four digit number starting with 11). Here is my table, I would like the entities to be the name of the TwiggPN. (Each row produces a different entity):
  19. Hi, Here is an example model to reserve a vehicle with multiple capacity for future use by entities. It is a simple model with a source, server and a sink. Entities are carried by vehicles from source to server and the same vehicle is used to transport processed entities from the server to sink. The 'ProcessToReserveVehicle' is used to reserve same vehicle for transporting from server to sink. Search step is used to search for the entities riding on the vehicle ( in the ride station). Then the 'AssignTranporterToEntity' is used to assign the current vehicle to the 'Current_Transporter' defined over the Model Entity. Ride On Transporter property of the server's output node is set to true and Transporter Name is set to ModelEntity.Current_Transporter. Dwell property of the vehicle is set to Dwell Until Full. With Reserve step, the vehicle waits at the output node of the server until all the entities carried by the vehicle are not processed by the server and transport them to sinkReserveVehicleWithMuliCapacity.spfx. Thanks,
  20. I cannot open your model. Please mention that you are using academic license in the future. I do not think there is a good SimBit showing interactions among multiple vehicles. I would strongly advise against that, as you need a node every time (precisely knowing where it happens!) and animation would not look nice. However, what is the purpose of the simulation then, if you know your progress exactly? If you want to show nicely the progress of the works even when you make different progress on various days I suggest doing everything in freespace. This will work only if you accept straight-line movements. You can store the progress in a variable and smoothly iterate in steps. For every day the vehicle will store then e.g. starting position, progress goal, movement direction. Add a vector for a vehicle for progress/distance/whatever for each day. Add a tally for average results among multiple vehicles. With limited number of vehicles you can reference them and create custom events to move around and offset truck from excavator etc. A lot of tedious work. Unless you really need to carry cargo between locations or use multiple resources for a task, use entities instead of vehicles (way simpler). Interaction between entities in freespace will be a challenge though, but you should manage with absolute/relative coordinates.
  21. I need to model a warehousing scenario where one order (Main Entity) has multiple baskets (sub entities) to be picked in the warehouse. The sub entities are then processed in servers and then combined in to the main entity (order) and shipped out of the warehouse. Any ideas on the best ways to model this?
  22. Hi, For selecting a available resource from a list of resource you can use a selection expression like 'Candidate.Resource.Capacity.Remaining' and and set the Selection goal to 'Largest Value'. What this will do is, it will give priority to a Resource with highest available capacity ( in this case 1) indicating that a resource is available for seize and seize the available resource. You can use a state variable to track the number of entities that enter the server. Whenever an entity enters the 'Input Buffer' of the server, assign the number of entities present in the buffer and the processing station to a state variable ( Using Server.InputBuffer.Contents+Server.Processing.Contents) and when the entity is leaving the server, decrement the value of the variable by 1. Use a state statistic element to keep time persistent statistic on the state variable. Use Statestatistic in the experiment response to report maximum and average number of entities. If you share this same state and statestatistic across multiple servers, then you will see statistics about ALL the servers.
  23. Hi, I want to know a few outputs regarding my vehicle. I have 16 vehicles who transport entities to multiple sinks and then go back to the source to get more entities. I want to know what the average time/ride is, the total number of rides and the average time an entity is in the ridestation. In the pivotgrid, these are called: (for example for vehicle 1.[1]) -Vehicle1[1].ResourceState.TimeTransporting.average -Vehicle1[1].ResourceState.TimeTransporting.Occurences -Vehicle1[1].RideStation.HoldingTime.TimeInStation.Average these are the outputs i want to know, but when i enter these expressions or expressions sort of the same, it doesn't work. what expressions do i have to use in my responses in order to get the right outputs? Or do I have to use my pivotgrid to calculate these? Regards, Lisa
  24. I think the 3 new SimBits introduced in 7.124 might be helpful. TaskSequenceAndWorker.spfx - This project includes two models that demonstrate use of the task sequence features to execute a series of tasks from within a Server object. The first model, TaskSequeenceAndWorker_InServer, includes the data for the processing tasks specified within the Server itself. The second model, TaskSequeenceAndWorker_InTable, includes the data for the processing tasks within a table and references to the table within the Server. KeepingWorkerReserved.spfx - This model demonstrates the concept of ‘reserving’ a worker/vehicle for multiple tasks including transport tasks. These features were added in the past two sprints. In this model, a worker is required to move entities from the Source to a Server. The same worker is then required for processing tasks at the Server and then for movement to the next Server location. The ‘Keep Reserved If’ properties are used after transport and processing to continue to use the same worker for a given entity. AnimatingQueuesWithVehiclesAndWorkers.spfx – This model demonstrates two of the latest animation features for queues described above, including the Visibility Expression property and the Match Attached Animation Speed option. One portion of the model shows different priority entities in different queue locations on a vehicle, while the other portion of the model shows an animated entity walking with an animated worker.
  25. Here's a follow-on question I can't quite figure out ... I have a worker who is required as a resource to setup and teardown two different workstations. The worker is also a transporter to move entities from the source to the workstation, and from the workstation to the sink. The workstations are set to seize the worker for All But Specific, Processing, Move to Node, Input@Workstation#. The workstations have identical setup, processing, and teardown times (fixed at 5, 30, and 5 seconds respectively). The source initially starts with 2 entities, and then creates additional entities each time one of the workstations begins its Setting Up process. Once both workstations are processing, the worker goes back and gets the next two entities to place one into each workstation's input buffer. No matter what I attempt, I cannot make the worker stay at the workstation to complete the next entity's setup before taking the previous entity to the sink. Each time the worker takes the completed part to the sink and then returns to setup the workstation. Even though they happen at the same time, it appears that the previous entity enters the outbound node of the workstation and then makes a visit request to the worker, all before the next entity initiates the Setting Up process and attempts to seize the worker. To be more precise, the outbound part is placed on the outbound node, triggers the RiderWaiting event, requests and has accepted a transport request from the worker before the Teardown process has actually ended. I've read through multiple SimBits and other files from the forums. I can't get the next entity or workstation to seize the worker since the visit request has already been accepted or the workstation still has the worker seized to complete the teardown. I can't figure out how to use the Worker Used For Multiple Tasks SimBit since it only shows the worker going to and waiting at a node, and I need to model a workstation at this location instead of a node. I can't force a Delay math.epsilon on an Evaluating Seize/Transport process to force it to the end of the "same time", and putting in conditions (to reject transport requests if the allocation queue is not empty) appears to be moot since the Worker.AllocationQueue is technically empty when the RideVisitRequest is made (the next entity hasn't made the request yet). I also read in one of the posts that there is no way to reneg a ride/visit request once it is made, although seize requests can still be manipulated. I've attached an example file. It's definitely a work in process, so some of the custom processes aren't used or have been manipulated. I need to be able to model a real world process ... the worker would take out the previous part (teardown), set it down on a table (the output buffer), pick up the next part (from the input buffer), place it in the machine (setting up), and then press Cycle. Once complete, the previous part would be transported to the sink, and the worker would move to the next machine waiting. Thanks! Worker Seize vs Transport Test.spfx
×
×
  • Create New...