solving an industrial shop scheduling problem using genetic algorithm

6
Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm Ali Mokhtari Moghadam 1,a* , Kuan Yew Wong 1,b , Hamed Piroozfard 1,c , Ali Derakhshan Asl 1,d and Tiurmai Shanty Hutajulu 2,e 1 Department of Manufacturing and Industrial Engineering, Faculty of Mechanical Engineering, Universiti Teknologi Malaysia, UTM Skudai 81310, Johor, Malaysia 2 Department of Petroleum Engineering, Faculty of Petroleum and Renewable Energy Engineering, Universiti Teknologi Malaysia, UTM Skudai 81310, Johor, Malaysia a [email protected], b [email protected], c [email protected], d [email protected], e [email protected] Keywords: Scheduling; genetic algorithm; industrial shop; flexible job shop Abstract. Spool fabrication shop is an intermediate phase in the piping process for construction projects. The delivery of pipe spools at the right time in order to be installed in the site is very important. Therefore, effective scheduling and controlling of the fabrication shop has a direct effect on the productivity and successfulness of the whole construction projects. In this paper, a genetic algorithm (GA) is developed to create an active schedule for the operational level of pipe spool fabrication. In the proposed algorithm, an enhanced solution coding is used to suitably represent a schedule for the fabrication shop. The initial population is generated randomly in the initialization stage and precedence preserving order-based crossover (POX) and uniform crossover are used appropriately. In addition, different mutation operators are used. The proposed algorithm is applied with the collected data that consist of operations processing time from an industrial fabrication shop. The results showed that by using GA for scheduling the fabrication processes, the productivity of the spool fabrication shop has increased by 88 percent. Introduction Scheduling and sequencing have a significant effect on the productivity of a pipe spool fabrication shop (PSFS). Therefore, some researchers have developed simulation models for scheduling some processes in a shop floor based on the scheduling rules [1, 2]. However, these rules achieve low quality solutions in comparison with meta-heuristic techniques [3]. In addition, most of the scheduling problems are well-known NP-hard problems and therefore using approximate algorithms for solving these combinatorial problems has increased during the past decades. In this regard, among other meta-heuristic algorithms genetic algorithms (GAs) have received the most attention from many researchers and have been widely applied for solving real- world optimization problems [12]. Gen et al. [5] coded the chromosome for a flexible job-shop scheduling problem (FJSP) with two vectors: (1) machine selecting vector and (2) operation sequence vector. In order to transform a schedule to an active schedule, Gao et al. [6] proposed a priority-based decoding approach in the initialization stage. The initialization of population in an evolutionary algorithm like genetic algorithms is very important, due to the effect on convergence speed and consequently final solution quality [7]. In this regard, Kacem [8], introduced an “approach by localization” which is based on the jobs sequencing list to enhance the quality of initial solutions. Pezzella et al. [9] applied the integration of different methods for producing the initial population in GA. Zhang et al. [10] have designed global selection and local selection based on the jobs sequencing for generating initial solutions with high quality. Because of the precedence constraints between operations in a job-shop scheduling problem (JSP), Lee et al. [11] developed the precedence preserving order-based crossover (POX). Vaghefinezhad and Wong [12] have Advanced Materials Research Vol. 845 (2014) pp 564-568 Online available since 2013/Dec/04 at www.scientific.net © (2014) Trans Tech Publications, Switzerland doi:10.4028/www.scientific.net/AMR.845.564 All rights reserved. No part of contents of this paper may be reproduced or transmitted in any form or by any means without the written permission of TTP, www.ttp.net. (ID: 128.173.127.127, Virginia Tech University, University Libraries, Blacksburg, USA-23/08/14,21:14:45)

Upload: tiurmai

Post on 17-Feb-2017

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm

Solving an Industrial Shop Scheduling Problem

Using Genetic Algorithm

Ali Mokhtari Moghadam1,a*, Kuan Yew Wong 1,b, Hamed Piroozfard1,c, Ali Derakhshan Asl1,d and Tiurmai Shanty Hutajulu2,e

1Department of Manufacturing and Industrial Engineering, Faculty of Mechanical Engineering, Universiti Teknologi Malaysia, UTM Skudai 81310, Johor, Malaysia

2Department of Petroleum Engineering, Faculty of Petroleum and Renewable Energy Engineering, Universiti Teknologi Malaysia, UTM Skudai 81310, Johor, Malaysia

[email protected], [email protected], [email protected], [email protected], [email protected]

Keywords: Scheduling; genetic algorithm; industrial shop; flexible job shop

Abstract. Spool fabrication shop is an intermediate phase in the piping process for construction

projects. The delivery of pipe spools at the right time in order to be installed in the site is very

important. Therefore, effective scheduling and controlling of the fabrication shop has a direct effect

on the productivity and successfulness of the whole construction projects. In this paper, a genetic

algorithm (GA) is developed to create an active schedule for the operational level of pipe spool

fabrication. In the proposed algorithm, an enhanced solution coding is used to suitably represent a

schedule for the fabrication shop. The initial population is generated randomly in the initialization

stage and precedence preserving order-based crossover (POX) and uniform crossover are used

appropriately. In addition, different mutation operators are used. The proposed algorithm is applied

with the collected data that consist of operations processing time from an industrial fabrication

shop. The results showed that by using GA for scheduling the fabrication processes, the

productivity of the spool fabrication shop has increased by 88 percent.

Introduction

Scheduling and sequencing have a significant effect on the productivity of a pipe spool

fabrication shop (PSFS). Therefore, some researchers have developed simulation models for

scheduling some processes in a shop floor based on the scheduling rules [1, 2]. However, these

rules achieve low quality solutions in comparison with meta-heuristic techniques [3]. In addition,

most of the scheduling problems are well-known NP-hard problems and therefore using

approximate algorithms for solving these combinatorial problems has increased during the past

decades. In this regard, among other meta-heuristic algorithms genetic algorithms (GAs) have

received the most attention from many researchers and have been widely applied for solving real-

world optimization problems [12]. Gen et al. [5] coded the chromosome for a flexible job-shop

scheduling problem (FJSP) with two vectors: (1) machine selecting vector and (2) operation

sequence vector. In order to transform a schedule to an active schedule, Gao et al. [6] proposed a

priority-based decoding approach in the initialization stage. The initialization of population in an

evolutionary algorithm like genetic algorithms is very important, due to the effect on convergence

speed and consequently final solution quality [7]. In this regard, Kacem [8], introduced an

“approach by localization” which is based on the jobs sequencing list to enhance the quality of

initial solutions. Pezzella et al. [9] applied the integration of different methods for producing the

initial population in GA. Zhang et al. [10] have designed global selection and local selection based

on the jobs sequencing for generating initial solutions with high quality. Because of the precedence

constraints between operations in a job-shop scheduling problem (JSP), Lee et al. [11] developed

the precedence preserving order-based crossover (POX). Vaghefinezhad and Wong [12] have

Advanced Materials Research Vol. 845 (2014) pp 564-568Online available since 2013/Dec/04 at www.scientific.net© (2014) Trans Tech Publications, Switzerlanddoi:10.4028/www.scientific.net/AMR.845.564

All rights reserved. No part of contents of this paper may be reproduced or transmitted in any form or by any means without the written permission of TTP,www.ttp.net. (ID: 128.173.127.127, Virginia Tech University, University Libraries, Blacksburg, USA-23/08/14,21:14:45)

Page 2: Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm

developed an integer mathematical model with a maximization objective function for a real case of

FJSP over a finite time horizon and solved it by GA.

This paper proposes a GA for the scheduling and sequencing of pipe spools in a fabrication shop.

In this paper, first the problem is explained and then the different steps of the proposed GA are

presented. After that, a pipe spool fabrication shop as a case study which deals with the scheduling

problem is discussed. Finally, the computational results and conclusion are presented.

Problem Description

The scheduling of a PSFS can be described as a set of independent spools, J={ , ,…, },

each of which consists of a sequence of operations, , , , , … , , (ℎ denotes the last operation

of job j). The operations of each spool should be performed in a predetermined sequence on a subset

of , ⊆ M (i denotes the machine index) capable machines (or workforces) from a given set of

M={ , ,…, } machines (or workforces). The problem is partially flexible, which means, a

proper subset of machines (or workforces) can perform operation , (h denotes the operation

index). Processing time of operations consists of all preparation and moving time and no sequence-

dependent setup-time. All machines and workforces are available at time 0 and they process one

spool at a time. All materials for the fabrication of spools are available at time 0. Modules of spool

can visit work centers more than once, i.e. recirculation. Each operation of spool once started must

be completed without interruption, i.e. no preemption.

The scheduling problem in a PSFS is to, at first, order the operations of spools (sequencing

problem) and then allocate them to the suitable machine or workforce (routing problem) with the

aim of minimizing makespan, i.e. the total time required for completing all spools. The makespan

can be defined as maximum {Cj}, where Cj is the completion time of spool j.

Genetic Algorithm for Scheduling of Pipe Spool Fabrication Shop

Genetic algorithm (GA) is a random search optimization technique, which is based on the

principles of genetic and natural selection. This technique was inspired by Charles Darwin’s theory

of evolution and was initially introduced by John Holland in the 1970s [4]. Based on the mechanism

of GA, first, the problem encodes into a set of strings, i.e. chromosome, which consists of several

bits. Then it operates on the strings to simulate the process of evolution [13].

Chromosome Representation and Initial Population. Each solution consists of two vectors:

operation sequencing vector and machine assignment vector. To have enough diversity in the

population, initialization is carried out in random. To do this, the operations of spools are randomly

sequenced in the operation sequencing vector and then a machine is selected randomly from the

capable machines for performing each operation (machine assignment vector). Fig. 1 shows a

feasible randomly generated solution. The length of each vector is equal to the total number of

operations of all jobs. The numbers in the operation sequencing vector are job indices. Each job j

appears in the operation sequence vector exactly times to represent its ordered operations. In

addition, the numbers in the machine assignment vector are machine indices.

GA Operators. In order to obtain a better chromosome, operators of GA such as selection,

crossover, and mutation are carried out in each generation as follows:

Selection Operator. In order to select two parents from the mating pool for reproduction by

crossover operators, Roulette Wheel Selection is applied. In addition, an individual from the mating

pool is selected randomly for reproduction by mutation operators.

Fig. 1. Chromosome representation for a scheduling problem consisting of 5 jobs and 16 machines.

Priority No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Operation Sequencing Vector 5 3 5 1 1 2 4 5 5 2 4 4 4 3 3 4 2 5 2 5 5 1 3 3 4 3 3 1 3 5 1 1 2 2

Machine Assignment Vector 1 2 4 2 4 2 2 8 9 4 4 8 9 3 5 15 8 10 9 8 15 5 9 13 16 8 15 9 16 16 10 16 12 16

Advanced Materials Research Vol. 845 565

Page 3: Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm

Crossover Operators. Because each chromosome in FJSP has two vectors; therefore, two

crossover operators, defined as sequencing operator and assignment operator, must be applied on

the operation sequencing vector and machine assignment vector, respectively. Let P1, P2, C1, and

C2 be called parent1, parent2, child1, and child2, respectively.

Sequencing Operator: The POX crossover is applied on the operation sequencing vectors of two

selected chromosomes for obtaining two offsprings in each generation without changing the

machine assignment part. To apply POX, firstly, two sub-jobs are created randomly among all jobs

and called sj1 and sj2. Then copy all genes from P1 and P2 which are involved in sj1 and sj2 to C1

and C2 in the same positions according to P1 and P2, respectively. Next, delete all genes belonging

to sj1 and sj2 from P2 and P1 and fill the empty positions in C1 and C2 orderly from the genes

which are remaining in P2 and P1, respectively.

Assignment Operator: The uniform crossover is carried out on the machine assignment vectors

of two selected chromosomes for obtaining two offsprings in each generation without changing the

operation sequencing part. To perform uniform crossover, first, we sort P1 and P2 based on

operations and record the indices. Next, a mask is created randomly and called alpha, i.e. a uniform

binary vector in the length of the chromosome. Then copy genes from P1 to C1 in such a position in

which alpha is equal to 1 and if alpha is equal to 0, copy genes from P2 to C1. In the same way

copy genes from P2 to C2 in such a position in which alpha is equal to 1 and if alpha is equal to 0,

copy genes from P1 to C2. Finally, re-sort C1 and C2 according to indices which are recorded

before.

Mutation Operators. Two mutation operators called sequencing operator and assignment

operator are applied on the operation sequencing vector and machine assignment vector of a

selected chromosome, respectively.

Sequencing Operator: Swapping operator is applied on the operation sequencing vector of a

selected chromosome for producing an offspring in each generation. To do this, two operations

from the operation sequencing vector are selected randomly and swapped with respect to the

assigned machines to produce a feasible solution.

Assignment Operator: In order to change the machine assignment part in the selected

chromosome, a mutation operator is applied which assigns a machine with the shortest processing

time among the alternative machines, if compatible.

Fitness Evaluation Function and Stopping Criterion. Chromosomes, which represent the

solutions, are evaluated based on the completion time of all spools, i.e. makespan. Since the

objective of this paper is to minimize makespan, the solutions with the lower completion time are

preferable and the best solutions are recorded. The stopping criterion is set based on the maximum

number of iterations.

Case Study

Spool fabrication is an industrial shop which produces pipe spools from raw materials such as

pipe, elbow, flange, reducer, tee, etc. Fig. 2 shows the pipe spool fabrication shop’s layout and

process. The production process of pipe spool consists of six work centers, labeled as cutting and

beveling, grinding and smoothing, fitting-up (taking), dimension and specification checking,

welding (roll and position welding), and welding checking (radiography test). The number of

machines or workforces in each work center is 2, 2, 4, 1, 6, and 1, respectively. Each spool visits

these work centers in a predefined sequence and some modules of spools must visit them more than

once in order to produce final spools. The data which consist of operations processing time of 30

spools were collected from a real fabrication shop. These spools consist of 200 operations, which

have to be performed by 16 machines or workforces.

566 Materials, Industrial, and Manufacturing Engineering Research Advances 1.1

Page 4: Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm

Computational Results

The proposed GA was coded in MATLAB and executed on a personal computer. The processor

used was an Intel Core 2 processor with a speed of 1.83 GHz and 1GB RAM. During several

experiments, different values of parameters were tested. Computational results prove that the

following values for the parameters of the proposed GA are more effective. The population size,

300; number of generations, 300; crossover probability, 0.7, and mutation probability, 0.3. After

running the GA for ten times with the above parameter values, Fig. 3 shows the best found solution

in which the makespan is decreased to 1230.3 minutes.

The total diameter inch for 30 spools is equal to 724 inches. Usually the productivity of a PSFS

is calculated based on the total length of welded diameter. According to the planning and control

project report, in average each welder in the condition in which the fabrication shop is located can

weld 25 inches of diameter per day. Hence, for welding 724 inches of diameter with 6 welders, it

takes 4.826 days to complete the selected spools; however, based on the makespan which is

obtained, all jobs (spools) can be completed in 2.563

days (1230.3 minutes / 480 minutes). Therefore, the

productivity of the fabrication shop is increased by 88

percent, which means that spools can be delivered

earlier for installation at the site. Consequently, the total

cost of fabrication shop and the whole project will be

decreased. Fig. 4 shows the scheduling Gantt chart for

operations of jobs which have to be executed on the

corresponding machines or workforces.

Conclusion

In this paper, a GA has been proposed to solve an industrial shop scheduling problem,

particularly a PSFS, with the aim of minimizing the completion time of all spools, i.e. minimizing

makespan. The results showed that the proposed GA always obtains a high quality feasible schedule

for the operational level of fabrication processes and can increase the productivity of the fabrication

shop by 88 percent.

Fig. 3. Decreasing of C-max (makespan)

for the scheduling problem.

Fig. 2. Pipe spool fabrication shop’s layout and process.

Advanced Materials Research Vol. 845 567

Page 5: Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm

References

[1] L. Song, P. Wang and S. AbouRizk, (2006). A virtual shop modeling system for industrial

fabrication shops. Simulation Modelling Practice and Theory, 14 (5) 649-662.

[2] N. Sadeghi and A. R. Fayek, (2008). A framework for simulating industrial construction

processes. Winter Simulation Conference, Miami, FL, United states. 2396-2401.

[3] M.L. Pinedo, Scheduling-Theory, Algorithms and Systems, third ed., Springer, NY, 2008.

[4] V. Sels, F. Steen and M. Vanhoucke, (2011). Applying a hybrid job shop procedure to a

Belgian manufacturing company producing industrial wheels and castors in rubber. Computers and

Industrial Engineering, 61 (3) 697-708.

[5] M. Gen, J. Gao and L. Lin, (2009). Multistage-Based Genetic Algorithm for Flexible Job-Shop

Scheduling Problem. Intelligent and Evolutionary Systems, 187, pp. 183-196.

[6] J. Gao, M. Gen and L. Sun, (2006). Scheduling jobs and maintenances in flexible job shop with

a hybrid genetic algorithm. Journal of Intelligent Manufacturing, 17 (4) 493-507.

[7] S. Rahnamayan, H.R. Tizhoosh and M.M.A Salama, (2007). A novel population initialization

method for accelerating evolutionary algorithms. Comp. & Math. with App., 53 (10) 1605-1614.

[8] I. Kacem, S. Hammadi and P. Borne, (2002). Approach by localization and multi-objective

evolutionary optimization for flexible job-shop scheduling problems. IEEE Transactions on

Systems, Man, and Cybernetics, Part C: Applications and Reviews, 32 (1) 1-13.

[9] F. Pezzella, G. Morganti and G. Ciaschetti, (2008). A genetic algorithm for the Flexible Job-

shop Scheduling Problem. Computers and Operations Research, 35 (10) 3202-3212.

[10] G. Zhang, L. Gao and Y. Shi, (2011). An effective genetic algorithm for the flexible job-shop

scheduling problem. Expert Systems with Applications, 38 (4) 3563-3573.

[11] L. Kyung-Mi, T. Yamakawa and L. Keon-Myung, (1998). A genetic algorithm for general

machine scheduling problems, Proceedings at the Second International Conference on Knowledge-

Based Intelligent Electronic Systems, 62 60-66.

[12] S. Vaghefinezhad and K.Y. Wong, (2012). A genetic algorithm approach for solving a flexible

job shop scheduling problem. International J. of Comp. Sci. Issues, 9 (3) 85-90.

[13] H. Zhou, Y. Feng and L. Han, (2001). The hybrid heuristic genetic algorithm for job shop

scheduling. Computers and Industrial Engineering, 40 (3) 191-200.

Fig. 4. Scheduling Gantt chart for the pipe spool fabrication shop.

568 Materials, Industrial, and Manufacturing Engineering Research Advances 1.1

Page 6: Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm

Materials, Industrial, and Manufacturing Engineering Research Advances 1.1 10.4028/www.scientific.net/AMR.845 Solving an Industrial Shop Scheduling Problem Using Genetic Algorithm 10.4028/www.scientific.net/AMR.845.564

DOI References

[1] L. Song, P. Wang and S. AbouRizk, (2006). A virtual shop modeling system for industrial fabrication

shops. Simulation Modelling Practice and Theory, 14 (5) 649-662.

http://dx.doi.org/10.1016/j.simpat.2005.10.012 [4] V. Sels, F. Steen and M. Vanhoucke, (2011). Applying a hybrid job shop procedure to a Belgian

manufacturing company producing industrial wheels and castors in rubber. Computers and Industrial

Engineering, 61 (3) 697-708.

http://dx.doi.org/10.1016/j.cie.2011.04.023 [5] M. Gen, J. Gao and L. Lin, (2009). Multistage-Based Genetic Algorithm for Flexible Job-Shop

Scheduling Problem. Intelligent and Evolutionary Systems, 187, pp.183-196.

http://dx.doi.org/10.1007/978-3-540-95978-6_13 [6] J. Gao, M. Gen and L. Sun, (2006). Scheduling jobs and maintenances in flexible job shop with a hybrid

genetic algorithm. Journal of Intelligent Manufacturing, 17 (4) 493-507.

http://dx.doi.org/10.1007/s10845-005-0021-x [13] H. Zhou, Y. Feng and L. Han, (2001). The hybrid heuristic genetic algorithm for job shop scheduling.

Computers and Industrial Engineering, 40 (3) 191-200. Fig. 4. Scheduling Gantt chart for the pipe spool

fabrication shop.

http://dx.doi.org/10.1016/S0360-8352(01)00017-1