Manufacturing Cells Formation Based on Graph Coloring

A method for cellular manufacturing design in Group Technology is presented in this paper. The proposed method computes the dissimilarities between parts and organizes the production system in part-families and group-machines. A graph corresponding to the production system is generated and a coloring algorithm is activated in order to obtain a number of cells equal to the desired number of cells. The corresponding program was written in Matlab language and runs on a microcomputer. The results obtained on several examples found in the literature are consistently equivalent to or even better than those hitherto proposed, in terms of inter-cell moves and dimensions of the cells.


Introduction
The design of manufacturing cells consists in partitioning the set of parts to be manufactured in an industry into families and the available machines into groups or cells, so that each family is associated with one machine group, and vice-versa.Each family-group pair constitutes a manufacturing cell [1].
This concept lies on grouping similar parts in families, proposing to produce them in cells that have specially selected machines to accomplish this.This procedure leads to greater automation, set up time reduction, standardization of the tools used and a reduction of manufacturing cycles [2].
In a production system organized in manufacturing cells, management, in turn, becomes simpler and more efficient, a direct outcome of the dissolution of the global production system in smaller subsystems.There is a time-reduction of work post transferences, set up time of machines, quantity of tools, order sizes and total manufacturing time [3,4].
However, the manufacturing cells project requires to know the optimal solution of a very complex mathematical problem [5]: Given the matrix incidence in the form [parts × machines] or [parts × machine types], where the types of machines would be the lathes, drills, etc., the machines would be a specific lathe or a drill in the available machine sector, the lines and columns of this matrix must be rearranged, in order to provide it with a block-diagonal structure.
The elements concentrated inside the diagonal blocks constitute the manufacturing cells and the ones that are outside the diagonal blocks are called inter-cells moves and, in practice, considered undesirable.That is the reason why, regarding the manufacturing cells, there is an attempt to minimize the number of inter cell moves, at the same time that a balance of workloads between the different cells projected is sought.

Graph of Manufacturing
A coloring of a graph G(V, A), with V a set of nodes and A a set of edges, is an assignment of any color belonging to set of colors C = {c i } for each node of V, where two nodes connected by an edge of A cannot have the same color; i.e., a coloring of G is a function f ) is a coloring with k colors, i.e., a partition of V in k independent sets of nodes.In this case, G is a k-coloring graph.The chromatic number λ(G) of G is the smaller number of colors for which a k-coloring of G exists.
The graph coloring problem is NP-complete [34,35].It is a high combinatorial problem: for example, a complete and exhaustive enumeration of all colorings consists in an O(|A|.k|N| ) algorithm.
But, some immediate results can be obtained of the definition, such as: 1) A graph G is bi-chromatic if and only if is bipartite; 2) A complete sub-graph of G with t vertices K t is t-chromatic; 3) A graph G with two or more edges is at least 2-chromatic.
The concepts of graph coloring, clique (a complete sub-graph of G) and independent set of nodes are close: 1) k colors are necessary to coloring k nodes of a clique with cardinality k, thus λ(G) is greater than or equal to the cardinality of the greatest clique of G; 2) Let us consider S 1 , .., S k disjunctive subsets of S generated by the k-coloring; then =  S i = S, i = 1, .., k, and each S i is an independent set in which any couple of edges is not connected.
To create the G(V, A) graph associated to the production system, the following is done: 1) V = {collection of parts to manufacture}; 2) A distance d ij is calculated between any two pairs of parts to manufacture.There will be an edge to a ij connecting two vertices i and j if the distance d ij is greater or equal to the value of a critical distance fixed a priori, which can be altered at any moment intending to increase or diminish the number of cells of the graph and therefore, the number of projected cells.
Given that 2 adjacent nodes cannot receive the same color, the G coloring will not place in the same manufacturing cell parts whose distances are greater or equal to an established value of critical distance.The parts receiving the same color will be grouped in the same family of parts and will be manufactured by the same machine cell, hence distributed to the product families, according to the number of operations executed in each family of parts.

The Problem
The data of the problem are included in the matrix comprised of elements 0/1 [parts to produce × available machines], representative of the company's production process.From this matrix, the matrix of dissimilarities [parts × parts] is obtained.
Afterwards, the manufacturing graph is developed and a colored algorithm is applied to obtain the parts families in a number identical to the allocated number of cells.
Once the families are established, the machine groups or cells are obtained, attributing each of the machines to the family that most needs its work.

Algorithm
The algorithm corresponding to the proposed method is made up of four basic steps: a) Determining the matrix for workloads; b) Computing dissimilarities among parts; c) While the number of cells is not obtained: • Perform coloring of graph G(V, A); • Obtain the families of parts; • End While d) Obtaining machine groups.

Load Matrix
From the initial data a matrix [parts × machines] is obtained, which provides the total time spent by each part transiting in the program of each machine.This matrix is called work load matrix and its coefficients are calculated as follows: 3) program[i, j] = type of machine j used to perform operation k on a part[i].

Dissimilarities between Parts
The method of computing dissimilarities between parts [36] considers the differences seen in the manufacturing program of the parts.Given the parts Pi and Pj defined by the vectors 0/1 (below), the dissimilarities are calculated.

Machine Groups
Once the graph coloring is performed and the family Copyright © 2010 SciRes.JSSM parts are obtained, the attribution of the machines to the projected families is accomplished.Such attribution is done according the number of operations accomplished by the machines in each of the families.One machine will always be attributed to the family that executes the highest number of operations.The pair [part family × machine group] comprises the manufacturing cell.

Coloring Procedure
Provided that the problem of partitioning an X collection of n objects with a dissimilarity of classes, in a fixed k number, so that the diameter d(P) among the classes is minimum.This corresponds to constructing a threshold Gs graph, a partial sub-graph of G(V, A), that should be k-colorable.
To color the graphs of the vertices, a technique based on the algorithm by [37] was used.This algorithm enumerates all of the partitions in a fixed number of minimum diameter classes.It is based on a threshold graph in p colors, with each color defining a class.Many heuristics to approximate the diameter and the partitions of minimum diameter are enumerated only at the last stage.
Let d(P) the diameter of the partition of V into p classes.A superior limit, s, for d(P) is heuristically determined.Then, the k-colorations for Gs are enumerated.As long as there is at least one possible k-coloration, the value s is decreased and a new iteration is processed.
When the algorithm stops, the highest value obtained is equal to the remaining partition diameters.To enumerate all of the possible partitions of X, in minimum diameter K classes, this algorithm is applied, which is comprised of 3 stages and has an O(k |V|-k ) complexity.
In the first stage a heuristic method is used to determine the maximum s, highest approximation to d(P), such that Gs will be k-colorable.The maximum s is determined by a method of dichotomic subdivisions of the variation interval of the dissimilarities in a sequential coloring method, in this case the saturation algorithm or "Dsatur".
In this algorithm, at each iteration, the rate of saturation DSi(x) is defined as the number of colors already employed by the neighbors of x.The procedure consists of: coloring the most sizable vertex with the color 1; b) in the following stages, take the vertex free of maximum DS and color it with the least possible index color.
In the second stage, once the maximum s has been set, all of the Gs colorings are enumerated in k colors.With the aid of "Dsatur", maximum if possible, a clique of Gs is obtained, where each node represents a class.
Then, according the order of saturation, the other vertices are colored in all possible manners.If a vertex is near the colored vertices, these will not be eligible to be used to color them.Thus, all of the partitions in k classes of less than s diameter are obtained.
In the third stage, a decreasing order of the edges of the dissimilarity values, starting from s, are considered.An edge can be inserted in the graph as long as there is a compatible partition, that is, if the edge connects different types of nodes.
Thus, each inserted edge eliminates some previously obtained partitions.The first edge that cannot be inserted, since there would be no more compatible partitions left, has equal value to the highest interclass dissimilarity value.The remaining partitions for a fixed number of classes are of minimum diameter.

Illustrative Example
Let the matrix PM[parts × machines], that informs the use (PM ij = 1) or not (PM ij = 0) of part i by the machine j (Table 1), and the matrix PP[parts × parts], that gives the dissimilarity index between parts to be manufactured (Table 2).Two manufacturing cells will be designed for this workshop.
Figure 1 shows the 3-coloring graph solution for the example.It is not acceptable, because the workshop must be partitioned in 2 cells.The solution for the problem is the 2-coloring graph shown in Figure 2.
After defining the families of parts, machines are assigned to the most demanding families.The distribution of machines is carried out considering the number of operations carried out in each family: a machine is assigned to the family in which it will be most used.
The matrix MC[parts × machines] in Table 3 presents the workshop partitioned in 2 manufacturing cells and this solution is very good: there are no inter-cell moves and the dimensions of cells are equal to [2 × 2] for cell 1 and [3 × 2] for cell 2.

Computational Results
The corresponding program to the method presented was written in Matlab language and is incorporated in a microcomputer: program MCF (Manufacturing Cells Formation).
Up to now, the results obtained about literature examples (E) are equivalent or better than those proposed, with regards to the number of inter-cells movements (I) and the dimensions of the cells (D).
Table 4 summarizes 15 tests conducted on classical examples extracted from literature.The results obtained (S) induced a diminishing of the number of inter-cell moves for the first 3 examples of Table 4, at the same time that the cell dimensions continued the same or practically the same up to what is currently known.
The computational time (T) required to solve all the problems dealt always under 10 seconds.The time measurements were done in a Pentium 2.20 GHz, 1.99 GB.
In addition to testing the 15 examples in order to compare the results, we generated 1000 random samples with 10 to 100 machines and 10 to 1000 parts, for performance tests.Figures 3 and Figure 4 show the per-formance of the method in terms of inter-cell movements (maximum = 243) and computational time (maximum = 12 minutes).Copyright © 2010 SciRes.JSSM

Conclusions
A method of coloring graphs to assist the manufacturing cells project was presented and discussed in the present article.The method is grounded on a procedure that understands computing dissimilarities among parts and the coloring of a threshold graph, which aims at grouping the parts in families and the machines in subsets, so that a single subset of machines corresponds to each family of parts and vice versa.The obtained solution tries to minimize the number of inter-cell moves, to the extent that it tries to group the parts with closely corresponding manufacturing programs and separate the parts with different programs.
Table 5 and Table 6 present two solutions found by the presented method for the workshop proposed by [2].The first solution presents 2 inter-cell moves and the second 0 inter-cell moves.
[4] F. Mahmoodi, K. J. Dooley and P. J. Starr, "An Investigation of Dynamic Group Scheduling Heuristics in a Job Shop Manufacturing Cell," International Journal of Pro-