Pedro Posted June 25, 2013 Share Posted June 25, 2013 Hi, I know about sequence tables that define a sequence from wich an entity will guide himself, but is it possible to have a sequence of something like: Order:Machine 1: A 2: B 3: C or D 4: E or even 1: A 2: B 3: C or D 4: C or D (depending on the previous choice) 5: E How can I do this? Thanks! Link to comment Share on other sites More sharing options...
jzhou Posted June 25, 2013 Share Posted June 25, 2013 yes, I am also interested in this. especially when we do the dynamic selection of routing in the sequence table. say if C is busy, then goto D. Link to comment Share on other sites More sharing options...
dsturrock Posted June 25, 2013 Share Posted June 25, 2013 The basic technique is that instead of including C and D in the sequence, you include a "choice" node where the decision is made which one(s) to go to and in what order. I have attached a draft SimBit submitted by a user that illustrates the technique.FlexibleProcessingSequence.zip Link to comment Share on other sites More sharing options...
Pedro Posted June 25, 2013 Author Share Posted June 25, 2013 The basic technique is that instead of including C and D in the sequence, you include a "choice" node where the decision is made which one(s) to go to and in what order.I have attached a draft SimBit submitted by a user that illustrates the technique.[attachment=0]FlexibleProcessingSequence.zip[/attachment] Thanks for the example! I see you put the Selection Goal property as "Random", but what happens if I want it to depend on a entity's state variable, for example in my entity I have a state variable that can have the value of 1 or 2, and when it reaches that TransferNode1 I want it to decide which is that entity's destination based on that state variable. You can only use the keyword "candidate" in that property's expression, but how can I refer to the entity that is being transfered and to its state properties? Thanks! Link to comment Share on other sites More sharing options...
dsturrock Posted June 25, 2013 Share Posted June 25, 2013 I'm not sure exactly what you are trying to do, but perhaps you should be selecting a path using expressions in your path weights rather than selecting a destination. Or perhaps you could use network constraints. Here is a brief excerpt from our training course: Link to comment Share on other sites More sharing options...
Pedro Posted June 25, 2013 Author Share Posted June 25, 2013 I'm trying to implement a specific case where an entity needs the following operations: Step:Machine 1: A 2: B 3: C and D (where it can chose to do first C if the D machine is more busy, or D if machine C is more busy, but he must leave step 3 with both machines visited) 4: E 5: F What is the best way to implement this situation? I wanted to do it by inserting a state variable inside entities telling which machines it already visited or something similar. The result that I'm looking for is for a way to have this machines listed in a table , such that if I want to modify the visited machines and their order I just need to modify that table. Thanks! Link to comment Share on other sites More sharing options...
Pedro Posted June 25, 2013 Author Share Posted June 25, 2013 This can easily be solved if I have a way to modify the "Next Destination" variable/flag/state of an entity as soon as it arrives to my transfernode, this way I could use a process to set the next destination based on a complex decision according to some state variable in the entity. Link to comment Share on other sites More sharing options...
ASagan Posted June 26, 2013 Share Posted June 26, 2013 Pedro, the model posted earlier looked to me to do exactly what you wanted. It used the 'set node' step with add-on processes, and used decisions based on entity states that tracked which servers had been visited. Did you take a look at the processes in the model? If so, did they do what you want? Link to comment Share on other sites More sharing options...
Pedro Posted June 26, 2013 Author Share Posted June 26, 2013 I know, the problem is that I want to do it just throught data tables. That example uses a fixed number of state variables That must be modified each time I ned to add or remove machines to the sequence, this is not scalable. Link to comment Share on other sites More sharing options...
dsturrock Posted June 26, 2013 Share Posted June 26, 2013 You cannot assign values in tables unless you have Enterprise Edition. But you could use a state array sized at the maximum alternatives you will ever have. Link to comment Share on other sites More sharing options...
Pedro Posted June 26, 2013 Author Share Posted June 26, 2013 Why can't we define arrays with dynamic sizes? It is is supported by many frameworks why can't Simio support it? Link to comment Share on other sites More sharing options...
dsturrock Posted June 26, 2013 Share Posted June 26, 2013 Arrays can be dynamically sized to match a table (on initialization). Or you can use Storages (an element) which is essentially a dynamic array of objects. But lets keep this thread on topic. Link to comment Share on other sites More sharing options...
Pedro Posted June 29, 2013 Author Share Posted June 29, 2013 Arrays can be dynamically sized to match a table (on initialization). Or you can use Storages (an element) which is essentially a dynamic array of objects. But lets keep this thread on topic. How can that be done? I can't find such option. Link to comment Share on other sites More sharing options...
dsturrock Posted June 29, 2013 Share Posted June 29, 2013 When you create a new State select MatrixFromTable: Link to comment Share on other sites More sharing options...
Pedro Posted June 29, 2013 Author Share Posted June 29, 2013 Thanks! Link to comment Share on other sites More sharing options...
dsturrock Posted June 29, 2013 Share Posted June 29, 2013 Here is a SimBit that solves the initial problem in a simpler and more elegant way than the previous model posted. VisitAllServersInAnyOrder.spfx VisitAllServersInAnyOrder.pdf Link to comment Share on other sites More sharing options...
Recommended Posts