question

Michael D6 avatar image
0 Likes"
Michael D6 asked Michael D6 commented

Surplus Processor Capacity

I am trying to understand the best way to add surplus processor capacity to manage a queue. In the example attached I added a Group C of processors with a slower process time than Group A. I would like to divert packages to Group C if there is no Group A resource available but not when there is a Group A resource available because of the slower process time. I went through the tutorials and there does not seem to be much on a scenario like this.

Also, regarding my process logic. I notice that the processors are not behaving as I would expect. In this scenario Processor 2 of Group A has a fast time. When the item is done being processed the wait for event clears and all packages leave the Group A processors even if they are not done. Is there way to make it so that each processor needs to complete the process before allowing the next object to enter. Sample Model Decide Function.fsm

FlexSim 21.2.2
processoracquire resource
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered Michael D6 commented

One method would be to use the "Max Wait Time" option in the acquire activity. If a token could not acquire a processor from group A it would be send to try and acquire one from group B, then C. If no processor could be acquired from group C it would enter into a "Wait for Event" that listens tokens exiting the "Release" activity and then sends the token back into the loop to try again.

Alternatively, you can add the process time as a field of the internal resource list ("Advanced" button in the resource properties). This way you can use the SQL term "ORDER BY" in the query field of the acquire activity and automatically acquire the processor with the lowest processing time.

In the "Wait for Event", that waits for the item to finish processing, you want to use the "match" operation with the "Item" label selected. That way, only if the item that finished processing matches the item that belongs to the token, will the token be released from the activity.

1631717100317.png

All options and changes can be found in this updated model:

sample-model-decide-function_2options.fsm


· 3
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Michael D6 avatar image Michael D6 commented ·
@Felix Möhlmann thank you, I understand this approach. I was definetely not approaching the problem this way. In regards to the second part of my question with all tokens being released from processors, any help would be greatly appreciated.
0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann Michael D6 commented ·
The third paragraph and picture are regarding your second question. "Matching" the item will make each token wait until its corresponding item finished processing. Or did I misunderstand the problem?
0 Likes 0 ·
Michael D6 avatar image Michael D6 Felix Möhlmann commented ·

@Felix Möhlmann I misunderstood the answer. This works well. I can now apply to my main model. Thanks for the help!

0 Likes 0 ·