question

Ömer Faruk Y avatar image
0 Likes"
Ömer Faruk Y asked Eric M edited

SPT rule without list

Assamble Problem with SPT.fsmI have a workshop. This workshop has a 6 machine(A, B, C, D, E and Packaging). 3 different item produced in this place (X,Y and Z) than assamble each other.

X produced A machine,

Y produced B machine,

Z produced C machine,

(2 X + Y) = XY assemble on D machine,

(XY+Z) = XYZ assemble on E machine,

Than XYZ item sent Quality control. Quality control sent 3% is sent to scrap, 17% to machine E and 80% to packaging.

İtem X arrival time exp(0,5), Y arrival time (0,4), Z arrival time exp(0,9)

A machine process time normal (5,1), B machine process time uniform (7,11), C machine process time triangular (3.5, 4, 6), D machine process time normal (10,0.5), E machine process time uniform(8,11), packaging process time triangular(9,10,11).

I did but I m not sure. I haven’t any list. I want to give priority to the job with the shortest processing time (SPT rule). How can I express this on FlexSim.

Assamble Problem with SPT.fsm

FlexSim 21.1.4
sptspt rule without list
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

Eric M avatar image
0 Likes"
Eric M answered Eric M edited

Hi @Ömer Faruk Y if I'm understanding correctly, you want the "Re processing E" processor to prioritize items that have a shorter processing time, right? If this is the case, you will need to come up with logic that actually differentiates the processing time (probably a label on each item). Right now it looks like your processor is reading a value off GlobalTable1 which will always be the same ("X"). So it doesn't really make sense in your process time to have the cases 5 or 6 with different processing times when that value is always "X" (never 5 or 6).

1626714300469.png

With that said, I would assign a label on the item depending on what process time it should be. Then in the processor input settings I would check the box "pull strategy" and choose "pull best item" in the dropdown. Then you can specify which label value to maximize or minimize.

1626714966122.png


1626714300469.png (12.1 KiB)
1626714966122.png (9.1 KiB)
· 2
5 |100000

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

Ömer Faruk Y avatar image Ömer Faruk Y commented ·

Actually no.I want to apply the SPT priority rule on queued jobs on machines A,B,C,D and E. Is it possible ? Also these labels (5 and 6) are for products (17%) that come from quality control to machine E for reprocessing.

0 Likes 0 ·
Eric M avatar image Eric M Ömer Faruk Y commented ·

In that case, instead of assigning the process time in the processors / combiners, I would assign the time to a label on the item itself. Otherwise the processor won't know how long an item will take until it actually enters the processor. You can then use the method above on each machine to pull the item with the shortest processing time.

You probably want 1 label for each machine the item will go through. So "X" items should have a time label for A machine and D machine. I would assign another time for E machine on the XY_2X_Y queue on entry. Then on each machine, instead of a process time have a label reference. Something like item.DmachineTime (or whatever else you want to name it).

As far as the 5 and 6, I'm not seeing where they're assigned (and either way, the table reference in the Value field will only ever return "X" since that's what's in the table). I would use the same method as above and just assign those items a new time as a label for when they go back through "Re processing E."

0 Likes 0 ·