Applied Soft Computing 7 (2007) 800–806 www.elsevier.com/locate/asoc
Adaptive multi-objective genetic algorithms for scheduling of drilling operation in printed circuit board industry Pei-Chann Chang a,*, Jih-Chang Hsieh b, Chih-Yuan Wang a a
Department of Industrial Engineering and Management, Yuan-Ze University, Taoyuan, Taiwan, ROC b Department of Industrial Management, Vanung University, Taoyuan, Taiwan, ROC Received 18 January 2005; received in revised form 21 November 2005; accepted 6 February 2006 Available online 27 April 2006
Abstract In this paper, a scheduling problem for drilling operation in a real-world printed circuit board factory is considered. Two derivatives of multiobjective genetic algorithms are proposed under two objectives, i.e. makespan and total tardiness time. The proposed algorithms possess a rare characteristic from traditional multi-objective genetic algorithms. The crossover and mutation rates of the proposed algorithms can be variables or adjusted according to the searching performance while the rates of traditional algorithm are fixed. Production data retrieved from the shop floor are used as the test instances. The numerical result indicates that both two proposed multi-objective genetic algorithms have satisfactory performance and the adaptive multi-objective genetic algorithm performs better. The result shows the algorithms are effective and efficiency to the current system used in the shop floor. Thus, the result may be of interest to practical applications. # 2006 Elsevier B.V. All rights reserved. Keywords: Adaptive multi-objective genetic algorithms; Scheduling; Printed circuit board; Drilling operation
1. Introduction Scheduling is to arrange a sequence of jobs to be processed under certain limitations. Most cases of scheduling belong to complex discrete optimization problem. The complexity is always too high to be solved in polynomial times. Consequently many research works develop heuristics instead of searching optimum solutions. However, heuristics cannot always be applied to all kinds of problems. They are developed with respect to some specified situations In other words, heuristic approaches are usually lack of flexibility, whereby metaheuristics are widely applied to improve the quality of solutions. Genetic algorithm is one of the most widely applied metaheuristics. Since the original idea proposed by Holland [1], the development of genetic algorithms thrives in the last three decades. There are several parameters in genetic algorithms including number of chromosomes for each population, number of generations, crossover and mutation rates and so on. Traditional genetic algorithms for scheduling set the parameter
* Corresponding author. Tel.: +886 3 4636165; fax: +886 3 4635319. E-mail address:
[email protected] (P.-C. Chang). 1568-4946/$ – see front matter # 2006 Elsevier B.V. All rights reserved. doi:10.1016/j.asoc.2006.02.002
values fixed. However, the performance of fixed values seems dominated by that with adaptive values. Hence, adaptation for the crossover and mutation rates is introduced in this paper. Most of the past scheduling literature concerned single objective. Only taking single objective into account cannot satisfy the competitiveness today. Multiple objectives have to be monitored simultaneously to manage the latest progress of manufacturing. Combining genetic algorithm and multiple objectives derives multi-objective genetic algorithm. Further the adaptation of crossover and mutation rates are embedded as adaptive multiobjective genetic algorithm. A real-world drilling operation scheduling problem in the printed circuit board industry is applied as the test problem to evaluate the performances for the multi-objective genetic algorithms. 2. Literature review Deb [2] proposed that an ideal multi-objective optimization procedure constitutes of two steps. The first step is to find some optimal solutions corresponding to multiple objectives considered in research. The next step is to choose the most suitable solution by using higher level information. To present Deb’s idea in scheduling problems, Pareto approach should be
P.-C. Chang et al. / Applied Soft Computing 7 (2007) 800–806
a suitable choice. Pareto approach searches non-dominant solutions called Pareto optimal solutions in the objective space. The number of Pareto optimal solutions is always not single. Tamaki et al. [3] defined Pareto optimal solutions as follows. Let x0, x1, x2 2 F, and F is a feasible region and x0 is called the Pareto optimal solution in the minimization problem if the following conditions are satisfied. 1. If f(x1) is said to be partially greater than f(x2), i.e. f i(x1) f i(x2), 8i = 1, 2, . . ., n and f i(x1) > f i(x2), 9i = 1, 2, . . ., n. Thus, x1 is dominated by x2. 2. If there is no x 2 F s.t. x dominates x0, then x0 is the Pareto optimal solutions. Multi-objective genetic algorithms (MOGAs) have received much attention. Murata et al. [4] proposed a MOGA to search the Pareto optimal solutions for bi-objective and triobjective scheduling problems. Sridhar and Rajendran [5] concerned multiple objectives scheduling in flowshop and cellular manufacturing systems. A genetic algorithm was applied as an application. Tamaki et al. [3] reviewed the multiobjective optimization problems solved by genetic algorithms. Ishibuchi and Murata [6,7] proposed a hybrid genetic algorithm through incorporating local search into the procedures of genetic algorithm. Khoo et al. [8] developed a prototype genetic algorithm-enhanced multi-objective scheduler for manufacturing systems. Chang et al. [9] developed a gradual-priority weighting approach based on genetic algorithm to solve the multi-objective flowshop scheduling problem. Van Hop and Nagarur [10] specified their printed circuit boards scheduling problem as non-identical parallel machines and an MOGA was applied. They also categorized the printed circuit board literature as several aspects as group technology, electronic manufacturing applications, and types of machine settings. Besides scheduling, MOGA has been successfully applied in many fields in the open literature. In recent years, Ponnambalam et al. [11] applied MOGA for solving assembly line balancing problem. Khoo and Loh [12] enhanced the planning system for surface mount printed circuit board assembly by using genetic algorithms for optimizing the sequencing process formulated as a multi-objective problem. Ponnambalam et al. [13] proposed a MOGA to implement the optimal machine-wise priority dispatching rules. This approach can be used to resolve the conflict among the contending jobs in the Giffler and Thompson procedure applied for job shop scheduling problems. Mansouri et al. [14] dealt with exceptional elements in cellular manufacturing by applying MOGA. Saravana Sankar et al. [15] applied MOGA to generate a nearer-to-optimum schedule for a flexible manufacturing system. Adaptation of the genetic parameters has implemented on various research works. Srinivas and Patnaik [16] recommended the use of adaptive probabilities of crossover and mutation in genetic algorithms for multimodal function optimization. Wang et al. [17] proposed a conjugate gradient adaptive genetic algorithm. Boeringer and Werner [18]
801
adapted the mutation parameter in the genetic algorithm they proposed for phase-only array synthesis. Liu et al. [19] proposed a new adaptive genetic algorithm including new selection operator, new adaptive crossover and mutation operator. Peng et al. [20] proposed a combined adaptive bounding and adaptive mutation technique for genetic algorithms. Sun et al. [21] presented an adaptive genetic algorithm based on information entropy. There are still many applications of adaptive genetic algorithms not being included in this survey. However, a common feature of these published papers is dealing with continuous optimization problems. It is interesting that adaptive genetic algorithm is not easy to be found in the discrete optimization problems. Based on this motivation, the study intends to combine adaptive genetic algorithm and MOGA to solve the drilling operation scheduling problem. 3. Problem statement Printed circuit board industry in Taiwan has four points different from other industries. The first point is the manufacturing process of each printed circuit board order is very long-winded and operations are complex. Once an error happens, the engineers have to fix it soon or it immediately causes loss. The second point is that this industry is almost no standard of process in the shop floor. The only tool of operators to deal with accidents depends on their knowledge and experience. Hence, the quality of human resource is critical to printed circuit board manufacturing. The third point is companies manufacture their orders according to the specifications, designs and amounts contracted with customers. However, orders with identical specifications and designs seldom repeat. Therefore, most companies hold low even no inventory. The last point is due-date attainability always the most important consideration of customers. Due to the previous characteristics, to arrange the scheduling tasks becomes challenging. There are many steps in printed circuit board manufacturing; most of these steps are automatically controlled by computer programs except the drilling operation station because it is usually the bottleneck station. For achieving both principal objectives of high quality and stable throughput, scheduling of drilling station has to be made by manual method. However, the manual method is obviously not efficient since it takes over 4 h for sequencing the jobs each workday. Chang et al. [22,23] ever applied a tabu search to investigate the improvement of total changeovers, total machines, total operators, and utilization for this problem. Moreover one simple computerized scheduling system (SCSS) was developed and implemented to save more time in scheduling since 2001. The algorithm of SCSS simply consists of dispatching rules and a local search technique. Actually SCSS has fulfilled the short-term mission at that time but there remains existing possibility for further improvement on the scheduling system with higher level searching techniques. Two objectives are considered in this paper, i.e. makespan (ZTC) and total tardiness time (ZTT). Considered the objectives
802
P.-C. Chang et al. / Applied Soft Computing 7 (2007) 800–806
and related constraints in the case factory, a mixture model is formulated below:
Minimize Minimize
wti i XtO
weight for the ith objective in generation t the ith solution in generation t for each objective
ZTC ¼ maxfF1 ; F2 ; . . . ; Fn g n X Ti ; Ti ¼ maxf Ci di ; 0 g ZTT ¼ i¼1
Subjective to :
Pm x jt ¼ 1; j ¼ 1; . . . ; n; Pt¼1 p j ¼ 1; . . . ; n; i¼1 wi j x jt ¼ Ct ;
t ¼ 1; . . . ; m;
ai j y jk x jt wik ; i ¼ 1; . . . ; p; j ¼ k 1; . . . ; n; t ¼ 1; . . . ; m; Pn k ¼ 1; . . . ; n; t ¼ 1; . . . ; m; j¼1 y jk x jt ¼ 1; Pn j ¼ 1; . . . ; n; t ¼ 1; . . . ; m; k¼1 y jk x jt ¼ 1; bik wiðkþ1Þ xðkþ1Þt wik xkt ; k ¼ 1; . . . ; n 1; i ¼ 1; . . . p; t ¼ 1; . . . ; m; P p Pp sw0t þ swkt ¼ k ¼ 1; . . . ; n 1; j ¼ 1; . . . ; n; i¼1 ai j y j1 x jt þ 2 i¼1 bik ;
where n is the total number of printed circuit boards, m the number of machines, p the total number of required components, i the component index, i = 1, . . ., p, j the board index, j = 1, . . ., n, k the sequence position index, k = 1, . . ., n, t the machine index, t = 1, . . ., m, Ct the capacity of machine t, as number of slots in the magazine, t = 1, . . ., m, A = {aij} the printed circuit board component incidence matrix, swkt the number of component changeovers between the kth board to the (k + 1)th board in the sequence, xjt the decision variable, wi j the decision variable, yjk the decision variable, and bik is the decision variable.
ZTC ZTT ct
4. Methodology
Stage 1: The system applies the shortest processing time (SPT) and earliest due-date (EDD) rules to generate initial schedules. Stage 2: The system fine-tunes the schedules by local search, i.e. pairwisely interchange the jobs in each initial schedule. Pareto optimal solutions generate in this stage as well.
SCSS and three MOGAs are used to solve the scheduling problems for the case factory. The steps of each algorithm are introduced in details below. 4.1. Notation Notation used in MOGAs is listed and introduced as follows: Ci completion time of job i di due-date of job i B ftO the best objective value in generation t for each objective w ftO the worst objective value in generation t for each objective f(x) normalized objective value fit(x) fitness value for solution x G current generation, G = 1, . . ., Gmax Gmax maximal number of generation Nelite number of elite solutions for each population Npop number of solutions for each population Pc crossover rate Pm mutation rate P(x) selection probability for solution x Ti tardiness of job i
makespan of solution x total tardiness time of solution x population of generation t
4.2. Simple computerized scheduling system The simple computerized scheduling system used in the shop floor is actually a two-stage scheduling system. It consists of dispatching rules (Stage 1) and a local search technique (Stage 2) and the system generates a reference sequence for the daily operation.
4.3. Multi-objective genetic algorithm Murata et al. [4] proposed a MOGA and applied it to flowshop scheduling. Their MOGA first transforms multiple objectives into single objective through the weighted sum of objectives. For example: f ðxÞ ¼ w1 f1 ðxÞ þ w2 f2 ðxÞ þ þ wn fn ðxÞ where f 1(x), f 2(x), . . ., f n(x) are the objective functions and w1 ; w2 ; . . . ; wn are the weights corresponding to objectives that satisfying the following conditions: wi 0;
8 i ¼ 1; 2; . . . ; n
w1 þ w2 þ þ wn ¼ 1 Once the weights are determined, the searching direction is fixed. To search all optimal solutions, the searching directions
P.-C. Chang et al. / Applied Soft Computing 7 (2007) 800–806
803
are changed to cover the whole solution space. The changes rely on the weights. The weights consist of random numbers. The weight wi for the ith objective is generated as the following way: ri ; 8 i ¼ 1; 2; . . . ; n wi ¼ r1 þ r2 þ þ rn where r1, r2, . . ., rn are random numbers within (0, 1). The MOGA structure proposed in this paper is described step by step in the following:
Fig. 1. Two-point crossover.
Step 1 (Initialization). Randomly generate an initial population with Npop solutions. Step 2 (Evaluation). Calculate the values of two objectives, respectively, in the current population. ZTC ¼ maxfF1 ; F2 ; . . . ; Fn g ZTT
n X ¼ Ti ;
Fig. 2. Shift mutation.
Ti ¼ maxfCi di ; 0g
i¼1
Then normalized the value for each objective to (0, 1) according to the expressions below: f1 ðxÞ ¼
i Xt1 ft1w B ft1 ft1w
f2 ðxÞ ¼
i Xt2 ft2w ft2B ft2w
where x denote a solution. The aggregate objective for each x can be written as follows: f ðxÞ ¼
wt1
f1 ðxÞ þ
wt2
f2 ðxÞ
where wt1 and wt2 are weights for the first and second objectives. Update the next population and store Pareto optimal solutions. Step 3 (Selection). Roulette wheel selection proposed by Goldberg [24] is used. The selection probability for each x is shown as follows: PðxÞ ¼ P
fmax ðct Þ f ðxÞ x 2 ct ð fmax ðct Þ f ðxÞÞ
Step 4 (Crossover and mutation). Murata and Ishibuchi [25] and Murata et al. [4] conducted a series of test to verify various combinations of crossover and mutation methods. The result reported that the performance of two-point crossover and shift mutation was the best. Moreover, Chang et al. [9,22,23] has successfully applied two-point crossover and shift mutation on flowshop and parallel machines scheduling problems. Thus, two-point crossover and shift mutation are used in this paper as well. In manipulating two-point crossover, two points are randomly selected at first. The positions beyond the selected points of the top chromosome in Fig. 1 are directly placed in the child chromosome in the middle. The remaining positions are
placed according to the order of the bottom parent chromosome in Fig. 1. In shift mutation, two positions are randomly selected at first. As shown in Fig. 2, positions E and G are selected. The next step is to insert G right before E and A, B, F shift backward. This finishes the shift mutation. Step 5 (Elitism). Select Nelite solutions from the Pareto optimal solutions and add them to the (Npop Nelite) solutions generated in Step 4 to maintain Npop solutions each population. Step 6 (Termination). Specify Gmax in advance. If G < Gmax, then turn back to Step 2, else terminate this algorithm. Other MOGAs proposed in this paper possess the same steps introduced above. However, they are different in the settings of crossover and mutation rates. 4.4. Multi-objective genetic algorithm with variable rates The first method proposed is the multi-objective genetic algorithm with variable crossover and mutation rates (VMOGA). Random rates selected within specified intervals for crossover and mutation are supposed to enlarge the searching area and accelerate the convergence. The key function affecting the performance of genetic algorithms is the genetic operator. The operator launches according to specified values. Thus, how to set optimal values for the genetic operator is important. Experimental design is applied to determine the optimal crossover and mutation rates. However, an experimental design procedure simply determines which level within the pre-specified levels outperforms the other. The results are always not the global optimal ones. To overcome this drawback, variable rates for genetic operator is considered instead of the fixed rates. It is expected that the variable rates can raise the effectiveness and efficiency in searching Pareto optimal solutions.
804
P.-C. Chang et al. / Applied Soft Computing 7 (2007) 800–806
The crossover and mutation steps in VMOGA are reported as follows: Crossover: A crossover rate is selected from a specified interval. For example, 0.8 is selected from (0.75, 0.95). Mutation: A mutation rate is selected from a specified interval. For example, 0.26 is retrieved from (0.1, 0.3). VMOGA makes the crossover and mutation rates variable. The purpose is to inherit good subsequences from the parental chromosomes to the children and perturb the gene structure. This design is expected to have more Pareto optimal solutions being found.
Table 1 Rates for MOGA Method
n
m
Crossover rate
Mutation rate
MOGA
50 65 80
20 25 28
0.65 0.65 0.65
0.4 0.4 0.4
Table 2 Intervals for VMOGA Method
n
m
Crossover rate
Mutation rate
VMOGA
50 65 80
20 25 28
0.65–0.725 0.65–0.725 0.575–0.675
0.375–0.45 0.375–0.45 0.35–0.45
4.5. Adaptive multi-objective genetic algorithm VMOGA selects rates for genetic operator randomly. Thus, it has chances that some rates for VMOGA were not with good performance. For this point, a mechanism to adjust the crossover and mutation rates according to the algorithmic performance is considered. In intuition, during the early stage of a searching process, large rates are probably preferred because large rates can augment the searching space. Then more Pareto optimal solutions can be found. While in the late stage of a searching process, the improvement of solutions is usually frozen. The concern in this stage may switch to terminate the algorithm as soon as possible. In doing so, it saves computation time to raise the efficiency. According to this idea, a rule is embedded in MOGA to adapt the genetic operator. The rule is when the quality of solutions improves continuously then the rates for genetic operator are enlarged generation by generation. On the contrary, once no improvement appears, the rates decrease generation by generation. The method proposed above is called adaptive multiobjective genetic algorithm (AMOGA). The steps of AMOGA are the same as MOGA except the mechanism to adjust rates for crossover and mutation operators. Each solution has to be compared with the preceding one on two objectives, respectively. Let ri ¼ vk =vk1 i = 1, 2, where r1 is the ratio for the first objective and r2 is the ratio for the second objective. Note that vk is the objective value of a solution k and vk1 is the objective value of a solution precedes k. If r1 1.001 and r2 1.001 then interval rates are applied for crossover and mutation; otherwise increase the rates generation by generation.
Detailed steps are described in the following: Crossover: (1) Compute ri ¼ vk =vk1 , i = 1, 2. (2) If r1 1.001 and r2 1.001 then apply the crossover like VMOGA else adjust the crossover Pc = X + Range G. Mutation: (1) Compute ri ¼ vk =vk1 , i = 1, 2. (2) If r1 1.001 and r2 1.001 then apply the mutation like VMOGA else adjust the mutation Pm = X + Range G.
interval rates as
interval rates as
In the above design, it is apparently to know that when improvements are achieved in at least one objective, the crossover and mutation rate are increasing along the number of generations. If there is no improvement, the crossover and mutation rates are selected from intervals as VMOGA. 5. Numerical experiments In order to verify the effectiveness and efficiency for these methods, real-world cases are used. Let n denotes the number of jobs and m denotes the number of machines. Three (n, m) combinations are used in this experiment, they are (50, 20), (65, 25), and (80, 28). The processing time and due-date of each job were directly retrieved from the database of the PCB factory. The following criteria are used to evaluate the performance of the methods in this paper.
Table 3 Strategies for AMOGA Method
n
m
Conditions
Crossover rate
Mutation rate
AMOGA
50
20
r1 1.001, r2 1.001 Else
0.65–0.725 0.725 + 0.000035 G
0.375–0.45 0.45 + 0.000015 G
65
25
r1 1.001, r2 1.001 Else
0.65–0.725 0.725 + 0.000035 G
0.375–0.45 0.45 + 0.000015 G
80
28
r1 1.001, r2 1.001 Else
0.575–0.675 0.675 + 0.000035 G
0.35–0.45 0.45 + 0.000015 G
P.-C. Chang et al. / Applied Soft Computing 7 (2007) 800–806 Table 4 Comparison of SCSS vs. MOGA
805
Table 8 Average computation time for each method n
50 65 80
m
20 25 28
Average computation times (s) SCSS
MOGA
VMOGA
AMOGA
359.38 647.88 803.71
308.39 450.66 603.07
319.78 464.13 617.47
318.70 472.01 620.83
4. The elapsed computation time.
Table 5 Comparison of MOGA vs. VMOGA
Table 6 Comparison of MOGA vs. AMOGA
Table 7 Comparison of VMOGA vs. AMOGA
A statistical analysis, design of experiment, was conducted to determine the optimal levels for number of generations, population size, number of elites, and rates, intervals or strategies for crossover and mutation operators. The result of experimental design shows that the optimal levels are number of generations = 7000, population size = 30, number of elites = 5, and the settings for crossover and mutation operators are reported in Tables 1–3, respectively. In each (n, m) combination, 20 runs were executed for accumulating Pareto optimal solutions and taking averages on 4 criteria. First, SCSS and MOGA are compared. The results are reported in Table 4. The performance of MOGA to SCSS raises along the (n, m) increases. Therefore, MOGA significantly outperforms SCSS used in the shop floor. Hereafter, MOGA is regarded as the benchmark method in this paper. Further comparisons are performed by only comparing with MOGA. The comparison of MOGA versus VMOGA is carried out and the results are shown in Table 5. In each combination, the solution quality in terms of B and B/A (%) of VMOGA is higher than those of MOGA. The result of comparing MOGA and AMOGA is reported in Table 6. On average, the solution quality in terms of B and B/A (%) of AMOGA outnumbers the performance of MOGA. The two methods proposed in this paper, i.e. VMOGA and AMOGA are apparently superior to MOGA in solution quality. Therefore, it is of interest that the comparison of VMOGA and AMOGA. The comparative result is summarized in Table 7. AMOGA leads 15% on average in the solution quality in terms of B/A (%). To measure the efficiency of each method, the average computation times in three (n, m) combinations are recorded in Table 8. Time elapsed in SCSS is obviously longer than those of MOGA, VMOGA, and AMOGA. This table also shows that the computation times of MOGA, VMOGA, and AMOGA do not differ much. MOGA is the most efficient however the gaps between VMOGA and AMOGA are within 14 and 17 s, respectively. Therefore, the efficiencies are almost the same. 6. Conclusion and future works
1. The number of Pareto optimal solutions searched by each approach (A). 2. The number of non-dominated solutions of each approach after the approaches are compared each other (B). 3. Percent of non-dominated solutions (B/A (%)).
In this paper, two new attempts for scheduling problems based on MOGA, i.e. VMOGA and AMOGA were proposed for the drilling operation in printed circuit board industry. Realworld cases were applied to verify the effectiveness and efficiency of the proposed methods. The results indicate that VMOGA and AMOGA are superior to SCSS and MOGA in
806
P.-C. Chang et al. / Applied Soft Computing 7 (2007) 800–806
solution quality. MOGA, VMOGA, and AMOGA are resulted in shorter computation times than that of SCSS. Moreover, AMOGA outperforms VMOGA in the further comparison. The result reveals that the proposed methods are potential for the practical applications. In the future, more improvement to enhance the searching performance of MOGAs may be involved, for example, local search technique proposed by Ishibuchi et al. [26]. Applications on other industries may be considered as well. References [1] J.H. Holland, Adaptation in Natural and Artificial Systems, The University of Michigan Press, Ann Arbor, 1975. [2] K. Deb, Single and Multi-Objective Optimization Using Evolutionary Computation, KanGAL Report Number 2004002, 2004, http://www.iitk.ac.in/kangal/deb.htm. [3] H. Tamaki, H. Kita, S. Kobayashi, Multi-objective optimization by genetic algorithms: a review, in: Proceedings of IEEE International Conference on Evolutionary Computation, 1996, pp. 517–522. [4] T. Murata, H. Ishibuchi, H. Tanaka, Multi-objective genetic algorithm and its applications to flowshop scheduling, Comput. Ind. Eng. 30 (4) (1996) 957–968. [5] J. Sridhar, C. Rajendran, Scheduling in flowshop and cellular manufacturing systems with multiple objectives—a genetic algorithmic approach, Prod. Plan. Control 7 (4) (1996) 374–382. [6] H. Ishibuchi, H. Murata, Multi-objective genetic local search algorithm and its applications to flowshop scheduling, IEEE Trans. SMC 28 (3) (1998) 392–403. [7] H. Ishibuchi, H. Murata, Local search procedures in a multi-objective genetic local search algorithm for scheduling problems, in: Proceedings of IEEE International Conference on SMC, 1999, pp. 119–124. [8] L.P. Khoo, S.G. Lee, X.F. Yin, A prototype genetic algorithm-enhanced multi-objective scheduler for manufacturing systems, Int. J. Adv. Manuf. Technol. 16 (2) (2000) 131–138. [9] P.C. Chang, J.C. Hsieh, S.G. Lin, The development of gradual-priority weighting approach for the multi-objective flowshop scheduling problem, Int. J. Prod. Econ. 79 (3) (2002) 171–183. [10] N. Van Hop, N.N. Nagarur, The scheduling problem of PCBs for multiple non-identical parallel machines, Eur. J. Operat. Res. 158 (2004) 577–594. [11] S.G. Ponnambalam, P. Aravindan, G. Mogileeswar Naidu, A multiobjective algorithm for solving assembly line balancing problem, Int. J. Adv. Manuf. Technol. 16 (4) (2000) 341–352.
[12] L.P. Khoo, K.M. Loh, A genetic algorithms enhanced planning system for surface mount PCB assembly, Int. J. Adv. Manuf. Technol. 16 (4) (2000) 289–296. [13] S.G. Ponnambalam, V. Ramkumar, N. Jawahar, A multiobjective genetic algorithm for job shop scheduling, Prod. Plan. Control 12 (8) (2001) 764– 774. [14] S.A. Mansouri, S.M. Moattar-Husseini, S.H. Zegordi, A genetic algorithm for multiple objective dealing with exceptional elements in cellular manufacturing, Prod. Plan. Control 14 (5) (2003) 437–446. [15] S. Saravana Sankar, S.G. Ponnanbalam, C. Rajendran, A multiobjective genetic algorithm for scheduling a flexible manufacturing system, Int. J. Adv. Manuf. Technol. 22 (2003) 229–236. [16] M. Srinivas, L.M. Patnaik, Adaptive probabilities of crossover and mutation in genetic algorithms, IEEE Trans. Syst. Man Cybernet. 24 (4) (1994) 656–667. [17] P. Wang, Z. Fan, S. Feng, Y. Zhou, Study on a novel hybrid adaptive genetic algorithm embedding conjugate gradient algorithm, in: Proceedings of the 3rd World Congress on Intelligent Control and Automation, IEEE, Hefei, PR China, June 28–July 2, (2000), pp. 630–633. [18] D.W. Boeringer, D.H. Werner, Adaptive mutation parameter toggling genetic algorithm for phase-only array synthesis, Electron. Lett. 38 (25) (2002) 1618–1619. [19] Z. Liu, J. Zhou, S. Lai, New adaptive genetic algorithm based on ranking, in: Proceedings of the 2nd International Conference on Machine Learning and Cybernetics, IEEE, Xi’an, November, 2–5, (2003), pp. 1841–1844. [20] J. Peng, K. Li, S. Thompson, A combined adaptive bounding and adaptive mutation technique for genetic algorithms, in: Fifth World Congress on Intelligent Control and Automation, vol. 3, 2004, 2154–2158. [21] Y. Sun, C. Li, A. Wang, J. Zhu, X. Wang, in: L. Wang, K. Chen, Y.S. Ong (Eds.), An Adaptive GA Based on Information Entropy, vol. 3612, ICNC, LNCS, 2005, pp. 93–101. [22] P.C. Chang, J.C. Hsieh, L.C. Hsu, Scheduling of drilling operations in printed circuit board factory, Comput. Ind. Eng. 44 (2003) 461–473. [23] P.C. Chang, J.C. Hsieh, Y.W. Wang, Genetic algorithms applied in BOPP film scheduling problems: minimizing total absolute deviation and setup times, Appl. Soft Comput. J. 3 (2003) 139–148. [24] D.E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Addison Wesley, Reading, MA, 1989. [25] T. Murata, H. Ishibuchi, Performance evolution of genetic algorithms for flowshop scheduling problems, in: Proceedings of 1st IEEE International Conference on Evolutionary Computation, 1994, pp. 812–817. [26] H. Ishibuchi, T. Yoshida, T. Murata, Balance between genetic algorithm and local search in memetic algorithms for multi-objective permutation flowshop scheduling, IEEE Trans. Evol. Comput. 7 (2) (2005) 204– 223.