A tabu search/path relinking algorithm to solve the job shop scheduling problem
Introduction
The job shop scheduling problem (JSP) is not only one of the most notorious and intractable NP-hard problems, but also one of the most important scheduling problems that arise in situations where a set of activities that follow irregular flow patterns have to be performed by a set of scarce resources. In job shop scheduling, we have a set of m machines and a set of n jobs. JSP seeks to find a feasible schedule for the operations on the machines that minimizes the makespan (the maximum job completion time), i.e., Cmax, the completion time of the last completed operation in the schedule. Each job consists of nj ordered operations , each of which must be processed on one of the m machines. Let denote the set of all the operations to be scheduled, where operations 0 and are dummies, have no duration, and represent the initial and final operations, respectively. Each operation is associated with a fixed processing duration Pk. Each machine can process at most one operation at a time and once an operation begins processing on a given machine, it must complete processing on that machine without preemption. In addition, let pk be the predecessor operation of operation . Note that the first operation has no predecessor. The operations are interrelated by two kinds of constraints. First, operation can only be scheduled if the machine on which it is processed is idle. Second, precedence constraints require that before each operation is processed, its predecessor operation pk must have been completed.
Furthermore, let So be the start time of operation o (). JSP is to find a starting time for each operation . Denoting Eh as the set of operations being processed on machine , we can formulate JSP as follows:subject to
In the above problem, the objective function (1) is to minimize the makespan. Constraints (2) require that the completion times of all the operations are non-negative. Constraints (3) stipulate the precedence relations among the operations of the same job. Constraints (4) guarantee that each machine can process no more than one single operation at a time.
Over the past few decades, JSP has attracted much attention from a significant number of researchers, who have proposed a large number of heuristic and metaheuristic algorithms to find optimal or near-optimal solutions for the problem. One of the most famous algorithms is the tabu search (TS) algorithm TSAB proposed by Nowicki and Smutnicki [14]. Nowicki and Smutnicki [15] later extend algorithm TSAB to algorithm i-TSAB, which Beck et al. [5] combine with a constraint programming based constructive search procedure to create algorithm CP/LS. Pardalos and Shylo [16] propose algorithm GES, which is based on global equilibrium search techniques. Zhang et al. [23] extend the N6 neighborhood proposed by Balas and Vazacopoulos [4] to a new neighborhood and Zhang et al. [24] combine TS with SA to create algorithm TS/SA, which outperforms almost all the algorithms. Nagata and Tojo [11] present a local search framework termed guided ejection search, which always searches for an incomplete solution for JSP. Recently, Gonćalves and Resende [9] present the biased random-key genetic algorithm BRKGA, which is able to improve the best known results for 57 instances and outperforms all the reference algorithms considered in their paper. From all these algorithms, it is apparent that the recent state-of-the-art algorithms either hybridize several strategies instead of using a single algorithm or employ a population-based algorithm instead of a single-solution based one.
Among the metaheuristic approaches used to generate solutions to JSP, a powerful local search procedure is always necessary. This observation is especially noticeable for the state-of-the-art algorithms for JSP. As one of the most popular local search algorithms, TS has been widely used by researchers to generate solutions to JSP, e.g., Nowicki and Smutnicki [15], Zhang et al. [23], Nasiri and Kianfar [12], Shen and Buscher [19], and Gonçalves and Resende [9].
On the other hand, Aiex et al. [2] apply path relinking within a GRASP procedure as an intensification strategy to generate solutions to JSP. Furthermore, Nowicki and Smutnicki [15] improve their famous algorithm TSAB by introducing a new initial solution (NIS) generator based on path relinking. Recently, Nasiri and Kianfar [13] take advantage of the N1 neighborhood to construct the path in the path relinking procedure that is identical to i-TSAB׳s NIS generator.
The above observations and considerations motivate us to develop a more robust algorithm for JSP by combining the more global relinking approach and the more intensive TS. In this vein, we design the tabu search and path relinking (TS/PR) algorithm to strike a better balance between the exploration and the exploitation of the search space in a flexible manner.
We summarize the main contributions of TS/PR as follows: Compared with the state-of-the-art algorithms for generating solutions to JSP, TS/PR uses a specific mechanism to effectively construct the path linking the initiating solution and the guiding solution, as well as using two kinds of improvement methods to determine the reference solution.
The remaining part of the paper is organized as follows: Section 2 describes in detail the components of TS/PR. Section 3 presents the detailed computational results and comparisons between TS/PR and some best performing algorithms in the literature for generating solutions to six sets of a total of 205 challenging benchmark JSP instances. Finally, we conclude the paper and suggest future research topics in Section 4.
Section snippets
Main framework
In principle, TS/PR repeatedly operates between a path relinking method that is used to generate promising solutions on the trajectory set up from an initiating solution to a guiding solution, and a TS procedure that improves the generated promising solution to a local optimum. Algorithm 1 presents the main procedure of TS/PR. Algorithm 1 Outline of algorithm TS/PR for JSP. 1: Input: J, M, and Pk 2: Output: Cmax and the best solution S⁎ found so far 3: /⁎ Section 2.2 ⁎ / 4:
Computational results
In this section we report extensive experimental results of applying TS/PR to tackle six sets of a total of 205 benchmark JSP instances widely used in the literature. We coded TS/PR in C++ and ran it on a PC with a Quad-Core AMD Athlon 3.0 GHz CPU and 2 GB RAM under the Windows 7 operating system. Table 2 gives the descriptions and settings of the parameters used in TS/PR in which the last column denotes the settings for the set of all the instances. Given the stochastic nature of TS/PR, we
Conclusion
In this paper we present a hybrid tabu search/path relinking algorithm for tackling the notorious job shop scheduling problem, in which we incorporate a number of distinguishing features, such as a path solution construction procedure based on the distances of the solutions and a special mechanism to determine the reference solution. Based on extensive computational results of applying TS/PR to tackle six sets of a total of 205 well-known and challenging benchmark JSP instances, we demonstrate
Acknowledgments
We thank an AE and two anonymous referees for their many helpful comments on earlier versions of our paper. The research was supported in part by the National Natural Science Foundation of China under Grant numbers 61100144 and 61370183, and the programme for New Century Excellent Talents in University (NCET 2013).
References (24)
- et al.
Parallel GRASP with path-relinking for job shop scheduling
Parallel Comput
(2003) - et al.
A GES/TS algorithm for the job shop scheduling
Comput Ind Eng
(2012) - et al.
A new hybrid genetic algorithm for job shop scheduling problem
Comput Oper Res
(2012) - et al.
Solving the serial batching problem in job shop manufacturing systems
Eur J Oper Res
(2012) - et al.
A tabu search algorithm with a new neighborhood structure for the job shop scheduling problem
Comput Oper Res
(2007) - et al.
A very fast TS/SA algorithm for the job shop scheduling problem
Comput Oper Res
(2008) - et al.
The shifting bottleneck procedure for job shop scheduling
Manag Sci
(1988) - et al.
A computational study of the job-shop scheduling problem
ORSA J Comput
(1991) - et al.
Guided local search with shifting bottleneck for job shop scheduling
Manag Sci
(1998) - et al.
Combining constraint programming and local search for job-shop scheduling
Informs J Comput
(2011)
A hybrid evolutionary algorithm to solve the job shop scheduling problem
Ann Oper Res
A computational study of shifting bottleneck procedures for shop scheduling problems
J Heuristics
Cited by (151)
A hybrid evolution strategies-simulated annealing algorithm for job shop scheduling problems
2024, Engineering Applications of Artificial IntelligenceA simulation optimization framework to solve Stochastic Flexible Job-Shop Scheduling Problems—Case: Semiconductor manufacturing
2024, Computers and Operations ResearchEfficient multi-objective meta-heuristic algorithms for energy-aware non-permutation flow-shop scheduling problem
2023, Expert Systems with ApplicationsHybrid evolutionary algorithm with multi-operation precise joint movement neighborhood structure for job shop scheduling problem
2024, Jisuanji Jicheng Zhizao Xitong/Computer Integrated Manufacturing Systems, CIMS