European Journal of Operational Research 171 (2006) 1051–1070 www.elsevier.com/locate/ejor
Hybrid genetic approach for solving large-scale capacitated cell formation problems with multiple routings Aaron Luntala Nsakanda
a,*
, Moustapha Diaby b, Wilson L. Price
c
a
Sprott School of Business, Carleton University, Ottawa, Ontario, Canada K1S 5B6 School of Business Administration, University of Connecticut, Storrs, CT 06268, USA c Faculte´ des Sciences de l’administration, Universite´ Laval, Que´bec, Canada G1K 7P4
b
Available online 11 March 2005
Abstract We present a comprehensive model for designing a cellular manufacturing system. The model bridges several known problems in that it integrates the cell formation problem, the machine allocation problem, and the part routing problem. Multiple process plans for each part and multiple routing alternatives for each of those process plans are considered. The part demands can be satisfied from internal production or through outsourcing. Machines have limited capacities. We propose a solution methodology based on a combination of a genetic algorithm and large-scale optimization techniques. A computational study is conducted to evaluate the viability of our approach for solving large scale problems. A limited computational experiment involving smaller problems, that are special cases of our model, is also conducted to compare our solution approach with existing models. 2005 Elsevier B.V. All rights reserved. Keywords: Cellular manufacturing systems; Genetic algorithm; Dantzig–Wolfe decomposition; Large-scale optimization; Alternate routings
1. Introduction Cellular manufacturing has been one of the most successful ways that companies have used in order to cope with the challenges of todayÕs global competitive environment. The approach has been applied in a variety of industries over the past three decades, such as machinery and tools, aerospace and defense,
*
Corresponding author. Tel.: +1 613 520 2600x2210; fax: +1 613 520 4427. E-mail addresses:
[email protected] (A.L. Nsakanda),
[email protected] (M. Diaby), wilson.
[email protected] (W.L. Price). 0377-2217/$ - see front matter 2005 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2005.01.017
1052
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
automotive, and electrical (Wemmerlo¨v and Johnson, 1997). Reported benefits include increases in throughput coupled with reductions in setup times and costs, cycle times, work-in-process inventory levels, material handling times and costs, factory space requirements, product defect rates, and machine idle times. However, because the cellular manufacturing system (CMS) design affects all lower decisions, these benefits may not be achieved (or may be offset) if careful attention is not paid to it. The central concerns in designing a CMS are to group machines into cells and to allocate parts to these cells in such a way to minimize the required intercellular moves. The problem, also referred to as ‘‘the cell formation problem’’, has been the subject of extensive academic research. Reviews of structured approaches have been proposed to address it and can be found in Singh (1993), Selim et al. (1998), among others. A vast majority of the models assume a single process route (or routing) possibility for each part. But, a few authors have argued that by taking the flexibility offered by the presence of multiple process routes (or routings) into account at the design phase, several benefits can be realized, such as allowing for a smaller number of machines, higher machine utilization, a reduced interdependence between cells, and an improved system throughput rate (Kusiak, 1987; Kang and Wemmerlo¨v, 1993). We should underline at this point the distinction between a ‘‘process plan’’ and a ‘‘process route’’ (see for similar definitions Lozano et al., 1999; Rajamani et al., 1992). In this paper, by a process plan we mean a list of the operations required in order to transforming raw materials into some finished goods, and the precedence requirements between those operations. On the other hand, by process route we will be referring to a sequence of specific machines or work centers a part flows through to complete its processing, as required by the process plan. Hence, for a given process plan, multiple process routes would exist if one or more of the operations required to make the part can be performed on alternate machines (either different type or identical processors) physically located at different places. Thus, in general, a process route implies a specific movement within the manufacturing facility, whereas a process plan does not have any such direct implication. This paper deals with the cell formation problem considering multiple routings possibilities for each part. The seminal mathematical programming model dealing with multiple routings was proposed by Kusiak (1987). It consists of an integer programming model that seeks to maximize the similarity between parts assigned to a family, subject to upper bound constraints on the sizes of the part families. Some limitations of this model are that it does not consider demand requirements for the parts, nor the processing sequences for the parts, nor the machine capacity constraints. Most of the subsequent works dealing with multiple routings can be classified into two categories whether or not they consider that machines have finite capacities. Chen and Heragu (1999) proposed a two-step decomposition approach for solving near-optimally large-scale problems and discussed conditions under which a solution obtained is optimal. This work contributes to the solution of large-scale uncapacitated cell formation problem (UCFP) since it is assumed that the number of machines of each type available is adequate to satisfy the machine capacity constraints. As pointed out in the literature (see Yin and Yasuda, 2002), as for the machine capacity under the model that alternative process routings are available, it is generally impossible to calculate the number of machines required, unless the routing selection for each part be fixed and known. The assumption in Chen and Heragu (1999) of a priori knowledge of the probability that a part uses a machine in an alternative process routings makes the routing selection for each part fixed and known. Moreover, this model cannot be readily extended to the case where parts have multiple process plans and, by not considering the processing sequences for the parts, its objective function tends to underestimate the total inter-cell movement cost. Among other works that deal with the UCFP are those of Gravel et al. (1998), Askin and Zhou (1998), Zhao and Wu (2000). The capacitated cell formation problem (CCFP) consists of grouping machines into cells taking explicitly into account their capacity limitations. In the presence of routing flexibilities and when the selection of routes is not fixed and known, the CCFP seeks also to determine the routings of parts to machines in cells. As far as we know, Choobineh (1988) proposed the first mathematical model for the CCFP that explicitly
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
1053
considers both multiple process plans and multiple routes. As pointed out in Cao and McKnew (1998), the difficulty of using this model comes from its use of an aggregate cost of producing parts in the objective function, defined in terms of parts to cells prior to their design. To overcome this issue, they proposed an improved formulation where this cost is defined in terms of part operations to machines. They assumed in both cases that there are no more than two process plans per part. While this could be relaxed, the issue regarding how to split the demand of a part among process plans is still problematic, since units of the same part processed according to different process plans are treated as being of different parts. Other works, such as those from Rajamani et al. (1992, 1996), present models that overcome those limitations. In Rajamani et al. (1992), a mixed-integer linear programming (MILP) formulation is proposed to simultaneously group machines into cells of limited sizes and assigns part operations to machines. The objective is to maximize the total number of units produced in the cells, subject to machine capacity and operating budget constraints. They develop a column generation procedure in which process routes are generated by solving simple assignment problems, thereby eliminating the need to explicitly enumerate all of the possible routes. A limitation of the approach in that paper is that it would require a complete enumeration of the routes at each iteration for costs that change with the specific sequence of machines (such as material handling costs for example). This shortcoming is remedied in Rajamani et al. (1996) where the objective function consists of minimizing the sum of investment, operating and material costs. To our best knowledge, these are among the most comprehensive models in the literature that explicitly deal with the multiple process plans and multiple process routes. Among other works that deal with the CCFP are those of Nagi et al. (1990), Xie (1993), Sankaran and Kasilingam (1993), Ramabhatta and Nagi (1998), Caux et al. (2000). All of these, except of Caux et al. (2000), deal with single process plans only. Moreover, except for Xie (1993), none of the models above can be applied to solve large-scale problems, either because they required a complete enumeration of routes (see Nagi et al., 1990; Ramabhatta and Nagi, 1998; Caux et al., 2000), or they offer no solution approach for large non-linear models they propose (see Sankaran and Kasilingam, 1993). While Xie (1993) reported successful computational experiences with large-sized problems, a limitation of his approach is that it cannot be readily extended to the case where parts have multiple process plans. The reason for this is that in the case of parts have multiple process plans, the issues regarding the assignment of operations to machines as well as the split of the demand of parts between process plans need to be specifically addressed. Caux et al. (2000) present a combined iterative approach to simultaneously solve the cell formation problem using a simulated annealing algorithm and the part routing assignment problem using a branch-and-bound algorithm. As recognized by these authors themselves, their approach is not practical for solving large-scale problems. In this paper, we present a comprehensive model for designing a cellular manufacturing system when there are multiple process plans for each part with multiple alternative routings for each of those process plans. The model bridges several sub-areas of the CMS design literature in that it integrates the cell formation problem, the machine allocation problem, and the part routing problem. The problem is to assign a finite number of machines to manufacturing cells so that total intercellular and intracellular material movement and control costs are minimized, subject to satisfying demand requirements for the parts, limits on the machine capacities, and limits on the sizes and the number of the manufacturing cells, respectively. We expand on our previous work (see Gravel et al., 1998) and other existing work that explicitly deal with machines capacity constraints, multiple process plans and multiple routes. We simultaneously consider several manufacturing dimensions such as the processing sequence of parts, part demands, machine capacity limits, multiple process plans for the parts, multiple routings for the process plans, and the option of parts outsourcing. The tradeoff between the inter-cellular and intra-cellular material movement costs is also considered explicitly. The remainder of this paper is organized as follows. We present in Section 2 details on our model formulation. Section 3 describes our proposed solution methodology. Experimental results are presented in Section 4. Conclusions and directions for further research are discussed in Section 5.
1054
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
2. Problem definition and model formulation The problem we are concerned is that of deciding how to group a given number, M, of machines, into manufacturing cells, and given a number, P, of parts, how to assign the operations of each part to cells in such a way that the total intercellular movement and intracellular operational control costs are minimized. Each part, p, has a known demand, dp, and can be made according to alternate process plans. These process plans may differ in terms of the sequence in which the operations are performed and/or the number or the nature of the operations themselves. In addition, some or all the operations, in any given process plan for a part, can be performed on two or more distinct machines because of their capability to process one or more operations (provided the appropriate tools are installed). Hence, the problem considered has both process plan and routing flexibilities. Machines have limited capacities. A cost is incurred whenever consecutive operations of a part are performed on different machines. The intracellular cost is incurred when consecutive operations of a given part are performed on different machines in the same cell. Similarly, the intercellular cost is incurred when consecutive operations of a given part are performed on machines located in different cells. It is assumed that both the intracellular and intercellular costs are known for each part. A cost is also incurred for outsourcing a part. The objective is to minimize the overall costs, when the intercellular or intracellular movements and the outsourcing of units occurred, subject to satisfying demand requirements for the parts, and limits on the machine capacities and the number and sizes of the manufacturing cells. To introduce our proposed formulation, let X prk ij be the number of units of part p made according to process plan r with operation k and its immediate successor (according to process plan r), say k + 1, done on prk machines i and j respectively. In other words, X prk ij and X ji denote respectively the outflow from and the inflow into machine i which performs the kth operation of part p according to process plan r. Then X prk ij units of intracellular flow are incurred if i and j are assigned to the same cell. The corresponding unit cost is fijprk (see its computation discussion below). Similarly, X prk ij units of intercellular flow are incurred if i and j are assigned to different cells. The corresponding unit cost is hprk ij (see its computation discussion below). Both unit costs may be weighted by a factor vprk to take into account the value added to a part during its manufacturing process. Let Yp be the number of units of part p outsourced. The corresponding unit cost is yp. Letting Zic be a binary variable that takes on the value of ‘‘1’’ if machine i is assigned to cell c, and ‘‘0’’ otherwise, and considering the additional notation presented in Fig. 1, the problem is stated as follows (hereafter referred to as Problem P1): X X X X X X prk prk minimize Z ¼ vprk ðhprk ypY p; ð2:1Þ ij þ fij ÞX ij þ p2P r2RðpÞ k2Kðp;rÞ i2Qðp;r;kÞ j2Qðp;r;kþ1Þ
subject to
hprk ij ¼ 1=2
X
wðZ ic Z jc Þ2 ;
p2P
8p 2 P; 8r 2 RðpÞ; 8k 2 Kðp; rÞ;
c2C
8i 2 Qðp; r; kÞ; 8j 2 Qðp; r; k þ 1Þ; XX ¼ gu W cu Z ic Z jc ; 8p 2 P; 8r 2 RðpÞ; 8k 2 Kðp; rÞ;
ð2:2Þ
fijprk
c2C u2U
8i 2 Qðp; r; kÞ; 8j 2 Qðp; r; k þ 1Þ; X X X X prk 8p 2 P; ij þ Y p ¼ d p ;
ð2:3Þ ð2:4Þ
r2RðpÞ i2Qðp;r;1Þ j2Qðp;r;2Þ
X
X ijp;r;k1
i2Qðp;r;k1Þ
8j 2 Qðp; r; kÞ;
X
X p;r;kþ1 ¼ 0; ji
8p 2 P; 8k 2 Kðp; rÞ n f1; K pr g;
i2Qðp;r;kþ1Þ
ð2:5Þ
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
X X
bpr þ
p2P r2RðpÞ
X X
ð2:6Þ
p2P r2RðpÞ
X
X
bpr ¼
b0pr 6 ai ; 8i 2 M;
1055
prk eprk i X ij ; 8i 2 M; 8p 2 P; 8r 2 RðpÞ;
ð2:7Þ
; 8i 2 M; 8p 2 P; 8r 2 RðpÞ;
ð2:8Þ
k2Kðp;rÞnfK pr g j2Qðp;r;kþ1Þ
b0pr ¼
X
p;r;K pr
eprk i X ji
j2Qðp;r;K pr 1Þ
X
Z ic ¼ 1; 8i 2 M;
ð2:9Þ
W cu ¼ 1 8c 2 C;
ð2:10Þ
c2C
X u2U
X
Z ic 6
i2M
X
X
lu W cu ; 8c 2 C;
ð2:11Þ
u2U
Z ic P lu1 W cu ; 8c 2 C; 8u 6¼ 1;
ð2:12Þ
i2M
W cu 2 f0; 1g; 8c 2 C; 8u 2 U;
ð2:13Þ
X prk ij P 0; 8p 2 P; 8r 2 RðpÞ; 8k 2 Kðp; rÞ; 8i 2 Qðp; r; kÞ; 8j 2 Qðp; r; k þ 1Þ;
ð2:14Þ
Z ic 2 f0; 1g; 8i 2 M; 8c 2 C:
ð2:15Þ
The objective function seeks to minimize the total intercellular and intracellular movement costs plus the total outsourcing cost. The sum of intercellular and intracellular movement costs has been defined as one of the most effective in the performance evaluation of cellular manufacturing systems since it directly affects various operational issues (Chu, 1995). In addition, these costs allow the consideration at the cell design level of the trade-off between the material movement and operational control costs one hand, and the number and sizes of cells on the other hand. In effect, as pointed out in the literature (see Adil and Rajamani, 2000), with an increase in the number of cells formed, the total intercellular move cost increases, since it is likely that cells having physical travel of the part between them are located far apart. It is also likely that the part visits more cells, which requires additional coordinating efforts. In contrast, as the number of cells increases, the size of the cells in general decreases, which results in a decrease in the cost and number of the intracellular moves. Hence, the total intracellular movement cost is expected to decrease as the number of cells increases. The reverse is also true since larger cell sizes involve a decrease in the number of cells, a decrease in the intercellular cost but an increase in the cost per intracellular move and the number of intracellular moves as well as in coordination efforts within a cell. However, the determination at the logical cell design stage (cell formation problem) of unit intercellular movement cost (w) and unit intracellular movement cost (gu) is very challenging, since actual layouts are not known and, as such, the traveling distances between machines. The approximations proposed in Adil and Rajamani (2000) have been adopted here to compute these costs. They attempt to address the needs of accounting for material handling at the logical cell design phase (this contribute to reducing the complexity of the next-stage problem related to the physical placement of cells on the shop floor). The material handling cost has been assumed to be proportional to the distance traveled only without regards to the material handling system since it is designed only after the cellular layout problem in complete. The following structure will be used in our work (see Adil and Rajamani, 2000): gu ¼ C 1 d 1 ðlu Þ; w ¼ C 2 d 2 ðcc0 Þ;
d 1 ðlu Þ ¼ a0 þ a1 ðlu Þ;
ð2:16Þ ð2:17Þ
1056
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
Fig. 1. Listing of the notation.
where C1 and C2 represent the intracellular move cost per unit of material per unit distance and the intercellular move cost per unit of material per unit distance, respectively; a0 and a1 are constants; d1(lu) is the expected distance traveled in one intracellular move; d2(cc 0 ) is the expected centroid distance between two cells c and c 0 . Without loss of generality, we assume the unit intercellular movement cost (gu) to be constant within a given cell size range (Sankaran and Kasilingam, 1993). Constraints (2.2) and (2.3) serve to simplify the expression of the objective function. Hence, they can be prk dropped from the formulation if the variables hprk are substituted out. The constraints (2.4) and ij and fij (2.5) ensure that all the part demand requirement are met.The first of these two constraints stipulates that the total number of units of part p processed on the first machines of all the process plans of part p respectively, adds up to meet the required demand for part p. The second constraint pertains to the operations between the second and the next to the last operation for the process plans, respectively. It ensures material flow conservation through the machines. It also ensures that there is no cross-feeding between process plans. Hence, these two constraints together ensure that all the operations required by all the units made according to all the processing plans are properly accounted for. The constraint (2.6) ensures that the
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
1057
machine capacities are respected. The first term of the summation pertains to all but the last operations of the process plans and captures the machine usages by focusing on the material flow out of the machines. The second term of the summation pertains to the last operations of process plans and captures the machine usages by focusing on the flow into the corresponding machines. Hence, this constraint effectively enforces the capacity limits of all of the machines, respectively. The constraints (2.7) and (2.8) serve to simplify the expression of constraint (2.6). Hence, they can be dropped from the model if the variables bpr and b0pr are substituted out. The constraint (2.9) stipulates that each machine must be assigned to exactly one cell. Constraints (2.10)–(2.12) ensure that the unit intracellular cost corresponding to a corresponding cell size range is properly accounted for. Constraints (2.13)–(2.15) are the logical binary and non-negativity requirements on the variables. The proposed model (Problem P1) is a non-linear, large-scale combinatorial optimization problem. While it can be reformulated into a standard mixed integer linear programming problem with an increase in constraints (2.2) and (2.3), the resulting model will be too large to solve with a standard MILP solver, even for relatively small problems. Hence, other than direct optimization approaches are required to solve this model. Clearly, the model simplifies somewhat when the intracellular movement cost is considered negligible (such it has been the case in most previous works) since constraints (2.2) and (2.10)–(2.13) and the related decision variables can then be dropped from the formulation shown in Problem P1. Note however, that the resulting model is still a large-scale nonlinear optimization that cannot be solved using direct optimization approaches. In this paper, we tackle Problem P1 directly.
3. Solution methodology In order to obtain good quality solutions for realistically sized problems, we propose a genetic algorithmic framework. In a genetic algorithm (GA) method, partial or complete instances of the solution vector are referred to as ‘‘chromosomes.’’ Any particular component of the solution instance is referred to as a ‘‘gene.’’ A given set of chromosomes constitutes a ‘‘population.’’ The basic idea of the method consists of generating populations in sequence using mechanisms that mimic the evolutionary process observed in the natural world. The mechanisms used to generate a new population from one at hand are the selection, reproduction (or crossover) and mutation mechanisms, respectively. Selection consists of deciding which chromosomes are retained from the population at hand. Crossover occurs when two chosen solutions (parents) are combined so as to produce a new feasible solution (child or offspring) that retains strengths of the parents. Finally, with mutation, changes are made to a solution in order to increase variety and prevent a premature convergence of the procedure. For more details we refer the reader to some of the many excellent of expositions on the subject (see Michalewitcz, 1996). Our genetic algorithm implementation is described in the following discussion. 3.1. Solution representation We define a chromosome as a vector of dimension M that represents the allocation of machines to cells. Each gene indicates a machine number. To take into account the machine-cell assignment constraints (2.9), no repetition of the genes (machine numbers) is allowed on the chromosome. Cell assignments are made by forming continuous partitions of the chromosome (Billo et al., 1995). This can be shown schematically by using vertical bars. For example, assuming there are 10 machines, the notation ð 2 3 6 9j 1 8 5j 7 4 10 Þ would represent a chromosome that comprises three cells where the first cell contains machines 2, 3, 6 and 9; the second cell, machines 1, 8 and 5; and the third cell, machines 7, 4 and 10.
1058
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
3.2. Population diversity The diversity measure is used to determine the number of chromosomes for mutation in order to prevent a premature convergence of the genetic algorithm (see Section 3.5) and to decide whether the procedure should be stopped (see Section 3.5). It is also used to help fixing the size of the initial population. The following diversity measure has been used (Nsakanda et al., 2004): ! N 1 X N X 1 2 DðtÞ ¼ 1 ðN ðN 1Þ=2Þ ðS ij Þ ; ð3:0Þ i¼1 j¼iþ1
where D(t) refers to the diversity of the population at iteration t; N to the total number of chromosomes, and Sij to the similarity between chromosomes i and j defined in terms of number of machines that are both in the same cell. 3.3. Generation of the initial population The initial population is randomly generated. Its size is determined in such a way as to meet a minimum diversity threshold. We start with a size N = Smin + k, 0 6 k 6 Smax Smin where Smin and Smax refer respectively to a minimum and maximum population size. We compute diversity measures using different values of N and retain the value that gives the greatest diversity. 3.4. Selection, crossover, and birth of a new population After some experimentation with various crossover methods, two crossover operators were selected because they tended to maintain the diversity of the population at an acceptable level, thus avoiding a premature convergence of the genetic algorithm. The first crossover method, referred to in the literature as ‘‘order crossover’’ (Michalewitcz, 1996) and which we denote OX, defines two cut points on the chromosomes and copies different segments from the parents to a child. The second crossover method which we refer to as ‘‘positional crossover’’ (PX), is adapted from Billo et al. (1995). It creates two new chromosomes by comparing corresponding genes (machines) on the selected parents. Table 1 presents an illustration of both of these crossover operators. The crossover operators define permutations of machines and say nothing in regards to the cells to which each machine is assigned. Therefore, the number of cells in a chromosome and the position of each cell need to be defined. We propose a randomized choice process based on the following rules: (a) offspring have a greater number of cells than parents; (b) offspring have a smaller number of cells than parents; (c) offspring have the same number of cells as parents, but with totally or partially different cell sizes; (d) offspring have the same number of cells and cell sizes as parents, but with totally or partially different cell compositions.
Table 1 Illustration of crossover operators Parents
OX crossover (cut points 4, 7) PX crossover
2 3 4 1
6 8
9j 1 6 7
7 3j 1 8
10 9 1 5 6 7j
2 1 5 4
6 9
9j 7 10 3
8 3j
5j 7 10 9 8 3
3 7
5 2 10 4
4 2 4 2
10 5 6 9
5j 4 10 8 6 8j 1 2
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
1059
These rules ensure that the number of cells and the cell sizes are decision variables. Clearly, the problem simplifies significantly if the number of cells and the cell sizes are pre-specified (i.e., treated as parameters). Candidates for crossover are selected from the population at hand using the ‘‘stochastic remainder selection without replacement method’’ which has been shown to improve the genetic algorithm performance significantly (Michalewitcz, 1996). Finally, when a crossover operation is performed, candidates for the new population are selected using an ‘‘elitist strategy’’ (Michalewitcz, 1996). This method forces the genetic algorithm to retain a specified number of the best individuals of each generation to prevent them from being lost if they are not selected for reproduction. To avoid the domination of this selection process by a small number of particular chromosomes and to make the genetic algorithm less susceptible to premature convergence, a function scaling measure has been used (Michalewitcz, 1996). 3.5. Mutation operators Mutation operators are based on ideas from the Simulated Annealing and Tabu Search methods (see Dake et al., 1995). We use four ‘‘simple’’ operators and one ‘‘advanced’’ operator. The first simple operator (denoted OMT) randomly selects two partitions on a chromosome (i.e., manufacturing cells) and moves one randomly selected gene (i.e., machine) from one of them to the other. This results in changes in cell sizes. The second simple operator method (denoted OMI) interchanges two randomly selected machines from two randomly selected cells. The third simple operator (denoted OMF) merges two randomly selected cells. The fourth simple operator (denoted OMD) splits one randomly selected cell into two cells. These result in changes in the number of cells. The advanced operator is based on local improvement ideas. It consists of first randomly selecting two cells and constructing a simple neighborhood of the chromosome at hand by performing pair-wise exchanges of the genes in the selected cells. The chromosome with the best value in the neighborhood replaces the original chromosome if that best value is also better than that of the original chromosome. We perform a mutation operation only when the diversity of the population at hand is lower than that of the previous population. A diversity ratio (R) is computed at each iteration as follows: R ¼ MAX½0; ðDðt 1Þ DðtÞÞ=Dðt 1Þ; where D(t) refers to the diversity of the population at iteration t. If R > 0, one of the operators described above is randomly selected and applied to a number, X, of randomly selected chromosomes, where X is given by a step function as follows: 8 0 if R 6 0; > > > > > N if 0 < R 6 R1 ; > < 1 X ¼ N 2 if R1 < R 6 R2 ; > > > ... > > > : N n if R > Rn1 ; where N1 < N2 < < Nn. 3.6. Stopping criteria We terminate our genetic algorithm procedure if one or more of the following conditions occurs: (a) the current number of iterations exceeds a predefined value; (b) the current number of chromosomes evaluations exceeds a predefined value; (c) the population diversity drops below a predefined value; (d) the value of the objective function is equal to or drops below a known reference solution; (e) the objective function
1060
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
value does not improve after a predefined number of iterations n, where n is defined in terms of the total number of chromosome evaluations, v, that have been already made as follows: 8 N 1 if 0 6 v < V 1 ; > > > < N 2 if V 1 6 v < V 2 ; n¼ > ... > > : N n if v P V n : 3.7. Solution evaluation For a given instance of the machine-cell assignment vector, the decision variables Zic and Wcu of the genprk eral mathematical model become parameters and the computation of hprk ij and fij become straightforward. Problem P1 is now state as the following residual optimization problem (hereafter refer to as Problem P2): minimize
ð2:1Þ;
subject to ð2:4Þ–ð2:8Þ; ð2:14Þ: This is a very large-scale linear programming problem in real situations and can therefore be time-consuming to solve using standard simplex method or the interior-point method since it must be solved repeatedly within a genetic algorithm framework. Hence, we tackle it by taking advantage of its structure to develop an efficient solution procedure. Consider the problem obtained from the above residual optimization model when the machine capacity constraints (2.6) are relaxed (after substituting out constraints (2.7) and (2.8)). This problem can be stated as Problem P3. We have the following result that follows directly from inspection: Proposition 1. Problem P3 is equivalent to P independent sub-problems of the form hereafter refer to as Problem P4(p): X X X X prk prk minimize Z4ðpÞ ¼ vprk ðhprk ð3:1Þ ij þ fij ÞX ij þ y p Y p ; subject to
r2RðpÞ k2Kðp;rÞ i2Qðp;r;kÞ j2Qðp;r;kþ1Þ
X
X
X
X prk ij þ Y p ¼ d p ;
r2RðpÞ i2Qðp;r;1Þ j2Qðp;r;2Þ
X
X ijp;r;k1
i2Qðp;r;k1Þ
X
X p;r;kþ1 ¼ 0; ji
ð3:2Þ 8r 2 RðpÞ; 8k 2 Kðp; rÞ n f1; K pr g;
i2Qðp;r;kþ1Þ
8j 2 Qðp; r; kÞ; X prk ij
P 0;
ð3:3Þ
8r 2 RðpÞ; 8k 2 Kðp; rÞ; 8i 2 Qðp; r; kÞ; 8j 2 Qðp; r; k þ 1Þ:
Proof. The proof is by inspection.
ð3:4Þ
h
Our solution approach is based on the following proposition. Proposition 2. Problem P4(p) has a min-cost network flow structure. Proof. First, note that Problem P4(p) is not changed if the dummy operations (i.e., the Kpr + 1Õs; see Section 2) are all assigned a common label. Let that label be ‘ðpÞ maxr2RðpÞ fK pr þ 1g. Now, let triplets ðr; k; iÞ 2 ðRðpÞ; Kðp; rÞ; Qðp; r; kÞÞ represent node labels corresponding to the constraints and variables of Problem P4(p), and let o(p) be a ‘‘dummy source’’ node. Then, Problem P4(p) can be rewritten as follows (hereafter refer to as Problem SP(p)):
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
minimize subject to
ð3:1Þ; X X
X prk ðoÞ;j þ Y p ¼ d p ;
1061
ð3:5Þ
r2RðpÞ j2Qðp;r;1Þ
X
X
X prk j;‘ðpÞ Y p ¼ d p ;
ð3:6Þ
r2RðpÞ j2Qðp;r;1Þ
X
X ijp;r;k1
i2Qðp;r;k1Þ
X
X jip;r;kþ1 ¼ 0;
8r 2 RðpÞ; 8k 2 Kðp; rÞ n f1; K pr g;
i2Qðp;r;kþ1Þ
8j 2 Qðp; r; kÞ; X prk ij P 0;
8r 2 RðpÞ; 8k 2 Kðp; rÞ;
ð3:7Þ 8i 2 Qðp; r; kÞ; 8j 2 Qðp; r; k þ 1Þ:
The network representation of the problem is shown in Fig. 2.
h
Fig. 2. Illustration of the network structure of the uncapacitated problem.
ð3:8Þ
1062
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
Because of the special structure described above, the residual optimization problem readily lends itself to a Dantzig–Wolfe decomposition approach. Our implementation is as follows (Ho and Loute, 1981). For simplicity purposes, many subscripts have been dropped from the model, nodes are denoted in a lexicographical manner, Bp is defined as the processing time matrix from the left hand side of constraint (2.6) that corresponds to part p (after substituting out constraints (2.7) and (2.8)), xpn as the nth extreme point for part p, V(p) as the set of extreme points for part p, kpn as the weight associated to the extreme point xpn ; GðpÞ ¼ fAðpÞ; NðpÞg and as the network defined for part p. 3.7.1. Initial solution Add, for any bloc p, a fictitious arc (i, j) that links the source node to the sink node. The cost of flowing one unit in this arc is yp. This arc allows taking into account the outsourcing option in our solution. Let hpij ¼ 1; 8p 2 P. Define, for each p 2 P, the initial solution as: d p for fictitious arcði; jÞ; p x1 ¼ 0 otherwise: Let the set of extreme points be V ðpÞ ¼ fxp1 g; 8p 2 P; y ¼ 1 and Z0 = +1. 3.7.2. Post initial solution steps (a) Solve the following master problem: P P p p 8 minimize Z y ¼ ðh xn d p Þkpn ; > > > p2P n2V ðpÞ > > > > p p p P P > > > B xn d p kn 6 a; < subject to p2P n2V ðpÞ ðPMÞy ¼ > P p > > kn ¼ 1; p ¼ 1; . . . ; P ; > > > n2V ðpÞ > > > > : kpn P 0; p ¼ 1; . . . ; P ; n 2 V ðpÞ: If it is unbounded, the problem is unbounded. Otherwise, define the vector of dual values ðpy ; rpy Þ. p (b) Solve the sub-problem ðSP Þy ; p ¼ 1; . . . ; P . Let vpy be the function objective value of sub-problem p. (c) Apply the candidature test minp2P fmpy g P 0. If there is not any sub-problem that satisfies this candidature test, go to step (d). Otherwise, apply the relation (3.9) and test the stopping criteria (3.10). If it is satisfied, go to step (d). Let T be the set of sub-problems that satisfies the candidature test, then V ðpÞ ¼ V ðpÞ [ fxpn g; 8p 2 T. Let y = y + 1 and go to step (a). ! X p Z y ¼ max Z y1 ; Z y þ my ; ð3:9Þ p2P
ðZ y Z y Þ 6 :
ð3:10Þ
(d) Verify the dual variables corresponding to non-basis slack variables of coupling constraints. If any variable is positive, introduce that variable in the basis and go to step (a). (e) Verify the following condition for all bloc p : kp1 6¼ 0. If it is verify for at least one bloc, the problem is infeasible in the case of the buy option is not retained. Otherwise, define the corresponding parts as being open to outsourcing. (f) Built the optimal solution.
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
3.7.3. Sub-problem solution methodology p The sub-problem ðSP Þy ; 8p 2 P, is stated as follows: P 8 p ðhpij hij ÞX pij rpy ; minimize mpy ¼ > > > ði;jÞ2AðpÞ > > > > P > > subject to X pij ¼ d p ; i ¼ sðpÞ; > > > fj:ði;jÞ2AðpÞg > > < P p ðSP Þy ¼ X pij ¼ d p ; j ¼ oðpÞ; > fi:ði;jÞ2AðpÞg > > > > P P > > > X pij X pji ¼ 0; > > > fj:ði;jÞ2AðpÞg fj:ðj;iÞ2AðpÞg > > > : X pij P 0; 8ði; jÞ 2 AðpÞ;
1063
8i 2 NðpÞ n fsðpÞ; oðpÞg;
p
where hij ¼ py BpðijÞ and BpðijÞ is the column in the matrix Bp that corresponds to X pij . The resulting model corresponds to the minimum cost flow problem. However, it has been solved as a shortest path problem by considering the RHS as 1 and by modifying the vector of solution in the master problem by considering dp in the coupling constraints. The shortest path problem has been solved with a dynamic programming algorithm considering the following backward recurrence equation fp(o(p)) = 0 and p fp ðiÞ ¼ minj ðcpij þ fp ðjÞÞ; 8i 2 NðpÞ foðpÞg; cpij ¼ ðhpij þ hij Þ; 8ði; jÞ 2 AðpÞ where fp(i) refers to the cost associated to the shortest path in the graph defined by part p between the node i and the destination node o(p).
4. Computational experience Our overall solution methodology was coded in C and implemented on an IBM RISC 6000 model 3BT. The Optimization subroutine OSL, version 2.0, was used. Our first numerical experiments seek to determine the efficiency of the Dantzig–Wolfe algorithm to solve the chromosome evaluation problem. Secondly, we conducted a limited computational experiment involving smaller problems from the literature. These problems are special cases of our overall model and were used to compare, in terms of solution quality, appropriately restricted versions of our approach against existing models from the literature. Finally, we conducted a more extensive computational study in order to evaluate the viability and the performance of our full-scale approach for large-scale problems. 4.1. Solving the chromosome evaluation problem We present in this section numerical experiments that have been conducted to evaluate the capability of the Dantzig–Wolfe approach as applied to the solution of the chromosome evaluation problem. This algorithm is denoted MDA-PDY. For comparison purpose, we also evaluated the performance in case of this problem is solved in regards with (a) the OSL simplex subroutine (MSR); (b) the current OSL decomposition subroutine (MDR); (c) the decomposition algorithm based on our implementation where sub-problems have been solved with the OSL network subroutine (MDA-PCC). Table 2 presents the main parameters considered to randomly generate the problems. The results given in Table 3 reveal that better computation time, in terms of cpu time per evaluation, come from decomposition methods. The MDA-PDY method seems, in average four times faster than the MDR or MDA-PCC methods. Within the genetic algorithm framework, this method is therefore the most efficient if one wants to solve large-size cell formation problems considering a higher number of evaluations of chromosomes required.
1064
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
Table 2 Problem generation parameters Parameter type
Parameter range
Number of machines types Number of parts Range for number of process plan per part Range for number of operations per process plan Range for number of alternate machine per operation
10, 15 40, 60, 80, 100, 150 1–3 15–20 1–4
Table 3 Summary of computational results for various solution methodologies Problem
1 2 3 4 5
Sizea
40 60 80 100 150 a
· · · · ·
10 15 15 15 15
Total number of evaluations
Cpu time in second according to selected solution method MSR
MDR
MDA-PCC
MDA-PDY
76 73 74 74 82
1.53 3.41 5.78 17.10 237.88
1.26 1.97 2.93 4.00 9.96
1.72 2.52 3.51 4.57 10.70
0.36 0.53 0.71 0.95 2.90
Parts · machines.
4.2. Solving existing problems from the literature In order to provide a comparison between our proposed solution methodology and some of the most general of the existing models, eight problems from the literature were solved. Table 4 shows detailed characteristics of these problems. As noted above, these problems are special cases of our general model without the constraints (2.3), (2.10)–(2.13) and/or (2.5) and our goal is only to seek if it is possible to the same solution can be obtained with our solution approach. To ensure that we have identical conditions, the total number of cells is considered to be a parameter, there are explicit upper bounds on the cell sizes, we assumed a unit intercellular movement cost of one dollar, we dropped the intracellular cost in the function objective, and we assumed a single process plan for each part. The parameter values used in implementing the genetic algorithm are shown in Table 5 along with the specific functions used in performing mutation operations and for stopping the overall procedure, respectively (see Sections 3.5 and 3.6). Table 4 Summary characteristics of the literature problems Problem #/Author(s)a
Problem size (# of parts · # of machines)
1/Netal 2/RandN 3/RandN 4/Xie 5/Hetal 6/WandS 7/LandG 8/GandS
20 15 15 22 20 22 16 43
· · · · · · · ·
20 15 15 23 20 15 12 16
# of cells
Max cell size
Max # of operations
Range of demand
Routing alternatives
Machine capacity
5 3 4 7 5 4 3 5
5 6 6 5 5 5 4 5
4 9 9 3 5 4 7 8
1–4 1–3 1–4 1–1 1–1 2–8 1–3 1–1
Multiple Multiple Multiple Multiple Single Single Single Single
Finite Finite Finite Finite Infinite Infinite Infinite Infinite
a Netal: Nagi et al. (1990); RandN: Ramabhatta and Nagi (1998); Xie: Xie (1993); Hetal: Harhalakis et al. (1990); WandS: Wu and Salvendy (1993); LandG: Lee and Garcia-Diaz (1996); GandS: Gupta and Seifoddini (1990).
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
1065
Table 5 Genetic algorithm control parameters Parameter type
Parameter settings/range
Population size Probability of crossover Maximum number of iterations allowed Minimum diversity threshold for the initial population Minimum diversity threshold for stopping
10–50 0.6 1000 85% 15%
Number of chromosomes for mutation, X (Psize refers to population size; see Section 3.5)
Predefined number of iterations, n (see stopping criteria; Section 3.6)
i
Ri
Ni
1 2 3 4 5 6
0.05 0.1 0.2 0.3 0.4 1
Log(Psize) 2 · Log(Psize) 3 · Log(Psize) 4 · Log(Psize) 5 · Log(Psize) 6 · Log(Psize)
i
Vi
Ni
1 2 3 4
3500 7000 10,000 1
300 150 100 75
Table 6 Summary of computational results for the literature problems Problem #
1 2 3 4 5 6 7 8
Objective function value (intercellular movement cost) Existing model
Current model
2 81 83 0 17 27 41 56
2 81 83 1 18 27 41 55
The results are presented in Table 6. The values of the solutions obtained were within negligible tolerances of those reported in the literature in all cases. Note however, that one of the stopping criteria for our approach was to terminate if the objective value drops below a known reference value (Section 3.6; condition (d)). Hence, we believe the results shown in Table 6 demonstrate the capability of our solution approach to generate solutions that are at least as good as solutions given by existing models. 4.3. Solving randomly generated large-scale problems The full-scale testing of our approach was conducted using a set of randomly generated problems. We used the same parameter values in implementing the Genetic Algorithm as for the small problems (see Table 5). The ranges for the problem generation parameters and the specific material handling costs used are shown in Table 7. Note that the table has two sets of material handling cost values (determined according to (2.16) or (2.17)). The first set comprises ‘‘Unit intercellular cost # 1’’ and ‘‘Unit intracellular cost # 1.’’ Similarly,
1066
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
Table 7 Problem generation parameters Parameter type
Parameter settings/range
Number Number Number Number Number
15–50 100–1000 1–3 15–20 1–4
of of of of of
machines types: parts: process plan/part: operations/process plan: alternate machines/Operations:
Unit intracellular cost # 1 (see relation 2.16)
Unit intercellular cost # 2 (see relation 2.16)
w = 8.00 u
lu
gu
1 2 3 4 5 6
4 8 11 15 30 50
2.00 4.00 5.00 6.00 11.00 18.00
u
lu
gu
1 2 3 4
8 14 21 50
4 6 8 18
w = 12.00
the second set of costs comprises ‘‘Unit intercellular cost # 2’’ and ‘‘Unit intracellular cost # 2.’’ In any given problem, either set # 1 or set # 2 is used, but not both. The characteristics of the problems generated are presented in Table 8, where ‘‘Cost #’’ refers to the cost set used as described above, and the number of routes is the product of the number of parts times the numTable 8 Summary characteristics of the large-scale problems Problem #
Cost #
Number of parts
Number of machines
Number of constraints
Number of variables
Number of routes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2
100 150 200 250 300 350 400 500 600 700 800 900 1000 350 400 500 600 700 800
15 15 20 20 20 25 25 30 40 40 40 50 50 25 25 30 40 40 40
7,172 10,690 14,615 18,515 22,069 25,344 29,426 36,449 42,735 49,690 57,043 64,312 140,312 25,344 29,426 36,449 42,735 49,690 57,043
13,913 30,855 28,612 36,260 43,316 49,733 57,574 71,459 83,650 97,203 111,540 125,775 274,306 49,733 57,574 71,459 83,650 97,203 111,540
467,707 767,441 750,172 721,585 692,904 677,899 641,448 590,017 587,623 622,139 621,743 654,571 946,884 677,899 641,448 590,017 587,623 622,139 621,743
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
1067
ber of process plans per part, times the number of operations per process plan, times the number of alternate machines per operation. Clearly, the highly combinatorial nature of this measure (i.e., the total number of routes) precludes the feasibility of methods based on the explicit enumeration of the routes (see Nagi et al., 1990; Xie, 1993; Ramabhatta and Nagi, 1998) for solving moderate or large-scale problems. The results are presented in Table 9, where Pbm # is a nominal Problem Index; Psize, to the population size; Niters, to the total number of iterations; Nevals, to the total number of evaluations of chromosomes performed; Ncells, to the number of cells created; Zinit, to the % of improvement of the final best solution over the initial best solution; Zref, to the % of improvement of the final best solution over a reference solution defined as min(Z1, Z2), where Z1 is the objective function value when all machines are assigned to only one cell and Z2 is the objective function value when each cell is composed of only one machine. The problem difficulty index (PDI) is determined a posteriori, in terms of the tightness of the machine capacity constraints being weak (1), average (2) or high (3). These correspond to average machine utilizations of less than 70%, 70% to 84%, and more than 85%, respectively. As indicated in earlier sections of this paper, Psize and Ncells are determined by our solution approach. The results shown in Table 9 seem to demonstrate the effectiveness of our solution methodology for solving realistically sized problems having different levels of difficulty. In regards to the objective function, the final solutions obtained show an improvement of 18–40% (average 28%) over the corresponding reference solutions. The improvements over the initial best solutions ranged from 6% to 13%, with an average of 10%. We believe these would constitute significant improvements in material movement and system control costs in an actual manufacturing setting. Another a posteriori measure used is the ratio of the intracellular traffic to the total traffic in the manufacturing environment. Our results shown in Table 9 seem to indicate that this measure is highly sensitive to the combination of the problem size and the specific material handling costs used. This can be seen by comparing the results for Problems (6)–(11) to those for Problems (14)–(19). In general, for a given set of Table 9 Summary of computational results for the large-scale problems Pbm #
Psize
Niters
Nevals
Objective value improvement (%) Zref
Zinit
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
14 15 10 14 10 10 14 10 11 10 12 15 10 11 10 49 17 10 10
794 607 462 492 569 564 429 964 781 565 632 460 266 560 433 197 512 559 633
6463 6162 2875 4041 3506 3502 3502 5988 4884 3586 5219 4703 1660 3506 2709 6012 5204 3505 3919
39.01 38.23 32.36 32.49 32.95 29.31 29.97 26.13 21.80 21.45 21.45 19.13 17.86 51.10 51.58 46.62 40.87 37.67 39.50
10.49 06.69 10.82 08.68 11.32 7.53 06.34 10.90 10.19 12.28 13.16 10.72 08.88 10.93 08.79 07.93 10.89 09.21 17.47
Intracellular traffic total traffic (%) 81 79 71 71 71 62 61 61 50 48 50 45 41 74 74 73 65 65 60
Cpu time (seconds) Total
Per evaluation
7,939.3 15,443.68 9,739.87 24,443.44 32,518.96 26,895.01 22,648.45 60,773.45 46,169.02 43,316.96 93,053.95 83,903.23 42,576.45 30,243.61 18,990.09 68,833.18 54,834.51 49,845.42 95,100.56
1.23 2.51 3.39 6.05 9.28 7.68 6.47 10.15 9.45 12.08 17.83 17.84 25.65 8.65 7.01 11.45 10.54 14.22 24.27
Ncells
Problem difficulty index (PDI)
3 3 3 3 3 5 5 5 6 7 6 8 10 3 3 3 4 4 5
1 3 3 3 3 3 2 3 1 2 2 2 3 3 2 3 1 2 2
1068
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
Table 10 Computational results when local improvement method is used Problem
1 2 3 4 5 6 7 8
Size of population
Number of iterations
% improvement over AGS Total number of evaluations
Total cpu time
Cpu time per evaluation
Best objective function value found
Total intracellular traffic intensity
14 15 10 14 10 11 14 10
794 607 462 492 569 564 429 964
21.14 27.51 48.7 39.37 53.76 75.84 44.66 64.36
13.24 16.61 33.16 25.68 29.21 32.21 24.9 28.28
6.5 8.76 10.62 9.92 16.06 24.87 13.76 21.97
0.00 0.24 0.76 0.03 0.37 0.35 0.35 0.34
0 0.127 0.9577 0.9577 0.9437 0.161 0 0.9836
costs, the intracellular traffic ratio decreases as the problem size is increased. This may be justified by the fact that these costs and their structures determine the indifference point between the intercellular and intracellular traffic. Therefore, depending on these costs, when the problem size increases the model may favor the formation of small cells (relatively) in order to benefit from lower intracellular traffic costs. This would then result in a higher number of cells and with an increase in the number of parts, an increase in total intercellular traffic. This seems to demonstrate the significant impact the intracellular costs in particular can have on solution quality and therefore, the need to include these costs as a dimension in CMS design problems. Finally, we conducted additional computational experiments to evaluate the quality of solutions if a local improvement strategy is used together with other mutation operators. We denote the genetic algorithm without the local improvement method as AGS. We solved a sample of eight problems from Table 9. The results are reported in Table 10. A pre-specified number of iterations was used as the stopping rule used was to stop (Section 3.6; rule (a)). In comparison with the AGS, a larger number of evaluations are performed for the same number of iterations. However, the total cpu time increases slowly and the cpu time per evaluation decreases (as shown by the negative sign). Therefore, the use of local improvement gives an opportunity to increase the sampling of the space of solutions without considerably increasing the cpu time per evaluation. This opens up the opportunity to explore more solutions which in turn, may increase the potential to improve the solution quality.
5. Conclusions and directions for further research We have presented a formulation of the cellular manufacturing system design problem that takes into consideration many manufacturing dimensions including the operations sequence, part demands, machine capacities, multiple process plans and multiple routings. To solve the resulting large problem that occurs, we have demonstrated that a combination of a genetic algorithmic framework coupled with traditional large-scale optimization approaches (here, a price-directed decomposition approach) presents a helpful and promising solution methodology. Feasible computation times for large problems and good quality of solution in terms of intracellular traffic intensity may be expected. Further, the impact of considering the cost of intracellular movements as a function of the cell sizes was shown to be critical for the quality of solutions. Hence, this paper highlights the importance of this dimension in the cell formation problem. The methodology we have proposed is applicable in the cases of single process plans and multiple routes, multiple process plans and single routing or single process plan and single part route and can be used in a variety of decision contexts. When there is no existing cell design, the method described can be used to
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
1069
obtain different configurations that match the decision-makerÕs requirements, given the available machines and part mix that must be manufactured. Should the part mix or part demand change considerably, our method may be used to make the best use of an existing cell design by routing parts through the facility in the best possible manner. If the capital available to make additional investments in equipment is limited, our proposed method can be used to select a subset of parts to manufacture according to a cellular process strategy (outsourcing option). The approach can also be readily used in cases where limits are imposed on the number of cells or on the cell sizes by appropriately setting the values of the control parameters of the genetic algorithm operators. It should be noted that our methodology provides solutions that are only local optima, as strict optimality cannot be guaranteed. However, its application to solving other large manufacturing problems that have sub-problems with a block-angular structure is an interesting research avenue. Another avenue that may be considered is related to the general flow pattern in the system. Our current methodology does not explicitly consider the fact that a linear flow pattern has the advantage of simplifying the control of a cellular facility. Therefore, there is a need to extend our methodology to explicitly consider flow patterns such that the incidence of backtracking within and between the cells is minimized.
Acknowledgments Thanks are due to the editor and to the anonymous referees for their helpful comments. The research upon which this article is based was initiated at Universite´ Laval and continued in collaboration with Carleton University. Work was supported by the universities and by the National Science and Engineering Research Council of Canada.
References Adil, G.K., Rajamani, D., 2000. The tradeoff between intracell and intercell moves in group technology cell formation. Journal of Manufacturing Systems 19 (5), 305–317. Askin, R.G., Zhou, M., 1998. Formation of independent flow-line cells based on operations requirements and machine capabilities. IIE Transactions 30, 319–329. Billo, R.E., Tate, D., Bidanda, B., 1995. A genetic cluster algorithm for the machine-component grouping problem. In: 3rd Industrial Engineering Conference Proceedings, pp. 543–548. Cao, Q., McKnew, M.A., 1998. Partial termination rule of lagrangian relaxation for manufacturing cell formation problems. Computers and Operations Research 25 (2), 159–168. Caux, C., Bruniaux, R., Pierreval, H., 2000. Cell formation with alternative process plans and machine capacity constraints: A new combined approach. International Journal of Production Economics 64, 279–284. Chen, J., Heragu, S.S., 1999. Stepwise decomposition approaches for large scale cell formation problems. European Journal of Operational Research 113 (1), 64–79. Choobineh, F., 1988. A framework for the design of cellular manufacturing systems. International Journal of Production Research 26 (7), 1161–1172. Chu, C.H., 1995. Recent advances in mathematical programming for cell formation problem. In: Kamrani, A.K., Parsei, H.R., Lies, D.H. (Eds.), Planning, Design and Analysis of Cellular Manufacturing Systems. Elsevier Science Publishers, Amsterdam, pp. 3–46. Dake, S., Lin, L., Batta, R., 1995. Cell formation using tabu search. Computers and Industrial Engineering 28 (3), 485–494. Gravel, M., Nsakanda, A.L., Price, W.L., 1998. Efficient solution to the cell formation problem with multiple routing via a double-loop genetic algorithm. European Journal of Operational Research 109 (2), 286–298. Gupta, T., Seifoddini, H., 1990. Production data based similarity coefficient for machine-component grouping decisions of cellular manufacturing system. International Journal of Production Research 28 (7), 1247–1269. Harhalakis, G., Nagi, R., Proth, J.M., 1990. An efficient heuristic in manufacturing cell formation for group technology applications. International Journal of Production Research 28 (1), 185–198. Ho, J., Loute, E., 1981. An advanced implementation of the Dantzig–Wolfe decomposition algorithm for linear programs. Mathematical Programming 20, 303–326.
1070
A.L. Nsakanda et al. / European Journal of Operational Research 171 (2006) 1051–1070
Kang, S.L., Wemmerlo¨v, U., 1993. A work load-oriented heuristic methodology for manufacturing cell formation allowing reallocation of operations. European Journal of Operational Research 69 (2), 292–311. Kusiak, A., 1987. The generalized group technology concept. International Journal of Production Research 25 (4), 561–569. Lee, H., Garcia-Diaz, A., 1996. Network flow procedures for the analysis of cellular manufacturing systems. IIE Transactions 28, 603–612. Lozano, S., Guerrero, F., Eguia, I., Onieva, L., 1999. Cell design and loading in the presence of alternate routing. International Journal of Production Research 37 (14), 3289–3304. Michalewitcz, Z., 1996. Genetic Algorithms + Data Structure = Evolution Programs. Springer-Verlag Publishers, Berlin. Nagi, R., Harhalakis, G., Proth, J.M., 1990. Multiple routing and capacity considerations in group technology applications. International Journal of Production Research 28 (12), 2243–2257. Nsakanda, A.L., Price, W.L., Diaby, M., Gravel, M., 2004. Ensuring population diversity in genetic algorithms: A technical note with application to the cell formation problem, submitted for publication. Rajamani, D., Singh, N., Aneja, Y.P., 1992. Selection of parts and machines for cellularization: A mathematical programming approach. European Journal of Operational Research 62 (1), 47–54. Rajamani, D., Singh, N., Aneja, Y.P., 1996. Designing of cellular manufacturing systems. International Journal of Production Research 34 (7), 1917–1928. Ramabhatta, V., Nagi, R., 1998. An integrated formulation of manufacturing cell formation with capacity planning and multiple routings. Annals of Operations Research 77, 79–95. Sankaran, S., Kasilingam, R.G., 1993. On cell size and machine requirements planning in group technology systems. European Journal of Operational Research 69 (3), 373–383. Selim, H.M., Askin, R.G., Vakharia, A.J., 1998. Cell formation in group technology: Review, evaluation and direction for future research. Computers and Industrial Engineering 34 (3), 3–20. Singh, N., 1993. Design of cellular manufacturing systems: An invited review. European Journal of Operational Research 69 (3), 284–291. Wemmerlo¨v, U., Johnson, D.J., 1997. Cellular manufacturing at 46 user plants: Implementation and performance improvements. International Journal of Production Research 35 (1), 29–49. Wu, N., Salvendy, G., 1993. A modified network approach for the design of cellular manufacturing systems. International Journal of Production Research 31 (6), 1409–1421. Xie, X., 1993. Manufacturing cell formation under capacity constraints. Applied Stochastic Models and Data Analysis 9, 87–96. Yin, Y., Yasuda, K., 2002. Manufacturing cells design in consideration of various production factors. International Journal of Production Research 40 (4), 385–395. Zhao, C., Wu, Z., 2000. A genetic algorithm for manufacturing cell formation with multiple routes and multiple objectives. International Journal of Production Research 38 (2), 385–395.