variable neighbourhood search for dual-resource constrained flexible job shop scheduling

12
This article was downloaded by: [Linnaeus University] On: 18 October 2014, At: 04:58 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 Variable neighbourhood search for dual-resource constrained flexible job shop scheduling Deming Lei a & Xiuping Guo b a School of Automation, Wuhan University of Technology, Wuhan, PR China b School of Economic and Management, Southwest Jiaotong University, Chengdu, PR China Published online: 28 Oct 2013. To cite this article: Deming Lei & Xiuping Guo (2014) Variable neighbourhood search for dual-resource constrained flexible job shop scheduling, International Journal of Production Research, 52:9, 2519-2529, DOI: 10.1080/00207543.2013.849822 To link to this article: http://dx.doi.org/10.1080/00207543.2013.849822 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 & Conditions of access and use can be found at http:// www.tandfonline.com/page/terms-and-conditions

Upload: xiuping

Post on 09-Feb-2017

217 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

This article was downloaded by: [Linnaeus University]On: 18 October 2014, At: 04:58Publisher: Taylor & FrancisInforma 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 ResearchPublication details, including instructions for authors and subscription information:http://www.tandfonline.com/loi/tprs20

Variable neighbourhood search for dual-resourceconstrained flexible job shop schedulingDeming Leia & Xiuping Guob

a School of Automation, Wuhan University of Technology, Wuhan, PR Chinab School of Economic and Management, Southwest Jiaotong University, Chengdu, PR ChinaPublished online: 28 Oct 2013.

To cite this article: Deming Lei & Xiuping Guo (2014) Variable neighbourhood search for dual-resource constrained flexiblejob shop scheduling, International Journal of Production Research, 52:9, 2519-2529, DOI: 10.1080/00207543.2013.849822

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

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) containedin the publications on our platform. However, Taylor & Francis, our agents, and our licensors make norepresentations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of theContent. Any opinions and views expressed in this publication are the opinions and views of the authors, andare not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon andshould be independently verified with primary sources of information. Taylor and Francis shall not be liable forany losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoeveror howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use ofthe Content.

This article may be used for research, teaching, and private study purposes. Any substantial or systematicreproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in anyform to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Page 2: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

Deming Leia* and Xiuping Guob

aSchool of Automation, Wuhan University of Technology, Wuhan, PR China; bSchool of Economic and Management, SouthwestJiaotong University, Chengdu, PR China

(Received 23 October 2012; accepted 22 September 2013)

Dual-resource constrained flexible job shop scheduling problem (FJSP) is considered and an effective variableneighbourhood search (VNS) is presented, in which the solution to the problem is indicated as a quadruple string of theordered operations and their resources. Two neighbourhood search procedures are sequentially executed to produce newsolutions for two sub-problems of the problem, respectively. The search of VNS is restarted from a slightly perturbedversion of the current solution of VNS when the determined number of iterations is reached. VNS is tested on someinstances and compared with methods from literature. Computational results show the significant advantage of VNS onthe problem.

Keywords: variable neighbourhood search; dual resource; flexible job shop scheduling

1. Introduction

Many manufacturing systems are always constrained by machine capacity and labour capacity and can be regarded asdual-resource constrained (DRC) systems, which extensively exist in the real-world situations. For example, manyChinese manufacturing companies have to face the increasing wage cost and it is vital to make better use of labourforce; however, in the traditional scheduling problem, workers are assumed to be plentiful and the labour cost is lowerthan the machines, so workers are not considered and the results of traditional scheduling cannot meet the requirementsof companies well, so it is necessary to investigate the DRC scheduling problem.

Generally, DRC scheduling problems are composed of resource assignment problem and operation sequence prob-lem, the former is to assign the required resources to each operation and the latter is to produce the processing sequenceof all jobs on each resource. In the past decades, DRC scheduling has attracted much attention from researchers andmany results have been obtained in parallel machine and shop environments (Xu, Xu, and Xie 2011). Ruiz-Torres andCenteno (2007) considered the parallel machine scheduling with dual-resource constraint and developed a heuristic forthe problem. Chaudhry and Drake (2009) presented a spreadsheet-based genetic algorithm (GA) to minimise total tardi-ness of a set of tasks on parallel machines.

Most of literature discussed DRC scheduling in job shop environment. Elmaraghy, Patel, and Ben Abdallah (1999)presented a GA with a new chromosome representation including different combinations of operations, machines andworkers. Elmaraghy, Patel, and Ben Abdallah (2000) extended the above work for finding the optimal staffing level andmachines and workers assignment. Kher (2000) did a number of experiments to evaluate worker assignment and dis-patching rules in DRC job shop environments which cater to orders from vital customers having very rigid deliveryguidelines. Araz and Salum (2010) presented a multi-criteria real-time scheduling method, which employs artificial neu-ral networks to reduce computational complexity and a fuzzy reference system to cope with multiple criteria. Lang andLi (2011) proposed an algorithm combining grey simulation technology and non-dominated sorting GA II for DRC flex-ible job shop scheduling. Lobo et al. (2013) studied a DRC job shop, in which the objective is to minimise the maxi-mum job lateness, machines are grouped and each worker is assigned to a specific machine group, and proposed adetailed procedure to compute a lower bound of the objective. Mehravaran and Logendran (in press) considered a non-permutation flow shop scheduling with dual resources and proposed a mathematical model and a two-layer structurealgorithm, in which a search algorithm and a three-step heuristic are used, respectively.

The first feature of the previous studies is that DRC scheduling is mainly considered in job shop and only fewpapers discussed DRC scheduling in flexible job shop. The second feature is that in most of the papers, GA is applied

*Corresponding author. Email: [email protected]

© 2013 Taylor & Francis

International Journal of Production Research, 2014Vol. 52, No. 9, 2519–2529, http://dx.doi.org/10.1080/00207543.2013.849822

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 3: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

to solve the scheduling problems in DRC shop. The advantage of GA lies in its global optimisation ability and itsdisadvantage is its low local search ability. Variable neighbourhood search (VNS) has been successfully applied to manyproduction scheduling problems (Lei and Guo 2011; Yazdani, Amiri, and Zandieh 2010); to the best of our knowledge,VNS is not applied to DRC scheduling. When VNS is used to solve DRC scheduling, it is easy to design neighbour-hood structures and VNS can explore different neighbourhoods of the current solution, so its implementation is easierthan GA.

In this study, DRCFJSP is considered and an effective VNS with two neighbourhood-search procedures is proposed,in which a quadruple string of the ordered operations and their resources is used to indicate the solution to the problem.For the problem, there are no notable differences on solution space and optimisation difficulty between its two sub-prob-lems, so two sub-problems should be treated equally. To adapt the features of the problem, two neighbourhood searchprocedures are executed sequentially to produce new solutions and each of them is composed of neighbourhood struc-tures of two sub-problems. The restarting of the search is done after the predetermined number of iterations to improvethe convergence performance. VNS is tested on a number of instances and the results are analysed.

The remainder of this paper is organised as follows. We describe the problem in the next section. The proposedVNS for the problem is described in Section 3. Computational experiments and results discussion are done in Section 4.A summary and discussions on future research conclude the paper in the final section.

2. Problem description

DRCFJSP is composed of n jobs Ji(i = 1, 2, …, n), m machines Mk(k = 1, 2, …, m) and w workers Wl(l = 1, 2, …, w).Each job Ji consists of hi operations and can be started at qi = 0, h ¼Pn

i¼1 hi is the total number of operations. Opera-tion oij indicates the jth operation of Ji and is processed on a machine Mk 2 Mij, Mij is the set of all compatiblemachines which can process oij. Each worker can execute the processing on at least one machine, W l is the set ofmachines which worker Wl can operate. With respect to workers, there are two types (Elmaraghy, Patel, and BenAbdallah 1999), the first type of workers is assumed to have the equal efficiency on all machines and the second type isconsidered to have different skills and operate machines with varying efficiency. In this study, the second type ofworkers is considered.

The following assumptions are also considered. (1) Workers may be transferred from one machine to another. (2)Preemption of jobs is not allowed. (3) Machine breakdowns are not considered. (4) Each machine can process only onejob at a time. (5) Processing times are deterministic and known in advance. (6) No loss of productive time occurs whena worker is transferred from one machine to another. (7) Transportation time between facilities is negligible or includedin the processing time. (8) Worker cannot be transferred during his/her processing.

The goal of the problem is to assign appropriate resources for each operation and to sequence the operations onresources in order to optimise the maximum completion time (Elmaraghy, Patel, and Ben Abdallah 2000).

Table 1 shows an illustrative example with four jobs, three machines and two workers. The entries of the table arethe processing times and the entry ‘–’ in the table means that the operation cannot be processed on the correspondingmachine and cannot be operated by the worker. For example, worker W1 cannot operate machine M3, so the columnrelated to W3 is composed of ‘–’, o21 cannot be processed on M2 and the corresponding grids are also entry ‘–’.

3. VNS for DRCFJSP

VNS is based on a procedure of systematic changes of neighbourhoods within the search. It explores different neigh-bourhoods of the current solution and will vary from its current neighbourhood structure to the first one once animprovement has been made. For DRCFJSP, there are two sub-problems and four neighbourhood structures are applied.Because it is not appropriate to choose only one neighbourhood structure as the first structure, so two neighbourhood

Table 1. An illustrative example.

Job

M1 M2 M3

JobM1 M2 M3

W1 W2 W1 W2 W1 W2 W1 W2 W1 W2 W1 W2

J1 o11 3 4 7 6 – – J3 o31 – – 2 2 3 –o12 3 2 3 7 – 2 o32 3 2 3 6 5 –

J2 o21 – – 3 5 – 4 o33 3 5 – – 7 –o22 3 5 2 4 – 3 J4 o41 3 5 – – 4 –

2520 D. Lei and X. Guo

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 4: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

search procedures are used and two neighbourhood structures are adopted in each procedure. The restarting of the searchis considered, which is not adopted in most of VNS-based algorithms, to increase the possibility converging to theoptimal solution of the problem.

In this section, we describe the main steps of the proposed VNS in detail.

3.1 Representation of the problem

Task sequencing list (Kacem, Hammadi, and Borne 2002) is used to represent the solution of FJSP. In this paper, thisrepresentation is extended to represent the solution of DRCFJSP and a quadruple string of the ordered operations andtheir processing resources is obtained. For DRCFJSP with n jobs, m machines and w workers, the string is described asfollows.

ððp1; r1;Mu1 ;Wv1Þ; ðp2; r2;Mu2 ;Wv2Þ; � � � ; ðph; rh;Muh ;WvhÞÞ (13)

In the above string, pt 2 {1, 2, …, n}, for element ðpt; rt;Mut ;WvtÞ, (pt, rt) corresponds to operation optrt , Mut and Wvtare the machine and worker allocated to optrt , Mut 2 Mptrt \Wvt . The whole string is composed of the operation partand the resource part. If the assigned resources for each operation are deleted, the remaining part is the operation part.

For element ðpt; rt;Mut ;Wvt Þ, rptrt , sptrt , gut and 1vt indicate, respectively, the beginning time, the completion time ofoptrt , the available time of machine Mut and the available time of worker Wvt .

The string ððp1; r1;Mu1 ;Wv1Þ; ðp2; r2;Mu2 ;Wv2Þ; � � � ; ðph; rh;Muh ;WvhÞÞ is used to build a schedule in the followingway: when t is varied from 1 to h, for element ðpt; rt;Mut ;WvtÞ, operation optrt is allocated in the best available time onmachine Mut and worker Wvt in terms of the following principles:

(1) The processing of optrt may be done in the common interval of the idle times of machine Mut and workerWvt .

(2) For optrt processed by machine Mut and worker Wvt , if rt > 1, then rptrt ¼ sptðrt�1Þ _ gut _ 1vt ; if rt = 1, thenrptrt ¼ gut _ 1vt .

(3) sptrt ¼ rptrt þ pptrtutvt , where pptrtutvt indicates the processing of operation oplrl processed on machine Mut andoperated by worker Wvt .

(4) When worker Wvt finishes the processing of optrt , Wvt is transferred to machine Mul on which oplrl can beoperated by Wvt , and then operates the processing of oplrl , where element ðpl; rl;Mul ;Wvl Þ is the first one meet-ing l > t and Wvt ¼ Wvl .

The possible string is ðð1; 1;M2;W1Þ; ð2; 1;M3;W2Þ; ð3; 1;M2;W2Þ; ð1; 2;M2;W1Þ; ð3; 2;M1;W1Þ; ð4; 1;M1;W2Þ;ð4; 2;M1;W2Þ; ð2; 2;M3;W2ÞÞ for the example shown in Table 1. The building procedure of the schedule is described asfollows.

Initially ηk = 0, k = 1, 2, …, m, 1i = 0, l = 1, 2, …, w.t = 1, the first element (1, 1, M2, W1) is considered, σ11 = η2 ∨ 1i1 = 0, τ11 = σ11 + p112 = 7, both η2 and 1i1 are

equal to 7. t = 2, for element (2, 1, M3, W2), σ21 = 0, τ21 = 4, η3 = 4, 1i2 = 4, worker is transferred to machine M2 forprocessing o31.

t = 3, for element (3, 1, M2, W2), σ31 = η2 ∨ 1i2 = 7, τ31 = 9, η2 = 1i2 = 9.t = 4, for element (1, 2, M2, W1), r4 > 1, so σ12 = τ11 ∨ η2 ∨ 1i1 = 9, τ12 = 12, when time is 7, workerW1 is idle and can process o12; however, M2 still deal with o31 and W1 has to wait, η2 = 1i1 = 12.t = 5, element (3, 2, M1, W1) is considered, σ32 = τ31 ∨ η1 ∨ 1i1 = 12, τ32 = 15, η1 = 1i1 = 15.t = 6, for (4, 1, M1, W2), [0, 12] is the idle time interval of machine M1, W2 is idle in interval [4, 7] and [9, ∞), so

the intersection of the idle times of M1 and W2 is [4, 7] and [9, 12], if σ41 = 4, then τ41 = 7, the processing of o41 canbe finished in the interval [4, 7], that is, operation o41 can be inserted into the idle times of its assigned machine andworker.

t = 7, for element (4, 2, M1, W2), the intersection of the idle times of M1 and W2 is [9, 12], M1 and W2 are availablein this interval, if η1 and 1i2 are set to be 9, σ42 = 9, τ42 = 14 > 12, the processing of o42 cannot finished in the idle time[9, 12], so o42 cannot be inserted into the idle time of M1, W2. o42 becomes the last scheduled operation on M1,σ42 = 15, τ42 = 20, η1 = 1i2 = 20.

t = 8, for element (2, 2, M3, W2), o22 can be inserted into the idle time interval [9, 15], so σ22 = 9, τ22 = 12.Figure 1 shows resource Gantt chart of the obtained schedule, which is made up of machine Gantt chart and worker

Gantt chart. The former is the set of the operation sequence on each machine and the latter consists of the operationsequence used by each worker.

International Journal of Production Research 2521

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 5: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

3.2 Neighbourhood structures

The technique of moving from a solution to its neighbourhood one is delineated as neighbourhood structure, whichshould prevent any infeasible solution. In this study, four neighbourhood structures are applied to produce new solutionsof DRCFJSP. Neighbourhood structures Swap and Insert are about operation sequence sub-problem. Two novel neigh-bourhood structures Assign and Change are applied to another sub-problem of DRCFJSP.

3.2.1 Neighbourhood structure Swap

Neighbourhood structure Swap is the extended one of swap operator of Lei (2012). Swap is applied to operation part ofa solution x and to produce a new solution y by exchanging two randomly chosen operations. Some adjustments arealso required to guarantee the feasibility of the new solution.

Neighbourhood structure Swap is described as follows

(1) Store the copy of the solution x, t = 1.(2) Randomly select elements ðpi; ri;Mui ;WviÞ and ðpj; rj;Muj ;WvjÞ (pi ≠ pj) from x and then exchange them.(3) t = t + 1, if t ≤ ts, go to step (2).(4) For solution x, sequentially assign new value of ri for the operation part of all elements and then allocate

resources for each operation according to the copy of x.

where ts is an integer.In the whole procedure of Swap, the resource part is kept invariant.For string ð1; 1;M2;W1Þ; ð2; 1;M3;W2Þ;ð ð3; 1;M2;W2Þ; ð1; 2;M2;W1Þ; ð3; 2;M1;W1Þ; ð4; 1;M1;W2Þ; ð2; 2;M3;W2Þ,

after (3, 1, M2, W2) and (2, 2, M3, W2) is swapped, the following string is obtained,

ðð1; 1;M2;W1Þ; ð2; 1;M3;W2Þ; ð2; 2;M3;W2Þ; ð1; 2;M2;W1Þ; ð3; 2;M1;W1Þ; ð4; 1;M1;W2Þ; ð3; 1;M2;W2ÞÞNew value of ri is assigned for operation part, a new string is generated,

ðð1; 1;M2;W1Þ; ð2; 1;M3;W2Þ; ð2; 2;M3;W2Þ; ð1; 2;M2;W1Þ; ð3; 1;M1;W1Þ; ð4; 1;M1;W2Þ; ð3; 2;M2;W2ÞÞ

1M

2M

3M

41 2,o W

11 1,o W

21 2,o W

31 2,o W 12 1,o W

22 2,o W

32 1,o W 33 2,o W

1W

2W

11 2,o M

21 3,o M 41 1,o M 31 2,o M 22 3,o M 33 1,o M

32 1,o M12 2,o M

0 4

4

4

7

7

7

7

9

9

9

9

12

12

12

12

12

15

15

15

20

20

0

(a)

(b)

Figure 1. Resource Gantt chart (a) machine Gantt chart, (b) worker Gantt chart.

2522 D. Lei and X. Guo

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 6: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

Resources are allocated to each operation and a new solution is obtained as follows.

ðð1; 1;M2;W1Þ; ð2; 1;M3;W2Þ; ð2; 2;M3;W2Þ; ð1; 2;M2;W1Þ; ð3; 1;M2;W2Þ; ð4; 1;M1;W2Þ; ð3; 2;M1;W1ÞÞ

3.2.2 Neighbourhood structure Insert

The novel neighbourhood structure Insert is described as follows:

(1) Store the copy of x, t = 1.(2) Randomly choose a element ðpi; ri;Mui ;WviÞ and a new position j (i ≠ j) from x, and then insert the element

into the new position.(3) t = t + 1, if t ≤ ti, go to step (2).(4) For solution x, sequentially assign new value of ri for the operation part of all elements and then allocate

resources for each operation according to the copy of x.

where ti is an integer.

3.2.3 Neighbourhood structure Assign

Assign is applied to reallocate resources for the chosen operations and done in the following way:

(1) t = 1.(2) Randomly choose an element ðpi; ri;Mui ;WviÞ, a machine Mk 2 Mpiri and a worker Wl which can operate

machine Mk; if Mk and Wl can be used for opiri , then assign Mk and Wl to (pi, ri) and obtain a new(pi, ri, Mk, Wl).

(3) t = t + 1, if t ≤ ta, go to step (2); else stop iteration.

where ta is an integer.For the chosen element, it is possible that the selected machine and worker cannot be assigned to operation opiri , so

ta is greater than 1 to guarantee that opiri can be reassigned a new set of machine and worker in most cases.

3.2.4 Neighbourhood structure Change

Change is used to change machine or worker for the chosen operations and described as follows:

(1) t = 1.(2) randomly choose a element ðpi; ri;Mui ;WviÞ and produce a random number s ∈ (0, 1).(3) if s < θ, then stochastically select a machine Mk 2 Mpiri and a worker Wl which can operate Mk; if Mk and

Wl can be used for opiri , then assign Mk and Wl to (pi, ri) and obtain a new (pi, ri, Mk, Wl); else, randomlychoose a worker Wl which can operate machine Mui and obtain a new element ðpi; ri;Mui ;WlÞ:

(4) t = t + 1, if t ≤ tc, go to step (2); else stop iteration.

where θ is a constant, tc is an integer. In this study, ts = ti = ta = tc = 2.For element ðpi; ri;Mui ;WviÞ, the new assignment of machine will change the processing time of opiri , the new

assignment of worker can lead to the diminishing of waiting time for worker, thus, two sub-problems should be treatedequally to obtain the optimal completion time of each job.

3.3 Algorithm description

The detailed description of VNS is shown as follows.

(1) Randomly produce an initial solution x and evaluate it, t = 1, a = 0, b = 0.(2) For solution x, if a = 0, randomly produce a solution y 2 Swap(x); else randomly generate a solution

y 2 Insert(x); if x can be replaced with y, a = 0; else a = 1 – a.(3) For solution x, if b = 0, randomly produce a solution y 2 Assign(x); else randomly generate a solution

y 2 Change(x), if x can be replaced with y, b = 0; else b = 1 – b.(4) If t can be exactly divided by trst, randomly generate a solution x′ 2 Assign(x) and let x′ to be the new current

solution x.(5) t = t + 1, if t < max_it, go to step (2); else terminate the search.

International Journal of Production Research 2523

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 7: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

where trst is the predetermined number of iterations, NðxÞ indicates the set of solution obtained using the neighbourhoodstructure N , N can be Swap, Insert, Assign and Change, max_it is maximum number of iterations.

For the solution y 2 NðxÞ, if y has a small objective value than or equal objective to x, x can be replaced with y;otherwise, x cannot be replaced with y. The perturbation of neighbourhood structure is local and gradual, y becomes thenew current solution even if y has the same objective function value as the old current solutionx to accumulate the effectof neighbourhood search.

The search of VNS generally starts from an initial solution and may stagnate in the approximating procedure of theoptimal solution (Hansen and Mladenovíc 2001). The search restarts from the randomly generated neighbourhoodsolution using Assign and the search direction is varied, as a result, the stagnation is avoided and the convergenceperformance of the proposed VNS is improved. Because two sub-problems are treated equally and the excessive usageof a neighbourhood structure is not beneficial to the approximation to the optimal solution, two neighbourhood-searchprocedures are adopted. The above features make the proposed VNS have good performance.

4. Computational experiments

In this study, we do a number of experiments to test the performance of the proposed VNS and all experiments areimplemented by using Microsoft Visual C++ 6.0 on 2.0GRAM 2.2GCPU PC.

4.1 Test instances and lower bound

We use 25 instances MK1-13 (Brandimarte 1993) and DP1-12 (Dauzère-Pérès and Paulli 1997). These instances aredesigned for testing flexible job shop scheduling algorithms. Table 2 shows the detailed information on these instances.We extend them by adding worker–machine information and processing time. Table 3 describes worker–machine infor-mation. Processing time pijuv is decided below: pijuv 2 ½p0ij; p0ij þ dij�, δij 2 [2, 8], p0ij is the processing time of the originalinstance. For simplicity, the extended instances are still called MK1-13 and DP1-12.

Kacem, Hammadi, and Borne (2002) provided a lower bound of makespan for FJSP. We extended the work ofKacem, Hammadi, and Borne (2002)and proposed a lower bound for DRCFJSP in the following way: an earlieststarting time tij is first calculated, ti1 = qi, ti(j+1) = tij + γij, cij ¼ minu;vfpijuvg, where i 2 {1, 2, …, n},1 ≤ j ≤ hi – 1 qi is

the release time and pijuv indicates the processing time of operation oij processed on machine Mu and operated byworker Wv. The values of the earliest starting time are ranked from small to big, Rm is the sum of the m smallest valuesof the earliest start time, Rm ¼Pm

l¼1 til jl , il 2 {1, 2, …, n}, 1� jl � hil . Rw is the sum of the w smallest values of thestart time.

Table 2. Descriptions of the chosen instances.

Instance n m h Description

MK1* 10 6 62 nop 2 [5, 7] meq = 3, proc 2 [1, 7]MK2 10 6 62 nop 2 [5, 7] meq = 6, proc 2 [1, 7]MK3 15 8 150 nop 2 [10, 10] meq = 5, proc 2 [1, 20]MK4 15 8 85 nop 2 [3, 10] meq = 3, proc 2 [1, 10]MK5 15 4 123 nop 2 [5, 10] meq = 2, proc 2 [5, 10]MK6 10 15 150 nop 2 [15, 15] meq = 5, proc 2 [1, 10]MK7 20 5 100 nop 2 [5, 5] meq = 5, proc 2 [1, 20]MK8 20 10 259 nop 2 [10, 15] meq = 2, proc 2 [5, 20]MK9 20 10 259 nop 2 [10, 15] meq = 5, proc 2 [5, 20]MK10 20 15 259 nop 2 [10, 15] meq = 5, proc 2 [5, 20]MK11 30 5 195 nop 2 [5, 8] meq = 2, proc 2 [10, 30]MK12 30 10 237 nop 2 [5, 10] meq = 2, proc 2 [10, 30]MK13 30 10 237 nop 2 [5, 10] meq = 5, proc 2 [10, 30]DP1-DP6 10 5 205 The set of compatible machines is decided by probability p. p = 0.1 for DP1

and DP4, p = 0.3 for DP2 and DP5, p = 0.5 for DP3 and DP6DP7-12 15 8 313 The set of compatible machines is decided by probability p. p = 0.1 for DP7

and DP10, p = 0.3 for DP8 and DP11, p = 0.5 for DP9 and DP12

*nop is the number of operation per job, meq is the maximum number of compatible machines per operation, proc indicates theprocessing time per operation.

2524 D. Lei and X. Guo

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 8: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

Table

3.Machine–w

orkerinform

ationof

thechosen

instances.

Instance

wW

l

MK1-2

4W

fM1;M

3;M

5gW

fM2;M

4;M

5gW

fM1;M

4;M

6gW

fM2;M

3;M

6g:

MK3-4,

DP7-12

6W

fM1;M

5gW

fM2;M

4gW

fM1;M

4;M

6gW

fM2;M

3;M

6;M

7gW

fM6;M

7;M

8gW

fM5;M

8g

MK5

3W

fM1;M

3;M

4gW

fM2;M

4gW

fM1;M

2;M

3g:

MK6,

MK10

8W

fM1;M

8;M

10gW

fM2;M

7;M

11g:W

fM3;M

4;M

6;M

11gW

fM2;M

9;M

13;M

12gW

fM6;M

7;M

8;M

15gW

fM5;M

8;M

10g

W7¼

fM4;M

14;M

9;M

15gW

fM1;M

3;M

10;M

14g

MK7,11

DP1-6

4W

fM1;M

3;M

5gW

fM2;M

4gW

fM3;M

4gW

fM1;M

2;M

5g

MK8,9,12

,13

6W

fM1;M

3;M

5gW

fM2;M

4;M

9gW

fM3;M

4;M

8;M

10gW

fM1;M

7;M

9gW

fM6;M

7;M

5gW

fM2;M

8;M

4;M

10g

International Journal of Production Research 2525

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 9: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

The lower bound of makespan is then obtained according to the following equation.

Clowmax ¼ max max

iqi þ

Xj

cij

!; ~E

Rm þPi

Pj cij

m

� �; ~E

Rw þPi

Pj cij

w

� � !(14)

where if x is an integer, ~EðxÞ ¼ x; else ~EðxÞ ¼ EðxÞ þ 1, E(x) indicates the integer part of x.As shown in (14), qi +

Pjγij < Ci, so maxiðqi þ

Pj cijÞ < Cmax; for each machine Mu, rumin is the smallest value of

beginning time of all operations on Mu, obviously, rumin þP

iju cij < Cmax, where ∑ijuγij indicates the sum of alloperations oij processed on Mu, then the following inequality is obtained:

Pmu¼1 ðrumin þ

Piju cijÞ ¼Pm

u¼1 rumin þ

Pi

Pj cij < mCmax, obviously, Rm <

Pmu¼1 r

umin, thus, Rm +

Pi

Pjγij < mCmax. The same conclusion also

can be obtained on the third part of lower bound.

4.2 Results and discussions

We measure the relative percentage deviation (RPD) as follows.

RPD ¼ Cmaxða lgÞ � Clowmax

Clowmax

� 100 (15)

where Cmax (a lg) is the best solution obtained by an algorithm and Clowmax is the lower bound.

4.2.1 Parameters selection

VNS has three parameters: θ, trst and max_it, where θ is the parameter of Change. trst and max_it are important parame-ters, which have notable impact on the performance of VNS. To select the appropriate settings for these parameters, weuse three settings of 0.4, 0.5 for θ, 35,000, 40,000, 45,000 for trst, mit, 1.2 × mit and 0.8 × mit for m iter, where forinstances with h 2 (0, 300], mit = 50,000, for other instances, mit = 75,000. There are 18 combinations of three parame-ters and VNS runs on all problems for each combination. Regarding the different combinations of parameters and thecomputational results, the following settings are chosen: θ = 0.4, trst and max_it are set to be 35,000 and 50,000 forinstances with h 2 (0, 300], and 40,000 and 75,000 for other instances.

4.2.2 Comparison of three algorithms

Pezzella, Morganti, and Ciaschetti (2008) presented a GA called PEGA for FJSP. PEGA and our VNS are extended tosolve DRCFJSP in the same way: task sequencing list is extended into the quadruple string. PEGA can be easilyextended. Those rules in the original PEGA still can be used to produce initial population. Crossover and mutation alsocan be directly used or extended; for example, intelligent mutation is extended as follows: an operation selected on themachine or worker with maximum workload is assigned to the machine or worker with minimum workload if possible.

Lei (2012) proposed co-evolutionary genetic algorithm (CGA) for FJSP, which is tested to have the promising per-formance. We extend CGA for solving DRCFJSP in the following way: machine assignment string is extended to bethe resource assignment string; two-point crossover is designed for the resource assignment string: for parents A and B,two positions are randomly chosen, then the resources of each gene of A (B) between the chosen positions are replacedwith the same gene in the copy of B (A); Assign is used as mutation of resource assignment string. The other parts ofCGA are kept invariant.

We compare VNS with CGA and PEGA to test the performance of VNS. Each algorithm randomly runs 20 timesfor each instance. We use three indices ARPD, MRPD and SRPD to compare the performance difference among allalgorithms. MRPD denotes the minimum value of RPD found in 20 runs. Each algorithm can obtain a value of RPD ina run. APRD and SRPD are the average value and standard variance of 20 values of RPD.

For VNS, there are two evaluations of objective function in each iteration, so the total number of objective functionevaluations is 2 × max_it. We did a number of experiments on two GAs and the algorithms with the following parame-ters can yield the best solutions for most of the instances.

CGA: population scale of 100, crossover probability of 0.8 and mutation probability of 0.1.PEGA: population scale of 100, the probability of two crossovers is 0.45, mutation probability for operation

sequencing is 0.05, assignment mutation probability is 0.05 and intelligent mutation probability is 0.08. GA and PEGAhave the same number of objective function evaluations as VNS, so the maximum generation is 2 × max_it/100.

2526 D. Lei and X. Guo

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 10: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

Table 5. Results of three algorithms on MRPD.

Instance

MRPD

Instance

MRPD

VNS CGA PEGA VNS CGA PEGA

MK1 7.93 20.63 21.58 DP1 10.46 11.85 15.66MK2 7.84 29.41 33.50 DP2 10.10 11.63 17.89MK3 43.15 38.94 46.45 DP3 9.58 11.59 11.96MK4 24.63 33.34 35.25 DP4 12.02 14.81 18.76MK5 10.97 8.90 14.65 DP5 11.52 13.06 18.43MK6 44.94 62.95 74.25 DP6 10.39 14.49 20.54MK7 17.39 19.56 24.36 DP7 28.03 34.51 30.12MK8 21.46 21.64 27.48 DP8 27.25 32.67 37.79MK9 30.66 36.38 42.76 DP9 28.26 33.26 33.02MK10 38.41 40.42 51.47 DP10 29.64 35.07 34.65MK11 10.55 16.85 13.56 DP11 31.46 37.19 43.00MK12 13.50 12.98 16.54 DP12 31.35 36.14 36.11MK13 23.78 25.15 30.36

Table 4. Results of three algorithms on ARPD.

Instance Clowmax

ARPD

Instance Clowmax

ARPD

VNS CGA PEGA VNS CGA PEGA

MK1 63 17.32 26.34 29.45 DP1 2885 13.47 15.42 20.32MK2 51 22.55 37.85 40.15 DP2 2775 12.92 16.76 21.87MK3 190 48.78 46.68 52.48 DP3 2983 10.64 14.26 15.34MK4 69 32.46 38.98 40.57 DP4 2761 15.32 19.02 21.67MK5 337 12.67 9.73 10.67 DP5 2984 13.20 15.97 22.13MK6 89 49.66 74.95 82.83 DP6 2650 13.80 17.10 23.16MK7 184 24.67 22.82 30.47 DP7 2747 29.25 35.89 32.34MK8 536 22.91 24.77 28.13 DP8 2437 29.47 34.75 40.84MK9 437 35.08 39.72 47.80 DP9 2338 29.18 35.66 35.63MK10 328 42.16 47.47 53.43 DP10 2742 31.13 36.48 37.25MK11 976 12.55 25.22 22.98 DP11 2450 34.25 38.92 44.26MK12 755 15.16 15.66 17.87 DP12 2213 32.63 37.67 39.24MK13 660 26.19 28.36 36.45

Table 6. Results of three algorithms on SRPD.

Instance

SRPD

Instance

SRPD

VNS CGA PEGA VNS CGA PEGA

MK1 3.58 3.49 5.12 DP1 1.23 3.12 5.47MK2 7.65 6.79 9.76 DP2 1.45 3.19 4.23MK3 4.46 4.72 8.55 DP3 0.83 2.20 4.46MK4 5.84 3.34 9.68 DP4 1.74 2.07 3.89MK5 1.08 0.87 7.85 DP5 0.98 2.65 3.81MK6 2.83 6.02 10.64 DP6 1.21 2.63 5.74MK7 3.90 1.85 5.23 DP7 1.13 1.78 4.48MK8 1.69 2.16 4.46 DP8 1.28 2.05 3.86MK9 2.54 1.61 5.25 DP9 1.30 1.98 4.65MK10 3.19 4.04 5.76 DP10 1.34 2.17 3.68MK11 0.88 0.60 3.65 DP11 1.25 2.25 3.81MK12 0.86 1.01 2.05 DP12 0.98 1.79 4.24MK13 1.48 2.61 5.79

International Journal of Production Research 2527

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 11: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

The computational results are shown in Tables 4–6 and the computational times are listed in Table 7.From Table 4, it can be found that VNS has better average performance than CGA and PEGA on 23 of 25

instances. ARPD of VNS is less than that of CGA on 22 instances and smaller than that of PEGA on 24 instances.CGA obtains smaller ARPD than VNS on MK3,7. CGA and PEGA obtain similar ARPD for most of instances andARPD of PEGA is less than that of CGA for MK11 and DP7. It can be found from Table 5 that VNS converges betterthan CGA and PEGA. VNS approximates to the best solutions of 22 instances, CGA converge to the best solution ofthree instances and PEGA cannot obtain the best solution of any instances. The results of Table 5 show that the lowerbound obtained using Equation (14) is reasonable because MRPD of the best solution is less than 30 for 19 of 25instances.

As shown in Table 6, VNS and CGA generate the close SRPD for 22 instances and the difference on SPRDbetween them exceeds 2 for the remaining instances. VNS has similar stability with CGA. VNS obtains the similarSRPD with PEGA on 14 instances and better SRPD than PEGA on 12 instances by at least 3. VNS performs better thanPEGA on stability. Thus, it can be concluded that VNS performs better than CGA and PEGA using the less computa-tional times shown in Table 7.

Two-point crossover of CGA and assignment crossover of PEGA always assign machine and work simultaneouslyto the chosen genes and cannot just assign only a machine or work to a gene. Assignment mutation can assign onlymachine or work; however, its probability is low and resource assignment sub-problem cannot be coped with fully.These features lead to the worst performance of two GAs than VNS.

5. Conclusions

In this paper, an effective VNS is proposed to minimise makespan of DRCFJSP, in which the solution of the problem isindicated as a quadruple string of the ordered operations and their resources. VNS is composed of two neighbourhoodsearch procedures and a restarting mechanism. Four neighbourhood structures are used and the effect of them is accu-mulated by replacing the current solution with the new one even if two solutions have the same objective functionvalue. VNS is compared with two GAs to test its promising performance on the considered problem.

We cannot consider some real-life processing constraints such as blocking and breakdown in the problem. In thenear future, we will focus on DRC shop scheduling problems with heterogeneous resources, real-life processingconstraints and tardiness objectives such as number of tardy jobs and apply some meta-heuristics such as artificial beecolony and particle swarm optimization to these problems. Multi-resource shop scheduling problem is also the topic ofour future research.

References

Araz, O. U., and L. Salum. 2010. “A Multi-criteria Adaptive Control Scheme based on Neural Networks and Fuzzy Inference forDRC Manufacturing Systems.” International Journal of Production Research 48 (1): 251–270.

Brandimarte, P. 1993. “Routing and Scheduling in a Flexible Job Shop by Tabu Search.” Annals of Operations Research 41 (1):157–183.

Table 7. Computational times of three algorithms.

Instance

Time/s

Instance

Time/s

VNS CGA PEGA VNS CGA PEGA

MK1 4.28 4.44 4.50 DP1 61.4 68.1 68.9MK2 4.38 4.87 4.86 DP2 62.1 67.9 68.4MK3 31.0 35.2 35.5 DP3 61.6 67.9 68.6MK4 5.39 6.65 7.01 DP4 60.8 66.9 68.2MK5 34.8 37.9 38.8 DP5 60.2 66.3 67.4MK6 22.2 27.5 28.2 DP6 60.8 67.1 68.2MK7 21.9 24.2 25.0 DP7 169 171 176MK8 114 121 125 DP8 164 180 183MK9 117 123 126 DP9 165 181 184MK10 89.5 99.8 102 DP10 164 179 183MK11 71.9 78.2 78.3 DP11 166 182 186MK12 72.1 77.9 78.1 DP12 168 183 185MK13 72.5 77.8 76.9

2528 D. Lei and X. Guo

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014

Page 12: Variable neighbourhood search for dual-resource constrained flexible job shop scheduling

Chaudhry, L. A., and P. R. Drake. 2009. “Minimizing Total Tardiness for the Machine Scheduling and Worker AssignmentProblems in Identical Parallel Machines using Genetic Algorithms.” International Journal of Advanced Manufacturing Technology42 (5–6): 581–594.

Dauzère-Pérès, S., and J. Paulli. 1997. “An Integrated Approach for Modelling and Solving the General Multiprocessor Job-shopScheduling Problem Using Tabu Search.” Annals of Operations Research 70: 281–306.

ElMaraghy, H., V. Patel, and I. Ben Abdallah. 1999. “A Genetic Algorithm based Approach for Scheduling of Dual-resource Con-strained Manufacturing Systems.” CIRP Annals-Manufacturing Technology 48 (1): 369–372.

ElMaraghy, H., V. Patel, and I. Ben Abdallah. 2000. “Scheduling of Manufacturing Systems under Dual-resource Constraints usingGenetic Algorithms.” Journal of Manufacturing System 19 (1): 186–198.

Hansen, P., and N. Mladenovíc. 2001. “Variable Neighborhood Search: Principles and Applications.” European Journal of Opera-tional Research 130 (3): 449–467.

Kacem, I., S. Hammadi, and P. Borne. 2002. “Pareto-optimality Approach for Flexible Job-shop Scheduling Problems: Hybridizationof Evolutionary Algorithms and Fuzzy Logic.” Mathematics and Computers in Simulation 60: 245–276.

Kher, H. V. 2000. “Examination of Worker Assignment and Dispatching Rules for Managing Vital Customer Priorities in DualResource Constrained Job Shop Scheduling Environments.” Computers and Operations Research 27 (6): 525–537.

Lang, M. T., and H. Li. 2011. “Research on Dual-resource Multi-objective Flexible Job Shop Scheduling under Uncertainty.” InProceedings of 2nd International Conference on Artificial Intelligence, Management Science and Electronic Commerce,Zhengzhou, 1375–1378

Lei, D. M. 2012. “Co-evolutionary Genetic Algorithm for Fuzzy Flexible Job Shop Scheduling.” Applied Soft Computing 12 (8):2237–2245.

Lei, D. M., and X. P. Guo. 2011. “Variable Neighborhood Search for Minimizing Tardiness Objectives on Flow Shop with Batch Pro-cessing Machines.” International Journal of Production Research 49 (2): 519–529.

Lobo, B. J., T. J. Hodgson, R. E. King, K. A. Thoney, and J. R. Wilson. 2013. “An Effective Lower Bound on Lmax in a Worker-constrained Job Shop.” Computers and Operations Research 40 (1): 328–343.

Mehravaran, Y., and R. Logendran. 2013. “Non-permutation Flowshop Scheduling with Dual Resources.” Expert Systems with Appli-cations 40 (13): 5061–5076.

Pezzella, F., G. Morganti, and G. Ciaschetti. 2008. “A Genetic Algorithm for the Flexible Job-shop Scheduling Problem.” Computersand Operations Research 35 (10): 3202–3212.

Ruiz-Torres, A. J., and G. Centeno. 2007. “Scheduling with Flexible Resources in Parallel Workcenters to Minimize MaximumCompletion Time.” Computers and Operations Research 34 (1): 48–69.

Xu, J., X. Xu, and S. Q. Xie. 2011. “Recent Developments in Dual Resource Constrained (DRC) Systems Research.” EuropeanJournal of Operational Research 215 (2): 309–318.

Yazdani, M., M. Amiri, and M. Zandieh. 2010. “Flexible Job-shop Scheduling with Parallel Variable Neighborhood SearchAlgorithm.” Expert Systems with Applications 37 (1): 678–687.

International Journal of Production Research 2529

Dow

nloa

ded

by [

Lin

naeu

s U

nive

rsity

] at

04:

58 1

8 O

ctob

er 2

014