Computers & Industrial Engineering 66 (2013) 1070–1084
Contents lists available at ScienceDirect
Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie
A simulated annealing algorithm based approach for balancing and sequencing of mixed-model U-lines q Alper Hamzadayi a,b,⇑, Gokalp Yildiz b a b
The Graduate School of Natural and Applied Sciences, Dokuz Eylul University, 35160 Izmir, Turkey Department of Industrial Engineering, Dokuz Eylül University, 35160 Izmir, Turkey
a r t i c l e
i n f o
Article history: Received 11 April 2012 Received in revised form 17 January 2013 Accepted 9 August 2013 Available online 24 August 2013 Keywords: Mixed-model U-shape balancing/ sequencing problem Simulated annealing algorithm Tabu list Taguchi method
a b s t r a c t It is known that two interrelated problems called as line balancing and model sequencing should be solved simultaneously for an efficient implementation of a mixed-model U-shape assembly line in a JIT (Just in Time) environment. On the other hand, three versions of assembly line balancing problem can be identified: Type I, Type II, and Type E. There are only two articles (Kara, Ozcan, & Peker, 2007a and Hamzadayi & Yildiz, 2012) related to simultaneous balancing and sequencing of mixed-model U-lines for minimizing the number of stations (Type 1 problem) by ignoring the fixed model sequence in the current literature. In this paper, a simulated annealing algorithm is proposed for solving a problem of type 1 by ignoring the fixed model sequence. Accordingly, simulated annealing based fitness evaluation approach proposed by Hamzadayi and Yildiz (2012) is enhanced by adding the tabu list, and inserted into the proposed algorithm. Implementation difficulties experienced in meta-heuristics based on solution modification for solving these types of problems are demonstrated. ‘Absolute deviation of workloads’ (ADW) is quite frequently used as performance criteria in the literature. It is found that ADW is an insufficient performance criterion for evaluating the performance of the solutions, and this is showed by means of an illustrative example. The parameters of the proposed algorithm are reviewed for calibrating the algorithm by means of Taguchi design of experiments. Performance of the proposed approach is tested through a set of test problems. The results of computational experiments indicate that the proposed approach is an effective method in solving simultaneous line balancing/model sequencing problems for mixed-model U-lines for minimizing the number of stations. Ó 2013 Elsevier Ltd. All rights reserved.
1. Introduction Assembly line is a flow-line production system consisting of a sequence of workstations arranged along a material handling system. Unfinished and partially finished parts are consecutively launched down the system for creating finished products, and are moved from one station to another in a limited time called as cycle time. An indivisible portion of the total work needed to be accomplished for assembling the product is called as a task, and the necessary time for performing a task is called as task time. The tasks are allocated to stations according to a given precedence relationships among the tasks. Precedence relations are the task sequence in which order tasks must be performed. After a cycle time, the unfinished products are moved from one station to its successive station until reaching at the end of the line. At the last
q
This manuscript was processed by Area Editor Surendra M. Gupta.
⇑ Corresponding author at: The Graduate School of Natural and Applied Sciences, Dokuz Eylul University, 35160 Izmir, Turkey. Tel.: +905052797377; fax: +902324127608. E-mail address:
[email protected] (A. Hamzadayi). 0360-8352/$ - see front matter Ó 2013 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.cie.2013.08.008
station, the product is completed and then leaves the line (Özcan, Kellegöz, & Toklu, 2011). The number and the variety of products assembled in a line can be categorized as single-model assembly lines (SMALs), mixedmodel assembly lines (MMALs), and multi-model assembly lines (MuMALs). SMALs are designed to produce a high volume of standardized homogeneous products which are not suitable for very variable customer demands. However, MMALs are also widely used for improving the flexibility in adaptation to the changes in market demand in various industries. In mixed-model assembly lines, two or more products with similar production characteristics are produced on the same assembly line. Mixed-model assembly lines are seen as an integral part of a JIT production system (Hwang & Katayama, 2009). One of the important changes resulting from JIT implementation is the replacement of the traditional straight lines with U-shaped production lines. Many manufacturers use their U-lines to produce more than one product (Miltenburg, 2001). This type of production line is called as a mixed-model U-line (MMUL). Miltenburg and Wijngaard (1994) and Cheng, Miltenburg, and Motwani (2000) summarized the major benefits and factors of U-shaped assembly lines; and
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Miltenburg (2001) presented a review of the theory and practice on U-shaped production lines on a set of US and Japanese companies, which changed their straight lines to U-lines. In order to effectively implement an MMUL in a JIT environment, two interrelated problems called as line balancing (LB) that is the problem of assigning tasks to an ordered sequence of stations in such a way that some performance measures are optimized, and model sequencing (MS) that is the problem experienced in the determination of the production sequence of the models should be solved simultaneously (Kim, Kim, & Kim, 2000; Sparling & Miltenburg, 1998). In many studies related to mixed-model straight assembly lines, the model sequencing and the line balancing problems were solved sequentially (Bard, Dar-el, & Shtub, 1992). However, in an MMUL, these two problems should be considered simultaneously. (Miltenburg, 2002). The problem of simultaneously solving line balancing and model sequencing of a mixed-model U-line is called as mixed-model U-line balancing and sequencing (MMUL/BS) problem (Kim et al., 2000). Depending on the performance measure taken into consideration, three versions of assembly line balancing problem (ALBP) can be identified (Scholl & Klein, 1999): given the cycle time, the number of stations is minimized (Type I); given the number of stations, the cycle time is minimized (Type II); and given the cycle time and the number of stations, the line efficiency is maximized (Type E). ALBP was firstly formulated by Salveson (1955) and, since then, numerous exact and heuristic algorithms have been developed for solving the problem. ALBP falls into the NP-hard class of combinatorial optimization problems (Karp, 1972). Therefore, complex mathematical nature of the problem makes it difficult to solve (Erel & Gokcen, 1999). A comprehensive literature reviews on solution methods for the different types of ALBP can be found by Ghosh and Gagnon (1989), Erel and Sarin (1998), Becker and Scholl (2006), and Batini, Faccio, Ferrari, Persona, and Sgarbossa (2007). In mathematical complexity, mixed-model U-line balancing (MMUL/LB) problem is one of the NP-hard classes of combinatorial optimization problems (Sparling & Miltenburg, 1998). MMUL/BS problem is also of the NP-hard class. Besides mathematical complexity of the MMUL/LB problem, MMUL/BS has an additional level of complexity as the model sequencing problem is also solved (Özcan et al., 2011). MMUL/LB problem was firstly addressed by Sparling and Miltenburg (1998). They determined a balance to minimize the number of stations for a given model sequence by using an approximate solution algorithm for single-model U lines. The initial balance is smoothed to reduce model imbalance, which is measured by comparing the workload of each station in each production cycle from the given cycle time or theoretic minimum cycle time (i.e. the mean workload per station per cycle). This form of workload imbalance was adopted by subsequent studies and referred to as absolute deviation of workloads (ADW). Kim et al. (2000) proposed a co-evolutionary algorithm to solve MMUL/BS problem in order to minimize the ADW for a given number of stations. Miltenburg (2002) developed a genetic algorithm for solving the MMUL/BS problem. This algorithm aims at minimizing the ADW and the deviation of part production quantities in a JIT environment to facilitate the production of ‘level’. Kim, Kim, and Kim (2006) proposed an endosymbiotic evolutionary algorithm approach for solving the MMUL/BS problem under the objectives of minimizing the ADW for a given number of stations. Kara, Ozcan, and Peker (2007a) proposed a simulated annealing approach for solving the MMUL/BS problem in order to minimize the number of stations for a given cycle time and the ADW among stations. Kara, Ozcan, and Peker (2007b) proposed a simulated annealing algorithm for solving the MMUL/BS problem with multiple objectives. This algorithm aims at smoothing the usage rate of parts consumed by MMUL, minimizing the total cost of setups as well as the ADW across stations. Kara and Tekin
1071
(2009) developed a mixed integer programming formulation and a heuristic approach for solving the MMUL/LB problem in order to minimize the number of stations for a given cycle time by a given MS. Kara (2008) developed a mixed integer programming formulation and proposed a simulated annealing approach for solving the MMUL/BS problem with the same purpose intended by Kim et al. (2000). Hwang and Katayama (2009) proposed a multi-decision genetic approach for solving the MMUL/LB problem. This algorithm aims at simultaneously minimizing the number of stations and variance of the workload. They assumed that all models produce the same quantity, and considered a balancing with a mixed-model assembly line without a job sequence. Özcan et al. (2011) proposed a genetic algorithm for the stochastic MMUL/BS problem. The performance criteria taken into consideration in their paper is to minimize ADW with pre-specified confidence levels for a given number of stations. Hamzadayi and Yildiz (2012) proposed a genetic algorithm based method for MMUL/BS problem with parallel workstations and zoning constraints. They attempted to minimize the number of workstations and smooth the workload within and between workstations for responding to the use of parallel workstation and zoning constraint by not using a fixed model sequence (MS). As a summary, the ADW is quite frequently used as the performance criteria (used by Sparling and Miltenburg (1998), Kim et al. (2000,2006), Miltenburg (2002), Kara et al. (2007a,b), Kara (2008), and Özcan et al. (2011)) and only two articles (Hamzadayi & Yildiz, 2012; Kara et al., 2007a) dealt with the MMUL/BS problem for minimizing the number of stations (Type 1 problem) by ignoring the fixed MS in the literature of MMUL. In this paper, the difficulties experienced in the evaluation of each solution by using the meta-heuristics based on solution modification (the improved meta-heuristics) to solve the MMUL/BS problem of type 1 by ignoring the fixed MS are demonstrated. At this juncture, a simulated annealing algorithm (SA) is proposed. The simulated annealing based fitness evaluation approach proposed by Hamzadayi and Yildiz (2012) is enhanced by adding the tabu list and is inserted into the SA for solving the MMUL/BS problem of type 1. It is found that the ADW is an insufficient performance criterion for evaluating the performance of the solutions, and this is showed by means of an illustrative example. Believing in well-tuning effects on output results, the proposed algorithm is calibrated by means of Taguchi method. In order to overcome the insufficiency originated from the ADW and to be able to make a comparison, the fitness function proposed by Hamzadayi and Yildiz (2012) is simplified by extracting the components of parallel workstation assignments. As a computational experiment firstly for validation and secondly being able to test the effectiveness of the proposed algorithm, it is compared to SA based approach with the multiple objectives proposed by Kara et al. (2007b) to solve MMUL/BS problem for a given number of stations, and then the proposed algorithm is tested with a group of test problems by taking into account only the simplified fitness function. The rest of the paper is organized as follows: Problem characteristics are given in Section 2, followed by the structure of the proposed algorithm in Section 3. Section 4 is devoted to describe the application of Taguchi method and numerical results of the effects of the proposed algorithm parameters for solving test problems. The performance of the approach is tested in Section 5. Finally, conclusions and future research directions are given in the last section.
2. Problem characteristics 2.1. Assumptions The U-lines considered in this paper operate under the following assumptions:
1072
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Product models with similar production attributions are produced on the same U-shaped production lines. Zoning restrictions and parallel workstations are not allowed. Travel times of operators and setup times are ignored. Precedence diagrams of different models are known, and a combined precedence diagram is employed (Macaskill, 1972). Completion times of tasks may differ from one model to another and can be equal to zero. Common tasks among different models exist. Task completion times are deterministic and independent from each other. Paced assembly line considered and no work-in-process is allowed. Minimum Part Set (MPS) principle is used (Bard et al., 1992; Kim et al., 2000). Equally equipped stations and fixed rate launching are considered. 2.2. Notations The following notations will be used for describing the problem characteristics: N K P M D cd dm MPS
R r C tim IPi XFk XBk fkr r
bk
Total numbers of tasks are performed in a set of stations (i = 1, 2, . . ., N) Number of stations utilized on the mixed-model U-line (k = 1, 2, . . ., K) The planning horizon has a fixed length Number of different models produced on the MMUL (m = 1, 2, . . ., M) The vector that represents the total demand for each model: {D1, D2, . . ., DM} The greatest common divisor of the elements of D Over the planning horizon, the forecast demand for model m for one MPS: Dm/cd Minimum part set, calculated by dividing the total demands of the models by the greatest common divisor of these demands: {d1, d2, . . ., dm} P The length of the model sequence for one MPS: M m¼1 dm U-line cycle (r = 1, 2, . . ., R) Cycle time: P/R Time required for performing the task i on the model m Set of immediate predecessors of the task i Set of tasks in the station k located at the front of the Uline Set of tasks in the station k located at the back of the Uline Model produced at the front of the station k at the cycle r in the sequence Model produced at the back of the station k at the cycle r in the sequence
3. Proposed approach 3.1. Overview of simulated annealing Simulated annealing (SA) was developed by Kirkpatrick, Gelatt, and Vecchi (1983) for solving the NP-hard combinatorial and other optimization problems, in order to optimize the value of an objective function. The concept of the method comes from the ‘‘annealing’’ process used in the metallurgical industry. Annealing is the
process by which slow cooling is applied to metals to produce better aligned, low energy-state crystallization (Yu, Lin, Lee, & Ting, 2010). The optimization procedure of SA searches for a (near) global minimum mimicking the slow cooling procedure in the physical annealing process. The performance of SA is influenced by some factor such as initial temperature value (T0), final temperature value (Tcry), number of temperature decline (q), and number of iterations at each temperature level (IT). It starts from a random initial solution (S0) and a control parameter (Tc), which is set to an initial temperature value. During the algorithm, the value of Tc is systematically decreased according to an annealing schedule (Tc = Tc q) (Vilarinho & Simaria, 2002). For each iteration, neighboring solutions (Sn), to the current solution are generated and the value of the objective function is calculated. If the objective function value of the neighboring solution is better, the neighboring solution becomes the current solution from which the search continues by proceeding with a new iteration. Otherwise, if the neighboring solution provides an objective function value inferior than that of the current solution, the neighboring solution may still become a current solution according to a certain acceptance probability. The acceptance probability: p = exp(D/Tc), where D is the change in the objective function. A random number between zero and one is generated, if the random number is smaller than p the solution is accepted. This strategy prevents the algorithm from getting trap in a local optimum.
3.2. Developing the SA-based approach In this paper, SA algorithm is chosen among other meta-heuristics mainly because of the fact that ALBP solutions and neighborhood structures can be easily defined. The simulated annealing based fitness evaluation approach (SABFEA) proposed by Hamzadayi and Yildiz (2012) is enhanced by adding the tabu list, and is used for assessing the solution quality. Flow-chart of the proposed approach is given in Fig. 1.
3.2.1. Encoding and decoding of the initial solution In the proposed algorithm, the initial solution string is randomly generated by using the priority-based encoding method as shown in Fig. 2, and then the priority-based decoding method is used for ensuring the use of precedence relations in order to obtain a feasible task sequence (TS) (Hwang, Katayama, & Gen, 2008). As it can be seen from Fig. 2, the position of an element in a solution string is used for representing a task node, and the value of the element is used for representing the priority of the task node for constructing a TS (by using the priority-based decoding method) among candidates. Then, the generated solution string is converted to the feasible TS by using the priority-based decoding method (Fig. 3). The priorities of eligible nodes with the highest priority are placed into TS. So, infeasible solutions violating the precedence constraints are not allowed. Initially, we try to find a node for the first position. In Fig. 4, the nodes eligible to be assigned to the first position of the TS are 1, 2, 3, 8 and 10. The priorities of nodes are 6, 5, 3, 8 and 2 respectively, so the task 8 with the highest priority is placed into TS. For the second position, possible nodes are 1, 2, 3 and 10 which have priorities 6, 5, 3 and 2 respectively. So, task 1 is placed next into the TS. These steps are repeated until the obtainment of a complete TS (TS = {8, 1, 2, 4, 5, 3, 10, 9, 7, 6}).
3.2.2. The neighborhood structure Two different positions of the current solution are randomly selected, and their priority contents are swapped. Then, this generated solution is converted to feasible TS by using the prioritybased decoding method.
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
1073
Fig. 1. General structure of the proposed approach.
N/2
Fig. 2. Priority-based encoding (Hwang et al., 2008).
3.3. Fitness function
Cw ¼
The fitness function proposed by Hamzadayi and Yildiz (2012) is simplified by extracting the components of the parallel workstation assignment and explained by following equations:
W kr ¼
X
t if rk þ
i2XF k
X
t ibrk
ðk ¼ 1; 2; . . . ; KÞ; ðr ¼ 1; 2; . . . ; RÞ
Skr ¼ ðC W kr Þ ðk ¼ 1; 2; . . . ; KÞ; ðr ¼ 1; 2; . . . ; RÞ KIk ¼
R X Skr
ð1Þ
i2XBk
ðk ¼ 1; 2; . . . ; KÞ
ð2Þ ð3Þ
r¼1
Cb ¼
RIr ¼
2 K X R X R Skr 1 KðR 1Þ k¼1 r¼1 KIk R K X Skr ðr ¼ 1; 2; . . . ; RÞ k¼1
ð4Þ
ð5Þ
2 R X K X K Skr 1 RðK 1Þ r¼1 k¼1 RIr K
min Z ¼ K þ C b þ C w
ð6Þ
ð7Þ
Wkr (Eq. (1)) represents the amount of work assigned to station k at the cycle r. Skr (Eq. (2)) represents the idle time of the station k at the cycle r (the idle time of a station is the difference between the capacity of and the workload of the station). KIk (Eq. (3)) represents the total idle time at the end of all cycles in the station k. RIk (Eq. (5)) represents the total idle time of all stations at the cycle r. The first term (K) of the fitness function (Eq. (7)) aims at minimizing the number of the stations required on the line. The second term (Cb) (Eq. (4)) aims at smoothing the workload of stations between cycles, i.e., the idle time is distributed across all cycles as equally as possible for any station. The value of function Cb varies between a maximum of 1, when the total idle time of a station at the end of all cycles equal to only one cycle’s idle time, and a minimum of 0, when the idle times of a station at each cycle are equal to each other. The third term (Cw) (Eq. (6)) aims at smoothing the workload
1074
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Fig. 3. Priority-based decoding (Hwang et al., 2008).
In order to optimize a certain performance measure, it is also very difficult to make these assignments by considering all different cases that can be formed under a fixed MS and a fixed number of stations only if at least one task is assigned to each station. Especially, the more the number of tasks increases, the more the number of cases that must be taken into consideration increases exponentially. Furthermore, none of these different cases may also give a feasible solution. Suppose that we assign to 3 stations (K = 3) a feasible task sequence (TS = {1, 8, 2, 3, 4, 6, 5, 7}) obtained from the precedence diagram in Fig. 5, 21 (computed by the combination formula given in Eq. (8)) different cases are formed in a manner that at least one task will be assigned to each station. In order to optimize the desired performance measure, we must take each of these different cases into consideration. Cases to be evaluated are presented in Table 1. Fig. 4. Combined precedence diagram (Kara et al., 2007a).
CðN 1; K 1Þ ¼ ðN 1Þ!=½ðK 1Þ! ðN KÞ! of all stations within any cycle, i.e., the idle time is distributed across all stations as equally as possible at any cycle. The value of function Cw varies between a maximum of 1, when the total idle times of all stations at any cycle equal to only one station’s idle time, and a minimum of 0, when the idle times of each station at any cycle are equal to each other. So, the model minimizes the number of stations before the secondary goal becomes active. Proposed performance measure may vary depending on the line balance and the model sequence.
Suppose that 2 models processed in U-line are with the MPS = {2, 1}, and the cycle time (C) is 12. Task times of the models are as shown in Table 2. If we assess the cases 10 and 16 by taking AAB as the constant of MS. U-line configuration structure of the case 10 and workloads of the stations are shown in Fig. 6 and Table 3, respectively. As it can be seen, the workload of any station for the case 10 did not exceed the C.
3.4. The difficulties experienced in the evaluating of each solution by using the meta-heuristics based on solution modification (improvement of meta-heuristics) In general, a single-pass decision rule procedure using feasible TS as a basis is applied for the assignment of the tasks to the stations. Tasks are listed in a sequence, and then an attempt is made for assigning them to the stations in that sequence (Hwang & Katayama, 2009). This simple procedure is not valid for being able to solve the MMUL under varying MS. Since the U-shaped lines may include both traditional and crossover stations as a general characteristic, it cannot be known which task will take which model time.
ð8Þ
Fig. 5. Precedence diagram (Kara & Tekin, 2009).
1075
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084 Table 1 Cases to be evaluated for being able to assign the tasks to 3 stations. C. No
Combinations
1 2 3 4 5 6 7 8 9 10 11
1 1 1 1 1 1 1 1 1 1 1
|8 |8 |8 |8 |8 |8 8| 8| 8| 8| 8|
|23465 2|3465 23|465 234|65 2346|5 23465| 2|3465 23|465 234|65 2346|5 23465|
7 7 7 7 7 7 7 7 7 7 7
Table 3 Workloads of stations for the case 10.
C. No
Combinations
12 13 14 15 16 17 18 19 20 21
1 1 1 1 1 1 1 1 1 1
8 8 8 8 8 8 8 8 8 8
2 2 2 2 2 2 2 2 2 2
|3|465 |34|65 |346|5 |3465| 3|4|65 3|46|5 3|465| 34|6|5 34|65| 346|5|
7 7 7 7 7 7 7 7 7 7
Station
1
2
3
Tasks assigned {front}, {back} Models processed [front, back] Total workload
{1}, {8} A, A B, A A, B 8 6 10
{2, 3, 4}, {6} A, A A, B B, A 7 11 6
{5, 7}, {/} AAB 668
Table 4 Workloads of stations for the case 16. Station
1
2
3
Tasks assigned {front}, {back} Models processed [front, back] Total workload
{1, 2, 3}, {8} A, A A, A B, B 15 15 13
{4}, {/} BAA 100
{6, 5, 7}, {/} ABA 6 12 6
Table 2 Task times for two models (Kara & Tekin, 2009). Task
Model A
Model B
1 2 3 4 5 6 7 8
5 1 6 0 2 0 4 3
3 5 0 1 6 4 2 5
If we consider the case 16, as is shown in Table 4, first station exceeded C at all cycles (15, 15, 13). U-line configuration structure of the case 16 is shown in Fig. 7. If noticed, the number of the zones processed for the case 10 (zones where the tasks are processed in the line) is 5, and 4 for the case 16. We called these zones as model point (MP). The appearance of the models processed at first cycle from the beginning point of the line to the endpoint at MPs will be {A, A, B, A, A} for the case 10, and {A, B, A, A} for the case 16. We called these appearances formed at the cycle r as cycle sequence (CSr). While evaluating a TS by a given MPS, if we consider all different MSs to be formed rather than under a fixed MS assumption, the permutation is formed by Eq. (9).
2 PM
3 ! 4 5 ðd1 !d2 !:::dM !Þ m¼1 dm
ð9Þ
In this example, there are three permutations to be formed (3!/ 2!1!) because MPS = {2, 1}. If we consider all MSs that may be formed in order to optimize a certain performance, Eq. (10) formed the different cases that we must consider for evaluating a TS under the number of fixed stations.
2 PM
3 ! 5 ½CðN 1; K 1Þ 4 ðd1 !d2 ! . . . dM !Þ m¼1 dm
ð10Þ
Fig. 7. U-line structure of the case 16.
In case where MS is not accepted as fixed on MMULs, a procedure that can make lower bound calculation could not be developed yet. Therefore, the number of stations can be increased one by one beginning from the station number one until the feasible solution is found in order to find minimum station number (type 1), and all obtained cases must be assessed (including number of stations giving the feasible solution). In this case, the number of all cases that must be evaluated for N tasks until finding a feasible solution (including the station giving the feasible solution) in a given TS (under variable MS assumption) is given in the following equation (Eq. (11)): 3 2 PM m¼1 dm ! 5 ½CðN 1; 0Þ þ CðN 1; 1Þ þ . . . þ CðN 1; K 1Þ 4 ðd1 !d2 ! . . . dM !Þ
ð11Þ As it is seen, the evaluation of all cases to be formed for only one TS is a difficult and very time consuming work, and shows NP-hard structure. As indicated by Jin, Olhofer, and Sendhoff (2002), one essential difficulty in employing evolutionary algorithms in some applications is the huge time consumption due to high complexity of performance analyses for fitness evaluation and a large number of evaluations needed in the evolutionary optimization. Various efficiency-enhancement techniques have been developed in order to facilitate the solution of large-scale complex problems and to enhance further the performance of the algorithms. One such class of efficiency-enhancement technique is called as an evaluation relaxation. In the evaluation relaxation, an accurate but computationally expensive fitness evaluation is replaced by a less accurate but computationally inexpensive fitness estimate (Goldberg, 2002). 3.5. The simulated annealing algorithm based fitness evaluation approach
Fig. 6. U-line structure of the case 10.
In this paper, SA algorithm based fitness evaluation approach (Hamzadayi & Yildiz, 2012) is used for assessing the objective
1076
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Fig. 8. Neighborhood generation mechanism of the SA.
Fig. 9. The output of the example for dividing into segments.
values and is enhanced by adding the tabu list in order to eliminate unnecessary moves. The enhanced SA algorithm based fitness evaluation approach is explained in the following subsections.
3.5.1. Initial solution The initial solution for the SA based algorithm contains solutions for two problems: MMUL/LB and MMUL/MS. The combination of these solutions provides an initial solution to MMUL/BS problem. So, the SA based algorithm is adopted to randomly generate an initial solution for MMUL/LB (LB0), and a user defined feasible MS (MS0) is used as an initial solution for MMUL/MS.
3.5.2. Neighboring solutions In this subsection, the neighborhood generation logic developed by Hamzadayi and Yildiz (2012) is enhanced by adding the tabu list in order to eliminate unnecessary moves. A neighbor solution can be either a new LB (LBn) or a new MS (MSn). LBn is randomly generated depending on the K, and consists of four successive phases. MSn is generated by changing the positions of models in the MS. Initially, two random numbers (p1, p2) are specified for determining the type of the new neighbor solution. The neighborhood generation logic enables us to consider the LB and MS problems of mixed-model U-lines simultaneously as shown in Fig. 8.
Part 1: Line Balancing is generated depending on the probability p1 and consists of four successive phases. Phase 1. First of all, the TS is randomly divided into segments as much as K in a manner at least one task will be assigned to each station, and each length of segment is placed in the list that we called as assignment list (AL) in sequence. Division of the TS into segments, and generation of AL are shown step-by-step in the following procedure. Input: a feasible task sequence (TS(.)), number of tasks (N), number of stations (K) Output: assignment list (AL(.)) Step0. Set; u = [N (K 1)], z = 1, I = 1 and then, go to Step 1 Step1. If I is not equal to K, then go to Step 2. Otherwise; go to Step 3 Step2. Generate a random number between z and u. Set; AL(I) =[rnd(z, u) (z 1)], z = z + AL(I), u = u + 1, I = I + 1 and then, go to Step 1 Step3. Set; AL(I) = [u (z 1)] and then, Stop
For example, let a feasible TS be obtained by using prioritybased decoding procedure from precedence diagram consisting of 10 tasks (see Fig. 4) be TS = {1, 4, 10, 3, 2, 9, 5, 6, 7, 8}, and suppose that the tasks will be assigned to 4 stations (K = 4). Due to the fact that the number of tasks are 10 and the number of stations for making segmentation is 4, the TS is randomly divided into segments as much as the number of stations in a manner at least one task will be assigned to each station. One output from this procedure can be generated as AL = {3, 3, 2, 2} and is shown in Fig. 9. Phase 2. In this phase, the simulated annealing based fitness evaluation approach proposed by Hamzadayi and Yildiz (2012) is
Fig. 10. Tabu list behavior in generating a new AL.
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
enhanced by adding the tabu list. Each row of the tabu list consists of two components, namely the generated assignment list (AL) from phase 1 and the model sequence (MS). The content of AL is checked from the tabu list for controlling whether the pair of the generated ALn and the current MS is a tabu move or not. The tabu list records a subset of already visited solution in a list and declares them as tabu for choosing the mechanism in order to prevent from cycling (Zäpfel, Braune, & Bögl, 2010). The tabu list organized as a cyclic buffer with a fixed capacity. This means that when the buffer is full and new pairs of AL/MS should be added, the oldest pairs of AL/MS are removed from the buffer for providing a space for the new one. At the beginning, the buffer is empty, and the previous AL/MS pairs get shifted towards the end of the buffer when a new pair of AL/MS arrives. In this phase, if the generated AL from phase 1 is detected as a tabu move, the algorithm goes back to the phase 1, and a new AL is generated. Tabu list behavior in generating a new AL is showed in Fig. 10. Phase 3. Thirdly, precedence relations of the tasks forming each segment in AL are controlled, and which station index (SI) they will take is determined. SIs starts from 1 in a manner not breaking process flow of the tasks and are as much as K. These SIs are placed respectively in the list to be called as station index sequence (AIS). Determination of SIs and placement of these indexes to AIS are shown step-by-step in the following procedure. Input: assignment list (AL(.)) from previous phase, task sequence (TS(.)), the set of task nodes, and an empty precedence control list (CPR) Output: station index sequence (AIS(.)) Step0. Set SI = 1 (index) and go to Step 1 Step1. Set z = 1, I = 1 and go to Step 2 P Step2. Set u ¼ Ii¼1 ALðiÞ and go to Step 3 Step3. for (j = z to u; j = j + 1){ Set control = 0; if (CPR contain IPTS(j)){ Set control = 1; for (i = z to u; i = i + 1){ Set AIS(i) = SI; Set CPR(i) = TS(i); } end for Set SI = SI + 1; if ((SI 1) equal to K) Stop } end if if (control equal to 1){ Go to Step 4 (break) } end if } end for. Then, go to Step 4 P Step4. If u is not equal to N; Set z ¼ Ii¼1 ALðiÞ þ 1, I = I + 1, and then go to Step 2. Otherwise; go to Step 1
For example; if we determine which SIs will be possessed by tasks in TS = {1, 4, 10, 3, 2, 9, 5, 6, 7, 8} corresponding to the segments in AL = {3, 3, 2, 2} obtained from abovementioned phases, the output will be formed as shown in Fig. 11. Phase 4. Finally, model points (MPs) are detected by considering precedence relationship among tasks in order to determine which model time will be taken by tasks whose SIs are set, and these MPs are placed respectively in the list that we will call model point se-
Fig. 11. The output of the example of station index determination.
1077
quence (MIS). Determination of which MPs will be taken by tasks whose SIs are set, and placement of these determined MPs to the list of MIS are shown step-by-step in following procedure. Input: assignment list (AL(.)) from first phase, station index sequence (AIS(.)) from second phase, task sequence (TS(.)) (the same TS with previous phase), the set of task nodes and an empty precedence control list (CPR) Output: model index sequence (MIS(.)) Step0. Set MP = 1 (index), z = 1, I = 1 and then go to Step 1 P Step1. Set u ¼ Ii¼1 ALðiÞ. Then, go to Step 2 Step2. for (i = z to u; i = i + 1){ Set CPR(i) = TS(i); } end for. Then, go to Step 3 Step3. Set control = 0; for (i = z to u; i = i + 1){ if (CPR contain IPTS(i)){ Set control = 1; Set MIS(i) = MP; } end if. } end for. Then, go to Step 4 Step4. if (control equal to 1){ Set MP = MP + 1; } end if if all locations of MIS have a MP, Stop. Otherwise; go to Step 5 P Step5. Set z ¼ Ii¼1 ALðiÞ þ 1, I = I + 1. if the value of z is bigger than N, and then go to Step 6. Otherwise; go to Step 1 Step6. Set I = K 1 and then, go to Step 7 P Step7. Set u ¼ Ii¼1 ALðiÞ. If I is not equal to 1 then, set PI1 z ¼ i¼1 ALðiÞ þ 1 Otherwise; set z = 1 and go to Step 8 Step8. Set control = 0; for (i = u to z; i = i 1){ if MIS(i) has not any MP { Set MIS(i) = MP; Set control = 1; } end if } end for. Then, go to Step 9 Step9. If the value of control is equal to 1 then, set MP = MP + 1 and go to Step 10 Otherwise; go to Step 10 Step10. Set I = I 1. If I is equal to 0 Stop. Otherwise; go to Step 7
For example; if we determine which MPs will be possessed by tasks whose SIs are determined (AIS = {1, 1, 1, 2, 2, 2, 3, 3, 4, 4}) and see how these are transferred to MIS by continuing the example explained in previous phases. At the end of this procedure, which tasks will be processed at which zone of the assembly line will have been determined. The output of the example is shown in Fig. 12. This LB solution contains six MPs (maximum MP of MIS). The production process must follow these MPs from 1 to the last MP so as to provide precedence constrains. MPs for this line balance configuration are shown in Fig. 13. The length of each CSr is equal to maximum MP of MIS. For example, if the model sequence is selected as AABBC, the cycle sequences can be seen in Table 5. Part 2: MSn is generated by changing the positions of models in the current MS. This part consists of two successive phases, generating a new model sequence (MSn) and controlling the tabu list.
1078
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084 Table 5 Cycle sequences. CSr
Fig. 12. The output of the example of the determination of MPs.
Phase 1. Model Sequencing is generated using swapping or inserting. Swap: A new model sequence (MSn) is generated by swapping two randomly selected models in MS with the probability of (1 p1) p2. Note that these models should be different. Insert: MSn is generated by inserting a randomly selected model before another randomly selected model with the probability of (1 p1) (1 p2). Phase 2. In this phase, similar to the line balancing part, the content of MS is checked from the tabu list for controlling whether the pair of the generated MSn and the current AL is a tabu move or not. If it is detected as a tabu move, the algorithm goes back to the phase 1 and a new MSn is generated. Tabu list behavior in the generation of a new MS is showed in Fig. 14. 3.5.3. Checking feasibility of station time Each station at each cycle will be checked with regard to following procedure and the algorithm keeps running by taking into consideration if the solution is feasible or not. Input: f = 1(feasible) Output: f = 1(feasible) or f = 0 (infeasible) for (k = 1 to K (for all stations); k = k + 1){ for (r = 1 to R (for all cycles); r = r + 1){ Wkr =0;(initially, workload of the station k at the cycle r is equal to zero) for (i = 1 to N (for all tasks); i = i + 1){ if (TS(i) e (XFk + XBk)) { MP = MIS(i); Wkr = Wkr+tTSðiÞCSr ðMPÞ ; if (Wkr>C){(workload of the station k at the cycle r cannot exceed C) f = 0; (infeasible) Stop (break) } end if } end if } end for } end for } end for
CS1 CS2 CS3 CS4 CS5
MPs 1
2
3
4
5
6
A A B B C
C A A B B
B C A A B
B B C A A
A B B C A
A A B B C
3.5.4. Steps of SA based fitness evaluation approach The SA based fitness evaluation approach is described by the following steps: Step0. Specify the problem parameters (SA algorithm parameters (T0, Tcry, q, IT), a TS from SA and a feasible MS (MS0)); Set Ec = a very high value, Ebest = a very high value, con. = 0, K = a user-defined station number. Then, go to Step 1. Step1. Generate an initial LB (LB0) by using the line balancing procedure by using the current K; Set TC = T0, n = 1, LBc = LB0 and MSc = MS0. Then, go to Step 2. Step2. Generate a neighbor (a new LBn or MSn can be generated by chancing LBc or MSc) by using the neighborhood generating procedure and go to Step 3. Step3. Check the stations time feasibility (The each station time at each cycle is checked with generated combination of LBn, MSn and the given cycle time) by using the checking feasibility of station time procedure. Then, go to Step 4. Step4. If f equal to 1, then go to Step 5. Otherwise; go to Step 9. Step5. Set; con. = con. + 1. Calculate; the cost of this neighbor solution (En) and then calculate the difference between the cost of neighbor solution (En) and the cost of current solution (Ec) by the following equation: D = En Ec and then, go to Step 6. Step6. If D 6 0, then accept the model sequence (MSn) as a new model sequence (MSc), set Ec = En, LBc = LBn, MSc = MSn and then, go to Step 7. Otherwise; go to Step 8. Step7. If Ec < Ebest; Set Ebest = Ec, LBbest = LBc, MSbest = MSc. Otherwise; Ebest, LBbest and MSbest are not change. Go to Step 9. Step8. If D > 0, then accept the neighbor solution as the current solution with the probability of exp (D/Tc) and set Ec = En, LBc = LBn, MSc = MSn. Otherwise; Ec, LBc, MSc are not change. Then, go to Step 7. Step9. If n = IT, then g o to Step 10. Otherwise; set n = n + 1 and go to Step 2. Step10. Set; Tc = Tc q, n = 1 and then go to Step 11. Step11. If T c P T cry , then go to Step 2. Otherwise; go to Step 12. Step12. If con: P 1, then Stop. Otherwise; set K = K + 1 and go to Step 1. For more descriptive information about the SA based fitness evaluation approach, the readers can refer to Hamzadayi and Yildiz (2012).
3.6. Numerical illustration
Fig. 13. Model points.
In order to describe the characteristics of proposed solution method for the problem of MMUL/BS, we used 10-task problem with three models (Kara et al., 2007a). Combined precedence diagram relationships among tasks and task completion times are given in Fig. 4 and Table 6, respectively. Suppose the demand rates of products A, B, and C are 40, 40, and 20 units in a planning period (P) of 1200 min (D = {40, 40, 20}). The greatest divisor (cd) of vector D is 20. By dividing the elements of D by 20, MPS = {2, 2, 1}. So, the example line is running at a cycle (C) of 12 min/units (1200/
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
1079
Fig. 14. Tabu list behavior in generating a new MS.
(40 + 40 + 20)). The initial model sequence (MS0) of the example Uline is selected as AABBC and, thus R is equal to 5. The parameters used in the proposed SA runs are determined via Taguchi method and listed in Table 12 (see Section 4). Table 7 illustrates some steps of the procedure applied to the numerical example. A final MMUL/BS is shown in each of the small tables. To simplify the schema, only the fitness function where reductions occurred is represented in the algorithm. The content of each column in these small tables is as follows: (1) station index, k, (2) set of tasks assigned to the stations, and (3) the idle time of the stations at each cycle, Skr. Information given in each small table contain the best model sequence of the final line balance, MSbest, and the best objective function, Z, when the fitness function reduction is occurred. After the evaluation of the initial temporary solution, a total of 5 station with Z = 5.1336 is detected. As a result of beginning with this solution, the SA is able to reduce the objective function. The best solution is found as a total of 4 station with Z = 4.4251. The best model sequence of the final line balance is found as BABCA. As shown in Table 7, there is no workload exceeding the pre-determined cycle time for the final U-line balances. The final U-line balance consisting of two of the stations has tasks at both sides of U-line, and the others have the tasks at only one side of U-line. Final U-line balance of the example is shown in Fig. 15. Model mixes of stations for each cycle of the final U-line balance are also given in Table 8. N X M X C min ¼ ½1=ðK RÞ dm t im ðTheoretical minimum cycle timeÞð12Þ i¼1 m¼1
ADW ¼
K X R X jW kr C min j
ð13Þ
k¼1 r¼1
As indicated in Section 1, the ADW is quite frequently used as the performance criteria in the literature of MMUL. When the ADW
Table 6 Task completion times for the example problem. Task
1 2 3 4 5 6 7 8 9 10
Completion time A
B
C
5 2 2 4 0 4 9 3 0 3
4 0 6 0 6 1 4 7 6 7
5 7 5 2 6 5 0 5 5 1
(Eq. (13)) is used as a performance measure, handled problem may give more than one solution with the same fitness value, and line configurations of these solutions with the same fitness values can be completely different from each other. Therefore, it is not obvious that which of these solutions has more fitted line configuration. This situation becomes more important when the number of task and the number of products are increased. The performance measure proposed by Hamzadayi and Yildiz (2012) may be used as secondary goal in order to determine which configuration is more stable when such situations are encountered. For example, although the ADW in the stage 6 and the final solution is the same with each other as the value of 41.6 in the numerical example, their line configurations are completely different. As it can be seen in Table 7, the performance measure that is used allows us to be able to handle a different aspect and help us to be able to determine which solution has a more balanced line configuration. It may be noted that MMUL/BS solution of the stage 6 is equal to the final solution obtained by Kara et al. (2007a).
4. Parameter calibration Appropriate design of the parameters has extremely impact on the effectiveness of the algorithms. The purpose of this section is to find the effective levels of each required parameter for the proposed algorithm runs. The most commonly used method to calibrate the algorithm parameters is a full factorial design (Montgomery, 2000; Ruiz, Maroto, & Alcaraz, 2006). The number of design points dictated by a full factorial design is the product of the number of levels for each parameter. The size of a full factorial experiment increases exponentially with the number of parameters; this leads to an unmanageable number of experiments (Simpson, Peplinski, Koch, & Allen, 2001). Instead of having to test all possible combinations like the full factorial design, Taguchi method (Taguchi, 1986) seems much better effective when the number of algorithm parameters significantly increases since it uses much fewer experiments (Al-Aomar, 2006). Taguchi method uses a special design of orthogonal arrays to study the entire parameter space with a small number of experiments only. Thus, time and cost required to conduct the experiments can be reduced. Taguchi divides the factors into two basic clusters: controllable and noise factors (uncontrollable). Control factors are set and held at specific values, while noise factors cannot be controlled. Since elimination of the noise factors is impractical and often impossible, the Taguchi method seeks to minimize the effect of noise and to determine optimal level of important controllable factors based on the concept of robustness (Phadke, 1989). Besides determining the optimal levels, Taguchi establishes the relative significance of individual factors in terms of their main effects on the objective function (B. Naderi, Zandieh, Balagh, & Roshanaei, 2009). The variation of the output results is measured
1080
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Table 7 Step-by-step illustration of the solution process. Station (k)
Task(i) {XFk}, {XBk}
Stage 1: The first temporary solution 1 {1, 3}, {/} 2 {2}, {10} 3 {4}, {8} 4 {5, 6}, {/} 5 {7, 9}, {/}
Idle time (Skr) {r = 1, 2, . . ., R} {2, {4, {1, {8, {2,
2, 5, 3, 8, 3,
5, 5, 9, 1, 3,
5, 7, 9, 5, 7,
2} 7} 3} 5} 2}
{1, {0, {8, {1,
0, 0, 1, 0,
1, 8, 5, 7,
0, 1, 8, 1,
4} 2} 5} 0}
{0, {2, {1, {1,
1, 2, 8, 7,
1, 1, 8, 0,
4, 6, 5, 0,
0} 0} 5} 1}
{7, {2, {5, {7,
7, 1, 0, 1,
4, 1, 2, 1,
5, 0, 2, 0,
5} 2} 1} 0}
{0, {5, {6, {1,
1, 3, 5, 0,
2, 5, 0, 1,
1, 3, 0, 7,
2} 5} 6} 0}
{5, {1, {0, {2,
0, 3, 0, 7,
5, 1, 6, 1,
0,2} 5, 1} 6, 5} 2, 1}
{5, {3, {0, {7,
2, 1, 6, 0,
2, 5, 6, 1,
5, 1, 5, 0,
2} 1} 0} 1}
{2, {1, {0, {1,
5, 3, 0, 7,
2, 1, 6, 0,
2, 5, 6, 1,
5} 1} 5} 0}
MS: CBBAA; Z = 5.1336 Stage 2: A temporary solution 1 {1, 4}, {10} 2 {2, 3}, {9} 3 {5, 6}, {/} 4 {7, 8}, {/} MS: BABAC; Z = 4.8265 Stage 3: A temporary solution 1 {1, 4}, {10} 2 {2, 3}, {9} 3 {5, 6}, {/} 4 {7, 8}, {/} MS: ABBCA; Z = 4.6196 Stage 4: A temporary solution 1 {2}, {10} 2 {1, 3, 4}, {/} 3 {5, 6}, {9} 4 {7, 8}, {/} MS: AACBB; Z = 4.4910 Stage 5: A temporary solution 1 {1, 3, 4}, {/} 2 {5}, {10} 3 {2, 6}, {9} 4 {7, 8}, {/} MS: CABAB; Z = 4.4587 Stage 6: A temporary solution 1 {1}, {8} 2 {4, 5}, {10} 3 {2, 6}, {9} 4 {3, 7}, {/} MS: ABABC; Z = 4.4271 Stage 7: A temporary solution 1 {1, 3}, {/} 2 {4, 5}, {10} 3 {2, 6}, {9} 4 {7, 8}, {/} MS: ABCAB; Z = 4.4251 Stage 8: Final solution 1 {1, 2 {4, 3 {2, 4 {7,
3}, 5}, 6}, 8},
{/} {10} {9} {/}
MS: BABCA; Z = 4.4251
by means of Signal-to-Noise (S/N) ratio. The purpose is the maximization of the S/N ratio. Taguchi categorizes objective functions into three groups: the smaller-the-better type, the larger-the-better type, and nominalis-best type. Since almost all objective functions in assembly line problems are classified in the smaller-the-better type, its corresponding S/N ratio is: S/N ratio = 10log10 (objective)2. Crystallization temperature of SA and SABFEA are fixed to 0.1. The initial number of station (K) is set to 1. Different levels of the parameters that are reviewed to calibrate are shown in Table 9. The associated degree of freedom for these nine factors is 18. So, the selected orthogonal array should have minimum 18 rows and
Fig. 15. Final U-line balance of the example.
nine columns to accommodate the nine parameters. From standard table of orthogonal arrays, the L27 is selected as the fittest orthogonal array design which fulfills our all minimum requirements. For identifying the effect of different control parameters, Thomopoulos19 (Thomopoulos, 1970) is chosen with MPS = {2, 2, 2} having the medium complexity. For each combination, 10 runs are conducted to determine the variation in the results. As a result, a total of (27 10) 270 runs are carried out. The relative percentage deviation (RPD) (Ruiz & Allahverdi, 2007) is used as a common performance measure for comparing the methods. RPD is calculated as shown in Equation (14).
RDP ¼
Alg sol Minsol 100 Minsol
ð14Þ
In the RPD formula, Algsol and is the objective function value obtained for each run and Minsol is the best solution obtained among all runs. Indeed, the robustness is the first aim of Taguchi method. Moreover, it tries to choose levels of parameters optimizing the output results as the second aim of the method. In other words, in the situation of having no significant difference between S/N ratio values, RPD is considered as the second criteria (Mosadegh, Zandieh, & Fatemi Ghomi, 2012). The analysis of variance (or ANOVA) results for S/N ratios and RDP values obtained at each level of the parameters is shown in Table 10. Investigation of the first criterion (S/N ratio), Table 10 shows that at the level of 5%, parameters A, B, E, G and H have a meaningful difference in their own levels. Therefore, A(2), B(2), E(1), G(2) and H(3) are selected based on the results of Taguchi design as shown in Table 11(a). Regarding RDP values (see Table 10), at the level of 5%, factors C, D, and F have a significant difference in their own levels. Similarly, C(2), D(2) and F(2) are selected based on Table 11(b). It can be seen from Table 10, there is no significant difference between two methods of the new model sequencing (swapping and inserting) for the parameter J. Nevertheless, considering Table 11, J(1) is selected. Finally, the proposed SA is calibrated according to the Taguchi results as shown in Table 12. 5. Computational experiments As mentioned earlier, there are only two articles (Kara et al., 2007a; Hamzadayi & Yildiz, 2012) related to simultaneous balancing and sequencing of mixed-model U-lines for minimizing the number of stations (Type 1 problem) by ignoring the fixed model sequence in the current literature. Kara et al. (2007a) generated a number of MMU/BS problems randomly and their paper does not contain any data about the generated problem, except for the problem data of the illustrative example. On the other hand, computational results of Hamzadayi and Yildiz (2012) contain parallel stations and zoning constraints. This section consists of two subsections. In the first subsection, for validation and being able to test the effectiveness of the proposed
1081
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084 Table 8 Model mixes of stations for each cycle of the final U-line balance. 1
2
3
4
5
Station (k)
Model (m) {fk1 }, {bk }
Model (m) {fk2 }, {bk }
Model (m) {fk3 }, {bk }
Model (m) {fk4 }, {bk }
Model (m) {fk5 },{bk }
1 2 3 4
{B}, {/} {A}, {B} {C}, {A} {B}, {/}
{A}, {/} {B}, {A} {A}, {B} {C}, {/}
{B}, {/} {A}, {B} {B}, {C} {A}, {/}
{C}, {/} {B}, {C} {A}, {A} {B}, {/}
{A}, {/} {C}, {A} {B}, {B} {A}, {/}
Table 9 Parameters and their levels. Parameter
Symbol
Level
SA parameters
Initial Temperature Length of the each temperature level Cooling rate
A B C
A(1): 500, A(2): 1000, A(3): 1500 B(1): 10, B(2): 50, B(3): 100 C(1): 0.90, C(2): 0.95, C(3): 0.99
SABFEA parameters
Initial temperature Length of the each temperature level Cooling rate
D E F
D(1): 50, D(2): 100, D(3): 200 E(1): 10, E(2): 50, E(3): 100 F(1): 0.90, F(2): 0.95, F(3): 0.99
Other parameters
Length of the tabu list Probability of p1 Probability of p2
G H J
G(1): 10, G(2): 20, G(3): 50 H(1): 0.50, H(2): 0.60, H(3): 0.80 J(1): 0.5, J(2): 0.6, J(3): 0.8
Table 10 Analysis of variance for S/N ratio and RPD values. Parameter
Degree of freedom
F distribution
P value
ANOVA results for S/N ratios
A B C D E F G H J Error Total
2 2 2 2 2 2 2 2 2 8 26
98.677 60.597 7.948 37.090 68.987 36.049 75.670 82.225 7.265 45.901 520.409
49.339 30.299 3.974 18.545 34.494 18.024 37.835 41.112 3.633 5.738
8.60 5.28 0.69 3.23 6.01 3.14 6.59 7.17 0.63
0.010 0.035 0.528 0.094 0.025 0.098 0.020 0.016 0.556
ANOVA results for RPD values
A B C D E F G H J Error Total
2 2 2 2 2 2 2 2 2 8 26
261.230 162.720 61.140 227.450 101.780 75.480 83.700 110.240 4.660 50.020 1138.420
130.617 81.360 30.569 113.726 50.892 37.738 41.849 55.121 2.330 6.252
20.89 13.01 4.89 18.19 8.14 6.04 6.69 8.82 0.37
0.001 0.003 0.041 0.001 0.012 0.025 0.020 0.009 0.700
algorithm, it is compared to a SA based approach which is proposed by Kara et al. (2007b) to simultaneously balance and sequence of mixed-model U-lines for a given number of stations. In the second one, due to the lack of comparable studies dealing with balancing and sequencing problems of mixed-model U-lines in minimizing the number of workstations (Type I) in the current literature, the proposed algorithm is tested with three sets of problem, which are 10-task with 3-model in Kara et al. (2007a), 19-task with 3-model in Thomopoulos (1970) and 20-task with 5-model in Kara et al. (2007b), and MPSs generated by Hamzadayi and Yildiz (2012), by taking into account only the simplified fitness function. The algorithm is coded in Matlab 7.6.0 and run on a 3.00 GHz Pentium 4 computer. The parameters used for algorithm runs are given in Table 12. 5.1. Validation and testing the efficiency of the proposed algorithm In this subsection, for validation and being able to show the effectiveness of the proposed algorithm, it is compared to a SA
Sum of squares
Mean of squares
based approach which is proposed by Kara et al. (2007b) to simultaneously balance and sequence of mixed-model U-lines for a given number of stations. The objectives considered in their study are smoothing the usage rate of parts (UT) consumed by MMUL, minimizing the total cost of setups (ST) as well as the ADW across stations. Their fitness function is adapted to our algorithm for being able to make a comparison and the parameter K that shows the number of station is fixed to 5 as in their study. The initial line balance and the initial model sequence obtained by Kara et al. (2007b) are shown in Table 13. They have scaled the values of these performance measures obtained at any iteration of SA by dividing them by their initial values. Finally, the composite objective function has been computed by multiplying the scaled values of performance measures by their respective weighting factors. The values of the weighting factors for cost function have been assumed to be equal and fixed to 1. Naturally, the initial value of the composite cost function (E) has been calculated as 3.000. After all of the SA iterations are treated and the stopping criterion is met, they have obtained the final va-
1082
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Table 11 The results of Taguchi design. Level
(a) The mean S/N ratio for each level of the parameters
(b) The mean RPD for each level of the parameters
A(1) A(2)X A(3) B(1) B(2)X B(3) C(1) C(2)X C(3) D(1) D(2)X D(3) E(1)X E(2) E(3) F(1) F(2)X F(3) G(1) G(2)X G(3) H(1) H(2) H(3)X J(1)X J(2) J(3)
25.74 21.58 21.80 24.97 21.32 22.82 23.03 22.38 23.71 24.69 22.11 22.32 20.85 24.62 23.64 24.47 21.64 23.01 24.96 20.88 23.27 25.45 22.27 21.39 22.60 23.77 22.75
18.10 11.39 11.62 16.81 10.80 13.49 15.71 12.08 13.31 17.77 11.18 12.15 11.14 15.84 14.12 15.72 11.63 13.75 15.55 11.33 14.22 16.54 12.60 11.97 13.15 14.15 13.80
The proposed algorithm is tested with the same problem characteristic conditions (with the initial line balance and model sequencing) and it is seen that the proposed algorithm yields better solution (as the value of 2.108) than Kara et al.’s (2007b) final solution. The station assignments and the model sequence of the final solution are given in Table 15. It can be seen that all of the stations are regular. For more descriptive information about the objective function and data set, the readers can refer to Kara et al. (2007b). 5.2. Testing the proposed algorithm by using the simplified fitness function
X represents optimal level.
Table 12 Taguchi results: selected levels of the parameters. Parameter
Level
SA parameters
Initial Temperature Length of the each temperature level Cooling rate
A(2): 1000 B(2): 50 C(2): 0.95
SABFEA parameters
Initial temperature Length of the each temperature level Cooling rate
D(2): 100 E(1): 10 F(2): 0.95
Other parameters
Length of the tabu list Probability of p1 Probability of p2
G(2): 20 H(3): 0.80 J(1): 0.5
Fixed parameters
Crystallization temperature of SA Crystallization temperature of SABFEA Initial number of station (K)
0.1 0.1 1
lue of the cost function (E) as 2.773. The final line balance and the final model sequence obtained by Kara et al. (2007b) are shown in Table 14.
In this subsection, the proposed algorithm is tested with three sets of problem, which are 10-task with 3-model in Kara et al. (2007a), 19-task with 3-model in Thomopoulos (1970) and 20-task with 5-model in Kara et al. (2007b), and MPSs generated by Hamzadayi and Yildiz (2012), by taking into account only the simplified fitness function. The experiment is repeated 10 times for every test problem by taking into account only the simplified fitness function; and minimum, mean and maximum values of the solutions are respectively shown in the last three columns of Table 16. As it can be seen from Table 16, the value of fitness function may vary according to different MPSs for the same test problem. This indicates that the sequence in which different models are produced cannot be set independently from the line balance. In fact, the reason of this is the difference of the combination of models assigned to stations according to varying cycles. As a result, the configuration of the MPS on the line is more important than the total number of models for the MPS. For example, tasks are assigned to 5 workstations with MPS={2, 3, 2} while tasks are assigned to 4 workstations with the other five MPSs for the test problem of Kara10. 6. Conclusions In this paper, a simulated annealing algorithm is proposed for solving the MMUL/BS problem of type 1 by ignoring the fixed MS. The difficulties experienced in the evaluation of each solution by using the meta-heuristics based on solution modification (the improved meta-heuristics) in order to solve the MMUL/BS problem of type 1 by ignoring the fixed MS is demonstrated. Accordingly, SA based fitness evaluation approach proposed by Hamzadayi and Yildiz (2012) is enhanced by adding the tabu list to avoid cycling moves and is inserted into the proposed SA for calculating the fitness functions. ADW is quite frequently used as performance criteria in the literature. It is found that ADW is an insufficient performance criterion for evaluating the performance of the solutions, and this is showed by an illustrative example. Proposed SA tries to find the minimum number of stations as a primary goal (Type 1). As a secondary goal, it tries to optimize the workload bal-
Table 13 Initial line balance and model sequence obtained by Kara et al. (2007b). Station
1
2
Tasks assigned {front}, {back} {1, 3}, {16,20} {1, 3}, {16,20} MS = BADEADDCE, ADW = 284.223, ST = 297.860, UT = 142.426, E = 3.000
3
4
5
{6, 7, 8, 11}, {/}
{9, 10, 14}, {17}
{12, 13, 15, 18}, {/}
Table 14 Final line balance and model sequence obtained by Kara et al. (2007b). Station
1
2
Tasks assigned {front}, {back} {1, 3, 5}, {20} {2, 4, 6}, {18,19} MS: ADEADDBCE, ADW = 298.668, ST = 205.430, UT = 146.994, E = 2.773.
3
4
5
{7, 8, 11}, {/}
{9, 14}, {15}
{10, 12, 13, 16, 17}, {/}
1083
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084 Table 15 Final line balance and model sequence obtained by the proposed algorithm. Station
1
2
Tasks assigned {front}, {back} {1, 5, 2}, {/} {9, 10, 15, 19, 3}, {/} MS: EADDBCEAD, ADW = 233.777, ST = 206.730, UT = 84.2573, E = 2.108.
3
4
5
{7, 6, 11, 4}, {/}
{8, 12, 13, 14}, {/}
{18, 17, 16, 20}, {/}
Table 16 Test problems. Problem
Name of problem
Number of models
Cycle time
MPS
Min.
Mean
Max.
Mean CPU Time (min)
Kara10 Kara10 Kara10 Kara10 Kara10 Kara10
3 3 3 3 3 3
12 12 12 12 12 12
{1, {2, {2, {2, {4, {5,
1, 1, 2, 3, 2, 4,
1} 2} 1} 2} 3} 2}
4.9586 4.4755 4.4251 5.0767 4.3116 4.3376
4.9586 4.4755 4.4251 5.0767 4.3116 4.3447
4.9586 4.4755 4.4251 5.0767 4.3116 4.3732
5.4571 5.3481 6.5677 6.9956 7.7649 7.6572
7 8 9 10 11 12
Thomopoulos19 Thomopoulos19 Thomopoulos19 Thomopoulos19 Thomopoulos19 Thomopoulos19
3 3 3 3 3 3
2.2 2.2 2.2 2.2 2.2 2.2
{1, {2, {2, {2, {4, {5,
1, 1, 2, 3, 2, 4,
1} 2} 1} 2} 3} 2}
3.2952 3.2918 3.1713 3.3702 3.3482 3.1258
3.2952 3.7094 3.1806 3.3874 3.4711 3.1453
3.2952 4.0183 3.1947 3.4389 3.6085 3.2168
12.7831 13.8764 13.1865 14.7834 13.9716 15.6318
13 14 15 16 17 18
Kara20 Kara20 Kara20 Kara20 Kara20 Kara20
5 5 5 5 5 5
55 55 55 55 55 55
{1, {2, {1, {5, {1, {1,
1, 1, 3, 3, 2, 4,
1, 1, 2, 2, 4, 8,
3.0396 3.2393 3.0973 3.0589 3.1869 3.1234
3.0708 3.2948 3.1086 3.0717 3.1942 3.1349
3.1131 3.4326 3.1182 3.0889 3.2113 3.1573
24.6347 28.2814 29.9557 29.2403 39.9712 31.1254
1 2 3 4 5 6
ance between and within workstations by taking all cycles into consideration. An extensive comparison between different parameters of the proposed simulated annealing algorithm is conducted to obtain their precise calibration by the means of Taguchi method. For validation and being able to test the effectiveness of the proposed algorithm, it is compared to SA based approach with the multiple objectives proposed by Kara et al. (2007b) to solve MMUL/BS problem for a given number of stations. On the other hand, the proposed approach is tested by problem sets consisting of 10 tasks-3 models, 19 tasks-3 models, and 20 tasks-5 models by thinking that real life U-shaped mixed model assembly lines consist of 10.2 tasks on average (Miltenburg, 2001). Results showed that our proposed SA is able to solve practical-sized problems with reasonable CPU time. It is concluded that the proposed approach is an effective method in solving simultaneous LB/MS problems in the MMULs. As a direction for future research, investigating the problem on hand with sequence-dependent setup times between tasks, stochastic task times and workers’ moving times would be considerable. In addition, the other meta-heuristic approaches and efficient heuristic approaches may be developed for solving the problem on hand. References Al-Aomar, R. (2006). Incorporating robustness into genetic algorithm search of stochastic simulation outputs. Simulation Modeling Practice and Theory, 14, 201–223. Bard, J. F., Dar-el, E. M., & Shtub, A. (1992). An analytic framework for sequencing mixed model assembly lines. International Journal of Production Research, 30, 35–48. Batini, D., Faccio, M., Ferrari, E., Persona, A., & Sgarbossa, F. (2007). Design configuration for a mixed-model assembly system in case of low product demand. The International Journal of Advanced Manufacturing Technology, 34(1– 2), 188–200. Becker, C., & Scholl, A. (2006). A survey on problems and methods in generalized assembly line balancing. European Journal of Operational Research, 168, 694–715. Cheng, C. H., Miltenburg, J., & Motwani, J. (2000). The effect of straight- and ushaped lines on quality. IEEE Transactions on Engineering Management, 47, 321–334. Erel, E., & Gokcen, H. (1999). Shortest-route formulation of mixed-model assembly line balancing problem. European Journal of Operational Research, 116, 194–204.
1, 3, 2, 1, 5, 3,
1} , 2} 1} 1} 8} 1}
Erel, E., & Sarin, S. C. (1998). A survey of the assembly line balancing procedures. Production Planning and Control, 9, 414–434. Ghosh, S., & Gagnon, R. J. (1989). A comprehensive literature review and analysis of the design, balancing and scheduling of assembly systems. International Journal of Production Research, 27, 637–670. Goldberg, D. E. (2002). Design of innovation: Lessons from and for competent genetic algorithms. Boston, MA: Kluwer Academic Publishers. Hamzadayi, A., & Yildiz, G. (2012). A genetic algorithm based approach for simultaneously balancing and sequencing of mixed-model U-lines with parallel workstations and zoning constraints. Computers and Industrial Engineering, 62(1), 206–215. Hwang, R. K., Katayama, H., & Gen, M. (2008). U-shaped assembly line balancing problem with genetic algorithm. International Journal of Production Research, 46(16), 4637–4649. Hwang, R. K., & Katayama, H. (2009). A multi-decision genetic approach for workload balancing of mixed-model U-shaped assembly line systems. International Journal of Production Research, 47(14), 3797–3822. Jin, Y., Olhofer, M., & Sendhoff, B. (2002). A framework for evolutionary optimization with approximate fitness functions. IEEE Transactions on Evolutionary Computation, 6(5), 481–494. Kara, Y. (2008). Line balancing and model sequencing to reduce work overload in mixed-model U-line production environments. Engineering Optimization, 40(7), 669–684. Kara, Y., Ozcan, U., & Peker, A. (2007a). An approach for balancing and sequencing mixed-model JIT U-lines. International Journal of Advanced Manufacturing Technology, 32, 1218–1231. Kara, Y., Ozcan, U., & Peker, A. (2007b). Balancing and sequencing mixed-model just-in-time U-lines with multiple objectives. Applied Mathematics and Computation, 184, 566–588. Kara, Y., & Tekin, M. (2009). A mixed integer linear programming formulation for optimal balancing of mixed-model U-lines. International Journal of Production Research, 47(15), 4201–4233. Karp, R. M. (1972). Reducibility among combinatorial problems. In R. E. Miller & J. W. Thatcher (Eds.), Complexity of computer applications (pp. 85–104). New York: Plenum Press. Kim, Y. K., Kim, S. J., & Kim, J. Y. (2000). Balancing and sequencing mixed model Ulines with a co-evolutionary algorithm. Production Planning and Control, 11, 754–764. Kim, Y. K., Kim, J. Y., & Kim, Y. (2006). An endosymbiotic evolutionary algorithm for the integration of balancing and sequencing in mixed-model U-lines. European Journal of Operational Research, 168, 838–852. Kirkpatrick, S., Gelatt, C. D., Jr, & Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 220, 671–680. Macaskill, J. L. C. (1972). Production-line balances for mixed model lines. Management Science, 19(4), 423–434. Miltenburg, J. (2001). U-shaped production lines: A review of theory and practice. International Journal of Production Economics, 70, 201–214. Miltenburg, J. (2002). Balancing and sequencing mixed-model U-shaped production lines. International Journal of Flexible Manufacturing Systems, 14, 119–151.
1084
A. Hamzadayi, G. Yildiz / Computers & Industrial Engineering 66 (2013) 1070–1084
Miltenburg, J., & Wijngaard, J. (1994). The U-line line balancing problem. Management Science, 40(10), 1378–1388. Montgomery, D. C. (2000). Design and analysis of experiments (5th ed.). New York: John Wiley and Sons. Mosadegh, H., Zandieh, M., & Fatemi Ghomi, S. M. T. (2012). Simultaneous solution of balancing and sequencing problems with station-dependent assembly times for mixed-model assembly lines. Applied Soft Computing, 12, 1359–1370. Naderi, B., Zandieh, M., Balagh, A. K. G., & Roshanaei, V. (2009). An improved simulated annealing for hybrid flowshops with sequence-dependent setup and transportation times to minimize total completion time and total tardiness. Expert Systems with Applications, 36, 9625–9633. Özcan, U., Kellegöz, T., & Toklu, B. (2011). A genetic algorithm for the stochastic mixed-model U-line balancing and sequencing problem. International Journal of Production Research, 49(6), 1605–1626. Phadke, M. S. (1989). Quality engineering using a robust design. Upper Saddle River: Prentice-Hall. Ruiz, R., Maroto, C., & Alcaraz, J. (2006). Two new robust genetic algorithms for the flowshop scheduling problem. Omega, 34, 461–476. Ruiz, R., & Allahverdi, A. (2007). Some effective heuristics for no-wait flowshops with setup times to minimize total completion time. Annals of Operations Research, 156(1), 143–171.
Salveson, M. E. (1955). The assembly line balancing problem. Journal of Industrial Engineering, 6, 18–25. Scholl, A., & Klein, R. (1999). ULINO: Optimally balancing U-shaped JIT assembly lines. International Journal of Production Research, 7(4), 721–736. Simpson, T. W., Peplinski, J. D., Koch, P. N., & Allen, J. K. (2001). Metamodels for computer-based engineering design: Survey and recommendations. Engineering with Computers, 17, 129–150. Sparling, D., & Miltenburg, J. (1998). The mixed-model U-line balancing problem. International Journal of Production Research, 36, 485–501. Taguchi, G. (1986). Introduction to quality engineering: Designing quality into products and processes (1st ed.). White Plains: Asian Productivity Organization. Thomopoulos, N. T. (1970). Mixed model line balancing with smoothed station assignments. Management Science, 16, 593–603. Vilarinho, P. M., & Simaria, S. A. (2002). A two-stage heuristic method for balancing mixed-model assembly lines with parallel workstations. International Journal of Production Research, 40(6), 1405–1420. Yu, V. F., Lin, S. W., Lee, W., & Ting, C. J. (2010). A simulated annealing heuristic for the capacitated location routing problem. Computers and Industrial Engineering, 58, 288–299. Zäpfel, G., Braune, R., & Bögl, M. (2010). Metaheuristic search concepts. Heidelberg: Physica-Verlag.