Fast parallel heuristics for the job shop scheduling problem☆
Introduction
In the job shop scheduling problem l jobs have to be processed on m different machines. Each job consists of a sequence of tasks that have to be processed during an uninterrupted time period of a fixed length on a given machine. A schedule is an allocation of the tasks to time intervals on the machines and the aim is to find a schedule that minimizes the overall completion time which is called the makespan. This scheduling problem is NP-hard [1], [2] and even hard to approximate: To find a schedule that is shorter than times the optimum is NP-hard for the general problem setting [3] and there exist problem specifications which are hard to approximate within a polylogarithmic distance to the optimum [4].
There are only a few papers dealing with parallel algorithms for scheduling problems. In Dekel and Shani [5], a parallel algorithm for a special case of the single-machine scheduling problem is presented: Each job has a release time, a deadline, and a unit processing time, but there are no precedence constrains. The algorithm takes time and O(n) processors. Vazirani/Vazirani showed that two processor scheduling belongs to Random NC [6], and a deterministic NC algorithm was presented in Helmbold and Mayr [7]. The NC algorithm takes O(log2n) time with O(n10) processors. The number of processors has been reduced in Jung et al. [8] to O(n3). Parallel algorithms for modifications of the classical two processor scheduling problem are considered in Sunder and He [9].
Parallel algorithms for scheduling from a more practical point of view are discussed in Eikelder et al. [10], Perregaard and Clausen [11] and Taillard [12]. Taillard [12] uses a method that performs the calculation of longest paths in parallel for successor nodes at any step from the starting node (source) to the sink within the disjunctive graph model. The nodes v are ordered by A(v)=max{pm(v),pj(v)}, where pm(v) is the number of predecessor of v on the machine and pj(v) the number of predecessor within the job. Therefore, a theoretic speed-up of n/maxvA(v) can be achieved. However, this speed-up is problem dependent and can be 1 in the worst case and at most m (e.g., in case of flow shop problems). Computational experiments on parallel implementations are not reported in Taillard [12].
In Perregaard and Clausen [11], results from implementing two parallel branch-and-bound algorithms for solving job shop scheduling are presented. The implementations are running on a 16-processor system based on Intel i860 processors, each with 16 MB internal memory. The parallel algorithms are performing a parallel search for solutions, i.e., the branching operation of sequential algorithms is parallelized. By this parallel version, the optimum solution of FT10 is found about 14.67 times faster compared to the sequential one. However, branch-and-bound methods tend to an exponential increase of branching steps, i.e., the number of required processors would increase exponentially for a full coverage of branching steps.
Eikelder et al. [10] suggest the parallel execution of independent sequential search algorithms. They analyze a theoretical model for predicting the speed-up of such parallel versions of local search algorithms.
In the present paper, we are concentrating on parallel versions of simulated annealing-based heuristics for the job shop scheduling problem. Sequential versions of these algorithms have been studied earlier in Steinhöfel et al. [13], [14]. We perform a complexity analysis of three simulated annealing-based algorithms for their implementations on parallel random access machines (PRAM model). We employ a neighborhood relation which was introduced by Van Laarhoven et al. [15]. For this neighborhood, a single arc from a longest path is reversed at any step and these transitions always guarantee the feasibility of schedules.
The calculation of longest paths is the critical computational task of our algorithms. We discuss in particular a parallel algorithm for computing longest paths in disjunctive graphs where we take into account the specific properties of job shop scheduling.
We designed two cooling schedules for homogeneous Markov chains and additionally we investigated a logarithmic cooling schedule for inhomogeneous Markov chains. Given O(n3) processors and a known upper bound Λ=Λ(l,m) for the length of longest paths, the expected run-times of parallelized versions are for the first cooling schedule and for the second cooling schedule, where n=lm is the number of tasks.
The third cooling schedule utilizes a logarithmic decremental rule. The general framework of logarithmic cooling schedules has been studied intensely, e.g., by Hajek [16] and Catoni [17]. For this cooling schedule, we obtain a stochastic algorithm with a provable convergence rate, although our chosen neighborhood relation does not provide symmetry properties which are usually important in convergence proofs. The speed-up is about by using O(n3) processors.
Since the upper bound Λ affects significantly the run-time, we analyzed potential upper bounds for famous benchmark problems of size 6×6 till 50×10. The analysis led us to the conjecture that Λ⩽pmax(l+m) could be a uniform upper bound for the completion time of job shop scheduling problems with l jobs on m machines, where pmax is the maximum task length.
Although the number of processors is very large, the particular processors are extremely simple and the parallel processing system is suitable for hardware implementations.
The present paper is an extended version of Steinhöfel et al. [18].
Section snippets
The job shop problem
The general job shop scheduling problem can be formalized as follows. There are a set of l jobs, a set of m machines, and a set of n tasks. For each task there is a unique job to which it belongs, a unique machine on which it requires processing, and a processing time . There is a binary relation R on that decomposes into chains corresponding to the jobs. This binary relation, which represents precedences between the tasks is defined as follows: For every
Preliminaries
We employ the framework of Markov chains to describe stochastic algorithms solving the job shop scheduling problem. The time-dependent change of transition probabilities is determined by the general approach of simulated annealing which was introduced in Kirkpatrick et al. [20] as a new class of algorithms computing approximate solutions of combinatorial optimization problems. More information about simulated annealing and its application in diverse areas can be found in Aarts [21] and Aarts
Simulated annealing algorithms for job shop scheduling
In this section, we briefly describe some major features of three cooling schedules for simulated annealing-based algorithms which were developed and comprehensively analyzed in Steinhöfel et al. [13], [14].
Solving the longest paths problem in parallel
The section describes a parallel algorithm for the computation of longest paths in our digraph model. Hence, we are using a similar approach as Taillard [12]. However, we perform a more rigorous parallelization of the longest path computation.
A widely used approach to solve scheduling problems is the relaxation method applied to constraint satisfaction. It is interesting to note that this method was proved to be P-complete;1
Complexity analysis of parallelized cooling schedules
The estimated run-times for the two heuristics and the upper bound for the logarithmic cooling schedule (see Section 4) are determined by the number of cooling steps, the calculation of longest paths, and the complexity of local computations related to the neighborhood of a given configuration. In our approach, only the computation of longest paths is parallelized. Nevertheless, we obtain a significant speed-up, however, by using a very large number of processors.
First, we consider the
A conjecture about upper bounds for the makespan
As seen in the previous section, the length of the makespan is closely connected to the run-time bound of our parallelized algorithms. To the best of our knowledge, there are no proven upper bounds which depend only on the number of machines and the number of jobs. The search for good initial solution brought us to the conjecture that optimum solutions have a makespan of O(l+m). We verified the conjecture on famous benchmark problems which were introduced by Fisher and Thompson (FT), [27];
Concluding remarks
We have analyzed parallelized versions of simulated annealing-based algorithms for the classical job shop scheduling problem. The algorithms are using a neighborhood relation which was introduced by Van Laarhoven et al. [15] where at any step a single arc from a longest path is reversed to obtain the next configuration.
Since the calculation of longest paths is the critical computational task of our algorithms, we designed a parallel algorithm for computing longest paths in directed graphs where
Acknowledgements
The authors would like to thank the referees for their careful reading of the manuscript and helpful suggestions to improve the presentation of our results.
Kathleen Steinhöfel is a Postdoctoral Fellow at the German National Institute for Information Technology (GMD) in Berlin. She received her diploma in Informatics from the Technical University Leipzig and the Ph.D. degree from the Technical University Berlin. Her research interests are in stochastic algorithms and combinatorial optimization.
References (30)
NP-complete scheduling problems
Journal of Computer and System Science
(1975)- et al.
A parallel matching algorithm for convex bibartite graphs and applications to scheduling
Journal of Parallel and Distributed Computing
(1984) - et al.
Two simulated annealing-based heuristics for the job shop scheduling problem
European Journal of Operational Research
(1999) On the parallel complexity of discrete relaxation in constraint satisfaction networks
Artificial Intelligence
(1990)Parallel computation and conflicts in memory access
Information Processing Letters
(1982)- et al.
Complexity results for multiprocessor scheduling under resource constraints
SIAM Journal on Computing
(1975) - et al.
Short shop schedules
Operations Research
(1997) On unapproximable versions of NP-complete problems
SIAM Journal on Computing
(1996)- et al.
The two processor scheduling is in random NC
SIAM Journal on Computing
(1987) - et al.
The two processor scheduling is in NC
SIAM Journal on Computing
(1989)
An NC algorithm for finding the minimum weighted completion time schedule on series parallel graphs
Algorithmica
Parallel branch-and-bound methods for the job-shop scheduling problem
Annals of Operations Research
Parallel taboo search techniques for the job-shop scheduling problem
ORSA Journal on Computing
Cited by (0)
Kathleen Steinhöfel is a Postdoctoral Fellow at the German National Institute for Information Technology (GMD) in Berlin. She received her diploma in Informatics from the Technical University Leipzig and the Ph.D. degree from the Technical University Berlin. Her research interests are in stochastic algorithms and combinatorial optimization.
Andreas Albrecht is a Research Fellow at the Dept. of Computer Science and Engineering of The Chinese University of Hong Kong. He received the diploma in Mathematics from Moscow State University, and the Ph.D. (Dr.rer.nat.) and the Habilitation (Dr.sc.nat.) degrees in mathematics from Humboldt University at Berlin. His research interests include complexity problems of Boolean Functions, combinatorial optimization, and algorithmic learning theory.
C.K. Wong is a Professor of Computer Science and Engineering at The Chinese University of Hong Kong, on leave from IBM. Prof. C. K. Wong received the B.A. degree in mathematics from the University of Hong Kong in 1965, and the M.A. and Ph.D. degrees in mathematics from Columbia University. He joined the IBM T.J. Watson Research Center and was manager of the VLSI Design Algorithms group. He was Visiting Associate Professor of Computer Science at the University of Illinois, Urbana and Visiting Professor of Computer Science at Columbia University. His research interests include combinatorial algorithms, such as sorting, searching, graph algorithms; stochastic algorithms; computational geometry; and algorithms arising directly from industrial applications, such as mass storage systems, magnetic bubble memories, computer network design, satellite communications and VLSI design. He is author of a book on algorithms for mass storage system design, and coauthor of a book on VLSI physical design algorithms. Prof. Wong was Chair of the IEEE Computer Society Technical Committee on VLSI and Editor of “IEEE Transactions on Computers”. He was a founding member of the Editorial Board of “Fuzzy Sets and Systems” and the founding Editor-in-Chief of the international journal “Algorithmica”.
- ☆
Research partially supported by the Strategic Research Programme at The Chinese University of Hong Kong under Grant No. SRP 9505, by a Hong Kong Government RGC Earmarked Grant, Ref.No. CUHK 4367/99E, and by the Germany/Hong Kong Joint Research Scheme under Grant Nos. D/9800710, GHK 99/02 and GHK 00/08.