^{1}

^{2}

^{2}

^{*}

The
*m*-machine no-wait flowshop scheduling problem is addressed where setup times are treated as separate from processing times. The objective is to minimize total tardiness. Different dispatching rules have been investigated and three were found to be superior. Two heuristics, a simulated annealing (SA) and a genetic algorithm (GA), have been proposed by using the best performing dispatching rule as the initial solution for SA, and the three superior dispatching rules as part of the initial population for GA. Moreover, improved versions of SA and GA are proposed using an insertion algorithm. Extensive computational experiments reveal that the improved versions of SA and GA perform about 95% better than SA and GA. The improved version of GA outperforms the improved version of SA by about 3.5%.

In a no-wait flowshop environment, jobs are processed continuously from start to end without interruptions either on or between machines. Therefore, the start of a job on a given machine may be delayed to ensure that its operation completion coincides with the start of its subsequent operation on the next machine. Applications of such an environment are found in several industries; e.g., metal, plastic, chemical, and semiconductor. Ref. [

The m-machine no-wait flowshop problem has been addressed with respect to several performance measures including makespan and total completion time. For the makespan, examples of research are Refs. [

While makespan and total completion time are directly related to job completion times, other measures such as number of tardy jobs, maximum tardiness, and total tardiness are more focused on job due dates. Recent research on the latter type of measures includes Refs. [

Ref. [

For the m-machine no-wait flowshop, we assume that the set of n jobs are ready for processing at time zero. Each job

E: tardiness factor.

R: due date range factor.

d_{j}: due date of job j; which is generated using the E and R factors.

C_{j}: completion time of job j on the last machine.

T_{j}: tardiness of job j; where

P_{ij}: processing time of job j on machine i.

S_{ij}: setup time of job j on machine i.

The objective is to sequence all jobs to minimize the total tardiness.

Dispatching rules are simple heuristics for building a schedule. Their popularity is due to their ability to rapidly provide good solution in practical production settings. They are also used as initial sequences for the proposed heuristics in the next section. A number of well-known dispatching rules have been initially investigated with regard to the considered criterion. Three of the considered dispatching rules outperformed the others. The following is an explanation of the three.

Let s denote the sequence of jobs which are scheduled so far and t denote the time at which jobs need to be selected. Moreover, let C_{j}(s) denote the completion time of job j considered for scheduling (not in s yet) if it is scheduled as the last job in the sequence s.

1. Earliest due date with processing and setup times (EDDP); where jobs are sequenced in non-decreasing order of

2. Modified due date (MDD); where jobs are sequenced in non-decreasing order of

A third dispatching rule is proposed as follows:

Sequence the jobs with the minimum total tardiness of jobs based on averaging the setup and processing time for each job across all machines (TOTA), reducing it to a single machine problem. The average of the setup and processing time of each job across all machines is first determined, then the sequence is obtained by finding the optimal sequence based on the average setup and processing time for each job. The due date for TOTA is calculated by dividing the due dates associated with the m-machine by the number of machines.

When comparing the three rules of MDD, EDDP, and TOTA, it was found that (see

In the next section, we use the MDD as an initial sequence to develop an improved simulated annealing heuristic; and use the three dispatching rules MDD, TOTA, and EDDP as part of the initial generation population to develop an improved genetic algorithm heuristic.

[

The parameters of ISA and IGA have also been investigated for the separate setup time environment. Experimentations revealed that the parameter values of ISA and IGA which were found to do well in Ref. [

Parameter | Description | Tested Values | Selected Values |
---|---|---|---|

MAM | Max Accepted Moves | n/2, n, 2n, 3n, 4n | 2n |

MTM | Max Total Moves | n/2, n, 2n, 3n, 4n, 5n | 5n |

MFC | Max Freezing Counter | 2, 5, 10, 15, 20 | 10 |

FT | Freezing Temperature | 5 ,10, 20, 30, 150 | 20 |

TRF | Temperature Reduction Factor | 0.60, 0.70, 0.80, 0.80, 0.90, 0.95 | 0.90 |

AMP | Accepted Move Percentage | 0.05, 0.10, 0.15, 0.20, 0.25, 0.30, 0.35 | 0.10 |

Parameter | Description | Tested Values | Selected Values |
---|---|---|---|

POP | Population Size | n/2, n, 2n, 3n | n |

GEN | Number of Generations | n/2, n, 2n, 3n | 2n |

PC | Probability of Crossover | 0.70, 0.75, 0.80, 0.85, 0.90 | 0.75 |

PM | Probability of Mutation | 0.00, 0.01 0.02, 0.03, 0.04, 0.05, 0.10 | 0.05 |

Ref. [

In this paper, in addition to the one-block procedure used by [

Step 1: Use ISA as initial sequence s.

Step 2: Set k = 1.

Step 3: Pick the first two jobs from s and select the better with regard to total tardiness of the two permutations as the current solution.

Step 4: Set k = k + 1.

Step 5: Generate candidate sequences by selecting the next two jobs from s and inserting the two permutations of these two jobs into each position of the current solution. Among the generated candidates, the sequence with the least total tardiness value becomes the current solution.

Step 6: Go to Step 4 until all jobs in s have been considered.

For a problem with odd number of jobs, the last job to be selected will be inserted as a single job in all possible positions in the current solution.

We have investigated the one-block and two-block insertion procedures for the considered problem, the results indicated that the one-block outperforms the two-block one. The resulting two heuristics of applying the one-block insertion and exchange procedures are denoted as FISA2 and FIGA2. The same insertion is used for the FIGA2 by replacing ISA with IGA in Step 1.

In this section we conduct experiments to first study the effect of the various parameters such as E and R, and evaluate the performances of the proposed heuristics against each other. The experiments were performed on a PC running Windows 7 32-bits, with an Intel Dual Core CPU 2.26 GHz and 3 GB RAM. The data generation and testing application were developed using the C# programming language which runs on the top of Microsoft’s NET Framework 3.5.

The considered values E, R, p_{ij}, and s_{ij} are commonly used in the scheduling literature; e.g. [

of jobs are generated using the parameters E and R with a uniform distribution between

where,

The total number of all possible combinations is 1296 based on the considered values of n, m, E, R, and k; where each combination is replicated 30 times.

The performance measure used for evaluating the heuristics is the relative deviation index (RDI); calculated as follows:

Parameter | Values |
---|---|

n | 30, 40, …, 100 |

m | 5, 8, …, 20 |

E | 0.2, 0.4, 0.6 |

R | 0.2, 0.6, 1.0 |

k | 0.5, 1.0, 1.5 |

p_{ij} | Uniform (1, 100) |

s_{ij} | Uniform (1, 100 k) |

where the Heuristic Solution is the solution obtained by a given heuristic, Best Solution and Worst Solution are the best and worst solutions obtained from among the compared heuristics. The RDI produces a result between 0 and 100; where the best solution will have RDI values closest to 0.

As shown from

The m-machine no-wait flowshop scheduling problem, where setup times are considered as separate from pro- cessing times, with the objective of minimizing total tardiness has been considered. Different dispatching rules

have been proposed and three of which, MDD, EDDP, TOTA, have been found performing well. The dispatching rule MDD outperforms TOTA about 60%, which outperforms EDDP about 15%. Furthermore, a simulated annealing algorithm (ISA) and a genetic algorithm (IGA) have been proposed. It has been found that IGA outperforms ISA about 6%. Moreover, improved versions of ISA and IGA have been proposed and it has been found that improved versions outperform ISA and IGA about 95%. Of the improved versions, FIGA2 outperforms FISA2 about 3.5%.

This research was supported by Kuwait University Research Administration project number Grant No. EI01/12.