An optimal method for the preemptive job shop scheduling problem
Introduction
Job shop environments, as a generalization of single machine and flow shop environments, are associated with products of a wide variety, each of which has a unique production process. Scheduling in these environments can, therefore, have a considerable impact on the system’s efficiency that can be further enhanced by preemption forming one of the most important scheduling assumptions. Preemption may be allowed in such processes as machining operations in which the amount of processing a job receives is not lost after preemption. Among other applications of preemption is included the assignment of human resources to different project activities. As illustrative examples, reference may be made to Guo et al. [1] who used a special case of this problem in the apparel industry, or to Anderson et al. [2] who, taking the hardware CPU and I/O for machines, used the 2-machine version of the problem to schedule computer systems.
Throughout this paper, a scheduling problem is designated by the triple notation α|β|γ [3]. It must be mentioned that preemption may decrease problem complexity in certain cases but it is not certainly the case with Job Shop Scheduling Problems (JSSP). For example, the two machine pJSSP with only three jobs () is an NP-hard problem; however, the nonpreemptive version with any arbitrary number of jobs () is solvable in a polynomial time [4]. The high complexity of the pJSSP has led researchers to use heuristic or approximation algorithms to solve the problem. This is verified by the literature review below.
A number of researchers have addressed a special case of the pJSSP with two machines. For example, Sevastianov and Woeginger [5] proposed a polynomial time approximation algorithm with the worst case ratio of 1.5 for the problem . Kimbrel and Saia [6] considered this problem in online and offline environments and developed randomized heuristics with the worst case ratio of 2. Anderson et al. [2] studied the same problem and developed an algorithm that yields a schedule of length at most greater than the optimal schedule length, where is the length of the longest job.
Others have developed approxim\ation algorithms for the problem in its general form. For instance, Goldberg et al. [7] proposed approximation algorithms with the ratio for the problem , where m is the number of machines and μ is the maximum number of operations per job. Bansal et al. [8] developed approximation algorithms with the ratio for the problems or . They presented a (2+ε) approximation, in which 0<ε<1, for a constant number of machines and an algorithm with the ratio 1.45 for the problem . Jansen et al. [9] presented a polynomial time approximation scheme for JSSP and pJSSP with a fixed number of machines and a fixed number of operations per job. Leighton et al. [10], [11] developed approximation algorithms with a fixed ratio for the problem .
Another group of authors have addressed pJSSP with some additional assumptions. Jansen et al. [12] studied JSSP and pJSSP with controllable processing times, in the sense that processing time may be decreased at an additional cost. They developed polynomial time algorithms to minimize both makespan and cost. Akcora et al. [13] studied a case of pJSSP in which a reward is given to each operation based on its completion time. Considering the maximization of the total rewards as the objective function, they developed a heuristics using a mathematical model.
Exact solution methods for solving the problem have been rarely reported in the literature if ever. The most important attempt in this field is due to Le Pape and Baptiste in the form of scientific reports [14], conferences presentations [15], and papers [16], [17] during the period from 1994 to 1999. Unlike other researchers, they developed optimal methods in addition to heuristics to solve the problem. Common in all their work is the use of constraint programming and its related techniques. In 1998, they proposed different constraint propagation techniques based on time tables, disjunctive constraints, and edge finding to optimally solve the problem [16]. To the best of our knowledge, this study includes the best records in optimally solving the benchmark pJSSPs. In their following study in1999, they combined different heuristic search strategies with various constraint propagation techniques [17].
More recently, Baptiste et al. [18] have shown that there exists an optimal schedule for preemptive job shop scheduling problems with integral data in which all interruptions and all starting and completion times occur at integral dates. This implies that we can break down each operation into a chain of unit length components. They have also introduced new upper bounds on the minimal number of interruptions.
The desirability of optimal solutions and the unavailability of exact methods reported in the literature for the problem encouraged us to conduct this study aimed at developing efficient, exact methods for the optimal solution of such problems. We recently developed novel mathematical models for the preemptive shop scheduling problems using a commercial software for their solution [19]. The dimension in these models, unlike those of the previously reported ones, depends solely on the number of jobs and machines irrespective of processing times. Here, we develop a branch and bound solution that is capable of solving tougher instances.
In Section 2, the problem is represented by a disjunctive graph which serves as the basis of a branch and bound method presented in Section 3. Dominance rules, lower bounds, and a preference rule are used to improve its efficiency. In Section 4, the method is used to solve the famous benchmark problems [20]. The results are then compared with those obtained from the best methods available. The last Section provides conclusions and suggestions for future studies.
Section snippets
Disjunctive graph
In the pJSSP, there are n jobs and m machines. Each job has its own sequence of operations, and each operation should be processed on a particular machine. The objective is to schedule operations on machines so that the maximum completion time is minimized. Problem assumptions can be stated as follows. Processing times are deterministic and sequence independent. All jobs are ready to be processed at time zero. Only one job can be processed on each machine at a given period of time. Each job
A branch and bound method based on the disjunctive graph
A branch and bound method is introduced here to obtain the optimal solution. As already proved in Section 2, set BS⊂AS constitutes the dominant set for the problem . Hence, the branching scheme is based on the generation of set AS where, by using dominance rules, the generation of schedules belonging to set (AS\BS) is avoided. In this process, scheduling starts from time 0 and jobs are gradually scheduled on machines in a depth-first search until feasible schedules are finally
Computational experiments
There are famous benchmark instances for the families of the problem that have been used in different studies to evaluate the efficiency of the proposed methods [24], [25], [26], [27], [28]. These benchmark problems are available in the OR benchmark library [20]. Although these problems are old, a large number of them still await optimal solutions.
As reported in the literature, the rather high complexity of the problem has led most researchers to using heuristic or
Conclusion
In this study, the problem was represented by a disjunctive graph. The graph and problem properties were then used to develop a branch and bound method to find optimal solutions. Dominance rules, lower bounds, and other techniques were also used to increase the efficiency of the method proposed. Finally, the method was used to find optimal solutions for some of the well-known benchmark problems. The results were then compared with those obtained from the best methods so far known.
References (38)
- et al.
Mathematical model and genetic optimization for the job shop scheduling problem in a mixed- and multi-product assembly environment: a case study based on the apparel industry
Computers & Industrial Engineering
(2006) - et al.
Approximation schemes for job shop scheduling problems with controllable processing times
European Journal of Operational Research
(2005) - et al.
A job shop scheduling heuristic for varying reward structures
Mathematical and Computer Modelling
(2005) - et al.
Properties of optimal schedules in preemptive shop scheduling
Discrete Applied Mathematics
(2011) - et al.
Mathematical models for preemptive shop scheduling problems
Computers & Operations Research
(2012) - et al.
Ant colony optimization combined with taboo search for the job shop scheduling problem
Computers & Operations Research
(2008) - et al.
Clonal selection based memetic algorithm for job shop scheduling problems
Journal of Bionic Engineering
(2008) - et al.
An efficient job-shop scheduling algorithm based on particle swarm optimization
Expert Systems with Applications
(2010) - et al.
A multi-modal immune algorithm for the job-shop scheduling problem
Information Sciences
(2009) - et al.
A tabu search algorithm with a new neighborhood structure for the job shop scheduling problem
Computers & Operations Research
(2007)