KHAIRUL MUAZ avatar image
KHAIRUL MUAZ asked Felix Möhlmann commented

Changing the priority selection of the model

Hello. I need help on a simulation model. Currently, the items are pushed by the item label SHORTNAME as the priority selection. I have added a new label, SHIPDATE. How do I set up the simulation to prioritize items that have the earliest ship date to be processed first by all processors while still sticking to the batching amount set for the batching process? Any help is greatly appreciated!

SV3_SIM RUN_11.06.2024.fsm

FlexSim 19.1.2
· 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.

Felix Möhlmann avatar image Felix Möhlmann commented ·
This poses a number of questions, mainly how 'incomplete' batches and the due date would interact.

How long does a processor wait before starting to process a partial batch?

If there is a full batch and a partial batch but the partial batch includes items with an earlier due date, which batch is processed.

So I would suggest you first try to design a logic flow chart that handles any cases that might come up. Afterwards it will be easier to come up with controls that can satisfy the designed logic.

Most likely you will have to track the "BladeQty" and earliest due date for each queue. And whenever a processor becomes idle, it checks which type/program to work on next. (Or it decides not to pull anything because there is no batch of a sufficient size yet.)

0 Likes 0 ·
KHAIRUL MUAZ avatar image KHAIRUL MUAZ Felix Möhlmann commented ·

The idea is that if the item is prioritized based on the earliest ship date, it will be pushed to be processed first. It will still batch the item based on the batching quantity by case value, so for LPT items, it will be batched until 547 before starting the process and until 1614 for HPC items. When an item that has an earlier ship date enters the queue, it will set to go out first until the queue satisfies either the batch amount or the maximum wait time, then push the items.

0 Likes 0 ·
Jeanette F avatar image Jeanette F ♦♦ commented ·

Hi @KHAIRUL MUAZ, was Felix Möhlmann's answer helpful? If so, please click the "Accept" button at the bottom of their answer. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always comment back to reopen your question.

0 Likes 0 ·

1 Answer

Felix Möhlmann avatar image
Felix Möhlmann answered Felix Möhlmann commented

Here's one approach. There is one token for each of the VHT queues that collects information about the available blade qty and the minimum shipping date in that queue.

When an item enters a queue it adds its information to labels on the 'Batch Token'.

When at least one item is in the queue, the batch token waits until either the batch target has been reached or the maximum wait time has elapsed. It then makes itself available on a list.

Token representing the processor pull from this list ordered by the shipping date. They then pull as many items as possible from the respective queue and process them.


· 4
5 |100000

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

KHAIRUL MUAZ avatar image KHAIRUL MUAZ commented ·

Hi Felix, if i were to change how the priority is managed, this time around the simulation will calculate the amount of blade based on their type, which is either LPT or HPC, and will prioritize the blade with the highest amount first. lets say if the amount of lpt blade is higher, it will push any program under lpt first if amount of hpc blade is higher than lpt blade it will push any of the program for hpc blade first.

0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann KHAIRUL MUAZ commented ·

I'd keep track of the number of available blades per type in a global variable. Then a batch token just needs to know which type it belongs to. With that info, you can create a list field that denotes the global quantity of that type and sort by it in the pull query.

Note: I currently track the overall blade quantity of waiting items. If you only want to take the quantity in 'active' batches into account, the logic would need to be changed.


0 Likes 0 ·
KHAIRUL MUAZ avatar image KHAIRUL MUAZ Felix Möhlmann commented ·

How does it work if it will be prioritizing by the highest blade qty only without taking into account the shipdate

0 Likes 0 ·
Show more comments