Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?
In my last post I looked at delivery sequences like FIFO, LIFO, etc. This second post looks at simple production sequences where you do have to deal with limited production capacity. If you cannot make everything at once, you need a sequence in which you process the parts.

Introduction

As mentioned in the previous post, we now have to deal with limited capacity. We cannot process all items at once. This could be most production systems, where you typically start with one item, and as the item proceeds through the system you start to process more items.  Another less-common example would be a truck, ship, or plane that cannot fit everything you want to deliver. Some items would have to wait for the next transport. Overall, you have limited capacity. In comparison, the capacity of a warehouse to ship items usually exceeds the demand of the customers, and hence the warehouse has a much higher capacity than the need of the customer.

FIFO (First In, First Out) and FCFS (First Come, First Served)

The first strategy is the easiest: FIFO (first in, first out) and FCFS (first come, first served), which are two names for the same thing. The orders are processed in the sequence they arrive. The people at the supermarket get to the checkout in the sequence they have arrived at the queue.

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?
This is an excellent approach to sequence material between processes in a flow line. I have written a lot of posts on this topic exactly since it is so common and useful. See Theory and Practice on FiFo Lanes for a start and have a look through my list of posts.

Maintaining the sequence makes it much easier to find and fix problems and changes. It is also possible to pretty much force FIFO though the use of a FIFO-type inventory system like a rolling lane. If it is easiest for the worker to pick up the first part, he will do so.

FIFO will be the backbone of any flow production. Only at selected locations like at the beginning and in supermarkets will the sequence be defined and changed (see my posts Ten Rules When to Use a FIFO, When a Supermarket). Yet even at these locations, FIFO can be used. At a supermarket the kanban cards can go back to the process in the sequence that the parts are taken out (hence FIFO). At the beginning of your value stream, you could process the orders in the sequence they arrive (hence also FIFO).

However, especially for make-to-order products and at time of potential stock-outs, a pure FIFO does not always make sense. At least at some location you may want to change the sequence. Here are a few simple alternatives.

EDD – Earliest Due Date

Out of the pool of available open jobs or parts to process, the sequence is based on the due dates. All parts or jobs in the pool for that machine are evaluated, their due dates are compared, and the job or part with the earliest due date is processed first, followed by the second-earliest due date and so on.

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?

This is helpful if the sequence of the parts and the sequence of the due dates differ significantly, as in the example above. Job #5 is due in three days, which is the earliest due date. Hence job #5 should take precedence over all other jobs to ensure that it is ready when the customer wants it. Next would be job #2, which is due in seven days, and so on.

For this to work, you would need a due date for all of your jobs (obviously) and a way to figure out what job has the earliest due date. If you have your open orders in an Excel file, you simply sort by due date. However, if the worker has to look at the paperwork of all parts on the shop floor, a lot of time will be wasted in figuring out what to do next.

This method is a valid approach as long as all of your parts have a similar lead time (i.e., take a similar time to be processed).

SPT – Shortest Processing Time

Another strategy is SPT (shortest processing time). You add all the (estimated) processing times for each job to see how many minutes (or hours) of work each part needs until completion. Let me show you an example before I tell you why this method is very flawed.

In the image below, job #6 has the shortest remaining processing time of thirty minutes, and hence would go first. This is followed by job #4 with the second-shortest processing time, and so on.

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?

The advantage of this method is that it gets the material out quickly. Like when you are doing your chores, it is a satisfying feeling to complete a few short chores. However, this is a one-time effect, since once the parts with the shortest processing times are out, you are stuck with the long processing times. The overall lead time will not really budge, since whatever time you save for the quick parts will be added to the lead time of the complex parts.

A complex part with a lot of processing time may potentially be stuck in the system forever since there are always new jobs arriving with a shorter processing time. This is the big drawback. It makes the production feel good about churning out parts, but neglects the needs of the customers for more complex parts. I strongly recommend you not use this.

Even worse would be a longest processing time (LPT) method, which luckily I have not found in literature. You would start everything but complete nothing! Hence again stay away from production sequences that are solely based on work content!

ODD – Operational Due Date

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?
Savior … or master of disaster?

The operational due date uses more-advanced scheduling methods to figure out the latest a job has to start at a process in order to make the deadline. Often this is based on ERP systems. This system calculates backwards from the due date of the completed product, including estimates of processing times, waiting times, and safety time buffers to estimate when a product has to be processed where.

The sequence would then be created individually for every process or process group based on the estimation of when the part has to pass through this process group to make the deadline. The part with the earliest operational due date for the next process goes first, and so on.

Such a method can have an overview of the entire production system, and magically determine a good sequence. However, it can also magically mess it up big time. Personally, I am wary of such systems. They can work, but they also can make a god-awful mess.

Another flaw of this method is that jobs may be started long before necessary just because capacity is available, building up inventory and tying up capital. Overall it can work, but it also may not. In any case, it usually requires an ERP system or a really good paper-based system.

MODD – Modified Operation Due Date

The MODD (modified operation due date) is an acronym used for a number of different sequencing techniques based on the operational due date. They modify the ODD method using additional conditions, weights, or other considerations in order to improve the scheduling quality.

One MODD approach uses ODD as the main sequence, except the job becomes late and the processing time is larger than the remaining time until the due date. In this case the shortest processing time (SPT) of the late jobs takes precedence over the ODD rule.

AI – Artificial Intelligence

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?
Scheduling is a complex task, and in the past human experience often saved the day and avoided a delay. While not yet mainstream, artificial intelligence systems are starting to be used, learning the complexities of the particular production systems and giving suggestions on when to do what. This is still under development, but maybe it is common in ten years. We will see.

Loudest Yeller First (Not Really a Strategy)

Which rule chooses the job with the least processing time among the competing list and schedule it ahead of the others?
Also a scheduling strategy …

Yet another “strategy” is to simply listen to whoever is making the most noise. The customer that calls and complains gets prioritized. The boss calling and doing a round of yelling will lead to a re-sequencing of the schedule. This “strategy” is of course not so hot for the overall system performance, but depending on your work environment, it may be necessary to save your career.

More Complex Sequencing Strategies

The above are merely a selection of simple sequencing strategies. Much-more complex strategies exist to optimize certain aspects of the production. These may, for example, optimize changeover times (see my series on Changeover Sequencing ), leveling (see my series on leveling), using prioritization (see my series on How to Prioritize Your Work Orders), Just in Sequence (see my JIT blog posts series), and workload balancing (see my series … wait … I have not yet written that …) Apologies, it is on my to-do list! In the meantime, go out, manage your production schedule, and organize your industry!

Which rule chooses the job with longest processing time among the competing list and schedules it ahead of others?

Johnson's Rule applies to the sequencing of jobs through two work centres. It states that: The job with the longest processing time for the first process should be done first and the job with the longest processing time for the second process should be done last.

Which rule chooses the job with the least processing time among the competing list and schedules it ahead of others?

In operations research, Johnson's rule is a method of scheduling jobs in two work centers. Its primary objective is to find an optimal sequence of jobs to reduce makespan (the total amount of time it takes to complete all jobs). It also reduces the amount of idle time between the two work centers.

What is the shortest processing time rule?

Shortest Processing Time (SPT) The shortest processing time rule orders the jobs in the order of increasing processing times. Whenever a machine is freed, the shortest job ready at the time will begin processing. This algorithm is optimal for finding the minimum total completion time and weighted completion time.

What is Johnson's rule scheduling?

Johnson's Rule is: From the list of unscheduled jobs, select the one with the shortest processing time in either work center. If the shortest time is at the first work center, do the job first in the schedule otherwise do the job last in the schedule.