Advances in Operations Research

Volume 2015 (2015), Article ID 124258, 12 pages

http://dx.doi.org/10.1155/2015/124258

## Scheduling Jobs Families with Learning Effect on the Setup

^{1}Department of Industrial and Mechanical Engineering, University of Catania, Viale A. Doria 6, 95126 Catania, Italy^{2}Department of Electrical Electronic Information Engineering, University of Catania, Viale A. Doria 6, 95126 Catania, Italy

Received 30 September 2014; Revised 29 December 2014; Accepted 10 January 2015

Academic Editor: Konstantina Skouri

Copyright © 2015 Sergio Fichera et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

The present paper aims to address the flow-shop sequence-dependent group scheduling problem with learning effect (FSDGSLE). The objective function to be minimized is the total completion time, that is, the makespan. The workers are required to carry out manually the set-up operations on each group to be loaded on the generic machine. The operators skills improve over time due to the learning effects; therefore the set-up time of a group under learning effect decreases depending on the order the group is worked in. In order to effectively cope with the issue at hand, a mathematical model and a hybrid metaheuristic procedure integrating features from genetic algorithms (GA) have been developed. A well-known problem benchmark risen from literature, made by two-, three- and six-machine instances, has been taken as reference for assessing performances of such approach against the two most recent algorithms presented by literature on the FSDGS issue. The obtained results, also supported by a properly developed ANOVA analysis, demonstrate the superiority of the proposed hybrid metaheuristic in tackling the FSDGSLE problem under investigation.

#### 1. Introduction

Scheduling problems have received extensive attention since the middle of the last century. One of the basic assumptions of the classic scheduling theory is that job descriptors like processing times and setup times are a priori known and do not change during the time horizon. Nowadays, due to the availability of computational resources, it is possible to consider a more realistic situation where such descriptors may vary due to the learning effect. In fact, the workers improve their performance by repeating the provided operations and, as a result, processing or/and set-up times of a job may be reduced if it is scheduled later in the sequence.

The first studies about learning effect had been developed by Wright [1] and Biskup [2]. They stated that the production time of a job under learning effect decreases depending on the order the job is worked in. The corresponding learning effect model, which computes the processing time of job when it is scheduled in the position, is defined as where is the normal processing time of job and is the learning index, which is a function of the learning rate . The processing time needed decreases by the number of repetitions, meaning that learning is primarily based on the repetition of a task, such as machine setup.

In alternative to the above position based learning model, Kuo and Yang [3] proposed a sum-of-processing-time based learning model which is time dependent: Starting from these two fundamental models, some authors proposed other learning models that are a modification of the above models or a combination of those. Cheng et al. [4] proposed model of learning effects in which the actual processing time of a job is a function of the total normal processing times of the jobs already processed and of the job’s scheduled position. Yin et al. [5] developed a general learning effects model where the actual processing time of a job is not only a function of the total normal processing times of the jobs already processed, but also a function of the job’s scheduled position. Soroush [6] considers a single machine scheduling problem with general past-sequence-dependent setup time and log-linear learning in which the setup times and learning effects are job-dependent.

Biskup [7] reviews extensively the literature on scheduling problems that considers the two types of learning effects.

The learning effect has been widely applied on the single machine scheduling problems. Recently, Lee [8] proposed a model where the setup time is past-sequence-dependent, and the actual job processing time is a general function of the processing times of the jobs, already processed, and its scheduled position. Costa et al. [9] consider the single machine total weighted completion time scheduling problem. The jobs have nonzero release time and processing time increases during the production due to the effect of deterioration on the machine. The setup time and the removal time are influenced by the ability of the worker, which depends on work experience and learning capacity: Zhang [10] studied a single machine model where the jobs are grouped in families and the learning effect influences both processing time of the jobs and set-up time of the groups.

Some authors applied the principle of learning effect to other manufacturing models. Vahedi-Nouri et al. [11] investigated a nonpermutation flow shop scheduling problem with the objective of minimizing the total flow time. Each job has nonzero release time and the processing time depends on its position in the sequence, because of the learning effect. Liu [12] studied the scheduling problems of jobs on identical parallels machines where delivery times are past-sequence-dependent and the learning effect on processing times is considered. Sun et al. [13] studied a permutation flow shop scheduling, where the actual processing time of a job is defined by a general nonincreasing function of its scheduled position. To solve this problem, several algorithms derived from the corresponding single machine scheduling problem are presented.

To the best of our knowledge, the learning effect has not been investigated so far in the context of flow shop where the jobs are grouped in families. This scheduling problem is known as flow-shop group scheduling (FSGS) problem. A set of jobs has to be processed through serial machines arranged in a flow-shop layout. According to group technology (GT) manufacturing principles, the whole set of jobs to be worked may be partitioned into smaller subsets, called groups or families, made by jobs sharing the same technological requirements in terms of tooling and setups. A major setup is required when switching from one family to another, whilst the setup time between jobs belonging to the same family either is assumed to be negligible or it can be included along with the run time. The solution to the problem is represented by the permutation of the jobs of each family and the permutation order of the groups. In a more realistic context as printed circuit board (PCBs) manufacturing [14, 15] or automotive sector [16] the set-up time depends on the sequence of the group in the schedule, and this problem is addressed as flow-shop sequence-dependent group scheduling (FSDGS).

The FSDGS problem has been taken into consideration by a significant number of researchers: Zhu and Wilhelm [17] proposed a complete review. Salmasi et al. [18] presented hybrid ant colony optimization (HACO) algorithm for minimizing makespan in a flow-shop sequence-dependent group scheduling problem. Hajinejad et al. [19] proposed a hybrid particle swarm optimization (PSO) algorithm that outperforms the HACO proposed by Salmasi et al. [18]. Recently, Naderi and Salmasi [20] proposed two different MILP formulations, together with a metaheuristic technique hybridising genetic and simulated annealing algorithm, called GSA, to cope with the FSDGS issue under the total completion time minimization viewpoint.

The aim of this paper is to propose the flow-shop sequence-dependent group scheduling problem with learning effect (FSDGSLE). The objective function to be minimized is the total completion time, that is, the makespan. In this scheduling problem the workers are required to manually carry out the set-up operations on each group to be loaded on the generic machine. An anticipatory set-up is assumed; that is, the set-up of each group can be started by a worker even though the first job of the group is not yet available on the machine to be set-up. The workers are not a critical resource: that is, a worker from the crew is always available to perform a set-up activity on a machine, thus preventing machine starvation and consequent delays in the makespan. The ability of operators increases over time due to the learning effect; therefore the set-up time of a group under learning effect decreases according to the order the group is worked in. The jobs processing time does not change because they are automatically worked on every machine of the flow shop. A new mathematical model for this problem and an efficient heuristic algorithm to solve also large-sized problems are proposed.

The remainder of the paper is organized as follows: Section 2 presents the mixed integer programming mathematical model for the proposed FSDGSLE problem. Section 3 describes the proposed heuristic algorithm based on the evolutionary principle. Section 4 deals with an extensive comparison between the proposed optimization procedure and other two algorithms in the field of FSDGS problems. Finally, Section 5 concludes the paper.

#### 2. The FSDGSLE Mathematical Model

The proposed mathematical model integrates the learning effect on the group setup time with the flow-shop sequence-dependent group scheduling problem (FSDGS) by means of a mixed integer linear programming (MILP) approach. According to the formalization proposed in Pinedo [15], this problem can be denoted as: , , , , where indicates a flow-shop with machines, indicates that the jobs are assigned to different groups, means that the set-up of each group is sequence-dependent, refers to a permutation type process (i.e., all the jobs and the groups are processed by respecting the same order on each machine), and means that the setup time depends on the position of the group in the sequence order of the groups, while , that is, the makespan, is the objective to be minimized.

The following notation has been adopted where a slot is a position of the sequence of groups that should be occupied just by a single group; that is, each group should be assigned to one slot.

*Indices/Parameters* : number of machines, : number of groups, : indexes of groups, : number of jobs in group , : index of group slots, : index of jobs in group , : index of job slots in group , : index of machines, : processing time of job of group on machine , : setup time of group preceded by group on machine , : learning index, : a big number.

*Binary Variables*. Consider
*Continuous Variables* : completion time of job processed in slot of group on machine , : starting time of group on machine , : finishing time of group on machine , : makespan.

*Objective*. Consider
subject to
Constraints (5), (6), and (7) ensure that each group is assigned to only one slot, being preceded by one and only one group and preceding one other group at most. Constraint (8) states that if group is assigned to slot , being , there must be a group preceded by group . Constraints (9) and (10) ensure that each job of a given group is assigned to one only slot and that each slot does not hold more than one job. Constraint (11) defines the starting time of each group on the basis of the finishing time of the previous one. Constraint (12) ensures that the first job of each group starts after the starting point of the group. Constraint (13) forces each job to be processed after the previous job of the same group is finished. Constraint (14) states that each job must be processed after it is concluded on the previous machine. Constraint (15) links the finishing time of the group to the completion time of the last job processed in the group itself. Constraint (16) forces the finishing time of dummy group 0 to be null. Constraint (17) defines the makespan.

#### 3. The Proposed Genetic Hybrid Algorithm

The FSDGSLE problem is -hard and the exact solution of the mathematical model can be reached for problems with a limited number of groups. For this reason a metaheuristic algorithm based on evolutionary principle has been proposed. Starting from a genetic algorithm properly adapted to a group scheduling problem, the proposed genetic hybrid algorithm aims to enhance the efficiency of the genetic procedure by embedding a local search algorithm.

Generally, a genetic algorithm works with a set of problem solutions called* population*. At every iteration, a new population is generated from the previous one by means of two operators,* crossover* and* mutation*, applied to solutions (*chromosomes*) selected on the basis of their* fitness*, that is, the objective function value; thus, best solutions have greater chances of being selected. Crossover operator generates new solutions (*offspring*) by coalescing the structures of a couple of existing ones (*parents*), while mutation operator brings a change into the scheme of selected chromosomes, with the aim of avoiding that the procedure remains trapped in the local optima. The algorithm proceeds by evolving the population through successive* generations*, until a given stopping criterion is reached.

Whenever a real problem should be addressed through an evolutionary algorithm, the choice of a proper* encoding* scheme (i.e., the way a solution is represented by a string of* genes*) plays a key role under both the quality of solutions and the computational burden viewpoints [21]. In addition, a valid* decoding* procedure able to transform a given string into a feasible solution should be provided.

The following subsections provide a detailed description of the proposed GA-based optimization procedure, named GHA.

##### 3.1. Problem Encoding

Problem encoding is the way a given problem to be optimized through a metaheuristic procedure can be represented by means of a numerical chromosome. With reference to the proposed GHA, a matrix-encoding scheme has been employed. Following the same notation adopted in Section 2 and indicating by the number of jobs within each group (), each solution is described by a matrix, being . The first rows are made by the permutation vectors indicating the sequence of jobs within each group , while the last row is the permutation vector Ω representing the sequence of groups to be processed:
Each row () of the partitioned matrix codes a specific schedule concerning the problem in hand and it is worth pointing out that it is independent from the other sequences; hereinafter it will be denoted as a* subchromosome*. Thus, a certain subchromosome corresponds to the sequence of jobs scheduled within group ; subchromosome identifies the sequence Ω of groups. For the sake of clarity, a feasible solution for a problem in which and could be represented by the following chromosome :
Subchromosomes from 1 to 5 hold the schedules of jobs within each group (i.e., schedule 3-1-2 for group 1, schedule 2-5-1-4-3 for group 2, schedule 2-1 for group 3, schedule 3-4-1-2 for group 4, and schedule 1-2-3 for group 5); subchromosome fixes the sequence of groups Ω = 5-1-3-2-4. All the digits equal to zero do not take part either in the solution decoding or in the genetic evolutionary process. Once the problem encoding is defined, the fitness function of individuals pertaining to the genetic population may be computed.

##### 3.2. Crossover Operator

Through crossover operator, the genetic material of two properly selected parent chromosomes is recombined in order to generate two offspring. The selection mechanism employed by the proposed GHA is the well-known roulette wheel scheme [22], which assigns to each solution a probability of being selected inversely proportional to the makespan value. Once two parent chromosomes have been selected, each couple of subchromosomes belonging to the parent solutions is selected for crossover according to an a priori fixed probability, hereinafter called . Two methods of crossover operators have been adopted to recombine alleles within each couple of subchromosomes: they are denoted as* position based crossover* (PBC) and* two-point crossover* (TPC), respectively. Both of these two crossover operators have been largely adopted by literature within GAs applied to combinatorial problems [23]; PBC generates offspring by considering the relative order in which some alleles are positioned within the parents. Indeed, it works on a couple of subchromosomes (P1) and (P2) as follows: (1) one or more alleles are randomly selected; (2) the alleles genetic information of* parent 1* (P1) are reordered in* offspring 1* (O1) in the same order as they appear within* parent 2* (P2); (3) remaining elements are positioned in the sequence by copying directly from* parent 1* the unselected alleles. The same procedure is followed in the second parent, that is,* parent 2*, to obtain offspring (O2). Figure 1 shows the implementation of the PBC on a couple of parents where alleles in positions , , , and have been selected. As far as the TPC method is concerned, two positions are randomly selected and each subchromosome parent is divided into three blocks of alleles: both head and tail blocks are copied directly in the corresponding offspring, while the alleles belonging to the middle block are reordered within the offspring in the same order as they appear in the other parent subchromosome (see Figure 2). A “fair coin toss” probability equal to 0.5 has been chosen for selecting either PBC or TPC crossover.