Elsevier

Computers & Operations Research

Volume 53, January 2015, Pages 154-164
Computers & Operations Research

A tabu search/path relinking algorithm to solve the job shop scheduling problem

https://doi.org/10.1016/j.cor.2014.08.006Get rights and content

Abstract

We present an algorithm that incorporates a tabu search procedure into the framework of path relinking to generate solutions to the job shop scheduling problem (JSP). This tabu search/path relinking (TS/PR) algorithm comprises several distinguishing features, such as a specific relinking procedure to effectively construct a path linking the initiating solution and the guiding solution, and a reference solution determination mechanism based on two kinds of improvement methods. We evaluate the performance of TS/PR on almost all of the benchmark JSP instances available in the literature. The test results show that TS/PR obtains competitive results compared with state-of-the-art algorithms for JSP in the literature, demonstrating its efficacy in terms of both solution quality and computational efficiency. In particular, TS/PR is able to improve the upper bounds for 49 out of the 205 tested instances and it solves a challenging instance that has remained unsolved for over 20 years.

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 M={1,,m} of m machines and a set J={1,,n} 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 jJ consists of nj ordered operations Oj,1,,Oj,nj, each of which must be processed on one of the m machines. Let O={0,1,,o,o+1} denote the set of all the operations to be scheduled, where operations 0 and o+1 are dummies, have no duration, and represent the initial and final operations, respectively. Each operation kO 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 kO. Note that the first operation has no predecessor. The operations are interrelated by two kinds of constraints. First, operation kO can only be scheduled if the machine on which it is processed is idle. Second, precedence constraints require that before each operation kO is processed, its predecessor operation pk must have been completed.

Furthermore, let So be the start time of operation o (S0=0). JSP is to find a starting time for each operation oO. Denoting Eh as the set of operations being processed on machine hM, we can formulate JSP as follows:MinimizeCmax=maxkO{Sk+Pk},subject toSk0;k=0,,o+1,SkSpkPpk;k=1,,o+1,SiSjPiorSjSiPj;(i,j)Eh,hM.

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:P={S1,,Sp}Population_Initialization()  /⁎ 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)

  • T.C.E. Cheng et al.

    A hybrid evolutionary algorithm to solve the job shop scheduling problem

    Ann Oper Res

    (2013)
  • E. Demirkol et al.

    A computational study of shifting bottleneck procedures for shop scheduling problems

    J Heuristics

    (1997)
  • Cited by (151)

    View all citing articles on Scopus
    View full text