Jump to content

Search the Community

Showing results for 'remove parent'.

  • 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. Hello everybody, I'm trying to make this work but I cant Type/Conteiner BinBig BinMed BinSmall Product1 1 1 - Product2 - 1 1 Product3 1 - 1 Product4 1 1 1 I want to make a node where these entities (Products and Bins) are convined in one batch, I try to use a process based in decitions and search.. the file is attached if you wanna take a look on it.. (the product have to be the parent) OptimoContenedores2.spfx
  2. Hello everyone: I am modeling a packaging system by means of a combiner. 12 equal members are grouped in a box (parent). Before leaving the respective source, members are assigned a value (0, 1, 2) as a state variable (ESV_P) to distinguish them by product type. I want the box to have the value of the products state variable. For example, if the box contains 12 type 1 products, the box should be assigned with a state variable ESV_B equal to 1. Any suggestions? Best regards.
  3. Hi @jzhou, how would this work if I want to refer to the MemberOutput Node of a separator in an expression? I get lost at the following expression: Entity.Location.Parent.Node.AssociatedObject.Separator.Output.[what comes next?]
  4. Hi everyone, I am trying to model entities moving from 10 origins (sources) to 10 destinations (sinks). The entities are simultaneously created according to a certain mix (Entity1 (85%), Entity2 (10%), and Entity3 (5%). However, the number of entities created per event is according to a certain distribution. There is an OD-matrix that captures the number of entities moving from origin to a specific destination. Let's say there are 10 destinations, than the destinations of the Entities are determined according to the OD-matrix: Entity1 and Entity2 can move to any of of the sinks. Entity3 can only move to one specific sink. One solution I came up with was to add weights to Connectors and assign destinations using TransferNodes, but I think that this is very inefficient. I then started to work with DataTables, but I cannot figure out how to probabilistically assign the destinations of the entities. My question is: how to model the probabilistic destination assignment of Entities using DataTables in such a way that it is relatively easy and flexible to add or remove Sources/Sinks? I have added the model for you to see, I hope that you can help me! Many thanks in advance Simple_OD_creation.spfx
  5. Hi, A Separator is creating copies of the entities that enter it, the number of copies depends on a probability distribution, I want the worker to transport all the entities created from the same parent entity at once. Is this possible? I attach the model for better understanding. Thank you so much! Model.spfx
  6. Got issues with a combiner. i have a server that processes the member parts but has a 0.1 probability of going to scrap, this means the batch size has changed. the parent part has a integer state that gets updated when this happens but doesn't update the combiner batch quantity property. I have attached an image showing this issue. you can see the pallet number displayed which is the way i match the parts with the correct pallet. the pallet(parent) also displays the batch size using the same integer state which i use in the combiner logic. Theres a pallet with 4 items on it and it shows the batch is 4 so why wont that process it? Also attached the whole model so you can look at it all Batch and Scrap.spfx
  7. Hi, A combiner is able to combine 1 or more entities into a parent entity. The number of entities that are batched together is specified in the property Batch Quantity. I recommend looking at the SimBit "Combine Multiple Entity Types Onto Pallets" for an example. Best, Khaled
  8. Is it fair to say that the longest waiting time in the parent queue is the first entity at the queue? If so, you could use something like: Candidate.Node.AssociatedObject.Combiner.ParentInputBuffer.Contents.TimeWaiting(Candidate.Node.AssociatedObject.Combiner.ParentInputBuffer.Contents.FirstItem) to access the combiner which has the largest value of the time waiting of the firstItem in the queue. It seems to work
  9. Hey, I've got a quick question on how to route to a combiner with the longest waiting time in their parent queue. I think it should be quite easy, but i cant seem to make it work. What i have been doing is setting the selection goal of my routing node to largest value, and select from a list. This largest value I think should be the the longest waiting time in the contents of the parentinput queue. I have tried this multiple ways both using assosiated object and without. When i recall the number waiting it seems to work, but with recalling the waiting time i'm doing something wrong. My current expression is: Candidate.Node.AssociatedObject.Combiner.ParentInputBuffer.Contents.TimeWaiting(ModelEntity) or Candidate.Combiner.ParentInputBuffer.Contents.TimeWaiting( object ) both seem to work for content.numberwaiting. I think i am describing the ( object ) part wrong but cant find how i should write for the modelentity otherwise. I have tried to recall a specific entititype like so --> TimeWaiting(Truck) this also does not work. Does somebody know how i can acces the ParentInputBuffer.Contents.TimeWaiting? Greeting Piet
  10. You need to put the search, release and transfer steps into the Add-on Process Triggers "Parent Entered" of the Combiners. For example, for the "Juntar_secos" combiner, at the "Parent Entered" Addon process, you would search for Slots.Processing.Contents, matching "Candidate.ModelEntity.Id_Del_Pedido == ModelEntity.Id_del_pedido". After that you should use a release step, to release Server "Slots", and a transfer step to transfer what have been found to Output@Slots.
  11. Well, first thing, you don't need your entities to be bouncing between the output and the input of your server like that. If you want to use it as sort of storage, set both the processing time and the capacity to infinity. After that, at the moment that the parent entity enters the combiner "Parent Entered" you could search the queue of your storage using a search step with something like "Server1.Processing.Contents", with the condition of "Candidate.ModelEntity.State == ModelEntity.State", release the server and transfer what have been found to the output. You need to take some care on some situations, like what if the parent entity arrives first at the combiner then the member at the storage? And some care with batching quantities aswell. But I think you can handle it.
  12. Hi! In my model I have entities called "Pedido" which have a state called "id_del_pedido" which is equal to the ID of the entity. These entities will enter a Separator that will create copies of the entity according to a probability distribution. Since the new entities are copies of the parent entity, they will have the same "id_del_pedido" status as the parent entity. Subsequently, the entities created will enter a Server that acts as a warehouse. This Server is linked to a Combiner, when the parent entity reaches the Combiner's parentinput I want only entities whose "id_del_pedido" is equal to the ID of the entity that reached the Combiner's parentinput to leave the server. This works perfectly in the first Server-Combiner set of my model, but, the Combiner's outputnode is attached to another Combiner and I want to repeat the same activity as in the first Combiner but I get an error that I don't know how to solve. I attach my model so that my problem is better understood. Thank you very much in advance! 18.10.spfx
  13. 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
  14. 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
  15. I wonder if it is possible to pick one particular entity from the BatchMembersQeue and unbatch it. For example I have a pallet with 10 entities batched (9 red and 1 blue) and I want to remove only the blue one. I was able to find the entity with a search step, but I cannot transfer it or unbach it. Any ideas? TnksUnbatch one entity.spfx
  16. Hi, I have a production line with 2 sources. The arrival of entity A in source 1 triggers an arrival of entity B in source 2. Entity A and entity B then enter their respective servers for a processing time. Entity A is processed at table_openings between 10 and 15 minutes with probabilities whereas Entity B is processed at table_MF for 10 minutes. The process type is task sequence. Both Entity join at a combiner. Entity A is the parent and Entity B is the member. Afterwards, the combined entity continue along the production line. I have expected processing times for each task at each server. Before starting a task, a process starts where a state statistic registers the state processing time of the entity. I also put list state to verify the schedule utilization. I have verified visually and the state value for processing time is correct for every station while the simulation is running. What I have observed is that the state statistic average processing time for the servers before the combiner is the expected value, however, all the other stations are 10 minutes off. The simio output has the right processing times for all the stations after the combiner but not for the two stations before the combiner. Moreover, the list state average time busy value are ok for all the stations after the combiner but again the station before the combiner, it gives the total number of minutes it was busy. Also, if i do the average of the state log observation for each station in excel afterwards, I get all the correct processing times. I am guessing it has something to do with the combiner, but I am lost. How can the processing time for table_MF be 10,48 when the processing time is a fixed 10 minutes in the facility window? Why is the list State MF and OP different from all the other list states? Thank you for your help!
  17. Hi bennodual You can create a table inside your customised object(say MyObject) and the column type match your properties, ie,he first of type datetime and the second of type real. and then convert it to a repeatgroup ,for example its name : tableA and on parent model you can instantiate your object and on the property panel, you will see the repeatgroup to assign. you can create a table directly via the schema dropdown list with the name MyObject, select MyObject.tableA and the table will be automatically created. the next step is refer to this table on the properties panel.
  18. Hi Jason, I recommend checking out the SimBit, found in the Support ribbon in Simio, titled "Hierachy with Tables". This could show you an idea of how you might use a Repeat Group Property to read in a Data Table at the parent model in to the sub model. Liz
  19. The SkyBox icon on the View Ribbon opens a library of static and dynamic scenes that can be placed in the 3D animation. Dynamic scenery includes several options for clouds that move with the animation as the model runs. Typically, the Speed Factor should be set to 5 - 10 or greater to see movement. Static skybox options include many indoor and outdoor scenes. Indoor applications include adding building walls to surround your model. The 'None' option will remove any existing skybox. Users can create their own SkyBoxes as well. The “library” skyboxes are simply *.zip files with images inside them with the names front, back, left, right, top, bottom. They don’t need to have all of those names in them, Simio will use whatever ones it finds. They are located in the Skybox folder under \Public\PublicDocuments\Simio. Note when you first apply the SkyBox, you can only view it in 3D and you may need to use the Ctrl Scroll wheel to move the camera down to where you can see the horizon. There are over 20 SkyBoxes that are installed with Simio. A few more are attached below. Simply download and save these zip files in the C:\Users\Public\Documents\Simio\SkyBox folder. The next time you open Simio you should see something like this under SkyBox options: Here is an example of the MFGPlant SkyBox with a server in the foreground: If you create your own skybox images that you feel might be useful to others, please share them here. Hospital.zip MFGPlant.zip Warehouse.zip Airport.zip CleanMFGFacility.zip NEW NOTE: We just decided to reduce the size of these and some existing skybox files and include them all in Sprint 215. So it is probably better that you just wait a bit unless your need is urgent.
  20. Hi LizMB, I have a few specific recommendations for you below, but generally I suggest looking into the SimBit models provided on Simio's Support Ribbon. A PDF opens with each model that contains a detailed description, so they are a great tool for learning specific approaches and techniques. A few that I believe are related to your particular problem are "Moveable Operator", "Interruptible Operator","Keeping Worker Reserved", and "Entity Follows Sequence". Worker1 carries both entities to their respective nodes and leaves them in their respective stations after worker(A/B) "checks them" (I used a delay to simulate this check) and then Worker1 moves on. For this objective, I suggest setting up your drop off stations A and B as a Servers. Use the Processing Time property to represent the "check" while seizing both workers needed (see the Operator related SimBit for more information). Make sure all entities are assigned a sequence, so Worker 1 knows where to drop them off. The worker(A/B) only picks up the entity if needed. So if the worker was with another entity in process (like Srv(A/B)), he would go check the new entity so that worker1 can move on, but would return to finish out the first entity to the end. Assign entities that enter the pick up stations a higher priority, and interrupt the Workers at SrvA and Srvb if a pick up task arrives (See Interruptible Operator for more information). Ensure that the Workers have the needed paths to travel to all of the destinations required in all directions. Currently, WorkerA and WorkerB cannot travel to the Outputs of the Servers. Other suggestions: Look into using a Timer Element that could trigger the entity creations at SrcA and SrcB. That should remove the need for Source1 and Sink1. If the Worker's travel doesn't need to be defined by a path, I suggest setting the Initial Travel Mode to 'Free Space Only'. The error message you are receiving is related to the Add-on Processes on the A and B nodes. Whenever Worker 1 enters either of those nodes the process is triggered and tries to complete the process with relation to the Worker. Restructuring the model with Servers in this area should help you get around this issue. Thanks, Ryan
  21. Thanks Gustavo, actually what worked for me was ContainerEntity.Location.Parent.Name! Anyway thank you very much. I have another doubt which I think is far more complicated. I have two "streets" with a container entity moving moving along each of them. This streets have both fillers and emptiers, and I wish to write in excel every time a container entity goes from a filler to an emptier and how long that took. For example if my container on street 1 goes from filler_2 to emptier_6 I would like a row in excel with those 3 columns: starting filler, ending emptier and time between. I achieved this without problem for one of the streets (adding add on process triggers to all of the fillers and another for all of the emptiers). The thing is when I add this same processes to the emptiers/fillers of street 2, my excel goes crazy and obviously because of two reasons: the time I register to calculate time between is being updated in both streets every time a container goes out of an emptier, and exactly the same happens with the row that this 3 things have to be written in the excel. I don't know hoy I can manage to construct the variables time and row_count without them getting confused and hence my excel becoming useless. Thanks, again!!!
  22. It is possible. There's several ways to solve this. It is just a matter of model designing. Some tips: 1. You can use expressions like TimeNow or ModelEntity.TimeInSystem to check how much time processing time has passed. 2. Interrupt step might help you remove the entity from the process. 3. A State inside the ModelEntity will help your entities to take the right path or take the right decisions. Open you entity model, create a boolean state named Failed (or whatever the name you like), set ModelEntity.Failed to True or False, and use this same expression to steer you entity to the right direction. 4. Be creative. Your solution heavily depends on your problem.
  23. Hi, I have used the SimBit "InterruptibleOperator" where i have set the process time on the servers to be a fixed one (200 sec at server 1 and 300 sec at server 2). I have further more changes the Interarrival time on source1 to be 1 day and the entities per arrival to 50. The Interarrival time on source2 to be 1 day and the entities per arrival to 100. (Look at the linked file) Then when i checked the process time on the server in results it was not 200 sec and 300 sec as had set it to in the server. I think the operator is the one to blame for this, but how can i get the right result in results? I have tryed to remove the operator and the process connected to it, and then i got the right process time. I however still need the operator, so need a solution to get the process time and keep the operator. InterruptibleOperator - process time - resultat1.spfx
  24. I have a system with 3 steps. At each step a certain amount of product is process and batched (using a combiner) on to a pallet. I have to assign a sequence table to the member entities and the parent (pallet) entities. However this is resulting in some batches sitting at a combiner because the pallet follows the sequence instead of going to the next batch ready if the pallet is empty. Any thoughts on how to handle this? If there is no call for an empty pallet the pallets could stay where they are or go to a specific location.
  25. Hello, in general it sounds like your approach is good. You could use either an Object Reference State Variable or String State Variable (called something like 'WhichServer'), defined on ModelEntity, depending on the expression you use to make the assignment. For instance, with an Object Reference State Variable you could use 'ModelEntity.Location.Parent.Server'. With a String State Variable you would use 'ModelEntity.Location.Parent.Server.Name'. In terms of timing, you could make the assignment really anytime the ModelEntity is in the Server. You might use the Servers' On Entering State Assignments for example. Then somewhere downstream, perhaps the Entered Add-On Process at a Sink, you could use Add Row and Assign steps to populate the Output Table. Again, just be mindful to make the column types (Object Reference State Variable or String State Variable) match up with the assignments you are making. For instance you might have a String State Variable column named 'Entity' and, in the Add-On Process at the Sink, you assign 'OutputTable1.Entity' the New Value of 'ModelEntity.Name'. Then you could have an Object Reference State Variable column named 'Server' and in the same process assign 'OutputTable1.Server' the New Value 'ModelEntity.WhichServer' (since it is also an Object Reference State Variable). The result will be a list of each ModelEntity (Name) and the Server that processed it. Hope this helps! Adam
×
×
  • Create New...