question

Noah Z avatar image
2 Likes"
Noah Z asked Jon Abbott answered

Best method to represent operators working a 9/80 schedule?

980-time-table.png

A 9/80 schedule means operators will work every week on Monday-Thursday for 9 hours but will alternate on Fridays between working 8 hours and having it off. Using the time tables to take workers off shift and on shift works very well if there is a consistent work schedule week-to-week. However when back to back weeks are not similar (as in the 9/80 schedule) I have had to revert to a custom repeat table as shown in the screenshot below (Note: I also have 90 minutes of unavailability in middle of each working day baked into the schedule). Is there a more elegant way to accomplish this that anyone can come up with? It's a bit of a pain to set up and if there are constant changes to individuals work schedules it can be a hassle to go through and recalculate what "Time" minute correlates to what time of day.

FlexSim 16.0.1
operatortimetables
980-time-table.png (57.3 KiB)
· 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.

Sam Stubbs avatar image Sam Stubbs ♦ commented ·

Hi Noah. So just to clarify, you mention "constant" changes to the schedule. I'm curious what kind of changes? If they are predictable changes to the schedule, it would be fairly simple to add them to a table. If they are unpredictable specific changes, then it would be very difficult to track each specific individual change on each individual's schedule. (For example: George is sick one day, and so he works an extra two hours each day the rest of this week.) However if you're just trying to track different types of shifts (For example: An A schedule vs B schedule model, or a Day, Swing, Graveyard shift kind of thing) you could do this by simply creating a timetable for each Schedule type and then just add and remove whichever "members" (operators) from whichever schedule as needed.

0 Likes 0 ·
Noah Z avatar image Noah Z Sam Stubbs ♦ commented ·

Hi Sam, thanks for the reply. "Constant" might not have been the best word choice. What I effectively meant was let's say I have 30-40 operators running around in a model performing tasks. I can keep it simple and have a single "A" and single "B" schedule and have everyone be assigned to one of those and follow exact same timing (i.e. start at the same hour of day, take lunch breaks at the same time, finish a shift at the same time). However, if I talk to the actual operators and find out, for instance, that they actually stagger their lunch breaks so product keeps moving during all working hours and that "Sally" shows up for work at 8 am whereas "Bob" shows up at 9 am I'd like to have those custom work times represented within the model. It is possible to make customized table schedules for each worker (similar to the screenshot) but it feels a bit unwieldy and not as easily editable as the block representation of the time schedule. The best solution in my opinion would be to have a "Bi-Weekly Repeat" option which I think would be a lot less error prone than my current method.

0 Likes 0 ·
Sam Stubbs avatar image Sam Stubbs ♦ Noah Z commented ·

Ah I see. So here's something you could try: I would create a timetable for the set schedules. (Your A and B schedules) As you have right now. But for each individual day, to represent breaks and such, I would set up a MTBF/MTTR table(s) (as many as needed). This allows you to use distribution function to add a bit of a randomization to it. They are set up similarly to timetables, but you can set the rate and states to use random distribution or set times. (This is used to simulate breakdowns of machines as well for example.) You can add and remove members to these tables just like the timetables.

0 Likes 0 ·
Sam Stubbs avatar image
1 Like"
Sam Stubbs answered

(I'm moving this from the comments to an answer, so others can see it more easily) So here's something you could try: I would create a timetable for the set schedules. (Your A and B schedules) As you have right now. But for each individual day, to represent breaks and such, I would set up a MTBF/MTTR table(s) (as many as needed). This allows you to use distribution function to add a bit of a randomization to it. They are set up similarly to timetables, but you can set the rate and states to use random distribution or set times. (This is used to simulate breakdowns of machines as well for example.) You can add and remove members to these tables just like the timetables.

5 |100000

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

Jon Abbott avatar image
2 Likes"
Jon Abbott answered

I developed a custom schedule builder spreadsheet to help create these kinds of schedules, and attached it here. It enables you to easily change the number of productive hours per day for a 9/80 or 4x10 work schedule, and then copy/paste the results into a FlexSim time table. It could be modified fairly easily to represent other schedules as well. The descriptions in the spreadsheet are from another source, and are useful for interpreting the format.


5 |100000

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