Theory and Methodology
Constructive and composite heuristic solutions to the P//∑Ci scheduling problem

https://doi.org/10.1016/S0377-2217(00)00137-5Get rights and content

Abstract

In this paper, we study the permutation flowshop scheduling problem with the criterion of minimising the total flow time. We propose a new constructive heuristic procedure to solve the problem. This procedure is flexible in the computational effort required, as it can be adjusted to the requirements of the problem. We combine this procedure with local search methods, whose computational requirements can also be varied, to study the efficiency and effectiveness of different ways of forming composite solution methods. Computational experiments on standard benchmark problems are carried out. The results show that the new heuristic performs significantly better than previous ones and that combining constructive and search heuristics not only further improves the solution quality but also saves computation time. Discussions on the results are provided and future research is suggested.

Introduction

The flow shop is among the earliest studied machine shop environments in scheduling research. Starting from Johnson’s pioneering work (Johnson, 1954), flow shop scheduling problems have been extensively studied. The majority of flow shop research was on the problem of minimising makespan (see MacCarthy and Liu, 1993). In recent years, the scheduling problem with total flow time (or equivalently mean flow time, total completion time or mean completion time) criterion has started to draw more attention from researchers. This may be because this criterion is more relevant and meaningful for today’s dynamic production environment and directly related to important manufacturing logistics performance measures such as the work-in-process inventory level.

We study the permutation flowshop scheduling problem with total flow time criterion. This problem is often denoted as P//∑Ci in the literature (Graham et al., 1979) or n/m/P/∑Ci (an earlier version) in some papers. It can be defined as follows. n jobs {J1,J2,…,Jn} are to be processed on a series of m machines {M1,M2,…,Mm} sequentially. The processing times of Ji on Mj are given as t(i,j). Each machine can process at most one job at a time, and any job can be processed on at most one machine at any time. No pre-emption is allowed. For a given sequence or permutation of jobs, J[1],J[2],…,J[n], the completion times of the jobs on the machines can be calculated recursivelyC([i],j)=max{C([i−1],j),C([i],j−1)}+t([i],j),i=2,…,n;j=2,…,m,where C([0],j)=0 and C([i],0)=0 for relevant i and j. The flow time or completion time of a job is defined as its completion time on the last machine. The problem is to find a sequence that minimises the sum of flow times of all n jobs,Csum=i=1nC(i,m).Optimal solutions to this problem were attempted using branch and bound methods Ignall and Schrage, 1965, Bansal, 1977 and mixed integer linear programming formulations (Stafford, 1988). Szwarc (1983) analysed some properties of the problem and defined a class of efficiently solvable cases. However, owing to the NP-hardness of the problem (Lenstra et al., 1977), it is unlikely that efficient algorithms will be found that can optimally solve the general case. Therefore, more research efforts have been focused on developing and evaluating heuristic methods Gupta, 1972, Gelders and Sambandam, 1978, Miyazaki et al., 1978, Miyazaki and Nishiyama, 1980, Ho and Chang, 1991, Rajendran and Chaudhuri, 1991, Rajendran and Chaudhuri, 1992, Rajendran, 1993, Ho, 1995, Rajendran and Ziegler, 1997, Wang et al., 1997, Yamada and Reeves, 1998, Woo and Yim, 1998. Most heuristics fall into two types: constructive heuristics (e.g., Wang et al., 1997) and improvement heuristics (e.g., Ho, 1995). Rajendran and Ziegler (1997) combined a constructive heuristic with an improvement phase containing one round of insertion search. The algorithm by Woo and Yim (1998) appears to be a constructive heuristic. When selecting a job to add to the partial sequence, however, it compares every situation of inserting an unscheduled job to a position of the partial sequence. Therefore, it relies purely on huge amount of calculations in evaluating partial sequences, rather than considering the problem structure using index functions.

In this paper, we first propose a new constructive heuristic. It constructs a sequence by using an index function to select jobs and append to the partial sequence. We then combine this procedure with local search methods to study the efficiency and effectiveness of different ways of forming composite solution techniques. In the next two sections, the new constructive heuristic will be presented (Section 2) and the combined methods will be described (Section 3). Results of computational experiments on standard benchmark problems will be presented and discussed in Section 4, comparing the performances of the new heuristic and the previous ones, and comparing the performances of different composite methods. Section 5 gives conclusions.

Section snippets

The new heuristic

The proposed heuristic generates a sequence by appending the jobs one by one. We denote S as the partial sequence containing the jobs already scheduled and U as the set of the unscheduled jobs. When selecting a job from U to append to S, the heuristic uses an index function to compare the jobs in U. The index function needs to be designed carefully since the solution quality depends very much on how the index function reflects the nature of the problem.

Combining with local search

Constructive heuristics can often provide a reasonably good solution very quickly. If improved solution quality is needed and time is allowed, then one way is to apply local search algorithms with the result of the constructive heuristic as an initial solution. When using the proposed heuristic to generate initial solutions, we may choose to use different versions of the heuristic – implying different computation times and solution qualities. Starting from such an initial solution, local search

Computational experiments and discussions

To compare the performance of the constructive heuristic against the previous heuristics and to study the efficiency and effectiveness of different ways of forming composite solution methods, two sets of computational experiments have been carried out on Taillard’s benchmark problems (Taillard, 1993). The problem set contains 12 groups of problem instances, each corresponding to a different problem size. There are 10 problem instances in each group.

The effectiveness of the solution methods were

Conclusions

In this paper, we studied the permutation flowshop scheduling problem with the criterion of minimising the total flow time. A new constructive heuristic procedure has been proposed to solve the problem, which can be adjusted to take more or less computation time depending on the need. This procedure was then combined with local search methods, which can also be selected to take different computation efforts, and the efficiency and effectiveness of different ways of forming composite solution

References (26)

  • S.P Bansal

    Minimizing the sum of completion times of n-jobs over M-machines in a flowshop – a branch and bound approach

    AIIE Transactions

    (1977)
  • L.F Gelders et al.

    Four simple heuristics for scheduling a flow-shop

    International Journal of Production Research

    (1978)
  • R.L Graham et al.

    Optimisation and approximation in deterministic sequencing and scheduling: A survey

    Annals of Operations Research

    (1979)
  • Cited by (200)

    View all citing articles on Scopus
    View full text