Jump to content

Luu Khanh Minh

Members
  • Posts

    36
  • Joined

  • Last visited

Posts posted by Luu Khanh Minh

  1. Is there any way for me to assign a setup time to a combiner? Is the setup time property only available in workstation object?

    Under the Advanced Options of the combiner, there is this Expected Setup Time expression. Can I use it to specify the setup time needed before a batch can be processed?

    image.png.dd4b4582cf1be880794233e39bca57f1.png

    Thank you

  2. In my model, I have a combiner that batch 1 parent entity and 9 member entities together. I then need these 10 entities, when travelling out of the output node of the combiner, to go to 2 different paths. 5 of them should go on a path to node A and 5 of them should go to another path to node B. I tried using Combiner.BatchQuantity at Output_Combiner_Entered Add-on process but it doesn't work. May I have some suggestions? Note that the batch number is not fixed and will vary during the simulation run. 

  3. Hello

    I would like to revive this thread. So In my model, there is a combiner that generates a batch by batching 1 parent entity and 29 member entities together. After the combiner, I want to assign exactly 30% of 30 entities(i.e: both the parent and the member entities) to state "A" and the remaining 70% of the 30 entities to state "B".

    May I have some suggestions as to how to do so? 

    Thank you!

     

  4. Hi gocken

    Its a model-level(i.e global state variable.

    For example, initially the value of currentrownumber is 1. It is used to make reference to the first row of a data table to create a particular number of entities as the first arrival event. After  the created entities of the first arrival event reached some downstream workstation in the model, the Keep Track Population global state variable is set to zero. Then at this point, I want to create a second arrival event by referencing to the second row in the data table. I do this by incrementing the gobal state variable currentrownumber by 1 and fire an event right after. I would like to use this event to trigger the second arrival by making reference to the second row in the data table.

    In my model, i would like to continue generating the next arrival events by referring to each row of a data table from row 1 to the final row.

    Hope this clarifies my question. Thank you very much!

  5. In the source of my model, I would like to generate arrival events by looking through row by row of a given table. However, I only want to create the 2nd arrival event when all the entities of the created by the first arrival event has moved beyond a certain point, where Globalstatevalue = 0.  So in my process flow, I did something like this:When the globalstatevalue = 0, I want to go to the next row of my table and generate the 2nd arrival.  I did this my fire an event

    The setting at my source: 

    Arrival Mode: On event

    Triggering Event Name: name of event that I fired in the process flow.

    I managed to get the initial arrival to make sure that the  Globalstatevalue = 0. condition is reached. However, the 2nd event is not triggerd at all and the CurrentRowNumber is not incremented as well.

    May I have some advice please?

    Thank you

     

    Capture.PNG

  6. On 11/19/2018 at 9:41 PM, CWatson said:

    If the entity is created (similar to the Bicycle Assembly example in Simio) using an arrival table where the arrival time is specified in the table, the entity will automatically be assigned the associated row in that table. To assign a row reference to an entity without such logic, you would have to have the entity enter an add-on process when it is created and then use the SetRow step to assign the entity an associated row in a given table. The GlobalCurrentRowNumber you mention above could be used as the RowNumber assigned for the entity within the SetRow step, provided there were no conflicts with relational tables.

    Hi Watsons

    Thank you very much for your explanation. Mine is the case where I have to use the process SetRow to assign an entity to an associated row in a given table. However, I'm a bit confused about how to refer to the values of this associated row. For example, I assign an entity to row 1 in TableA, in which there are 3 columns. What I want to do is to get the value of col1,row1 in TableA from the model entity itself: so I'm looking for something like ModelEntity.col1 which gives the value of col1, row1 in tableA. 

    Can such a thing be done in Simio?

    Thank you

  7. Hi Watson

    Thank you for your detailed answer. I still have another question about searching rows in a table, especially relational data table. In the search step, there is only 1 match condition. How can I search a row based on 2 or more conditions? Can I still use Search Row? Or must I use something else? 

    Thank you!

     

  8. Hi Watson, my table is in fact a relational table. May I have some clarification on what you meant by the row within the relation?

    For example, if my table is like this:

    Brand            Quantity

    P&G                100

        Vendor1     20

        Vendor2      30

        Vendor3      50

    And I would like to search the row with Vendor 2 30. Then may I ask which row number will be returned in this case?

    Thank you

     

  9. I have 3 questions:

    1) I have a data table, each row representing an entity to be created. I create several entities and assign each of them to each row in this data table, using a SetRow Process. I have read somewhere that after I set a row to an entity, it becomes or token? So what is a token exactly?

    2) Also, after a created entity is set to a row in the data table, is there any special syntax I can use to make reference to values in other columns in this row? Or I still need to keep track of which row in the data table the entity is set to and make the references using the normal table referencing syntax accordingly?

    Thank you !

  10. I would like to refer to the BicycleAssembly Simio Simbit as I'm using it as a reference to set up my own model. As I set the Initialization step of my model, I read the Orders table row by row, using a global variable called CurrentRowNumber. However, when an order entity is created, I would like to keep track of the row in the Orders table that entity is created from with a model-entity level state variable. However, I'm not sure how to do. I cannot just assign the value of this ModelEntity.State = GlobalCurrentRowNumber as the GlobalCurrentRowNumber continuously changes as the simulation runs. 

    May I have some suggestion as to how to do so?

    Thank you 

  11. In my model, there are 2 types of entities created by 2 sources: Entity Type A and Entity Type B.The changeover setup time matrix is something like 

    Previous Entity       Type  A                     TypeB

    Incoming Entity

    Type A                      0                        Random.exponential(15)         

    Type B                 Random.Exponential(10)     0

    I know how to do it using the changeover matrix, but apparently, the changeover matrix can't take random distributions. May I have some suggestions as to how to go about this?

     

    image.png.4dc014226bcd39065cadf7aae9e19fbd.png

    Thank you!

  12. In my model, there is a combiner that generates a batch of 30 entities. After the combiner, I want to assign exactly 30% of the bach population (i.e: 9 members in a 30-member batch)  to state "A" and the remaining 70% of the batch population (i.e: 21 members in a 30-member batch) to state "B". May I have some suggestions as to how to do so? Note that the number of members in a batch is varying for different batches

    Thank you! 

  13. In my model, I intend to use a Binary Gate on a path to control if a particular entity is allowed to enter that path, using an Add-on process on the Path Run_initilized. First, I close the gate. At the Decide step, if a particular condition is fulfiled, then the entity will be allowed to pass through that path and proceed onto the next steps. The Gate will then close. If the condition is not fulfilled, then the Binary Gate at the path will remain closed. 

    However, when I run my model, even when the condition is not fulfilled, the entities still pass through that path. May I ask if my understanding and usage of the Binary Gate is wrong? 

    Attached is my model. Thank you very  much!

    image.png.51e3b0d55b4ddb0fa74e274bb3a45956.png

    Valve.spfx

     

     

  14. I have a model as follows:

    image.png.441a61ef3f84185b20eea811f47ab17b.png

    The model that I'm working at deals with orderID, structured below"

    image.png.92c1c464b9a49256e020cfd61377d99a.png

    So when I process OrderID =1, I want  Type1 Entity and Type2 Entity and Type3 Entity to be able to reach the Workstation1. Similarly, when I process OrderID ==2, I want only Type1 Entity and Type2 Entity to reach the Workstation1, but not Type3 Entity.

    May I have a suggestion as to how to do so? Thank you

  15. I have a model as follows:

    image.png.8da663e9b7421d92ca4c621a9e56346f.png

    The model that I'm working at deals with orderID, structured below"

    image.png.92c1c464b9a49256e020cfd61377d99a.png

    So when I process OrderID =1, I want  Type1 Entity and Type2 Entity and Type3 Entity to be able to reach the Workstation1. Similarly, when I process OrderID ==2, I want only Type1 Entity and Type2 Entity to reach the Workstation1, but not Type3 Entity.

    May I have a suggestion as to how to do so? Thank you

  16. Hi Watsons, thank you for your input! Let me rephrase my question again. At the Separator, 4 entities are created. I would like to treat them as a batch and assign exactly 1 entity in the batch as state1, 1 entity in the batch as state2, 1 entity in the batch as state 3, and 1 entity in the batch as state4. I'm not sure how to do this in a deterministic method based on the batch size. I only know how to assign the states based on a distribution, which is not what I need in this case.

    It would be great if I could have some advice on this

    Many thanks!

  17. Hi Watsons, thank you for your input!.Let me rephrase my question again. Prior to the Separator, I have a Combiner that creates a batch of 4 entities. At the separator, I would like to assign exactly 1 entity in the batch into state1, 1 entity in the batch into state2, 1 entity in the batch into state 3, and 1 entity in the batch into state 4. I'm not sure how to do this in a deterministic method based on the batch size. I only know how to assign the states based on a distribution, which is not what I need in this case.

    It would be great if I could have some advice on this

    Many thanks!

  18. image.png.714ea0356d1318b0d0e69d00840db02b.png

    I have 3 servers called Sever1, Sever2, Sever3. Sever1 processes Type1 Entity, Sever 2 processes Type2 Entity, and Server3 processes Type3 entity. (i.e: there are 3 sources to generate 3 different ModelEntity)

    In the scheduling table, for the first order A001, Type1 and Type2 are needed but not Type3. For the second order A002, Type1, Type2, and Type3 are all needed. How do I make reference in the table such  that at any time point, all 3 servers Sever1, Sever2, and Sever3 only process 1 orderID? 
    Also, I would like to know if it's possible to view the states of different instances of an Entity Object. If it is possible, how can I do so?For example, I create Entity1 at the source. During the simulation run, there will be many instances of Entity1. Can I view the user-assigned state values of these different instances, at different points during the simulation run?

    Please do help me to clarify the question if my wording is not clear enough. Thank you!

×
×
  • Create New...