CHAPTER 1 INTRODUCTION
1.3 Research Process
To achieve the abovementioned objectives, the research process (Figure 1.1) progresses as follows:
Step 1: Identifying research problems and objectives
Issues in CFP are identified through a discussion of research motivations and the purposes of this study.
Step 2: Literature review and discussion
The literature encompasses group technology and cellular manufacturing, solution methods for CFP, performance measures for CFP, and previous work on resolving CFP.
Step 3: Formulation of mathematical models
In this step, a mathematical model in terms of maximization of grouping efficacy is formulated to express standard CFP. Then, a two-stage multi-objective mathematical programming model for generalized CFP is formulated to integrate cell formation, cell layout, and intracellular machine layout simultaneously with considerations of alternative process routings, operation sequences, production volume, production times, machine reliability, and different cellular layout type.
Step 4: Development of proposed algorithms
In order to solve standard and generalized CFP mathematical models quickly and effectively, a two-stage hybrid CF algorithm (HCFA) merging an SCM-based clustering algorithm and SA/TS/WFA method is proposed to solve the standard CFP model.
Afterwards, a two-stage hybrid generalized CF algorithm (HGCFA) merging a generalized SCM-based clustering algorithm and SA/TS/WFA method is proposed to solve the generalized CFP model.
Step 5: Validation of proposed algorithms
To demonstrate the power of our proposed algorithms for standard CFP, 35 test instances represented by a binary machine-part incidence matrix drawn from the literature are used to evaluate the computational characteristics of our proposed algorithms. On the other hand, 8 test instances, two drawn from the literature and the others prepared by adding self-creating data to test instances, are used to validate the quality of our proposed algorithm for generalized CFP.
Step 6: Summaries and Conclusions
The results are summarized and the conclusions are drawn in this step.
Figure 1.1 The flow chart of research 1.4 Organization
The remaining chapters are organized as follows. We present a literature review of CFP and the requisite solution techniques, including SA, TS, and WFA in Chapter 2. The mathematical models that express standard CFP and generalized CFP are formulated in Chapter 3. In Chapter 4, two hybrid meta-heuristic algorithms based on SCM-based clustering algorithm and SA/TS/WFA are proposed to solve the complex models. In Chapter 5, two numerical illustrations are given to demonstrate the effectiveness of the proposed methods for standard CFP and generalized CFP. Computational results for standard CFP and generalized CFP are shown in Chapter 6. Several strategies proposed in this thesis, together with some mechanisms, are further analyzed in Chapter 7. Conclusions of this thesis are finally drawn in Chapter 8.
Identification of the problems and objectives of research
The literature review and discussion
1. Group technology and Cellular Manufacturing 2. Solution Methods for CFP
3. Performance Measures for CFP 4. Previous Work on Resolving CFP
Formulation of mathematical models
Development of proposed algorithms
Summaries and conclusions Validation of proposed algorithms
CHAPTER 2 LITERATURE REVIEW
This chapter is divided into fours sections. Section 2.1 introduces and defines GT and CM. Cell formation methods are reviewed in Section 2.2, while Section 2.3 describes the performance measures for CFP. Section 2.4 provides a review of previous work on resolving CFP.
2.1 Group Technology and Cellular Manufacturing
GT was originally introduced by Mitrovanov (1966) and was popularized in the west by Burbidge (1975). One application of GT is CM, a manufacturing philosophy in which similar parts are identified and grouped into part families, while machines are grouped into machine cells to take advantage of their similarities in manufacturing and design.
Implementation of CM results in significant benefits, such as reduced material handling costs, work-in-progress inventory, throughput and set-up times, simplified scheduling, and improved quality (Wemmerlov and Hyer, 1987).
Although CM may provide great benefits, the CMS design is complex for real life problems. The design of a CMS consists of four stages as described below (Wemmerlov and Hyer, 1986).
1. CF – grouping parts with similar design features or processing requirements into part families and associated machines into machine cells.
2. Group layout – laying out machines within each cell (intra-cell layout) and cells with respect to one another (inter-cell layout).
3. Group scheduling – scheduling parts and part families for production.
4. Resource allocation – assigning tools, human and material resources.
Ideally, all of these stages should be addressed simultaneously in order to obtain the best results (Alfa et al., 1992). However, due to the complex nature of each stage and the
limitations of traditional approaches, this thesis will focus on stages 1 and 2. The solution methods for stages 1 and 2 will be discussed in the next section.
2.2 Solution Methods for CFP
The process of determining part families and machine groups is referred to as the CFP.
It is known that the CFP in CMS is one of the NP-hard combinational problems (Ballakur and Steudel, 1987). Numerous solution approaches have been developed to address CFP since the 1970s, and these can be classified into five categories (Figure 2.1): (1) array-based methods, (2) similarity coefficient methods, (3) graph theoretic methods (4) mathematical programming methods, and (5) heuristic and meta-heuristic methods. Similarity coefficient methods and heuristic and meta-heuristic methods are related to this research and are discussed further.
(1) Array-based methods
The array-based methods attempt to allocate machines into groups and parts into associated families by appropriately rearranging the order of rows and columns to find a block diagonal form of the aki = 1 entries in the machine-part incidence matrix. The machine-part incidence matrix has 0 and 1 entries (aki). A ‘1’ entry in row k and column i of the matrix indicates that part i has an operation on machine k, whereas a ‘0’ entry indicates that it does not. Although cluster analysis methodologies are simple to implement, they have one main drawback: it usually takes into account only one objective i.e. the minimization of intercellular movements where only part operations and the machines involved are considered. Other product data (such as operational sequences and processing times) are not incorporated into the design process. Thus, solutions obtained may be valid for limited situations only.
Figure 2.1 Classification of the CF solution method Cell Formation
Methods
Similarity coefficient
Graph partitioning
Mathematical programming
Heuristic and metaheuristic
Hierarchical Non-hierarchical
SA TS GA
LP
DP GP LQP
ACO PSO ANN Array-based
WFA
(2) Graph theoretic methods
In graph partitioning approaches, the process of forming manufacturing cells starts with collecting problem data and then converting them into a weighted network diagram.
Finally, the weighted network diagram is separated into several sub-groups of a machine cell. In the network diagram, nodes represent machines and arcs represent their relationships, defined as the value of total part flow between machines. In this method, the network diagram can clearly depict the flow of the machine, but other product data (such as machine capacity, processing times) are not easily incorporated. Therefore, graph partitioning approaches do not directly show the characteristics of multi-objective cell design.
(3) Mathematical programming methods
Mathematical programming methods can be presented in two parts: objective function and constraints. The establishment of objective function usually considers the factors related to manufacturing, e.g. minimizing inter-cell movement of parts, minimizing cell load unbalances, minimizing number of exceptional, and minimizing total manufacturing cost.
Constraints express the content of production conditions, such as the limitation on number of machines, number of jobs, utilized time of tools, cells of machine allocation, controller’s work time, and capability limitation. Mathematical programming methods can be further classified into four major groups based on the type of formulation: (1) linear programming (LP), (2) linear and quadratic integer programming (LQP), (3) dynamic programming (DP), and (4) goal programming (GP). The greatest advantage of this method is that different design objectives and constraints can be incorporated into a single formulated model.
However, NP completeness of the problems makes it computationally intractable, especially for large-sized problems.
2.2.1 Similarity Coefficient Methods
SCMs are also referred to as cluster analysis-based methods in cell formation literature.
SCM are more flexible in incorporating various production data into the machine-part clustering process (Seifoddini and Tjahjana, 1999). The solution procedure of SCM usually follows a prescribed set of steps (Romesburg, 1984), the main ones being: (1) getting input data, (2) calculating the similarity coefficient, and (3) selecting a clustering algorithm to get machine cells. These steps are described next.
(1) Getting input data
Input data can be obtained from routing cards. These information are usually represented in a matrix called the machine-part incidence matrix, which is an m × p matrix with 0 or 1 entry, where m is the number of machines and p is the number of parts. Rows represent the machines and columns represent the parts. An element aij of the matrix is 1 if the jth part visits the ith machine for processing; otherwise, the value is 0.
(2) Calculating the similarity coefficient
The similarity coefficient is defined as a measure of similarity between machines, tools, design features, and so forth. Yin and Yasuda (2005) evaluated the performance of 20 well-known similarity coefficients, and found that the Jaccard similarity coefficient (Jaccard, 1908) is the most stable similarity coefficient. For this reason, we use the Jaccard similarity coefficient and the generalized similarity coefficient (Won and Kim, 1997) to calculate the similarity coefficient of standard CFP and generalized CFP, respectively. The generalized similarity coefficient is an extension of the Jaccard similarity coefficient (McAuley, 1972) and has been proposed for considering alternative process plans.
The Jaccard similarity coefficient is defined as the ratio of the number of parts visiting both machines and the number of parts visiting one of the two machines:
ij
where aij represents the number of parts processed by both machines i and j; while bij is the number of parts processed by machine i but not by machine j, and cij is the number of
parts processed by machine j but not by machine i.
On the other hand, the generalized similarity coefficient is formulated as:
ij
Sij = similarity coefficient between machines i and j
1 , 1 , 1
(3) Selecting a clustering algorithm to get machine cells
When the values of the similarity coefficients have been calculated, a clustering algorithm can be selected to get machine cells. Conventional clustering algorithms are divided into two major classes: hierarchical and non-hierarchical. Hierarchical clustering for CF comprises two stages. Initially, some form of similarity or dissimilarity between machines or parts is employed in order to create machine cells or part families. Later, machines or parts are separated into a few broad cells, each of which is further divided into smaller groups and each of these further partitioned and so on until terminal groups that cannot be subdivided are generated. Essentially, hierarchical techniques can be classified into two: (a) divisive methods where the process starts with all the data (machines or parts) in a single group and a series of partitions is created until each machine (part) is in a singleton cluster and, (b) agglomerative methods where the process starts with singleton
whole set is obtained.
Non-hierarchical clustering methods are iterative methods that also employ a measure of similarity or dissimilarity for grouping parts or machines. They begin with either an initial partition of the data set or the choice of a few seed points. In either case, the number of clusters has to be decided on beforehand.
Among the abovementioned approaches, the SCMs are more flexible in incorporating various production data into the machine-part clustering process. On the other hand, the heuristic and meta-heuristic methods are especially useful in providing near-optimum solutions within a reasonable computation time when a CFP cannot be solved using traditional methods, and thus constitute the state-of-the-art algorithm for solving CFP.
2.2.2 Heuristic and meta-heuristic methods
Heuristic and meta-heuristic methods are random heuristic search algorithms applicable to a wide variety of combinatorial optimization problems. They include SA (Su and Hsu 1998, Sofianopoulou 1999, Arkat et al. 2007), TS (Sun et al. 1995, Adenso-Diaz et al. 2001, Wu et al. 2004, Lei and Wu 2005), genetic algorithms (GA; Lee et al. 1997, Onwubolu and Mutingi 2001, Boulif and Atif 2006, Chan et al. 2008), ant colony optimization (ACO; Kao and Fu 2006), particle swarm optimization (PSO; Andres and Lozano 2006), artificial neural network (ANN; Park and Suresh 2003, Yang and Yang 2008), and WFA (Yang and Wang 2007). Although heuristic and meta-heuristic methods are not guaranteed to provide optimal solutions (they usually give sub-optimal results), they are very useful in producing acceptable solutions within a reasonable time. In fact, optimal results can only be obtained under very restricted conditions; this makes heuristic and meta-heuristic methods more practical in real-life applications. SA, TS, and WFA are relevant to this research and are discussed further.
2.2.2.1 Simulated Annealing
SA algorithm was originally proposed by Metropolis et al. (1953) to simulate the annealing process. Based on this pioneering work, Kirkpatrick et al. (1983) first introduced the general optimization algorithm of SA to solve hard combinatorial optimization problems through controlled randomization. Lundy and Mees (1986) proved that the SA algorithm converges to the global optimum with a probability close to one under certain assumptions.
SA poses several advantages over other sophisticated combinatorial optimization approaches, e.g. relatively easy and quick implementation, flexibility, and transparency. Due to its ease of use and its ability to provide a good solution for real-world problems, SA is one of the most powerful and popular heuristics to solve many optimization problems. For instance, adequate results have been attained when applying SA on various combinatorial problems (Kirkpatrick et al. 1983, Bonomi and Lutton 1984, Aarts and Van Laarhoven 1985, Selim and Alsultan 1991, Mckendall et al. 2006, Yu et al. 2010).
The pseudo-code of the general procedure for implementing the SA algorithm in maximization problems is presented in Figure 2.2. The algorithm starts with a high temperature. After generating an initial solution (S0), it attempts to move from the current solution (S) to one of its neighborhood solutions (SN).Changes in objective function values (Δ=SN-S) are computed. The new solution is accepted if it results in better objective value (i.e. Δ>0). However, if the new solution yields worse value, it can still be accepted according to the probability function p=eΔT, where T is the current temperature. This check is performed by first selecting a random number (r) from (0, 1). If the value is less than or equal to the probability value (p), the new configuration is accepted; otherwise, it is rejected. By accepting worse solutions, SA can avoid being trapped on local optima. SA repeats this process L times at each temperature to reach the thermal equilibrium, where L is a control parameter usually called the Markov chain length or Epoch length. The parameter
T is gradually decreased by a cooling function as SA proceeds until the stopping condition is met.
The general scheme of SA can be stated as follows:
Step 1. Choose an initial temperature T.
Step 2. Generate a random candidate S.
Step 3. If a stopping criterion is satisfied, then stop; otherwise repeat the following steps:
Step 3.1. If “thermal equilibrium is reached,” then exit this loop.
Step 3.2. Let SN be a randomly selected neighbor of S.
Step 3.3. Generate a uniform random number r from [0, 1].
Step 3.4. Compute the changes in the objective function values:Δ =(SN−S ). Step 3.5. If eΔT > , then r S S= N.
Step 4. Let T be a new (lower) temperature value, then go to Step 3.
The annealing schedule mainly consists of (1) the initial temperature, (2) a cooling function, (3) the number of iterations to be performed at each temperature, and (4) a stopping criterion to terminate the algorithm. Performance analysis of SA had revealed several characteristics (Lin et al., 1993):
(1) There is a tradeoff between the quality of the final solution obtained and the execution time required. Furthermore, the execution time is sensitive to the decrement ratio of the temperature.
(2) If the temperature drops too sharply, is the algorithm becomes easily trapped in local minima.
(3) Detecting the equilibrium of the system at each temperature level is not an easy task.
(4) The total number of iterations of SA is affected by the initial temperature.
(5) If the numbers of iterations at low temperature regions are not large enough, there are still some probability of departing from good solutions.
Hence, several decisions have to be made in order to implement the conceptual
algorithm described above. These include the following:
(1) Choice of an initial temperature and the corresponding temperature decrement strategy At a high temperature, almost all unimproved trial solutions are accepted. However, at a lower temperature, fewer unimproved trial solutions can be accepted. If the cooling speed is too fast or the initial temperature (T0) is not high enough, this mechanism will fail to escape local minima. T0 should be high enough that in the first iteration of the algorithm, the probability of accepting worst solutions is, at least, 80% (Kirkpatrick et al., 1983). The most commonly used temperature decrement function is geometric: T =a× T, where a< 1 and constant. Typically, 0.7 ≤ a≤ 0.95.
(2) Choice of a criterion for detecting equilibrium
For each value of the current temperature T, the inner loop (steps 3.1 to 3.5 in the algorithm presented above) should be repeated L times in order for the system to reach
“thermal equilibrium.” If the search cannot reach the equilibrium state at each temperature, obtaining a globally optimum solution becomes difficult. A good criterion for thermal equilibrium can save computational effort without losing the ability of escaping from a local minimum.
(3) Choice of an adequate stopping criterion
The stopping criterion is used to stop the algorithm when there is sufficient evidence that the global optimum has been detected or that the “cost” connected with the search for a better estimate of the global optimum would be too high. The stop can also occur when some kind of “resource” has been exhausted, e.g. computer time, the total number of solutions generated, and when the desired energy level is attained (freezing temperature).
The stopping criterion is always the crucial and most difficult part of the algorithm, and has great influence on overall performance.
Obviously, each of these control parameters is chosen according to the specific
to be defined when adopting this general algorithm to a specific problem are the procedures to generate both the initial solution and the neighboring solutions. The details of the proposed implementation of the SA to the CFP are presented in Section 4.1.2.
SA_Algorithm ( ) {
Generate an initial solutionS . 0
Let the current solution S equal toS . 0 Let the current best solutionS equal to* S . 0
Let the current temperature T equal to the initial temperature T0. WHILE(stop criterion is false) // outer loop
{ Figure 2.2 Pseudo-code for general simulated annealing algorithm (Kirkpatrick et al., 1983) 2.2.2.2 Tabu Search
TS is a meta-heuristic approach designed to find optimal or near-optimal solutions to combinatorial optimization problems. This method has been suggested primarily by Glover et al. (1985) and further refined and developed by Glover (1986, 1989, and 1990). The pseudo-code for the general procedure for implementing the TS is presented in Figure 2.3.
TS_Algorithm ( ) {
Generate an initial solutionS . 0
Let the current solution S equal toS . 0
Figure 2.3 Pseudo-code for general TS algorithm
The algorithm begins from a randomly selected or a known initial solution (S0). From this solution, a set of neighborhood solutions of the current solution (S) is generated using the predefined movement strategies. The objective function is evaluated for each neighborhood of S and the best neighbor solution (S ) replaces the S even though the best N neighbor solution may be worse than the current one. In this way, the algorithm can escape from the local minima (or maxima) of the objective function. However, the algorithm may recycle. To avoid this situation, certain attributes of the last replaced solution are stored in a list, which is called a tabu list (NT). The neighbors of S that satisfy conditions given by the tabu list are systematically eliminated unless they meet an aspiration criterion (NA), so that at each iteration, the algorithm is forced to select a point not recently selected. TS has been successfully used to solve many optimization problems in a wide variety of areas, including CFP, graph coloring, traveling salesman problem, path assignment, flow shop sequencing,
The algorithm begins from a randomly selected or a known initial solution (S0). From this solution, a set of neighborhood solutions of the current solution (S) is generated using the predefined movement strategies. The objective function is evaluated for each neighborhood of S and the best neighbor solution (S ) replaces the S even though the best N neighbor solution may be worse than the current one. In this way, the algorithm can escape from the local minima (or maxima) of the objective function. However, the algorithm may recycle. To avoid this situation, certain attributes of the last replaced solution are stored in a list, which is called a tabu list (NT). The neighbors of S that satisfy conditions given by the tabu list are systematically eliminated unless they meet an aspiration criterion (NA), so that at each iteration, the algorithm is forced to select a point not recently selected. TS has been successfully used to solve many optimization problems in a wide variety of areas, including CFP, graph coloring, traveling salesman problem, path assignment, flow shop sequencing,