Solving Distributed and Flexible Job-Shop Scheduling ... - IEEE Xplore

5 downloads 43184 Views 6MB Size Report
1Institute of Engineering Science and Technology, National Kaohsiung First University of Science and Technology, Kaohsiung ... only the information sought in FJSPs, but also the selection ..... YEH-PENG CHEN received the B.S. degree in.
Received November 22, 2014, accepted December 27, 2014, date of publication January 7, 2015, date of current version January 14, 2015. Digital Object Identifier 10.1109/ACCESS.2015.2388486

Solving Distributed and Flexible Job-Shop Scheduling Problems for a Real-World Fastener Manufacturer TUNG-KUAN LIU1 , YEH-PENG CHEN1 , AND JYH-HORNG CHOU1,2,3 , (Fellow, IEEE)

1 Institute

of Engineering Science and Technology, National Kaohsiung First University of Science and Technology, Kaohsiung 824, Taiwan of Electrical Engineering, National Kaohsiung University of Applied Science, Kaohsiung 807, Taiwan of Healthcare Administration and Medical Informatics, Kaohsiung Medical University, Kaohsiung 807, Taiwan

2 Department 3 Department

Corresponding author: J.-H. Chou ([email protected]) This work was supported in part by the National Science Council of Taiwan under NSC 102-221-E-151-021-MY3 and in part by Anchor Fasteners Company, Ltd., Kaohsiung, Taiwan.

ABSTRACT Over the last few decades, there has been considerable concern over the multifactory manufacturing environments owing to globalization. Numerous studies have indicated that flexible job-shop scheduling problems (FJSPs) and the distributed and FJSPs (DFJSPs) belong to NP-hard puzzle. The allocation of jobs to appropriate factories or flexible manufacturing units is an essential task in multifactory optimization scheduling, which involves the consideration of equipment performance, technology, capacity, and utilization level for each factory or manufacturing unit. Several variables and constraints should be considered in the encoding problem of DFJSPs when using genetic algorithms (GAs). In particular, it has been reported in the literature that the traditional GA encoding method may generate infeasible solutions or illegal solutions; thus, a specially designed evolution process is required. However, in such a process, the diversity of chromosomes is lost. To overcome this drawback, this paper proposes a refined encoding operator that integrates probability concepts into a real-parameter encoding method. In addition, the length of chromosomes can be substantially reduced using the proposed algorithm, thereby, saving computation space. The proposed refined GA algorithm was evaluated with satisfactory results through two-stage validation; in the first stage, a classical DFJSP was adopted to show the effectiveness of the algorithm, and in the second stage, the algorithm was used to solve a real-world case. The real-world case involved the use of historical data with 100 and 200 sets of work orders of a fastener manufacturer in Taiwan. The results were satisfactory and indicated that the proposed refined GA algorithm could effectively overcome the conflicts caused by GA encoding algorithms. INDEX TERMS Genetic algorithms, probability-based encoding operator, distributed and flexible job-shop, flexible job-shop, scheduling problems. I. INTRODUCTION

The emergences of globalized business models and advances in technology have led to drastic changes in the manufacturing environment. For closer proximity to the market or manufacturing resources, enterprises have evolved from a single factory to a multi-factory manufacturing environment, and this has led to the appropriate scheduling system changing from a job-shop scheduling system to a flexible job-shop scheduling system and further to a distributed and flexible job-shop scheduling system. Distributed and flexible job-shop scheduling problems (DFJSPs) correspond to situations where production activities are carried out in several factories or manufacturing 1598

units and the manufacturing units can be either geographically distributed or independent flexible manufacturing units [1], [2], [4], [7]. In practice, it can easily be determined whether manufacturing units are geographically distributed or independent flexible units, manufacturing units such as those in the integrated circuit packaging industry have several factories geographically distributed, whereas in the case of flexible manufacturing units, several units are located within a single building. In classical flexible job-shop scheduling problems (FJSPs), it involves following problems: 1) the operation sequence for each machine; 2) the precedence constraints for the operations involved in a job; and 3) machine selection with due

2169-3536 2015 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

VOLUME 2, 2014

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

consideration of machine capability constraints. DFJSPs can be considered as an extension of FJSPs, and they involve not only the information sought in FJSPs, but also the selection of suitable factories or flexible manufacturing units since assigning specific jobs to different factories results in dissimilar production schedules, in which influences the supply chain [2]. DFJSPs are NP-hard problems, and it is challenging to solve them effectively. Chan et al. conducted a comprehensive survey of the problems associated with the use of genetic algorithms (GAs) for solving FJSPs [8], [9], and they pointed out that two of them were critical success factors. The first problem is how to encode a solution of the problem into a chromosome. Owing to complex constraints of the problem, a simple binary string does not affect at all, which leads to infeasible or even illegal solutions. The second problem is how to enhance the genetic search performance when the GA is integrated with a conventional heuristic method [8], [9]. Several encoding methods have been introduced in [8]–[10]. Over the last decade, a numerous emerging encoding methods (chromosome representation) methods have been presented Mesghouni et al. [13] proposed a matrix type of chromosome representation in which each row is an ordered sequence for each job; each element of the row contains two terms, the machine processing operation, and the starting time of this operation. In the study of Chen et al. [14] the chromosome consists of two elements, job routing and the sequence of operations on each machine. Both the aforementioned encoding methods require a repair mechanism [10]. Wang et al. [6] proposed a new machine assignment strategy for use in a GA for improving the initial population when the best solution for the population does not improve appreciably. Kacem et al. [12] presented an assignment table representation of the chromosome. Ho et al. [11] divided the chromosome into two strings, with one string represents the operation order, the other string involved an array of binary values and represented the machine. Furthermore, the use of binary-coded string increased the memory space [10]. Zhang et al. [10] divided a chromosome into two partsmachine selection and operation sequence, and used an array of integer values to represent the two parts. The corresponding processing time depending on the sequence of a given chromosome, and the index mechanism was designated such that infeasible solutions were avoided. By contrast, it needs a larger encoding space. Li and Zhang [17] integrated a two-dimensional matrix encoding method that did not require a repair mechanism for solving the FJSP. However, encoding solutions of a problem in chromosomes is a major problem issue when using GAs for solving FJSPs. Cheng et al. suggested considering three critical factors for evaluating the performance of encoding methods: (1) the feasibility of a chromosome, (2) the legality of a chromosome, and (3) the uniqueness of mapping [8]. However when the traditional method of encoding the chromosome is used for solving the DFJSP, a problem arises; job operations are incorrectly assigned to unsuitable factories or machines. VOLUME 2, 2014

Therefore, it becomes necessary correctly assign the job operations during the process of evolution (the feasibility of a chromosome). Over the last few decades, determining an optimal schedule in various job-sop problems and FJSPs has received considerable attention which is reflected by the literature. Several methods have been presented for determining the optimal schedule, such as a heuristic method, probabilistic search methods, and emergence genetic algorithms (GAs) [8], [9]. Because GAs are capable of solving FJSPs, they have been widely used in recent years, numerous studies using GAs to solve FJSPs have been reported [5], [6], [10]–[12], [15]–[17]. Compared with FJSPs, Distributed and flexible job-shop scheduling optimization problems have not yet been widely investigated as widely as FJSPs have; a few pioneer scholars have conducted excellent studies on DFJSPs. Jia et al. [4] presented a modified GA capable of solving both traditional scheduling problems and DFJSPs, and they obtained the satisfactory results were obtained in various scheduling objectives. Chan et al. [2] proposed the multi-factor scheduling optimization problems along with a refined GA solution, without considering the transport time; they proposed the use of a dominated gene operator in the crossover step of a GA for solving the problem of multi-factory scheduling optimization. Empirical results based on five factories showed that the proposed model showed high performance. The following year, Chan et al. [1] used a GA with dominant genes for solving the problem of machine maintenance constraint in a DFJSP, and derived substantial benefits compared with other existing approaches. Giovanni & Pezzella [7] focused on applying the GA to the newly emerging DFJSPs, and they considered the transport time and the various constraints. For minimizing the global make span over all the flexible manufacturing units and for solving multi-factory scheduling problems, they propose combining local search global search, and hybrid evolution methods of GAs, and they obtained satisfactory results for a classical of a DFJSP. From the preceding discussions, two conclusions can be drawn: 1) When a GA is used for solving FJSPs and DFJSPs, the chromosome encoding method of the GA is a key factor that should be considered for avoiding infeasible solutions, especially in more complex DFJSP; 2) The use of evolutionary combination methods (the crossover and the mutation methods) can enhance the effectiveness of the GA used for solving DFJSPs. Therefore a simply encoding method and an evolutionary combination method (two types of crossover and two types of mutation) are proposed in this article, for overcoming the conflict during the evolution process. The method involves the use of an available resource table and they can effectively avoid an infeasible solution (a solution outside the solution space). For example, suppose that operation O3,3 in Table 1 was assigned to Factory 1 (F1) for the initial chromosome. The traditional encoding method may assign this operation to Factory 2 (F2) for processing after the evolution of the GA, leading to an invalid solution since there 1599

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

TABLE 1. A example of a DFJSP.

is no machine that can handle operation O3,3 in Factory 2. In addition, the computation spaces of chromosomes can substantial decrease, because the length of the chromosome as length as the number of operations in proposed algorithm, and the length of chromosome will not change along with the amount of scheduling variables. In addition, an evolutionary combination method of GA was adopted for increasing the probability of finding or approaching an optimal solution. In this paper, two-stage validation was conducted. In the first, a classical DFJSP was adopted to show the effectiveness of proposed algorithm, and in the second stage, the proposed algorithm was used for solving a real-world problem which involved historical data consisting of 100 and 200 sets of work orders of a fastener manufacturer in Taiwan. The results indicated that the proposed algorithm can effectively solve the conflicts caused by the encoding problem of GAs. In addition, substantial benefits were yielded compared with manual scheduling involving the historical data implying that manufacturers can drive more benefits and achieve higher yields by using the proposed algorithm. This paper is organized as follows: In the first section, we introduce the motivation for the development of proposed GA is presented along with the results. In the second section, the definition and constraints of classical DFJSPs are introduced. The third section, presents the proposed probability encoding operator, and the fourth section discusses the results of two numerical data sets, and compares the results of proposed algorithm with the results of manual scheduling for historical data. The fifth section provides the conclusion and future prospects. II. DISTRIBUTED AND FLEXIBLE JOB-SHOP SCHEDULING PROBLEMS A. DEFINITION AND CONSTRAINS

Distributed and flexible job-shop scheduling optimization problems refer to the scheduling in distributed manufacturing environments. When the enterprise receives a number many jobs, it has to allocate the jobs to a suitable factory and issue. The production schedule, each job involves several sequences of operations and can be processed in a set of 1600

specific machines then completed jobs are then delivered to a center. In solving the problems, it is assumed that changes in the job order are not permitted after the production schedule is prepared. The processing time of each operation is fixed and given, and machine shutdown, damage and material shortage are not considered. Once the job operation starts, it cannot be terminated, and reprocessing of interrupts is not allowed. The objective function and constraints are expressed using the following notations and formulations: Fm = {F1 , F2 , . . . , Fm } is a set of factories or flexible manufacturing units. Ji = {J1, J2 , . . . , Ji } is a set of jobs. Oi,j = Oi,1 , Oi,2 , . . . , Oi,j is a sequence of operations in Ji . Um,k = {Mm1 , Mm2 , . . . , Mmk } is a set of machines. di,m is the time of delivery of job i from factory m to the center. Pi,j,m,k represents the processing time of operation j of job i in a machine of Fm . PSi,j,k is the starting time of the operation j of job i in machine k. PEi,j,k is the ending time of the operation j of job i in machine k. Ti,j ,m,k represents the start time of operation j of job i in machine of Fm .  1, if job i allocated to factory m ai,j,m = 0, otherwise

Xi,j,k,h,m

 1, if operation j of job i occupied time    slot h on machine k in factory m =   0, otherwise

In the problem, the objective function can be formulated as follows: Min.C max   n X n   X  = Min. Max. Ti,j,m,k + Pi,j,m,k + di,m (1)   i=1 j=1

subject to: X

ai,j,m ≥ 1

(2)

j

Pi,j,k,m 6 = Pi,j,l,m , X

where l ∈ k

(3)

Xi,j,k,h,m ≤ 1

(4)

Xi,j,k,h,m ≤ 1

(5)

hm

X i,j,h

PSi,j,k ≥ PEi,j−1,k

(6)

In the above constraints, constraint (2) implies that if a job is assigned to a factory, and then all the operations of this job have to be processed at the same factory. VOLUME 2, 2014

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

Constraint (3) indicates that every factory is equipped with different equipment and technology, thus leading to different processing time for an operation. Constraint (4) states that each operation can be carried out on only one machine in each time slot. Constraint (5) implies that each machine carries out only one operation in each time slot, and Constraint (6) states that a job operation can be carried out only after the end of the previous job operation. III. PROBABILITY-BASED ENCODING OPERATOR

GAs are used for optimization and can produce offspring with favorable levels of adaptability by using genetic rules; therefore, GAs have been widely used for solving scheduling optimization problems. The shortage of traditional GA encoding methods may cause jobs to be incorrectly assigned to factories or machines, and subsequently, a procedure to rectify the incorrect assignment must be used. To overcome this shortage, a simple and easy to use encoding operator is introduced in this section, and it differs from the traditional GA encoding method. The encoding operator is capable of handling conflicts caused by the encoding method and retaining the diversity of chromosomes. Probability concepts were integrated to devise a real-parameter encoding method for generating the initial chromosome. Details of the different steps in the refined GA algorithm are as follows: Step 1 (Creating a List of Available Resources): The first step is to create a list of available resources on the basis of the relationship among factories, jobs, and machines. This step is the foundation of the encoding step and feasible solution spaces are defined in this step for ensuring that an infeasible solution is not generated; therefore, an alternative solution must be developed in this step. The detailed flow is as follows and the pseudo-code is shown in Fig. 1. Sub-Step 1: The following  parameters are defined U = Mm,1 , Mm,2 , . . . , Mm,k is the set of all machines, Ui,j = M,m,1 , Mm,2 , . . . , Mm,k is the set of machines that operation Oi,j , Vm,k =  can handle a specific Oi,j |i = 1 to i; j = 1 to j is the set of feasible operations assigned to machine Mm,k , (where m represents the number of factories, k represents the number of machine, i is the job number, and j is the operation number); and Num = {1, 2, . . . , k} is the number of machines. Sub-Step 2: If an operation Oi,l belongs to the set of feasible operations Vm,k of Mm,k , then place this machine Mm,k in the set Ui,j of feasible machines. Sub-Step 3: Repeated until Num = 0. If Num = 0, then go to next operation Oi,l . Sub-Step 4: Repeated, until all of operations Oi,l are completed. For example in Table 1, five types of information are included, factory set, machine set in each factory, job set, operation set, and processing times. The first and second rows list the factory set and machine set, respectively, while the first, second, and third columns list the job set, operation set, and the time of delivery from the factory to the center, respectively. The mapping relationship among jobs, operations, VOLUME 2, 2014

FIGURE 1. A pseudo-code of proposed refined encoding method.

factories, and machines can be determined when the list of available resources is completed. For example, operation O1,1 can be assigned to Factory F1 , F2 , or F3 for processing since three machines (M1 , M2 and M 3) can handle operation O1,1 in Factory F1 and two machines M1 , M3 are suitable in Factory F2 (M1 and M2 ) and Factory F3 (M1 and M2 ), The final list of available resources based on Table 1 is summarized in Table 2. Step 2 (Encoding Jobs): The second step is to encode the integer part in the gene of a chromosome according to the number of jobs and the number of job operations. Table 3 presents a chromosome that was created by using the proposed refined encoding operator based on Table 1, and this sample is used to illustrate the encoding procedure of the refined encoding operator. The gene arrangement represents the sequence of job operation and it indicates that all the operations of a given job are represented by the same real-parameter, which depends on a randomly generated probability; the gene arrangement is then interpreted according to the sequence of occurrence of job operations in a given chromosome. For example, if Job 1 (J1 ) comprises three operations O11 , O12 and O13 , it is represented as three gene 1(111) in the chromosome; and if Job 2 (J2 ) comprises two operations O21 and O22 , then it is represented as two gene 2(22) in the chromosome. For example the combination 1601

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

TABLE 2. Available resource list.

of all the genes in one chromosome can be written as 11122333455. The sequence of job operations for a chromosome is then broken and a new sequence is randomly generated. A Job number may appear several times in the sequence of a chromosome; the first appearance represents the first operation of the job J1 and so on. For example, suppose that the sequence of a chromosome is 12213345351. The first gene 1 represents the first job and first operation, the fourth gene 1 represents the first job and second operation, the last gene 1 of the chromosome denotes the first job and third operation. Step 3 (Encoding Candidate Factories and Machine Selection): After performing the aforementioned steps, the next step is to assign jobs to suitable factories and selecting machines, When the genes are randomly dispersed, the order of the dispersed genes is used to determine the operation order. Subsequently a decimal between 0 and 1 is randomly generated to serve as a predefined threshold for factory selection and machine selection. As shown in Table 3, the second gene of the chromosome is 1.52, which represents Job 1 and operation 1 or O1,1 . Three factories (F1 , F2 , and F3 ) can support the gene, and the selection probabilities of the three factories are equal at 33%. However, because the decimal of the genes (0.52) is in the range [0.33 − 0.66), Job 1 is assigned to Factory 2 for processing. Subsequently, the machine wheel selection method is used for selecting the

suitable machines. In this case two machines M2,1 and M2,3 can support the manufacturing activity required for the first operation of Job 1 or O1,1 , and the probabilities of M2,1 and M2,3 for selection are both 50%; because the threshold of the decimal part of the gene is 0.52, which is allocated in the range [0.5 − 1), it is within the range selected on the third machine M2,3 in F2 . The final chromosome representation is presented in Table 3. The integer part of each gene represents the job number, and the decimal part of each gene represents the probability of being assigned to a suitable factory and a suitable machine. The two parts are determined using the roulette wheel method. For instance, Table 3 shows that the first gene in the chromosome is 5.32, which represents the fifth job and first operation, and that the eighth gene in the chromosome is 5.51, which represents the fifth job and second operation. IV. STRUCTURE OF THE PROPOSED IMPROVED GENETIC ALGORITHM A. REFINED GENETIC ALGOEITHM WITH A PROBABILITY-BASED ENCODING OPERATOR

In this section, the procedure of the proposed refined GA is presented (Fig. 2). The details of the proposed algorithm are as follows: Step 0: Parameter setting. Input: population size M , offspring size N , crossover rate Pc , mutation rate Pm , and generation number G. Output: the fitness value and a chromosome. Step 1: The initial population M is generated using the refined encoding operator presented in Section III , and this step is repeated until the required population size is reached. The major procedures are as follows: creating an available resource table, encoding the jobs and operations by randomly generating a value between 0 and 1, and setting this value as the threshold for factory and machine selection. Step 2: Mapping to a time schedule according to the operation assignment and machine number of the chromosome shown in Table 2. A Gantt chart is then constructed, and the fitness value is calculated. Step 3: The selection operation performed using the roulette wheel approach is repeated until reached offspring size N is repeated.

TABLE 3. Final chromosome representation.

1602

VOLUME 2, 2014

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

Step 4: The crossover operation is performed; and the probability of crossover is determined from the crossover rate Pc . If the random value of a chromosome pair is less than Pc , then crossover operation is performed. Step 5: Crossover in machine selection and factory assignment. A two-point crossover method is used for randomly generating two crossover points; the number of crossover points should be less than the chromosome’ length. The crossover operation is then repeated. Step 6: Crossover in job operation assignment, the precedence preserving order-based crossover (POX) is used for the operation assignment. Step 7: Mutation in factory assignment and machine selection. The shortest processing time for the operation is set for performing mutation of the factory assignment and machine selection, and a decimal number is randomly generated for each chromosome. If the decimal number of a chromosome is smaller than the pre-set mutation rate Pm , and then the gene with the shortest processing time is chosen and mutation is repeated until the required offspring size N is reached. Step 8: Mutation in job operation assignment. A random method is used for performing factory assignment and machine selection. A decimal number is randomly generated for each chromosome, if the decimal number of a chromosome is smaller than Pm , then mutation is repeatedly performed for choosing a chromosome. The mutation is repeated until the required offspring size N is reached. Step 9: Termination conditions Since it is impossible to find the optimal solution for a considerable number of orders, for a real scheduling system, the number of iterations is used as the termination condition in this study. B. FRAMEWORK OF THE PROPOSED REFINED GENETIC ALGORITHM

The framework of the proposed GA is illustrated in Fig. 2. The first step is generates the list of available resource according to the proposed probability-based encoding operator in Section III . This operator is used to avoid an infeasible solution, and it is simple and quite easy to use. Two-type crossover operators and two-type mutation also were used. The framework of proposed genetic algorithm is illustrated in Fig. 2. V. EMPIRICAL RESULTS A. PRACTICAL EXPERIMENTS

The improved GAs with a refined encoding operator proposed in this paper was implemented on a personal computer installed with a 64-bit Windows 7. The hardware specificaR core i7-2600 CPU and an tions included a 3.4-GHZ Intel VOLUME 2, 2014

FIGURE 2. Procedure of the proposed refined GA.

8 GB RAM; the system development tool Matlab was also used. In this section, two-stage validation conducted in the current study is discussed. In the first stage which was performed to show the effectiveness of the proposed algorithm, a classical DFJSP [7] involving 3 factories, 5 jobs, 11 operations and 8 machines was considered. In the second stage, the proposed algorithm was used for solving a realworld problem, 100 and 200 sets of work orders of a middle size fastener manufacturer (http://www.anchortast.com.tw) in Taiwan were used for evaluating the performance of the proposed algorithm, and the results were compared with manual scheduling of the historical data. In addition to the makespan, two indicators were used for evaluating the performance of the proposed algorithm for the real-world problem: 1) the number of molds replacements, and 2) the average load rate of a machine. B. RESULTS AND DISCUSSION

In the first stage, the results indicated that the optimal makespan for the classical DFJSP involving 3 factories, 5 jobs, 11 jobs operations, and 8 machines was 9 time units (6 time units + 3 time units for delivery), which was better than the optimal makespan of 11 time units achieved by Giovanni and Pezzella [7]; the time table is shown in Fig. 3. This stage showed the effectiveness of proposed algorithm. 1603

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

FIGURE 3. Time table obtained using the proposed algorithm for the DFJS instance in [7] (excluded delivery time).

TABLE 4. Comparison between the proposed algorithm and manual scheduling for the historical data.

FIGURE 4. Bar chart for a comparison between manual scheduling and refined GA algorithm for the 100 and 200 sets of orders.

FIGURE 5. Comparison of results of manual scheduling and automated scheduling for the 100 sets of orders. (a) The Gantt chart of refined GA algorithm scheduling. (b) The Gantt chart of manual scheduling.

In the second stage, a historical data with 100 and 200 sets of work orders of a fastener manufacturer in Taiwan were used and the proposed GA was compared with manual scheduling. Table 4 and Fig. 4 indicate that the use of the proposed GA for scheduling the 100 sets of work orders, decreased the completion time from 104 days, 17hours, and 17minutes to 102 days, and 39 minutes resulting in an appreciable reduction of 3,878 minutes (150,797 minutes - 146,919 minutes = 3,878 minutes). The mold replacement frequency decreased from 61 to 55 times and the average machine load rate (in units of H/set) decreased from 87 to 84Hrs, saving 3 hours per machine per year. The use of the proposed GA for the 200 sets of work 1604

orders decreased the total order completion time from 227 days 18 hours, and 28 minutes to 222 days 19 hours, and 27 minutes resulting in an appreciable reduction of 7,141 minutes (327,988 minutes - 320, 847 minutes = 7,141 minutes). The mold replacement frequency decreased from 125 times to 109 times and the average machine load rate (H / set) decreased from 188 to 184hours. A bar chart and Gantt charts showing a comparison between the refined GA algorithm scheduling and manual scheduling for the 100 and 200 sets of orders are shown in Figure 4, 5, and 6. Thus, the aforementioned results indicate that the proposed algorithm not only outperforms manual scheduling in term of solution quality but also shows substantial improvement at the level of scheduling performance. In addition, the shorter makespan, the smaller number of mold replacements, and the lower average machine load rate lead to an increase in VOLUME 2, 2014

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

FIGURE 6. Comparison of results of manual scheduling and automated scheduling for the 200 sets of orders. (a) The Gantt chart of refined GA algorithm scheduling. (b) The Gantt chart of manual scheduling.

production capacity, thereby extending the life of machines, and decreasing their maintenance cost. Therefore, the manufacturer (http://www.anchortast.com.tw) can derive substantial benefits and enhance their competitiveness. VI. CONCLUSIONS

In this article we introduce an improved GA to solve DFJS scheduling problem and propose a refinement encoding method to encode the solutions of problem into the initial chromosomes, successful overcomes the drawback of traditional GA, meanwhile it is capable of solving the problem of invalid assigns operation to unsuitable flexible manufacturing units or machines. In addition, an improved GA approach has been effectively applied to either a classical DFJSP or a realworld case in practice, empirical results indicate our approach can indeed render better scheduling outcome. It can be used to the problems of either FJSP or DFJSP, even more multivariable scheduling problems. However, many factors that influence the final results of scheduling have not been investigated so far, such as uncertainties and rescheduling because of disruptions. These will be examined in a future study.

[7] L. D. Giovanni and F. Pezzella, ‘‘An improved genetic algorithm for the distributed and flexible job-shop scheduling problem,’’ Eur. J. Oper. Res., vol. 200, no. 2, pp. 395–408, Jan. 2010. [8] R. Cheng, M. Gen, and Y. Tsujimura, ‘‘A tutorial survey of job-shop scheduling problems using genetic algorithms—I: Representation,’’ Comput. Ind. Eng., vol. 30, no. 4, pp. 983–997, Sep. 1996. [9] R. Cheng, M. Gen, and Y. Tsujimura, ‘‘A tutorial survey of job-shop scheduling problems using genetic algorithms, part II: Hybrid genetic search strategies,’’ Comput. Ind. Eng., vol. 36, no. 2, pp. 343–364, Apr. 1999. [10] G. Zhang, L. Gao, and Y. Shi, ‘‘An effective genetic algorithm for the flexible job-shop scheduling problem,’’ Expert Syst. Appl., vol. 38, no. 4, pp. 3563–3573, Apr. 2011. [11] N. B. Ho, J. C. Tay, and E. M.-K. Lai, ‘‘An effective architecture for learning and evolving flexible job-shop schedules,’’ Eur. J. Oper. Res., vol. 179, no. 2, pp. 316–333, Jun. 2007. [12] I. Kacem, S. Hammadi, and P. Borne, ‘‘Approach by localization and multiobjective evolutionary optimization for flexible job-shop scheduling problems,’’ IEEE Trans. Syst., Man, Cybern. C, Appl. Rev., vol. 32, no. 1, pp. 1–13, Feb. 2002. [13] K. Mesghouni, S. Hammadi, and P. Borne, ‘‘Evolution programs for jobshop scheduling,’’ in Proc. IEEE Int. Conf. Comput. Cybern. Simulation, vol. 1. Oct. 1997, pp. 720–725. [14] H. Chen, J. Ihlow, and C. Lehmann, ‘‘A genetic algorithm for flexible jobshop scheduling,’’ in Proc. IEEE Int. Conf. Robot. Autom., vol. 2. Detroit, MI, USA, May 1999, pp. 1120–1125. [15] C. Wang, ‘‘The research of multi-objective flexible job shop scheduling based on genetic-tabu search algorithm,’’ China Mech. Eng., vol. 32, no. 2, pp. 329–335, 2012. [16] L.-H. Zhao and F.-Q. Deng, ‘‘New neighborhood searching methods for FJSP and corresponding algorithm,’’ Syst. Eng. Electron., vol. 32, no. 2, pp. 1663–1666, 2010. [17] T. K. Li, W.-L. Wang, and W.-X. Zhang, ‘‘Solving flexible Job Shop scheduling problem based on cultural genetic algorithm,’’ Comput. Integr. Manuf. Syst., vol. 16, no. 4, pp. 861–866, 2010.

REFERENCES [1] F. T. S. Chan, S. H. Chung, L. Y. Chan, G. Finke, and M. K. Tiwari, ‘‘Solving distributed FMS scheduling problems subject to maintenance: Genetic algorithms approach,’’ Robot. Comput.-Integr. Manuf., vol. 22, nos. 5–6, pp. 493–504, Oct./Dec. 2006. [2] F. T. S. Chan, S. H. Chung, and P. L. Y. Chan, ‘‘An adaptive genetic algorithm with dominated genes for distributed scheduling problems,’’ Expert Syst. Appl., vol. 29, no. 2, pp. 364–371, Aug. 2005. [3] D. E. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning. Boston, MA, USA: Addison-Wesley, 1989. [4] H. Z. Jia, J. Y. H. Fuh, A. Y. C. Nee, and Y. F. Zhang, ‘‘A modified genetic algorithm for distributed scheduling problems,’’ J. Intell. Manuf., vol. 15, nos. 3–4, pp. 351–362, 2003. [5] L. Li and J.-Z. Huo, ‘‘Multi-objective flexible job-shop scheduling problem in steel tubes production,’’ Syst. Eng.-Theory Pract., vol. 29, no. 8, pp. 117–126, Aug. 2014. [6] W. Shuang-xi, Z. Chao-yong, and J. Liang-liang, ‘‘A hybrid genetic algorithm for flexible job-shop scheduling problem,’’ Adv. Mater. Res., vols. 889–990, pp. 1179–1184, 2014.

VOLUME 2, 2014

TUNG-KUAN LIU received the B.S. degree in mechanical engineering from National Akita University, Akita, Japan, in 1992, and the M.S. and Ph.D. degrees in mechanical engineering and information science from National Tohoku University, Sendai, Japan, in 1994 and 1997, respectively. He is currently a Professor with the Department of Mechanical and Automation Engineering, National Kaohsiung First University of Science and Technology, Kaohsiung, Taiwan. From 1997 to 1999, he was the Senior Manager with the Institute of Information Industry, Taipei, Taiwan. From 1999 to 2002, he was also an Assistant Professor with the Department of Marketing and Distribution Management, National Kaohsiung First University of Science and Technology. His research and teaching interests include artificial intelligence, applications of multiobjective optimization genetic algorithms, and integrated manufacturing and business systems.

1605

T.-K. Liu et al.: Solving DFJSPs for a Real-World Fastener Manufacturer

YEH-PENG CHEN received the B.S. degree in information engineering from I-Shou University, Kaohsiung, Taiwan, in 1996, and the M.S. degree in information management science from the National Kaohsiung First University of Science and Technology, Kaohsiung, in 2003, where he is currently pursuing the Ph.D. degree with the Institute of Engineering Science and Technology. His research interests include artificial intelligence, applications of multiobjective optimization genetic algorithms, power system, and data mining.

1606

JYH-HORNG CHOU (SM’04–F’15) received the B.S. and M.S. degrees in engineering science from National Cheng-Kung University, Tainan, Taiwan, in 1981 and 1983, respectively, and the Ph.D. degree in mechatronics engineering from National Sun Yat-sen University, Kaohsiung, Taiwan, in 1988. He is currently the Chair Professor with the Department of Electrical Engineering, National Kaohsiung University of Applied Sciences, Kaohsiung, and the Distinguished Professor with the Institute of Electrical Engineering, National Kaohsiung First University of Science and Technology, Kaohsiung. He has co-authored three books, and authored over 255 refereed journal papers. He also holds six patents. His research and teaching interests include intelligent systems and control, computational intelligence and methods, automation technology, robust control, and quality engineering. He was a recipient of the 2011 Distinguished Research Award from the National Science Council of Taiwan, the 2012 IEEE Outstanding Technical Achievement Award from the IEEE Tainan Section, the Research Award and the Excellent Research Award from the National Science Council of Taiwan 14 times, and numerous academic awards/honors from various societies. He is a fellow of the Institution of Engineering and Technology, the Chinese Automatic Control Society, the Chinese Institute of Automation Engineers, and the Chinese Society of Mechanical Engineers.

VOLUME 2, 2014