4.2 Constructive and Improvement Heuristics
4.2.1 Dispatching Rules
In scheduling problems, DRs stands out as an example of constructive heuristic of great interest. A DR is a guideline that prioritizes all the jobs that are waiting for processing on a machine. Whenever a machine becomes idle, a DR inspects the waiting jobs and selects the job with the highest priority (Yildiz et al., 2011). These rules can be based
on job attributes, considering its weight, processing time or release and due dates. Here, some of the most simple and common DRs are presented.
Shortest Processing Time (SPT) prioritizes jobs in the increasing order of their processing times. Dealing with shorter jobs first, allows to minimize their completion time and the number of jobs in the system. Also, this rule has strengths in maximizing machine utilization, avoiding the congestion of a machine, with a long duration job (Swamidass, 2000). Since SPT does not take into account information about due dates, it does not behave so well when lateness based performance criteria are used. If different jobs have different weights, the weighted SPT is proved to be optimal when minimizing total weighted completion time, in one machine environment (Pinedo, 2012).
Longest Processing Time (LPT) gives priority in the decreasing order of their pro- cessing times. This technique performs particularly well in reducing the makespan of parallel processors. Leaving the shorter jobs to the end of the schedule, allows to balance the loads in the several machines (Rajakumar et al., 2004). In the case of identical par- allel machines, this rule has proved to achieve a makespan less than 4/3 of the optimal value (Williamson and Shmoys, 2011).
Earliest Release Date (ERD) sequences the jobs from their arrival time. This se- quence attempts to minimize and equalize the waiting times of jobs (Pinedo, 2012). Although this rule does not consider due dates, failing to assess a job’s urgency, it can be fair, when dealing with list of customers (Mukhopadhyay, 2015). This rule is the equivalent toFirst In First Out (FIFO)or theFirst Come First Served (FCFS)
rules.
Earliest Due Date (EDD) organizes the jobs from their increasing due dates. This rule usually performs better than others, when considering tardiness based performance criteria. It is capable of minimizing maximum lateness (Baker and Trietsch, 2009) and reduce the number of tardy jobs (Moore, 1968). Although it is better at keeping promises to customers, this rule can be worse with respect to average flow time or total completion time (Ritzman and Krajewski, 2002).
Least Slack Time (LST)tries to measure the urgency of a job by its slack time. This time is calculated by the difference between its due date and its processing time. It indicates how much time there is left to process a job and finish it, without incurring in delays. The job with the lowest slack will be chosen, since it represents the highest priority and urgency. This rule is used to reduce mean tardiness of jobs (Barbosa et al., 2010).
DRs can also be constructed, based on machine information. That way, machine at- tributes are considered, such as its speed, the number of jobs waiting for processing or
Solving Techniques 29
the total amount of processing waiting in the queue. Once the jobs are prioritized and ordered, they are assigned to a machine, according to the DR.
First Available Machine (FAM)rule schedules the first job of a sequence to the first machine that is ready to process it. This method can be used to improve the waiting times of the jobs, since they start processing as soon as possible.
When some machines are not capable of processing some jobs, it is said that there are machine eligibility constraints. When a job can only be processed in a subset of the available machines, it can be of interest to use theLeast Flexible Job (LFJ) rule. A job is said to be less flexible than others, if it has less machines capable of processing it. Using this rule can be optimal to minimize makespan, in special cases of parallel identical machines (Pinedo and Reed, 2013).
If in the presence of identical machines and all jobs can be processed in any of the available machines, Shortest Queue (SQ) rule can also be of interest. This method attempts to minimize the idleness of machines, making sure that once finished a job, there is another to start processing. This rule usually reduces also the waiting times of jobs and balances the load of the several machines (Teixeira et al., 2014).
When using Earliest Completion Time (ECT)rule, both information of jobs and machines are used simultaneously. This is a rule for selecting the best machine, looking to reduce the total completion time of jobs. Here, each job will be allocated to the machine capable of finishing it earlier, considering all jobs in its queue (Framinan et al., 2014).
But the simplicity of these DRs, and others, can also be an obstacle to the construction of an efficient scheduling. These rules have limited use in practice, since most of them only focus on one job characteristic. In real problems, jobs characteristics and machine environments are usually more complex and using only a simple DR might be insufficient. That way, to achieve the desired results, often a combination of these procedures are utilized and can perform significantly better (Pinedo, 2012). Some examples of these procedures are here presented.
Baker and Trietsch (2009) shows how total completion time can be optimally minimized in a single machine environment, using SPT rule, when all jobs are available at the same time. But, when considering different release dates, the problem becomes NP-Hard and a simple DR becomes inefficient. To address the single machine problem, with unequal release dates, Potts (1980) used a combination of DRs. The ERD, FAM and LPT for tie breaks. This new sequence does not give a solution worse that 1.5 times the optimum solution. In the case of parallel machine problems, Weng et al. (2001) studied a problem that included setup times and different job weights. The authors tried to minimize
total weighted completion time of jobs and proposed seven DRs based algorithms. All algorithms showed up to be extremely fast, even for large instances, and provided good solutions. Also in parallel machine environments, Na et al. (2006) dealt with a challenge in the wafer fabrication, at a semiconductor manufacturing facility. This problem was subject to job families and had the necessity of creating fixed sized batches, to reduce costs, over its processing and setup times. To minimize total weighted tardiness, the authors suggested heuristics based on existing DRs, such as weighted EDD and weighted SPT. On multiple stage machine problems, Chiang and Fu (2007) used DRs to solve the job shop scheduling problem. The authors showed that the existing rules usually focus on one objective and cannot provide good performance on multiple objectives at the same time. That way, to address due date based goals, the author suggested a procedure that combines several rules. Combining SPT, EDD and LPT rules, it was possible to outperform existing rules when the tardy rate and mean tardiness were simultaneously considered. In a flow shop environment, Johnson (1954) developed the very famous Johnson’s rule. This method is capable of finding the optimum solution in minimizing the makespan of a two or three machines flow shop. Although this rule finds the best solution possible, it is limited on the number of machines. To address a flow shop scheduling with arbitrary number of machines, Campbell et al. (1970) expanded Johnson’s rule and described a simple algorithm, which is capable of dealing with very large instances and achieve an optimum or near optimum solution. More examples of DRs can be found in (Panwalkar and Iskander, 1977). In the authors’ work, more than one hundred DRs were presented. References with analyses for each rule and a classification scheme were also provided.