31
This article was downloaded by: [Aston University] On: 27 August 2014, At: 08:33 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK International Journal of Production Research Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/tprs20 Hybrid flowshop scheduling with batch- discrete processors and machine maintenance in time windows Hao Luo a , George Q. Huang a , Ying Feng Zhang a b & Qing Yun Dai c a Department of Industrial and Manufacturing Systems , The University of Hong Kong , Hong Kong b The State Key Laboratory for Manufacturing Systems Engineering , Xi'an Jiaotong University , PR China c Department of Information Engineering , Guangdong University of Technology , PR China Published online: 25 Mar 2010. To cite this article: Hao Luo , George Q. Huang , Ying Feng Zhang & Qing Yun Dai (2011) Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows, International Journal of Production Research, 49:6, 1575-1603, DOI: 10.1080/00207541003610262 To link to this article: http://dx.doi.org/10.1080/00207541003610262 PLEASE SCROLL DOWN FOR ARTICLE Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content. This article may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expressly forbidden. Terms &

Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

  • Upload
    qing

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

This article was downloaded by: [Aston University]On: 27 August 2014, At: 08:33Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954 Registeredoffice: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK

International Journal of ProductionResearchPublication details, including instructions for authors andsubscription information:http://www.tandfonline.com/loi/tprs20

Hybrid flowshop scheduling with batch-discrete processors and machinemaintenance in time windowsHao Luo a , George Q. Huang a , Ying Feng Zhang a b & Qing YunDai ca Department of Industrial and Manufacturing Systems , TheUniversity of Hong Kong , Hong Kongb The State Key Laboratory for Manufacturing SystemsEngineering , Xi'an Jiaotong University , PR Chinac Department of Information Engineering , Guangdong Universityof Technology , PR ChinaPublished online: 25 Mar 2010.

To cite this article: Hao Luo , George Q. Huang , Ying Feng Zhang & Qing Yun Dai (2011) Hybridflowshop scheduling with batch-discrete processors and machine maintenance in time windows,International Journal of Production Research, 49:6, 1575-1603, DOI: 10.1080/00207541003610262

To link to this article: http://dx.doi.org/10.1080/00207541003610262

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information (the“Content”) contained in the publications on our platform. However, Taylor & Francis,our agents, and our licensors make no representations or warranties whatsoever as tothe accuracy, completeness, or suitability for any purpose of the Content. Any opinionsand views expressed in this publication are the opinions and views of the authors,and are not the views of or endorsed by Taylor & Francis. The accuracy of the Contentshould not be relied upon and should be independently verified with primary sourcesof information. Taylor and Francis shall not be liable for any losses, actions, claims,proceedings, demands, costs, expenses, damages, and other liabilities whatsoever orhowsoever caused arising directly or indirectly in connection with, in relation to or arisingout of the use of the Content.

This article may be used for research, teaching, and private study purposes. Anysubstantial or systematic reproduction, redistribution, reselling, loan, sub-licensing,systematic supply, or distribution in any form to anyone is expressly forbidden. Terms &

Page 2: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 3: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

International Journal of Production ResearchVol. 49, No. 6, 15 March 2011, 1575–1603

Hybrid flowshop scheduling with batch-discrete processors

and machine maintenance in time windows

Hao Luoa, George Q. Huanga*, Ying Feng Zhangab and Qing Yun Daic

aDepartment of Industrial and Manufacturing Systems, The University of Hong Kong,Hong Kong; bThe State Key Laboratory for Manufacturing Systems Engineering,Xi’an Jiaotong University, PR China; cDepartment of Information Engineering,

Guangdong University of Technology, PR China

(Received 3 June 2009; final version received 8 January 2010)

This research considers a two-stage hybrid flowshop scheduling problem withchallenging characteristics substantiated by the complexity of the problem in acollaborating company. Multiple (three) parallel machines are involved in the firststage and only one machine in the second stage. Stage 1 parallel machines are ableto process multiple jobs simultaneously but the jobs must be sequentially setupone after another with the loading time depending on the processing time of thestage 2 machine. A blocking environment exists between the two stages with nointermediate buffer storage. In order to reduce the complexity, multiplesimultaneous jobs are grouped into batches according to their similarities.Batches can then be considered as basic units for scheduling to determine whichstage 1 machine and in what sequence batches are loaded. A genetic algorithm isused to obtain near-optimal schedules mainly by minimising the makespan.The proposed model and solution algorithm are applied to solve the problemin the collaborating company under a set of complicated rules and constraints.Comprehensive studies are conducted with real-life data. The results areconsistent with the company’s operational principles and are superior comparedwith the manual schedules.

Keywords: multistage flowshop scheduling; blocking scheduling; geneticalgorithm

1. Introduction

This paper investigates a hybrid flowshop (HFS) scheduling problem (Caricatoet al. 2007). A HFS problem is a classical flowshop consisting of a series of productionstages. Some stages may have only one machine, but at least one stage must have multiplemachines, available to perform the same operation. The flow of jobs through the HFSis unidirectional. Each job is processed by one machine in each stage and it must gothrough all stages (Linn and Zhang 1999).

Our research in HFS has been motivated by a real-life problem in a metalworkingcompany which is specialised in aluminium products. Typical products include a widerange of aluminium circular plates, quadrates and coils as raw materials for end-productmanufacturers to produce cookware, lighting and ventilation through typical operationssuch as spinning, hydroforming, and deep-drawing. Approximately 85% of the output

*Corresponding author. Email: [email protected]

ISSN 0020–7543 print/ISSN 1366–588X online

� 2011 Taylor & Francis

DOI: 10.1080/00207541003610262

http://www.informaworld.com

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 4: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

of this company is in the form of circular plates. The company is indeed the largest

aluminium circular plate producer in the world. Production processes of almost all of their

products go through the preheating stage and the rolling stage. These two stages are a

bottleneck in the workshop due to a combination of their complicated characteristics.As shown in Figure 1, the problem of scheduling the preheating and rolling stages is

a two-stage hybrid flowshop scheduling system. There are three identical preheating

furnaces in stage 1 sharing one single rolling machine in stage 2. In addition, the hybrid not

only indicates the layout of facilities but also reflects the machine type. This is a

batch-discrete system (Kim and Kim 2002) since the stage 1 preheating furnaces are batch

machines which process multiple jobs simultaneously and the stage 2 rolling machine is

a discrete machine which only handles one job at a time.The complexity of this scheduling problem has been substantiated significantly by

the following characteristics.Firstly, all jobs need to be grouped into batches before the processing. This is because

the batch machines in stage 1 can process a fixed number of multiple jobs simultaneously.

In addition, only jobs with similar processing requirements can be processed together.

For example, the jobs in one batch should have the same preheating temperature, specific

outline dimensions, and alloy types, etc. Thus, there is a round-robin discipline to guide

the job batching. The size of a job batch equals to the capacity of the batch machine.

However, the result of job grouping is not unique; a different scheme of batch organisation

could affect the efficient utilisation of resources.Secondly, the fashion of job processing is unusual. The operation of this two-stage

flowshop system can be generally divided into four steps, namely, loading, preheating,

Furnace1

Furnace 2

Furnace 3

Stage 1(Preheating)

Stage 2(Rolling)In buffer Out buffer

Batch

Job

Rolling MachineLoading a new job

Releasing a preheated job

Rolling a released job

Preheating in progress

Preheating in progress

Figure 1. Layout of the two-stage hybrid flowshop system.

1576 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 5: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

releasing and rolling. The first three steps belong to stage 1 and the last one occurs instage 2. In the first step, jobs in one batch are loaded into a stage 1 furnace one afteranother on a moving conveyor. After the whole batch is loaded completely, the furnacestarts to preheat. The preheating time of each job is known in advance. The preheatingtime of the whole batch is the maximum of the preheating time of jobs in the batch. Whenthe required preheating time is reached and meanwhile the stage 2 machine is available,the jobs can release from the furnace and start rolling on the stage 2 machine immediately.At the same time, a new job in the next batch must be loaded in the furnace to fill thevacancy. Therefore, the loading, releasing and rolling can be considered as a simultaneousprocess.

Thirdly, the special job processing fashion leads to two operation constraints thatenhance the complexity of the problem. On one hand, since the loading and rolling occursimultaneously in these two stages, the loading time of a new job in stage 1 is determinedby the finished job’s processing time in stage 2. This constraint is referred to as‘sequence-dependent setup time’ in the literature. On the other hand, there is a ‘blockenvironment’ (Hall and Sriskandarajah 1996) between these two stages. Since stage 2 hasonly one rolling machine and no intermediate buffer storage available between these twostages, when the preheating of one furnace in stage 1 is finished, the job may be blocked inthat machine if at that moment the stage 2 machine is rolling jobs released from anotherfurnace. The aim of making the scheduling is coordinating the sequence of batches tostagger the finish time of each furnace. Thus, the blocking time can be reduced andthe preheating furnaces will achieve higher utilisation.

Finally, the machine maintenance has to be conducted in a specific time window.The roller on the stage 2 rolling machine is subject to gradual wear due to high pressure,temperature and speed. There are some ‘special jobs’ which have highest requirement forsurface finishes. Before processing these special jobs, the rolling must shut down and therollers have to be serviced and polished to ensure predefined product quality. This rollermaintenance can only be arranged in a specific time window which is normally during adaytime shift when the senior engineer is on duty. Because there is only one rollingmachine in stage 2, the production at both stage 1 and stage 2 has to be suspended duringthe maintenance. Since the operation times at stage 1 are very long, it is necessaryto schedule the roller maintenance when the rolling machine is idle (i.e., stage 1 machinesare not ready to release jobs to stage 2).

Due to the challenges described above, it is difficult for planners in the company toconduct an effective production plan and schedule. Until now, the scheduling in thepreheating and rolling stages has been conducted manually by a single experiencedengineer. This is very time-consuming and depends highly on human experience.This situation becomes a huge obstacle for enhancing the enterprise competitiveness inthe long-term development, especially when this scheduling engineer is on leave.

Although the above motivating case is based on a specific company operation, it doesrepresent a class of production scheduling problems with combined characteristics ofhybrid flowshop, batch jobs, blocking, sequence-dependent setup time and time window.These factors are generally considered separately by researchers as reported in theliterature. Few research works discussed the combination of these factors in one model.The above practical problem has created a significant academic challenge to the authors.We are tasked to study this problem with the aim of formulating the problem that isconsistent with the real situation and to develop a solution that considers practicalconditions and constraints and gives good results. The practical use of scheduling

International Journal of Production Research 1577

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 6: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

technique for this type of problem is still rare as pointed out by Gupta and Stafford (2006).This research is an attempt to bridge the gap between theoretical development andindustrial practices in a hybrid flowshop scheduling problem.

In order to deal with the special characteristics in this problem, an overall methodologyhas been proposed through two steps. In the first step, a clustering algorithm is proposedto group parallel jobs into batches. In the second step, the batches are considered as aninteger scheduling problem which is solved by a proposed genetic algorithm (GA)for dispatching to each machine.

The rest of the paper is arranged as follows. Section 2 reviews the relevant literatureunder four aspects. Section 3 formulates the mathematical model. Section 4 and Section 5discuss the clustering algorithm for job grouping and genetic algorithm for batchdispatching, respectively. Section 6 analyses the results. Section 7 concludes the paper.

2. Literature review

The scheduling problem considered in this paper can be described against the literaturealong four directions. They are: (1) hybrid flowshop scheduling; (2) job groupingof batching production; (3) processing fashion and operation constraints; and (4) limitedmachine availability.

2.1 Hybrid flowshop scheduling

Hybrid flowshop scheduling is of paramount importance since this structure is verycommon in several major manufacturing sectors such as the woodworking industry(Riane et al. 1998), apparel manufacturing (Wong et al. 2001) and print manufacturing(Lin and Liao 2003). A two-stage hybrid flowshop scheduling problem is a special casewhich has only one machine on one stage and multiple parallel machines on the other stage(Gupta and Tunc 1991, Guinet et al. 1996). Although this special case seems simple in itsstructure, its solution is however challenging. Gupta (1988) demonstrated that thetwo-stage hybrid flowshop problem with minimising makespan is an NP-hard problemeven though one stage is composed of two parallel machines.

The concept of hybrid in this case also indicates the combination of batch processorsand discrete processors. Very limited references can be found in the literature forinvestigating this situation. Xuan and Tang (2007) studied a similar case in an iron andsteel manufactory. They addressed the problem of scheduling n jobs in an s-stage hybridflowshop with batch production at the last stage with the objective of minimising a givencriterion with respect to the completion time. A batch decoupling based Lagrangianrelaxation algorithm was proposed to solve the problem. The difference in our case is thatwe have multiple batching machines in the first stage.

2.2 Job grouping of batching production

When scheduling problems involve an element of batching machine or job familyproduction, jobs need to be grouped together based on some restrictions. Kim and Kim(2002), Chan and Hui (2003), and Wu et al. (2005) studied flowshop scheduling problemswith batching machine, but they only gave the conditions of creating a job batch.Tang and Huang (2007) investigated a multi-stage flowshop problem in an iron and steel

1578 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 7: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

industry. According to the features in that problem, the customer orders need to betransferred into a production batch. An integer linear programming was formulated tomeet the customers due dates and minimise setup activities, but it is a pity that in theirresearch, no details about the method of generating a production batch were given.From the literature we can see that most literature only indicates the condition of the jobgrouping or just has the assumption that job batches already exist. Very limited referenceshave been found for addressing how to create the job batches. However, in our problem,the job grouping with multiple and complicated constraints is not a straightforwardproblem.

2.3 Processing fashion and operation constraints

The fashion of job loading and releasing on the batch machine is unusual in this system.Potts and Kovalyov (2000) made a comprehensive review of scheduling with batching.Concerning the method of loading a job batch, the concept ‘burn-in’ was introduced whichindicated all jobs in a batch can be loaded into the machine together and start the processat the same time. Lee et al. (1992) studied the problem about burn-in operations. However,in our case, jobs in a batch are loaded in to the machine one after another in a scheduledsequence.

The blocking environment between two stages affects the jobs releasing from stage 1and rolling in stage 2. A scheduling problem with blocking arises in serial manufacturingprocesses where no intermediate buffer storage is available. In such situations a jobwhich has completed processing on a machine may remain there until a downstreammachine becomes available, but this prevents another job from being processed there(Hall and Sriskandarajah 1996). In our collaborating company, the immediate cause ofblocking is not lack of buffer storage but the technical requirement. In order to keep thetemperature, the released job cannot stay between two stages for a long time.

Concerning the job setup time, Cheng et al. (2000) provided a survey of flowshopscheduling with setup time. According to their analysis, the reason for‘sequence-dependent setup time’ is that part of the setup of the preceding job can beused for the next job. Lee and Pinedo (1997) proposed a three phase heuristic forminimising the sum tardiness in a parallel machines system with sequence-dependent setuptime. However, the situation in this research is distinct from previous studies. In ourtwo-stage flowshop system, the loading time of a job in stage 1 depends on the jobcurrently being processed on stage 2.

2.4 Limited machine availability

The traditional scheduling problem assumes that machines are continuously availablefor processing throughout the planning horizon. However, in real-life industry, thisavailability may not be true due to a machine breakdown (stochastic) or preventivemaintenance (deterministic). O’Donovan et al. (1999) proposed a predictable schedulingapproach which inserts additional idle time into the schedule to absorb the impactsof breakdowns. The approach was applied to minimising total tardiness on a singlemachine with stochastic machine failures. Coudert et al. (2002) considered the mainte-nance as a service which has an influence on the manufacturing schedule. They used themulti-agent paradigm to provide a framework for making production cooperate with

International Journal of Production Research 1579

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 8: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

maintenance in the schedule performance. A fuzzy logic was employed to model thetemporal degrees of freedom of these two factors.

The hybrid flowshop with availability constraints was discussed by Allaoui and Artiba(2006). The complexity analysis and the branch and bound model were given in this work.For a more comprehensive overview of the scheduling with limited machine availability,we refer readers to the surveys presented by Schmidt (2000). However, virtually noreferences exists in the literature for solving the limited machine availability problem withthe constraint of time window.

3. Problem formulation

In this problem, we schedule multiple jobs at a two-stage hybrid flowshop system.The objective is to meet a certain optimality criterion, e.g., to minimise the makespan.Following the standard classification scheme (Potts and Kovalyov 2000), this problem canbe denoted as ~F,m1 4 1jb1 4 1jCmax where the symbol ~F indicates this is a flowshopproblem with batch machines. The condition m1 4 1 represents the number of identicalparallel machines in stage 1 is more than one. The condition b1 4 1 implies that the batchsize on all machines in stage 1 is more than one. The symbol Cmax denotes the objective isminimising the completion time of the last job, namely, the makespan.

We consider the makespan as the objective because this is a sub-scheduling in the shopfloor level. Such scheduling should be conducted every three or four days. All the inputjobs are selected from a long term master scheduling. The due date of input jobs is alreadyconsidered and they have no difference in priority.

In order to solve this ~F,m1 4 1jb1 4 1jCmax problem, two assumptions are consideredas follows. The first assumption is that once the stage 2 machine starts to process ajob batch, it must finish the entire batch before turning to serve another stage 1 machine.This assumption is reasonable because all jobs in a batch have the same stage 1 completiontime. Once the first job in a batch can be released and the stage 2 machine starts to processit, other jobs in that batch also satisfy the release condition. The second assumption is thatif a batch contains special jobs which have high requirement for surface finishes,those special jobs should be arranged on the front positions in the batch. This assumptionis based on the observation that all jobs in a batch have the same processing time,and the internal sequence adjustment may not necessarily affect the batch processing time.Therefore, the stage 2 preventive machine maintenance can be conducted in an inter spaceof batches and there is no need to cut into any batches whose rolling is in process.

Based on the above two assumptions, this problem can be simplified as follows.Once jobs are grouped into batches, each batch is then considered as a scheduling unit.Therefore, the stage 2 machine can also be considered as a batch machine. Unlike theparallel batch machine in stage 1, this stage 2 machine is a serial batch machine in the sensethat each job within the same batch is processed on the machine one after another inthe same sequence as outputted from the stage 1 machine. The processing time of a batch isequal to the sum of the processing times of the jobs of the batch (Hopp and Spearman 2000).

Before formulating the mathematical model for the ~F,m1 4 1jb1 4 1jCmax problem,notation, such as indices, sets, model input parameters, and decision variables, is definedas follows:

Parameters:

Bsize batch size, the number of jobs in a batch;

1580 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 9: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

n total number of jobs;r total number of batches;m total number of machines in stage 1;j index of job, j ¼ 1, . . . , n;� index of batch, � ¼ 1, . . . , r;i index of machine in stage 1, i ¼ 1, . . . ,m;J set of all jobs, J ¼ f1, 2, . . . , ng, j 2 J;B set of all batches, B ¼ f1, 2, . . . , rg, � 2 B;I set of machines in stage one, I ¼ f1, 2, . . . ,mg, i 2 I;a index of a th job in a batch, a ¼ 1, . . . ,Bsize;k index of kth batch assigned on a stage 1 machine, k ¼ 1, 2, . . .;t index of time unit, t ¼ 1, . . . ,T;

j�a the ath job in the batch �;�ik the kth batch assigned on machine i.

Model input:

ptj processing time of job j in stage 1;PT� processing time of batch � in stage 1;rtj processing time of job j in stage 2;

RT� processing time of batch � in stage 2;CHst start time of stage 2 machine maintenance;CHd duration of stage 2 machine maintenance;

½STwin,EDwin� time window of stage 2 machine maintenance;�ijt 1, if job j is processed on stage 1 mackine i at time t; 0, otherwise;’jt 1, if job j is processed on stage 2 mackine at time t; 0, otherwise.

Decision variables:

STR� start time of batch � in stage 1;STR2� start time of batch � in stage 2;SET� setup time of batch � in stage 1;PC� completion time of batch � in stage 1;

BLK� blocking time of batch �;RC� completion time of batch � in stage 2.

Given assumptions and defined notation above, the overall solution to the problem willbe outlined. In general, the two sub-problems of this problem are solved in two steps.Firstly, individual jobs are grouped into batches under certain constraints and criteria byusing a clustering algorithm. Secondly, the job batches are considered as scheduling unitsand a genetic algorithm (GA) is applied to make two decisions, viz., assigning batches toeach machine and sequencing batches to each machine. The mathematical schedulingmodel is formulated as follows:

Minimise:

Cmax ¼ maxðRC�Þ: ð1Þ

Subject to:

PT� ¼ maxBsize

a¼1ptj�a , � 2 B, j�a 2 J, a ¼ 1, . . . ,Bsize ð2Þ

International Journal of Production Research 1581

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 10: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

RT� ¼PBsizea¼1

rtj�a , � 2 B, j�a 2 J, a ¼ 1, . . . ,Bsize ð3Þ

SET�ik ¼ RT�i,k�1 , �ik 2 B, i ¼ 1, . . . ,m, k ¼ 1, 2, . . . ð4Þ

PC� ¼ STR� þ SET� þ PT�, � 2 B ð5Þ

BLK� ¼

PBsizea¼a 0

rtj� 0a 0 ifPj2J

’j� 0a 0 , t ¼ 1 and PC� ¼ t

0, ifPj2J

’jt ¼ 0 and PC� ¼ t,

8>><>>: � 2 B, j� 0a 0 2 J, t ¼ 1, 2, . . . ,T ð6Þ

RC� ¼ PC� þ BLK� þ RT�, � 2 B ð7Þ

STR�i, kþ1 ¼ PC�ik þ BLK�ik , �ik 2 B, i ¼ 1, . . . ,m ð8Þ

CHst � STwin ð9Þ

CHstþ CHd � EDwin ð10Þ

Pj2J

’jt ¼ 1, j ¼ 1, . . . , n, t ¼ 1, . . .Tð11Þ

Pj2J

�ijt ¼ Bsize, i ¼ 1, . . . ,m, j ¼ 1, . . . , n, t ¼ STR�i1 þ SET�i1 , . . . ,Tð12Þ

In the formulation, objective (1) is the makespan, namely, the maximum stage 2

completion time of all jobs. Constraint (2) reflects that machines in stage 1 are parallel

batch machines, viz., the stage-1 processing time of a batch is the maximum of the

processing time of jobs in the batch. Constraint (3) reflects the machine in stage 2 is

considered as a serial batch machine, viz., the processing time of a batch is equal to the

sum of the processing time of all jobs it contains. Constraint (4) guarantees that the setup

time of a batch is determined by its proceeding batch’s stage 2 processing time. Constraint

(5) defines the completion time of a batch in stage 1. Constraint (6) defines the block time.

In case batch � completes its stage 1 process at time t and at that moment the stage 2

machine is processing job j� 0a 0 , the batch � has to be blocked in side the stage 1 machine to

wait until the downstream machine becomes available again. Constraint (7) defines the

completion time in stage 2. Constraint (8) ensures that there is no idle on stage 1.

Constraint (9) and Constraint (10) indicate that the machine maintenance has been

conducted in the time window. Constraint (11) guarantees that the stage 2 machine can

only process one batch at any time. Finally, Constraint (12) ensures that after the whole

batch is loaded, there are a fixed number of jobs inside the stage 1 machines and a vacancy

is not allowed.

1582 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 11: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

4. Clustering algorithm for job grouping

This section discusses how to group individual jobs into batches based on certainconstraints. A clustering algorithm is used for organising a collection of patterns intoclusters based on similarity. Typically, pattern clustering involves three steps, namely,pattern representation, definition of pattern proximity and clustering or grouping(Jain et al. 1999).

4.1 Pattern representation

The features of the job in this problem can be described by multiple attributes, such asorder number, customer, due date, temperature requirement, downstream processing, etc.However, three attributes dominate the job grouping in our collaborating company:

. Ty denotes the processing temperature. If Ty ¼ S, the stage 1 preheating is undera high temperature. If Ty ¼ L, the stage 1 preheating is under a low temperature.

. Cyc denotes the cycle type. The stage 1 processing time of a job is determined bythe cycle type (see Table 1).

. Aly defines alloy type. The engineering properties of jobs are determined by thisalloy type. There are 16 different alloy types in this company, such as 3003, 3103,1050, 4006, CM05 etc.

It is worth mentioning that an intrinsic hierarchical relationship exists between Ty andCyc. This hierarchical relationship as well as the processing time of each cycle is shown inTable 1. Since these three attributes are involved in the job grouping, it is reasonable to usea 3-dimensional vector to represent the job. Considering J ¼ f1, 2, . . . , ng as the set of jobswhich need to be grouped into batches, a job in the set is denoted as ðTyj,Cycj,Alyj Þ.

4.2 Definition of pattern proximity

According to the technical requirement in the preheating process (stage 1), there are fourprinciples to guide the job grouping. Firstly, the number of jobs in a batch is fixed. Thisnumber is equal to the capacity of a stage 1 machine (Bsize ¼ 30 in the case of the

Table 1. Processing type, cycle and corresponding processingtime.

Ty Cyc Processing time (hours)

S B 9BB 10.5BS 9C 8E 8F 8

L A 12AA 20AQ 10.5BL 22F 12

International Journal of Production Research 1583

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 12: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

collaborating company). Secondly, the jobs with different processing temperature cannotbe grouped in the same batch. Thirdly, the A, AA and C cycles cannot mix with other cycletypes in one batch. Finally, the similarity of jobs in one batch should be as high as possible.The similarity here indicates the consistency of jobs’ attributes in a batch.

Considering the practical situation, if we set a hard similarity condition that all jobs inone batch must have the same value on three attributes, it may lead to the fact that manyjobs cannot be grouped into any batches. Therefore, a release policy is designed: in casethat the high similarity cannot be satisfied, the condition of grouping can be relaxed.Meanwhile, the job grouping principles should be observed. The release bases on thefollowing order:

. High similarity: jobs in one batch have the same Ty, Cyc and Aly.

. Medium similarity: jobs in one batch have the same Ty and Cyc.

. Low similarity: jobs in one batch have the same Ty and the combination ofdifferent Cyc subject to the following constraints:(1) If Ty ¼ L, except Cyc¼AA or A, jobs with different cycles cannot be grouped

into one batch;(2) If Ty ¼ S, except Cyc¼C, jobs with different cycles can be grouped into one

batch.

Based on the job grouping principle and constraints, the proximity of two patterns jand j 0 can be defined as follows:

Sð j, j 0Þ ¼ wt � ð1� jTyj � Tyj 0 jÞ þ wc � ð1� jCycj � Cycj 0 jÞ þ wa � ð1� jAlyj � Alyj 0 jÞ,

where:

xj � xj 0�� �� ¼ 1, if xj 6¼ xj 0 , x 2 fTy,Cyc,Alyg

0, otherwise

�:

In this definition, wt, wc and wa are the weights of Ty, Cyc and Aly. According to thethree similarity conditions of the problem studied in the collaborating company, thesethree weights are set as wt ¼ 0:7, wc ¼ 0:2 and wa ¼ 0:1. Therefore, Sð j, j 0Þ ¼ 1,Sð j, j 0Þ ¼ 0:9 and Sð j, j 0Þ ¼ 0:7 correspond to the three similarity levels, respectively.

4.3 Job clustering for creating batches

According to the principle and constraints of job grouping, a multilayer clustering tree hasbeen constructed to implement the job clustering. As shown in Figure 2, this tree consistsof three levels which correspond to the three job attributes. Each ‘�’ on the intersectiondenotes one possible value of an attribute. Each branch can be considered as a cluster andsome clusters can be continually divided into sub clusters. The similarity of clusters isincreasing from the top to the bottom. There are three separating lines which correspondto three similarity levels.

Based on this clustering tree, the job grouping can be implemented by the followingsteps:

Step 1: All individual jobs will be divided into clusters at the bottom of the tree. Eachcluster has the highest degree of similarity (Sð j, j 0Þ ¼ 1). If the number of jobs in eachcluster is equal to or more than Bsize (Bsize¼ 30 in the case of the collaborating company),

1584 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 13: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

every 30 jobs on the branch will be drawn out to generate a batch. If there are remainingjobs in the clusters, go to Step 2.

Step 2: Combine the remaining jobs from Step 1 and go to the upper clusters through thebranches of the tree. Check the clusters which intersect with the medium-similarityseparating line which Sð j, j 0Þ ¼ 0:9; if the number of jobs in each cluster is equal to ormore than Bsize (Bsize¼ 30 in the case of the collaborating company), every 30 jobs on thebranch will be drawn out to generate a batch. If there are remaining jobs, go to Step 3.

Step 3: Combine the remaining jobs from Step 2 and go up to the upper clusters throughthe branches of the tree. Check the clusters which intersect with the low-similarityseparating line which Sð j, j 0Þ ¼ 0:7; if the number of jobs in each cluster is equal to ormore than Bsize (Bsize¼ 30 in the case of the collaborating company), every 30 jobs on thebranch will be drawn out to generate a batch. If there are remaining jobs, go to Step 4.

Step 4: If there are jobs that still cannot be grouped into any batches after the abovethree steps, those jobs will be arranged to join the next round of scheduling.

5. Genetic algorithm for batch dispatching

According to the proposed overall solution, the batches generated by the job clusteringalgorithm are considered as units and they are dispatched to each stage 1 machine.The batch dispatching involves: assigning batches to each stage 1 machine and determiningthe sequence of batches on each machine. It is well-known that the two-stage hybridflowshop problem with minimising makespan is an NP-hard problem (Gupta 1988). Onlysmall size problem instances can be solved exactly. In addition, the collaborating companyrequires a quick and good solution in the real-life production. These requirements lead us

Figure 2. Clustering tree and division line.

International Journal of Production Research 1585

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 14: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

to consider using a heuristic algorithm to obtain approximate but adequately good, if not

optimal, solutions. Considering the success of the genetic algorithm (GA) developed for

flowshop scheduling problems (Caraffa et al. 2001, Cochran et al. 2003, Zhang et al. 2003,

Iyer and Saxena 2004), we choose this method to solve the batch dispatching problem.Genetic algorithms are iterative stochastic algorithms in which natural evolution is

used to model the search process. The general procedures of GA consist of initialisation,

encoding, decoding, evaluation and reproduction. Figure 3 shows the flowchart of the GA

proposed in this study. Note that two decoding schemes are developed to tackle the

normal case and the special job case.

5.1 Encoding and initialisation

The input of this dispatching problem is job batches. It is logical to use the natural number

encoding scheme. For instance, there are five candidate batches (gx, x ¼ 1, 2, . . . , 5), a

solution can be represented as g1, g2, g3, g5, g4. This string of batches is called a

chromosome in GA.The initial population consists of some chromosomes. The number of chromosomes is

denoted as population size (Pop) which should be kept constant in all of the generations.

Figure 3. The flowchart of proposed GA.

1586 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 15: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

5.2 Decoding

Decoding is the major challenge in this proposed genetic algorithm. Through the decodingscheme, chromosomes (batch ID strings) will be translated to a full schedule which can beevaluated by fitness. All constraints have to be considered concurrently during thisdecoding. In addition, the machine maintenance in specific time windows enhancesthe complexity significantly. Therefore, we develop two decoding schemes, viz., normalbatch decoding and special batch decoding, to deal with these two situations, respectively.

5.2.1 Normal batch decoding scheme

In the general GA application in flowshop problems, the list scheduling algorithm (LSA) iscommonly employed (Oguz and Ercan 2005) as the decoding scheme. Here we adopt theprinciple of LSA and propose a modified list scheduling algorithm (MLSA) to tackle theblocking environment and sequence-dependent setup time in this problem (see Figure 4).We iteratively assign batches to the first available machine based on a list obtained from aGA chromosome. Then, the list on the second stage can be determined according to thejobs’ stage 1 completion times and the constraints of batch assignment.

According to the real-life situation, a new schedule should be based on the last roundof the schedule. Therefore the last batches remaining on stage 1 machines, namely, theinitial status of stage 1 machines are considered as one input of the new schedule.The batch sequence obtained from a GA chromosome is preserved by iteratively assigningbatches to stage 1 machines. After executing the loop, the assignment and the sequenceof batches are recorded in �ik. Since all batches have to be processed on one machine instage 2, the sequence on that machine can be determined by the stage 2 start times which isobtained in step (4) in Figure 4.

5.2.2 Special batch decoding scheme

In the real-life production process, some special jobs have highest requirement for surfacefinishes. In case a batch contains such special jobs, the maintenance on the stage 2 machinehas to be conducted during a specific time window before processing that batch. If we stilluse the random permutation to create a chromosome in the GA initialisation, it is hard toguarantee that the maintenance can be exactly located in the time windows. In otherwords, random permutation may create many infeasible solutions. Therefore, we proposethe special batch decoding scheme to deal with this situation (see Figure 5).

The main idea of this decoding scheme is applying the manual intervention into therandom permutation to repair the chromosomes and guarantee the feasibility of solutions.We first temporarily eliminate the special batch from the candidates and obtain a normalchromosome. Then we insert the special batch into each slot on the chromosome and thenconduct the MLSA to check whether stage 2 machine maintenance can be located inthe time window. If yes, we fix the insert position of the special batch and obtain a feasiblesolution; if no, we try to insert the special batch into the next slot. In case all of the slots onthe chromosome are tried and the time window constraint still cannot be satisfied, then weabandon this chromosome and create another one.

In order to illustrate the decoding scheme, we use a numerical example and a‘batch dispatching Gantt chart’ (as shown in Figure 6) to explain how a full scheduleis obtained from the decoding scheme. Suppose there are seven candidate batches

International Journal of Production Research 1587

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 16: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

(including one special batch). The initial status and the processing time of two stages of allcandidate batches are given in Table 2 and Table 3.

The chromosome obtained from GA is ð g5, g1, g4, g3, g2, g6Þ and the special batch is gsp.The time window of machine maintenance is from 8:00 to 15:00. The duration of machinemaintenance is 260minutes. Based on the initial status, the first available machine in stage1 which can be assigned with a new batch is furnace 1. According to the MLSA and specialbatch decoding scheme, a full schedule is obtained and represented with the batchdispatching Gantt chart shown in Figure 6.

The y-axis indicates the three machines in stage 1 and the x-axis represents the timeline.As shown in this Gantt chart, batches g5, gsp and g6 are assigned on furnace 1. Batches g1,

Figure 4. Modified list scheduling algorithm (MLSA) for normal batch decoding.

1588 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 17: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

g3, and g2 are assigned on furnace 2. Furnace 3 processes batch g4. The machine

maintenance is arranged in the time window on the second day. The makespan is

4713minutes. The processing of all jobs is completed at 6:33 a.m. on the third day.

5.3 Fitness

The fitness of an individual is defined as the maximal stage 2 completion time of all

batches. This fitness is equal to the objective function of this problem and all decoded

individuals will be evaluated by this fitness function:

f ðxÞ ¼ CmaxðxÞ ¼ maxðRC�b Þ:

Figure 5. Special batch decoding scheme.

International Journal of Production Research 1589

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 18: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

5.4 Genetic operators

In this section, three genetic operators, namely, selection, crossover and mutation arediscussed, respectively. The selection operator selects high fit individuals to form a matingpool. Crossover and mutation operators reproduce individuals to generate a newpopulation.

1,0β1,1β

1, 0SET β 1, 0PT β 1, 0BLKβ 1, 0RTβ 1, 1( )SET β 1, 1PT β 1, 1RT β

3,0β

5g

1g

Spg

4g

3g 2g

6g

CHd

1, 0STRβ 1, 0PCβ 1, 0RCβ 1, 1STRβ 1, 1PCβ 1, 1RCβ

2,0β

Figure 6. Batch dispatching Gantt chart.

Table 2. Initial status of machines in stage 1.

Machine STR (min.) SET (min.) PT (min.) RT (min.)

�1,0 0 340 420 330�2,0 340 330 555 257�3,0 670 288 997 350

1590 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 19: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

5.4.1 Selection

The aim of selection is to keep good individuals and eliminate bad ones. The selection isbased on the fitness value of individuals. In this research, we perform the selection by usingthe roulette wheel method (Michalewicz 1996). Suppose there are Pop individuals in themating pool, the roulette wheel selection is conducted as follows:

Step 1: Let 1=f ðxÞ denote the fitness value, that is maxRT of individual x and calculatethe probability of a selection px for each individual x, x ¼ 1, 2, . . . , pop:

px ¼f ðxÞPpop�1

x¼1 f ðxÞ:

Step 2: Calculate the cumulative probability qx for each individualx, x ¼ 1, 2, . . . , pop� 1:

qx ¼Xxh¼1

ph:

Step 3: Generate a random number r from 0, 1ð �. If r5 qx, select the first individual;otherwise select the xth individual ð2 � x � pop� 1Þ such that qx�1 5 r5 qx.

Step 4: Repeat Steps 2 to 3 until pop� 1 individuals are selected.

5.4.2 Crossover

The aim of the crossover operator is to take the best features of each parent and mixing theremaining features in forming the offspring. In this research we use the partially matchedcrossover (PMX), which is a good performing crossover operator for scheduling problemsas reported in literature (Goldgerg and Lingle 1985). In the PMX, since illegal offspringmay be produced during the crossover, a repair mechanism is introduced. The proceduresof PMX are listed as follows:

Input: two parents randomly selected from current population.

Step 1: Randomly select two positions on the parents. The sub-chromosome between twopoints is called a mapping section.

Step 2: Exchange two sub-chromosomes between two parents.

Table 3. Processing time of candidate batches in twostages.

Batch PT (min.) RT (min.)

g1 555 340g2 678 236g3 452 267g4 1593 267g5 350 330g6 555 267gsp 1255 267

International Journal of Production Research 1591

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 20: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

Step 3: Determine the mapping relationship between two mapping sections, namely, mapeach gene in one mapping section with the corresponding gene in another mapping section

which is on the same position.

Step 4: Repair the offspring by replacing the replicated gene outside the mapping sectionaccording to the mapping relationship.

Suppose two parents are (1, 2, 3, 4, 5, 6, 7, 8) and (2, 5, 4, 6, 7, 1, 3, 8), an example is given

in Figure 7 to show the work of PMX.

5.4.3 Mutation

The aim of the mutation operator is to introduce variations into individuals. Meanwhile

more solution space could be explored and the chance of dropping in the local optimumcould be reduced. Here we introduce two mutation operators, insertion (INS) and swap(SWP), which are very commonly used in the literature (Michalewicz 1996, Gen and Cheng

1997). These two mutation operators are randomly applied in the implementation.

INS: insertion mutation randomly selects a gene from the individual andinserts it back to a random position.

SWP: swap mutation randomly selects two genes from the individual andthen exchanges their positions.

Assume we have an individual (1, 2, 3, 4, 5, 6, 7, 8), examples of two mutation operatorsare given in Figure 8.

1 2 3 4 5 6 7 8

2 5 4 6 7 1 3 8

1 2

3 4 5 6

7 8

2 5 3 8

4 6 7 1

3 2

3 4 5 6

5 8

2 7 1 8

4 6 7 1

Step 1 Select mapping sections

Step 2 Exchange

Step 3 Determine the mapping relationship

Step 4 Repair

6 1 4 3 57

Figure 7. Example of crossover.

1592 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 21: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

6. Analysis of results

The proposed job clustering algorithm and the genetic algorithm were implemented andapplied in our collaborating company based on the data in real-life production. Thissection contains three aspects about the analysis of scheduling results. They are impacts ofparameters of genetic algorithm on the computational results, sensitive analysis of timewindows, and comparison of GA results with existing manual schedules.

6.1 Genetic parameterisation

It is well known that the efficiency of a GA highly depends on the selection of controlparameters (Davis 1991). As we know, these control parameters include population size(Pop), crossover rate (Cr), mutation rate (Mr) and generation (Gen). The question here iswhat levels should be used for these GA parameters when solving problems of differentsizes. Based on the investigation of throughput and scheduling cycle, the problem size fromseven batches to 12 batches can cover most common situations in practical production.

The stop criterion is an important parameter which determines when the iterationshould stop. Following the idea of Oguz and Ercan (2005), we adopt the Gen as the stopcriterion. The most important thing is to determine a creation number of Gen which canguarantee the convergence of all instances. According to experiments, the larger problemsize needs more generations to make the search process converge. Therefore, we just needto choose a creation number of Gen which can guarantee the convergence of the largestproblem size (12 batches in the case of the collaborating company) as the stop criterion.This criterion must accommodate other small-sized problems.

1 2 3 4 5 6 7 8

INS

Parent

Offspring

Select Insert

1 2 3 5 6 7 84

1 2 3 4 5 6 7 8

SWP

Parent

Offspring

Swap Swap

1 2 6 4 5 3 7 8

Figure 8. Examples of mutation operator.

International Journal of Production Research 1593

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 22: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

As shown in Figure 9, for 12 batches, different population sizes are tested. All of them

converge with a generation between 40 and 55 generations. Therefore, it is adequate to set

Gen¼ 100 as the stop criterion in this research.Let us now balance the relationships between GA parameters and problem size.

In general, GA parameterisation, the best combination of Pop, Cr andMr can be obtained

by the design of experiment (DOE) and the following conclusions can be found in the

literature. Firstly, the interaction between Pop and Cr/Mr is small and Pop usually has

much higher influence than the other two factors. Secondly, the effect of Pop on the search

result is explicit: large Pop can achieve a better solution but more computational time has

occurred (Caraffa et al. 2001, Iyer and Saxena 2004). The reason is that when the

population size is small, only a few individuals can be explored in the solution space,

thus the search process may trap into a local optimum very rapidly. This phenomenon,

know as ‘premature convergence’, can be avoided by using a larger population size.

However, when the population size reaches a certain level, the larger population cannot

help the search process to achieve a better result. We call it Critical Pop. Each problem size

has a specific Critical Pop. Therefore, in contrast with considering population size as a

DOE factor and obtain the foreseeable conclusion that a large population is good, to find

the Critical Pop for each normal problem size has a much higher degree of guiding

significance in real-life production.Here we propose the problem size-adaptive parameterisation. Firstly, we determine the

best combination of Mr and Cr for each problem size by conducting a two-factor DOE.

There are three levels of each factor, namely, Cr¼ 1.0, 0.8, 0.6 and Mr¼ 0.001, 0.01, 0.1.

These levels are concluded to be reasonable for flowshop environments reported in the

literature (Chen et al. 1995, Caraffa et al. 2001, Iyer and Saxena 2004). The experimental

layout is full-factorial nine rounds of tests with all different combinations of two factors.

Fifty replications are made for each test. Then the best combination ofMr and Cr for each

problem size is obtained (see Table 2).

Figure 9. Convergence of 12-batch problem.

1594 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 23: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

Secondly, we employ the best combination of Mr and Cr obtained in the last step andchange Pop from 10 to 1000 (total 19 tests) to find the Critical Pop for each problem size.In order to remove the bias of the starting sequence, 10 randomly produced initial startingsequences are applied in each test.

Figure 10 shows the variation of minimum makespans with increasing Pop. For eachproblem size (eight to 12 batches), theMr and Cr are set to be the best combination and 19instances with different Pop are tested. For each instance the stopping criterion isGen¼ 100 and the minimum makespan is obtained after the search process converges(the convergence is defined as that no better result can be found after 50 generations).

As shown in Figure 10, the curve linked with minimum makespans of each Pop revealsthe Critical Pop clearly. When the problem size is small (8-batch problem), a line withoutvariety indicates that a small Pop (Pop¼ 10) can guarantee the optimum result. Thus,Pop¼ 10 is the critical population size of 8-batch problem. From the later figures we cansee that the Critical Pop increases with the extension of problem size. In the 9-batchproblem, Pop¼ 60 is enough; in the 11-batch problem the Critical Pop increases to 800.

Figure 10. Minimum makespan of 19 instants (Pop¼ 10 to 1000).

International Journal of Production Research 1595

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 24: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

However, when the problem size comes to 12 batches, we cannot see an obvious Critical

Pop. The reason is that the solution space of the 12-batch problem is extremely large andthe searching is limited even if the Pop is set to the maximum (Pop¼ 1000). Considering

the efficiency in practice, for the problems larger than 12 batches, we do not increase the

population size to pursue the global optimum. So, we just use Pop¼ 1000 and obtain agood solution in an acceptable time.

Finally, based on the above discussion, a set of problem size-adaptive genetic

parameters are summarised in Table 4. Note that when the problem size is smaller than

eight batches, the solution space is so limited that we can just enumerate all possiblesolutions to obtain the optimal result.

6.2 Sensitive analysis of time window

As mentioned previously, before processing a special job, maintenance on the stage 2machine has to be conducted in a specific time window. At present, the duration of this

maintenance is predictable (about 210minutes) but the setting of the time window still

relies on experience.Here we consider the period and the range of time window as two parameters and

analyse their influence on the results. The analysis of period indicates that we fix the width

of the time window and shift the window on the time axis with different start times.

The analysis of range means that the start time of the time window is fixed but the width ofthe window is variable. In a real-life situation, the setting of these two parameters must

observe the scheduling of the senior engineer who supervises the machine maintenance.

A tight time window is helpful to personnel placement since the maintenance engineer canbe appointed with a precise period of time. However, if the time window is too narrow, the

results of scheduling will be affected significantly.According to the proposed genetic algorithm for dealing with the special batch, for

each candidate solution, we try to insert the special batch into possible slots so that themaintenance can be located in the time window. However, it is not true that all

the candidate solutions have such a feasible slot to insert a special batch, especially when

the time window is narrow. Therefore, we define the FR to indicate the success rate ofcreating a feasible solution under a certain time window:

FR ¼feasible solutions

candidate solutions� 100%:

Table 4. Problem size-adaptive genetic parameters.

Problem size Cr Mr Pop

�7 Enumeration

8 1.0 0.1 109 1.0 0.1 6010 1.0 0.1 20011 0.8 0.1 800�12 0.8 0.1 1000

1596 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 25: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

In our sensitive analysis, the FR and the makespan are considered as output of the

model. We select a set of real-life production data (237 normal jobs and three special jobs)

and investigate how the variation of these two selected output parameters can be

apportioned to variation of the period and the range of time windows.In order to analyse the influence of the time window period, we use 12 different start

points (from 0:00 to 22:00) and three experiments (time window ranges are 10 hours, 8

hours and 6 hours) are conducted. In order to remove the bias of the starting sequence, 10

randomly produced initial starting sequences are applied in each experiment. For each

experiment, the range of time window is fixed. As we can see from Figure 11 the FR and

the makespan have no obvious variation with shifting the time window on the time axis.

That means the period of the time window has no influence on the scheduling result.

However, the results of three experiments with different time window ranges have

significant distinction; and then, we will analyse the influence of time window range.In the experiment of the time window range, we set 8:00 a.m. as the fixed start point of

the time window and increase the range of the time window from 220minutes to

710minutes. In order to remove the bias of the starting sequence, 10 randomly produced

initial starting sequences are applied in each experiment. As shown in Figure 12, when the

time window is too narrow (5310minutes), there is no chance to arrange maintenance in

the time window, namely, no feasible solution can be generated. As the time window range

increases, the rate of creating a feasible solution grows. Meanwhile, the makespan is

decreasing. This is because the wide time window can provide more possible points to

insert machine maintenance and more feasible solutions created can help the GA to obtain

Figure 12. Variation of FR and makespan with different time window range.

Figure 11. Variation of FR and makespan with different time window period.

International Journal of Production Research 1597

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 26: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

much better solutions. When the time window range increases to 560minutes or higher, the

FR reaches 100%. That means every randomly generated candidate can find anappropriate position to insert the maintenance. The results also reveal that nobetter makespan can be found when the time window range reaches 560minutes.

In other words, the optimal solution can only be obtained in a sufficiently wide timewindow.

6.3 Comparison between system results and manual schedules

In order to verify the proposed scheduling solution, a parallel comparison has beenconducted by using 20 days real-life production input data. The results are analysed in

terms of the correctness of job clustering and efficiency of batch dispatching. The mainpurpose of the former is to examine whether the individual jobs can be clustered into

batches without disobeying any grouping constraints. For the latter, we put emphases onthe performance of reducing makespan and improving machine efficiency.

6.3.1 Comparison of job clustering

In order to conduct a quantitative comparison and give a comprehensive analysis for the

performance of job clustering, the following criteria are defined:

. SRC denotes the success rate of clustering. SRC indicates the capability of the jobclustering algorithm to create batches. Since the input jobs come from the

practical batches, this implies at least one solution exists to group all the givenjobs into batches. If all jobs can be grouped successfully, the SRC will be 100%:

SRC ¼OutputBatches� Bsize

InputJobs� 100%:

. PT denotes the total preheating time. The batch’s preheating time is the maximumof the preheating time of jobs in the batch:

PT� ¼ maxBsize

a¼1ptj�a :

. BE denotes the batch efficiency. Once jobs with different processing times aregrouped into one batch, it is inevitable that some jobs will be processed longerthan the required time. Thus, we define the BE to indicate the rate of jobs without

postponement in a batch:

BE ¼ 1�PT� � Bsize�

PBsizea¼1 ptj�aPBsize

a¼1 ptj�a

!� 100%:

As shown in Table 5, in this comparison, all 1070 input jobs are successfully groupedinto 57 batches. The SRC is 100%. Concerning the batch efficiency, for some

homogeneous batches which consist of only one or two job cycles, the proposed clusteringalgorithm can produce the same result with a manual solution. For those

1598 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 27: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

non-homogeneous batches (mixed with more than two cycles), the clustering algorithmperforms much better than manual work.

6.3.2 Comparison of batch dispatching

In the comparison of batch dispatching, the most important criterion should be themakespan which is the objective function of this optimisation problem. However, we alsointroduce some other evaluation criteria to give a comprehensive comparison. Thesecriteria are listed as follows:

. MaxRC denotes the makespan. Makespan is the maximum complete time of allbatches.

.P

BLK denotes the total block time which is the total unnecessary preheatingtime of all batches.

.P

IDL denotes the total roller idle which indicates the sum of the waiting time onthe stage 2 machine which reflects the continuity of the roll machine.

. FE denotes efficiency of the furnace. Based on total block time and totalpreheating time of all batches, FE can be defined as follows:

FE ¼ 1�

PBLKPPT

� �� 100%:

RU denotes the roller utilisation. Based on total roller idle time and total rolling time of allbatches, RU can be defined as follows:

RU ¼ 1�

PIDLPRT

� �� 100%:

As shown in Table 6, the system result performs better than the results of manual workin all of the criteria. In addition, the labour cost can be reduced significantly by using this

Table 5. Comparison of job grouping.

Date Input job number Method Output batch SRC PT (min.) BE

18.7–22.7 330 Manual 11 – 7290 97.64%System 11 100% 7290 97.64%

24.7–27.7 420 Manual 14 – 9660 99.34%System 14 100% 9570 99.34%

27.7–29.7 210 Manual 7 – 5070 98.19%System 7 100% 4980 100%

29.7–31.7 240 Manual 8 – 2805 98.64%System 8 100% 2805 98.64%

1.8–2.8 240 Manual 8 – 5790 95.79%System 8 100% 5070 97.41%

3.8–5.8 270 Manual 9 – 5670 98.98%System 9 100% 5670 98.98%

International Journal of Production Research 1599

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 28: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

system. At present, this company has to arrange three engineers to make the daily schedule

manually. It is a cumbersome task to tidy up customer orders and classify the raw

material. The quality of the scheduling result highly depends on personal experience.

In case the chief engineer is on leave, the production in the whole company will be affected.

Obviously, the GA based solution proposed in this research has much higher efficiency

and stability than manual scheduling. Only one operator is needed to input data, setup

initial status, and start the program. The result can be obtained in 10minutes even if the

problem size is larger than 12 batches.

7. Conclusions

This study has dealt with a two-stage hybrid flowshop scheduling problem~F,m1 4 1jb1 4 1jCmax generalised from a metalworking company. This problem is

characterised by a combination of multiple factors such as batching operation, unusual

job loading method, complicated job grouping rules and machine maintenance in a time

window. A two-step overall solution has been proposed. The first step is a clustering

algorithm to group multiple parallel jobs into batches according to their similarities and

grouping constraints. The second step treats job batches as basic units for scheduling by a

genetic algorithm to assign batches and determine their sequence at each parallel machine.

The proposed scheduling model and solution algorithm has been evaluated extensively

with practical field data collected from the collaborating company over a period of months

of producing schedules manually and from the system in parallel. The problem

formulation has considered most of the constraints encountered in daily operations

through several rounds of interactions with the engineers in charge. The resulting

schedules are consistent with rules and guidelines that engineers have been following

in creating their schedules manually. The makespan of the resulting schedules is much

better than that of manual schedules. The computational time used for generating an

optimal schedule is a matter of a few minutes, as contrasted with one day for generating

manual schedules.

Table 6. Results of batch dispatching comparison.

Date Method MaxRC (min.)P

BLK (min.)P

IDL (min.) FE RU

18.7–22.7 Manual 6060 1440 180 80.24% 94.54%System 5910 1200 120 83.53% 96.36%

24.7–27.7 Manual 7890 1980 120 79.50% 97.14%System 7740 1620 0 83.22% 100%

27.7–29.7 Manual 4443 568 30 88.59% 98.57%System 4324 332 1 93.33% 99.95%

29.7–31.7 Manual 6052 913 130 88.25% 96.28%System 5862 801 0 89.69% 100%

1.8–2.8 Manual 5685 1380 120 75.78% 95.00%System 5700 630 90 88.94% 96.25%

3.8–5.8 Manual 5490 1320 40 78.30% 93.50%System 5370 1230 20 82.30% 98.50%

1600 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 29: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

A series of comparative analyses have also been conducted. The first set of experimentsanalysed the relationships between the problem size and GA parameters, in order to gainpractical insights on setting population size, mutation rate and crossover rate for a givenlevel of problem complexity. In terms of the sensitive analysis of the time window, theperiod and the range of the time window have been considered as input and the resultsrevealed that the period of the time window has no influence on the scheduling result butthe optimal solution can only be obtained in a sufficiently wide time window.

Although this research has dealt with several academically challenging issues, furtherwork is still needed in order for the system to be used on a daily basis. The first extension isthat appropriate facilities must be developed to obtain real-time availability information ofinput jobs in the storage areas for clustering and scheduling. Research and developmentefforts are being made at present to introduce and apply AutoID (automatic identifica-tion) technologies for this purpose (Huang et al. 2007, 2008). The second extension shoulddeal with jobs coming out from the preceding stage to reduce the intermediate jobinventory. This would affect both clustering and sequencing decisions. The third extensionis to consider subsequent stages in the entire workshop. The problem will become amulti-stage hybrid flowshop problem with multiple objectives. More practical experiencessuch as line balance will be considered and added to the mathematical model. This willhelp to optimise the GA model and achieve better scheduling results. Finally, theimplementation of the scheduling system should be developed to use the web serviceconcept (Huang and Mak 2003) and the client component should be made moreuser-friendly to facilitate daily operations in industrial environments.

Acknowledgements

The authors would like to thank Hong Kong University Research Committee, HKSAR RGC(GRF) and HKSAR ITF, and industrial collaborator for financial and technical support.

References

Allaoui, H. and Artiba, A., 2006. Scheduling two-stage hybrid flow shop with availability

constraints. Computers & Operations Research, 33 (5), 1399–1429.Caraffa, V., et al., 2001. Minimizing makespan in a blocking flowshop using genetic algorithms.

International Journal of Production Economics, 70 (2), 101–115.

Caricato, P., Grieco, A., and Serino, D., 2007. TSP-based scheduling in a batch-wise hybrid

flow-shop. Robotics and Computer-Integrated Manufacturing, 23 (2), 234–241.

Chan, K.F. and Hui, C.W., 2003. Scheduling batch production using a stepwise approach. Industrial

& Engineering Chemistry Research, 42 (14), 3505–3508.Chen, C.-L., Vempati, V.S., and Aljaber, N., 1995. An application of genetic algorithms for flow

shop problems. European Journal of Operational Research, 80 (2), 389–396.Cheng, T.C.E., Gupta, J.N.D., and Wang, G.Q., 2000. A review of flowshop scheduling research

with setup times. Production and Operations Management, 9 (3), 262–282.Cochran, J.K., Horng, S.-M., and Fowler, J.W., 2003. A multi-population genetic algorithm to solve

multi-objective scheduling problems for parallel machines. Computers & Operations Research,

30 (7), 1087–1102.Coudert, T., Grabot, B., and Archimede, B., 2002. Production/maintenance cooperative scheduling

using multi-agents and fuzzy logic. International Journal of Production Research, 40 (18),

4611–4632.

International Journal of Production Research 1601

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 30: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

Davis, L., 1991. Handbook of genetic algorithms. New York: Van Nostrand Reinhold.Gen, M. and Cheng, R., 1997. Genetic algorithms and engineering design. New York: Wiley.Goldgerg, D. and Lingle, R., 1985. Alleles, loci, and the traveling salesman problem. In: Proceedings

of the first international conference on genetic algorithms and their applications, 24–26 July

Pittsburgh, PA, 154–159.Guinet, A., et al., 1996. A computational study of heuristics for two-stage flexible flowshops.

International Journal of Production Research, 34 (5), 1399–1415.Gupta, J.N.D., 1988. Two-stage, hybrid flowshop scheduling problem. Journal of the Operational

Research Society, 39 (4), 359–364.

Gupta, J.N.D. and Tunc, E.A., 1991. Schedules for a two-stage hybrid flowshop with parallel

machines at the second stage. International Journal of Production Research, 29 (7), 1489–1502.Gupta, J.N.D. and Stafford, J.E.F., 2006. Flowshop scheduling research after five decades. European

Journal of Operational Research, 169 (3), 699–711.Hall, N.G. and Sriskandarajah, C., 1996. A survey of machine scheduling problems with blocking

and no-wait in process. Operations Research, 44 (3), 510–525.Hopp, W.J. and Spearman, M.L., 2000. Factory physics. 2nd ed. Boston, MA: McGraw-Hill

International Editions.Huang, G.Q. and Mak, K.L., 2003. Internet applications in product design and manufacturing. Berlin:

Springer.

Huang, G.Q., Zhang, Y.F., and Jiang, P.Y., 2007. RFID-based wireless manufacturing for walking-

worker assembly islands with fixed-position layouts. Robotics and Computer-Integrated

Manufacturing, 23 (4), 469–477.

Huang, G.Q., et al., 2008. RFID-enabled real-time wireless manufacturing for adaptive assembly

planning and control. Journal of Intelligent Manufacturing, 19 (6), 701–713.Iyer, S.K. and Saxena, B., 2004. Improved genetic algorithm for the permutation flowshop

scheduling problem. Computers & Operations Research, 31 (4), 593–606.Jain, A.K., Murty, M.N., and Flynn, P.J., 1999. Data clustering: a review. ACM Computing Surveys,

31 (3), 264–323.Kim, B. and Kim, S., 2002. Application of genetic algorithms for scheduling batch-discrete

production system. Production Planning & Control, 13 (2), 155–165.

Lee, C.Y., Uzsoy, R., and Martin-Vega, L.A., 1992. Efficient algorithms for scheduling

semiconductor burn-in operations. Operations Research, 40 (4), 764–775.Lee, Y.H. and Pinedo, M., 1997. Scheduling jobs on parallel machines with sequence-dependent

setup times. European Journal of Operational Research, 100 (3), 464–474.Lin, H.-T. and Liao, C.-J., 2003. A case study in a two-stage hybrid flow shop with setup time and

dedicated machines. International Journal of Production Economics, 86 (2), 133–143.Linn, R. and Zhang, W., 1999. Hybrid flow shop scheduling: a survey. Computers & Industrial

Engineering, 37 (1–2), 57–61.Michalewicz, Z., 1996. Genetic algorithmsþdata structures¼evolution programs. Berlin:

Springer-Verlag.

O’Donovan, R., Uzsoy, R., and McKay, K.N., 1999. Predictable scheduling of a single machine with

breakdowns and sensitive jobs. International Journal of Production Research, 37 (18),

4217–4233.

Oguz, C. and Ercan, M.F., 2005. A genetic algorithm for hybrid flow-shop scheduling with

multiprocessor tasks. Journal of Scheduling, 8 (4), 323–351.Potts, C.N. and Kovalyov, M.Y., 2000. Scheduling with batching: a review. European Journal of

Operational Research, 120 (2), 228–249.Riane, F., Artiba, A., and Elmaghraby, S.E., 1998. A hybrid three-stage flowshop problem:

efficient heuristics to minimize makespan. European Journal of Operational Research, 109 (2),

321–329.Schmidt, G., 2000. Scheduling with limited machine availability. European Journal of Operational

Research, 121 (1), 1–15.

1602 H. Luo et al.

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4

Page 31: Hybrid flowshop scheduling with batch-discrete processors and machine maintenance in time windows

Tang, L.X. and Huang, L., 2007. Optimal and near-optimal algorithms to rolling batch schedulingfor seamless steel tube production. International Journal of Production Economics, 105 (2),357–371.

Wong, W.K., Chan, C.K., and Ip, W.H., 2001. A hybrid flowshop scheduling model for apparel

manufacture. International Journal of Clothing Science and Technology, 13 (2), 115–131.Wu, L.Y., et al., 2005. A genetic algorithm-based approach to scheduling of batch production with

maximum profit. Chinese Journal of Chemical Engineering, 13 (1), 68–73.

Xuan, H. and Tang, L., 2007. Scheduling a hybrid flowshop with batch production at the last stage.Computers & Operations Research, 34 (9), 2718–2733.

Zhang, Y.F., Jiang, P.Y., and Zhou, G.H., 2003. GA-driven part e-manufacturing scheduling via an

online e-service platform. International Journal of Integrated Manufacturing Systems, 14 (7),575–585.

International Journal of Production Research 1603

Dow

nloa

ded

by [

Ast

on U

nive

rsity

] at

08:

33 2

7 A

ugus

t 201

4