Computers & Operations Research 33 (2006) 64 – 92 www.elsevier.com/locate/cor
A directional decomposition heuristic for one-dimensional, non-equidistant machine-cell location problems Junfang Yua , Bhaba R. Sarkerb,∗ a I2 Technologies, Inc. (Educational Services), 909 E. Las Colinas Boulevard, Irving, TX 75039, USA b Department of Industrial & Manufacturing Systems Engineering, Louisiana State University, Baton Rouge,
LA 70803-6409, USA Available online 20 July 2004
Abstract Machine-cell location (MCL) problems have been major points of interests of many researchers dealing with cell formation and material flow analysis in a manufacturing shop floor. Since the internal configuration of the production line in a cell is the outcome of both machine-group formation and machine-location problems, the locations of these cells along a material-handling track (or transporter path) are of further interests for the refinement of the results. As the processing technology improves and computational capabilities enhance, the scope of this assignment is even more captivated by potential total benefit. In this research, a one-dimensional, non-equidistant MCL problem is considered, where the input of the system starts from the output of a group formation problem. First the bidirectional movements are decomposed into backward and forward gains and these incremental gains are exploited to explore the most potential search procedure in either of the decomposed directions. The solution procedure is simple, but efficient and good with respect to both time and quality of solution. This directional decomposition heuristic generates a relatively good solution as compared to other existing solutions in MCL analysis. 䉷 2004 Elsevier Ltd. All rights reserved. Keywords: Machine-cell location; Directional decomposition; Heuristic; Flowline
1. Introduction Machine-location problems (MLPs) along a linear or spatial material handling line have been researched for a long period and most of this research concentrated on formulation and solution techniques. As the ∗ Corresponding author. Tel.: +1-225-578-5370; fax: +1-225-578-5109.
E-mail addresses:
[email protected] (J. Yu),
[email protected] (B.R. Sarker). 0305-0548/$ - see front matter 䉷 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2004.06.003
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
65
Inter-cell Flow Machine-cell i 1 Forward
2
j k
h
M-1
Location
M Backward
Material Handling System
Fig. 1. Machine-cell layout along a linear production line.
basic location techniques are already developed, recent research endeavored towards their applications to cell formation and flow line configuration in a manufacturing system. Typically, a group of machines is clustered together in cellular manufacturing to process a cohesive group of jobs such that these jobs rarely need to move to one or more machines in other group(s) of machines so that the total inter-cell (group) movements (transportation) cost is minimized. A perfect grouping is formed when such inter-cell movements do not exist, i.e., when no part-families need to move to another group of machines for completing the processing, but such an ideal situation is often not the case. It is always desirable to achieve a cell-assignment that minimizes the total inter-cell flows, and thus, the total inter-cell transportation cost. Therefore, a judicious arrangement of these machine cells along a material handling path (in one dimension) may reduce the inter-cell movements, which is the major goal of this study. Each machine cell may be treated as a machine, and the determination of the locations of such cells may be conceived as the machine-location problem. Total movements of jobs from one cell to another may be treated analogously also as the flow from one machine to another machine in a typical cellular manufacturing. Both upstream and downstream flows, sometimes referred to as backward and forward flows, respectively, are considered in a machine-cell assignment problem, because a bottleneck part (i.e., a part that moves to another cell for completing the processing requirement) is transported directly from one cell by a material handling system (MHS) to another cell. These types of parts are sometime referred to as bottleneck parts as well. Fig. 1 shows a multi-cell layout with M cells, in which each box represents a machine cell where the lower number in a box indicates the cell location and the upper number indicates the machine-cell number. The machines may be arranged in serial line or spatial locations in each machine cell depending on the processing requirements of the jobs in each part family. Irani et al. [1], Kusiak [2], Logendran [3], Seifoddini [4], Verma and Ding [5], and Wang and Roze [6] addressed several issues relating to cell formation and duplication of machines for bottleneck parts. MLPs have been researched for several decades because of the fact that locating cells in a production floor is one of the major obstacles encountered in designing a large cellular manufacturing system. MLPs are commonly modeled as quadratic assignment problems (QAP) that are non-deterministically polynomial (NP) hard problems. One way to deal with such an NP-hard problem is to find a sub-optimal solution heuristically instead of finding an optimal solution through a tedious and long search procedure. Many heuristics for MLPs have been developed as a result of research in this area since the early 1960s. The major contributors to this problem are, amongst others, Hillier and Connors [7], Nugent
66
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
et al. [8], Heider [9], Burkard and Stratmann [10], Bazaraa and Kirca [11], Aneke and Carrie [12], Co and Arrar [13], Houshyar and McGinnis [14], Kouvelis et al. [15], Sarker et al. [16], and Diponegoro and Sarker [17]. Sarker et al. [16] characterized a distance matrix for equally spaced linear locations to generate different assignments of machines to locations that minimize the total unidirectional and/or bi-directional flows. The form of a distance matrix may vary as its corresponding assignments to locations change. However, the elements of a distance matrix will never change for a given MLP. To solve an MLP by using the amoebic properties, Sarker et al. [16] developed and implemented a heuristic called depth-first insertion heuristic (DIH) which performs relatively well in terms of the computational time and the quality of the sub-optimal solutions. Sarker and Yu [18] also first addressed the machine-cell (MCL) location problem—they developed a simple depth-first heuristic (SDH) for a one-dimensional equidistant MCL location problem by adopting DIH algorithm. Although the methodology involved in a MCL problem is analogous to what is used in an MLP, there is an extra step in solving an MCL problem—which is converting all inter-machine activities to inter-cell activities. Most algorithms in the literature assume equidistant machine locations along a linear layout. In this research we generalize the MCL problem for one-dimensional, unequal distance between two adjacent locations along a production line where the internal layout of machines within a cell could of any configuration. Formulation of both the MCL problem and the individual cell layout configuration simultaneously goes beyond a tertiary assignment problem, and hence, that aspect of the study is not considered here because of the reason of the computational intractability. Many of the investigations involved in seeking an improved location assignment in heuristics are repeated from one level of search to another. Each branch of the search requires re-computation of all inter-cell flows, though only some of them have been changed from the previous one. Such a search mechanism requires considerable computation time, thus making the algorithm inefficient. This problem can be overcome by decomposing the inter-cell flows directionally and computing them incrementally. Based on the directional decomposition of these flows, a directional search is implemented in the heuristic in order to reduce the repetitiveness occurring in the traditional search. The concept of incremental improvement in one direction (either backward and/or forward) is incorporated in evaluating the iterative search procedure.
2. One-dimensional, non-equidistant MCL problem We assume that there are m machines and n jobs in a flexible cellular manufacturing system. These m machines and n jobs are grouped into M machine cells and/or M part-families by applying a group technology or cell formation methodology. Suppose such a machine-cell formation results in B bottleneck parts and K bottleneck machines. The objective of the problem is to minimize the total inter-cell flows by these B bottleneck parts. It is assumed that all jobs have sequenced operations, that is, each operation of a job can only be performed after its previous operation is completed. The number of machine cells equals the number of locations in a linear layout, and the locations are spaced equally. Thus, the problem to be solved in this paper is defined as a one-dimensional, non-equidistant MCL problem (1NDE). Some of the notation used
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
67
in formulating the 1NDE problem are defined as follows: = = = = = = = = = = = = = = =
B M ij = [ij ]M×M
dkh
D = [dkh ]M×M
gij
G = [gij ]M×M
hn
W = [wij ]M×M
n wij k wij = nk=1 wij xik X = [xik ]M×M TC
total number of bottleneck parts in the system; total number of machine cells (part-families); distance from cell i to cell j; inter-cell distance matrix with ij as its elements; distance between locations k and h; location distance matrix with dkh as its elements; handling cost for amount of flows of all bottleneck parts from cell i to cell j; inter-cell flow-cost matrix with gij as its elements, and material handling cost of the bottleneck part n per unit distance; inter-cell flow matrix with wij as its elements; number of moves made by the bottleneck part n from cell i to cell j; amount of flows for all bottleneck parts from cell i to cell j; 1 if cell i is assigned to location k, or 0 otherwise; cell location assignment matrix with xik as its elements; total intercell material handling cost of all bottleneck parts.
The material handling cost of each bottleneck part is proportional to the number of moves between any two cells and the distance between two locations of the corresponding two cells. If xik is 1 when cell i is assigned to location k, and 0 otherwise, then the one-dimensional, non-equidistant MCL problem (1NDE) can be formulated as, (1NDE) : Min
TC =
M B M
h
i=1 j =1 n=1
Subject to
M
n
n wij
M M
dkh xik xj h
(1)
k=1 h=1
xik = 1,
k = 1, 2, . . . , M,
(2a)
xik = 1,
i = 1, 2, . . . , M,
(2b)
i=1 M k=1
xik = (0, 1)
for all i, k.
(2c)
The focus of the model 1NDE in Eq. (1) is to assign M machine cells to M locations for minimizing the total inter-cell material handling cost incurred by the bottleneck parts. Eq. (2a) ensures that each location must have only one machine cell assigned, while Eq. (2b) ensures that each machine cell must be assigned to only one location. Sarker and Yu [18] proved that the objective function in Eq. (1) can be written as W • where = [ij ]M×M = XDX . The inter-cell flow-cost matrix, G, can be expressed as the Hadamard products of W and [19]: G = [gij ]M×M = W ⊕ = [wij ij ]M×M .
(3)
68
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
The ⊕ sign in Eq. (3) is defined as a Hadamard product, in which an element in the new matrix G is the product of the corresponding elements of the two matrices W and , i.e., gij = wij ij (i, j = 1, 2, . . . , M). A cell location problem with non-equidistant locations in one dimension, a general case of the problem, is more realistic in a manufacturing environment. It is indicated that the advantage of the incremental directional decomposition in search algorithm is not only in its simplified computation and improved solution, but also in its capability to solve a more generalized class of MCL problems. A heuristic is presented here for the non-equidistant locations in a one-dimensional MCL problem (1DNE). 2.1. Partitioning of inter-cell distance matrix and flow-cost matrix If cell locations in a linear layout are not spaced equidistantly, the distance between any two adjacent locations will not be the same for any pairs of adjacent locations. Thus, the distance between any two locations will not be as simple as in the case of equidistance. Assume that a one-dimensional coordinate system is used to position the locations of all cells, say xi for location i (1 i M). The distance between any two locations can then be expressed as, xk − xh if xk > xh , dkh = |xk − xh | = xh − xk if xh > xx , (4) 0 otherwise. The distance between locations defined in Eq. (4) can be decomposed into two directional distances b and d f , which are defined as, dkh kh x − xh if xk > kh , b (5a) dkh = k 0 otherwise, x − xk if xh > kk , f dkh = h (5b) 0 otherwise. Accordingly, the distance matrix D, with elements dkh as defined in Eq. (4), can be decomposed into two b and forward distance matrix directional-distance matrix, backward distance matrix Db with elements dkh f . The following properties are helpful for further treatment. Df with elements dkh Property 1. For any one-dimensional layout, (Df ) = Db and D = Db + Df . Proof. From Eqs. (4), (5a)–(5b): b = x − x , d f = 0, d f = x − x . So, (a) For the case xk > xh , dkh = |xk − xh | = xk − xh , dkh k h k h kh hk b f b f dkh = dkh + dkh and dkh = dhk exist for xk > xh . (b) For the case xk < xh , dkh = |xk − xh | = xh − xk , b = 0, d f = x − x , d f = 0. So, d = d b + d f and d b = d f exist for x < x . (c) For the case dkh h k hk kh k h kh kh kh kh hk b f f b f b = d f exist for xk = xh , dkh = |xk − xh | = 0, dkh = 0, dkh = 0, dhk = 0. So, dkh = dkh + dkh and dkh hk b f xk = xh . Therefore,dkh = dkh + dkh is true for all k and h, which is equivalent to D = Db + Df . Equation b = d f is also true for all three cases of locations, which is equivalent to Db = (Df ) . dkh hk Accordingly, the inter-cell distance matrix can be decomposed into a backward inter-cell distance matrix B corresponding to the backward location distance-matrix Db and a forward inter-cell distancematrix F relating to the forward location distance-matrix Df .
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
69
Property 2. For any MCL assignment X in a 1DNE problem, = B + F and B = F . Proof. According to the definition, the following expressions are true: ij =
M M
dkh xik xj h ,
= [ij ]M×M = XDX ,
(6a)
b dkh xik xj h ,
B = [bij ]M×M = XDb X ,
(6b)
f dkh xik xj h ,
F = [fij ]M×M = XDf X .
(6c)
k=1 h=1
bij =
M M k=1 h=1
fij =
M M k=1 h=1
From Property 1 and Eqs. (6a)–(6c), it can be derived that B + F = XDb X + XDf X = X(Db X + Df X ) = X(Db + Df )X = XDX = . It is proved in Property 1 that (Df ) = Db . Thus F = (XDf X ) = X(XDf ) = X(Df ) X = XDb X = B. The objective function of the model 1NDE, the total inter-cell flow costs can be described only with the different inter-location distance, dkh , which can be written in a matrix format as, (1DNE) Min
TC = W • = W • B + W • F,
subject to E X = E
and
(7)
XE = E.
(8)
In Eq. (8), E is a sum (column) matrix of size M × 1 with 1 as its all elements. As in the case of decomposition of , the inter-cell flow-cost matrix G can also be decomposed into two directional flow-cost matrices Gb and Gf . With U as a square matrix of size M × M with 1 as its all elements, objective function in (7) can be written as, T C = G • U = Gb • U + Gf • U.
(9)
The object function in Eq. (9) is equivalent to the one in Eq. (7). This equivalence can be proved using the following theorem. Theorem 1. For any two matrices X and Y of the same size M × M, and a unity matrix U with the same size, (X ⊕ Y) • U = X • Y. Proof. Let Z = X ⊕ Y. According to the definitions of Hadamard product and dot product, zij = xij yij , ( X ⊕ Y) • U = A • U =
M M i=1 j =1
aij =
M M i=1 j =1
xij yij
and
X •Y =
M M
xij yij .
i=1 j =1
Hence, (X ⊕ Y) • U = X • Y. Substituting W for X and for Y in Theorem 1, and using the definition of G matrix, it yields that the objective function TC in Eq. (9) is the same as the one in Eq. (7). The following example shows how a 1DNE machine-cell location problem is set up.
70
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92 1 1 3 1
4
2
3
6
5
1
4
2 5 3 3
0
3
7
x
9
Fig. 2. A four-cell location problem.
Example 1 (Setting up a 1DNE model for a four MCL problem). Assume that there is a four-cell location problem as shown in Fig. 2. The number above or beneath the line indicates the amount of inter-cell flow, in the direction of the arrowhead, between the two cells connected by the line. The numbers in the rectangular boxes are the machine-cell labeling numbers. The numbers beneath the x-axis are the location coordinates of the four MCL. Based on the data in Fig. 2, the location distance-matrix D and the inter-cell flow matrix W can be constructed as follows:
0 3 Db = 7 9
0 0 4 6
0 0 0 2
0 0 , 0 0
0 3 D = Db + Df = 7 9
3 0 4 6
0 0 Df = (Db ) = 0 0 9 6 , 2 0
7 4 0 2
3 0 0 0
7 4 0 0
9 6 , 2 0
0 5 and W = 1 3
4 0 6 3
3 0 0 2
1 5 . 1 0
Therefore, the 1DNE model for this particular problem can be written as,
Min
0 4 5 0 T C=W • (XDX ) = 1 6 3 3 x11 x12 x13 x22 x23 x • 21 x31 x32 x33 x41 x42 x43
3 1 0 5 0 1 2 0 x14 0 x24 3 7 x34 9 x44
3 0 4 6
7 4 0 2
9 x11 6 x12 2 x13 0 x14
x21 x22 x23 x24
x31 x32 x33 x34
x41 x42 x42 x44
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
Subject to
x11 x21 x31 x41
x12 x22 x32 x42
[1 x13 x23 x33 x43
x11 x12 x21 x22 1 1 1] x31 x32 x41 x42 x14 1 1 x24 1 1 = . 1 1 x34 1 1 x44
x13 x23 x33 x43
x14 x24 = [1 x34 x44
1
1
71
1 ],
Whether a candidate cell-location assignment is a qualified new incumbent solution to the undertaken 1DNE problem or not is based on the difference of its total inter-cell flow costs, T C. The key points in computing T C are the calculation of backward inter-cell distance-matrix B, forward inter-cell distancematrix F, and their differences B and F. Unlike the case of one-dimensional equidistant (1DE) location problem where the most of the partitioned sub-matrices of B and F are constant, the partitioned submatrices discussed next are more complicated. However, the partitioning of matrices B and F, and finding their differences over two assignments reduces significantly the computation time of the total inter-cell flow costs TC and its difference T C. The matrix B on backward search is now discussed first followed by F on forward search.
3. Backward search The direction of the current maximum outflow of any cell corresponds to the maximum row sum of either Gb or Gf matrix, and a backward search procedure is applied when the direction of the current maximum outflow of any cell is backward, which corresponds to the maximum row sum of Gb matrix. The backward flows will be reduced if the target machine cell is moved backward, which may also eventually reduce the overall total cost of inter-cell flows. The backward inter-cell distance matrix B is used to compute the inter-cell flow costs in the backward search. Due to the specific nature of the search pattern presented here, some elements in B may not change from one assignment to another. So partitioning of the B matrix will filter out these unchanged elements, which can be excluded from the recalculation of the matrix over two assignments. From Figs. 3 and 4, it is observed that all inter-cell flows between any two cells from set and/or set remain the same over the two assignments. It is also observed that there is no backward inter-cell flow from any cell in the set to any other cell in a set other than . In addition, there is no backward inter-cell flow also toward any cell in set from any other cells in a set other than . Also in Figs. 3 and 4, ai , an element of assignment vector a, is equivalent to the assignment matrix X. The value of ai indicates the cell assigned to location i, which can also be written as a(i). Based on the above observation, the difference of the backward inter-cell distance matrix B over the two assignments, after being rearranged in the order of the locations, can be partitioned as, 0 0 0 0 B, B,j 0 B B = , (10) . Bj, Bj, 0 0 0 B, B,j 0
72
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
γ
j
a1
a2
ak-1
ak
ak+1
ah-1
ah
ah+1
aM-1
x1
x2
xk-1
xk
xk+1
xh-1
xh
xh+1
xM-1
Forward
aM
xM
Backward
Fig. 3. Cell layout before cell ah is moved backward.
j
a1
a2
ak-1
ah
ak
ah-2
ah-1
ah+1
aM-1
x1
x2
xk-1
xk
xk+1
xh-1
xh
xh+1
xM-1
Forward
aM
xM
Backward
Fig. 4. Cell layout after cell ah is moved to xk .
The sub-matrices in Eq. (10) can be further expressed as, b b B, = [di+1,j − di,j ](h−k)×(k−1)
for a(i) ∈ , a(j ) ∈ ,
b b B, = [di+1,j +1 − di,j ](h−k)×(h−k) b B,j = [di+1,k ](h−k)×1
for a(i) ∈ , j = a(h),
b b Bj, = [dk,j − dh,j ]1×(k−1) b Bj, = [−dh,j ]1×(h−k)
for a(i) ∈ , a(j ) ∈ ,
for j = a(h), a(j ) ∈ ,
for j = a(h), a(j ) ∈ ,
b b B, = [di,j +1 − di,j ](f −h)×(h−k) b b B,j = [di,k − di,h ](f −h)×1
for a(i) ∈ , a(j ) ∈ ,
for a(i) ∈ , j = a(h).
(11a) (11b) (11c) (11d) (11e) (11f) (11g)
The elements of the sub-matrices expressed in Eqs. (11a)–(11g) can be further simplified in accordance with the location distances defined in Eqs. (5a)–(5b): B, (i, j ) = xi+1 − xi
for a(i) ∈ , a(j ) ∈ ,
(12a)
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
73
(xi+1 − xi ) − (xj +1 − xj ) for i > j, 0 otherwise for a(i) ∈ , a(j ) ∈ ,
B, (i, j ) =
B,j (i, j ) = xi+1 − xk
(12b)
for a(i) ∈ , j = a(h),
(12c)
Bj, (i, j ) = xk − xh
for j = a(h), a(j ) ∈ ,
(12d)
Bj, (i, j ) = xj − xh
for j = a(h), a(j ) ∈ ,
(12e)
B, (i, j ) = xj − xj +1 B,j (i, j ) = xh − xk
for a(i) ∈ , a(j ) ∈ ,
(12f)
for a(i) ∈ , j = a(h).
(12g)
The relationship between the backward inter-cell distance matrix B and the forward inter-cell distance F is the same as the one in the case of 1DE (one-dimensional equidistant) problem. The relationship between their differences over the two consecutive assignments also remains the same. The difference of the backward inter-cell flow-cost matrix over the two assignments can be computed as
0 B ⊕ W, Gb = B ⊕ W = , Bj, ⊕ Wj, 0
0 B, ⊕ W, Bj, ⊕ Wj, B, ⊕ W,
0 B,j ⊕ W,j 0 B,j ⊕ W,j
0 0 . 0 0
(13)
Similar to the computation of Gb , the difference of the forward inter-cell flow-cost matrix over the two assignments can be expressed as
0 0 Gf = F ⊕ W = (B) ⊕ W = 0 0
(B, ) ⊕ W, (B, ) ⊕ W, (B,j ) ⊕ Wj, 0
(Bj, ) ⊕ W,j (Bj, ) ⊕ W,j 0 0
0 (B, ) ⊕ W, . (B,j ) ⊕ Wj, 0 (14)
In both Eqs. (13) and (14), either matrix B needs to be rearranged in the order of cells, or matrix W needs to be rearranged in order of locations to keep the two matrices B and W consistent in computing the inter-cell flow-cost matrices. The difference of the overall inter-cell flow-cost matrix G between the two cell assignments can be obtained by adding its two decomposed matrices in Eqs. (13) and (14), which is shown in Eq. (10): B f G=G + G
0 B, ⊕ W, = B ⊕ W j, j, 0
B, ⊕ W, (B, + B, ) ⊕ W, (Bj, + B,j ) ⊕ Wj, B, ⊕ W,
Bj, ⊕ W,j (B,j + Bj, ) ⊕ W,j
0 B,j ⊕ W,j
0 B, ⊕ W, . B,j ⊕ Wj, 0 (15)
74
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
Therefore, the difference of the total inter-cell flow cost between the two cell assignments can be computed as T C=B • W + B • W = G • U = B, • (W, + W, ) + Bj, • (Wj, + W,j )
+ B, • (W, + W, ) + (Bj, + B,j ) • (Wj, + W,j )
+ B, • (W, + W, ) + B,j • (W,j + Wj, ),
(16)
where U is a unity matrix of the same size as G matrix. Eq. (16) can be further detailed in a non-matrix format that is demonstrated in Eq. (17). T C=
k−1 h−1
(xi+1 − xi )(wa(i),a(j ) + wa(j ),a(i) )
i=k j =1
+
k−1
(xk − xh )(wa(h),a(j ) + wa(j ),a(h) )
j =1
+
i−1 h−1
(xi+1 − xi − xj +1 + xj )(wa(i),a(j ) + wa(j ),a(i) )
i=k+1 j =k
+ (xh − xk )
M
(wa(i),a(h) + wa(h),a(i) )
i=h+1
+
h−1 M
(xj − xj +1 )(wa(i),a(j ) + wa(j ),a(i) )
i=h+1 j =k
+
h−1
(xj − xh + xj +1 − xk )(wa(h),a(j ) + wa(j ),a(h) ).
(17)
j =k
A positive value of T C indicates that the total inter-cell flow costs will increase if the candidate assignment replaces the incumbent solution. So, a negative value of T C is desirable for a candidate assignment to replace the incumbent solution. In each level of the backward search, there are h − 1 assignment candidates, which result from placing the target cell in each of the other locations in backward from the location h. Each of the h − 1 cases is represented by the index variable k, where 1 k h − 1. The candidate with the maximum reduction of the total inter-cell flow cost over the current incumbent assignment will become the next incumbent assignment, if it exists. The following equation is used to serve such a purpose. T C min = min{T C(k) : k = 1, 2, . . . , h − 1}.
(18)
If T C min is negative in Eq. (18), a new incumbent assignment is found. The inter-cell flow-cost matrix, its decompositions, and the total inter-cell flow-cost will be updated accordingly as shown in Eqs. (19a)–(19c), (20)). Otherwise, the next search will be performed by trying the cell with the next
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
75
maximum outflow either backward or forward. Gnew = Gcurrent + G,
(19a)
Gbnew = Gbcurrent + Gb ,
(19b)
Gfnew = Gfcurrent + Gf ,
(19c)
T C new = T C current + T C,
(20)
Example 2 (An Illustration of the backward search). Example 1 is continued here for demonstrating the backward search. Assume the initial assignment X0 is as follows, together with the location distance matrices and inter-cell flow matrix as given in Example 1. 1 0 0 0 0 0 0 0 0 3 7 9 0 1 0 0 b 3 0 0 0 f 0 0 4 6 b X0 = ,D = , D = (D ) = 0 0 1 0 7 4 0 0 0 0 0 2 0 0 0 1 9 6 2 0 0 0 0 0 0 4 3 1 5 0 0 5 and W = . 1 6 0 1 3 3 2 0 The inter-cell distance matrices and the inter-cell flow-cost matrices, based on the initial assignment, are computed as, 0 0 0 0 0 3 7 9 3 0 0 0 0 0 4 6 f f b = X0 Db X0 = , = X0 D X0 = , 7 4 0 0 0 0 0 2 9 6 2 0 0 0 0 0 0 0 0 0 0 0 12 21 9 42 0 0 30 30 15 0 0 0 15 0 f f Gb = W ⊕ Db = , G =W ⊕ = . 7 24 0 0 31 0 0 0 2 2 27 18 4 0 49 0 0 0 0 0 From the two matrices Gb and Gf above, it is observed that the initial maximum row sum of the two matrices is from row 4 in matrix Gb , which corresponds to cell 4 in location 4. A search by moving cell 4 backward from location 4 to each of 3 other locations as shown in Fig. 5, will be needed to find a better assignment. For each of the three cases corresponding to k = 1, 2 and 3, T C(k) can be computed following Eqs. (11)–(18). The computation of T C(3) is shown in details below. For the case of k = 3, as shown in Fig. 6, the partitioned cell sets are = {a(1), a(2)}, = {a(3)}, j = {a(4)} and = . The difference of the backward inter-cell distance matrix B from the current initial assignment to the one being tested is computed first, followed by the computation of the difference of the inter-cell flow-cost matrices. Due to the nature of the current incumbent location assignment, there is no need to rearrange the derived matrix B in the order of cells because the order of cells is the same as the order of locations. B, = [ 2
2 ], B, = [0], B,j = [2], Bj, = [ −2
−2 ], Bj, = [−2]
76
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92 j=4
Cell 2
1
3
k=1?
h =1
h =2
x1=0
4 k=3?
k=2?
h =4
h =3
x2=3
x3=7
x4=9
Fig. 5. Cell 4 may be moved to location 1, 2 or 3.
1
j=4
4
3
h =3
h =4
2 k=3
Cell h =1
h =2
x1=0
x2=3
x3=7
x4=9
Fig. 6. Cell 4 is moved to location 3 for a possible improved assignment.
0 0 B = 2 −2
0 0 2 −2
0 0 0 −2
0 0 0 0 b , G = B ⊕ W = 2 2 0 −6
0 0 Gb = F ⊕ W = B ⊕ W = 0 0
0 0 0 0
6 0 0 4
0 0 12 −6
0 0 0 −4
0 0 , 2 0
−2 −10 . −2 0
Therefore, the difference of the inter-cell flow costs over the current assignment and the one being tested, for the case k = 3, is as follows: T C(3) = Gb • U + Gf • U = −4.
Similarly, it can be shown that T C(1) = −2 and T C(2) = 4, from which the minimum T C among all three cases is, T C min = min{T C(k) : k = 1, 2, 3} = T C(3) = −4.
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
77
The updated inter-cell flow-cost matrices and the total inter-cell flow costs for the new assignment are, 0 0 0 0 0 15 0 0 0 15 b b b Gnew = Gcurrent + G = , 9 36 0 2 47 21 12 0 0 33 0 12 27 7 46 0 0 20 20 0 Gfnew = Gfcurrent + Gf = 0 0 0 0 0 0 0 4 0 4 and T C new = T C current + T C = 169 − 4 = 165. A new iteration of the search procedure will be conducted based on the newly updated assignment, which could yet be a backward search or a forward search, depending on the maximum row sum of the newly updated inter-cell flow-cost matrices. A forward search needs to be performed if the current maximum row sum is from a row in Gf instead of Gb . 4. Forward search If the current row sum being considered is taken from Gf , a better cell location assignment may be found by placing the underlying machine cell in each of the locations from xh+1 to xf , say xk , for h + 1 k f . Fig. 7 shows the machine-cell layout under the current assignment. Fig. 8 shows the layout after the machine cell ah is moved forward from location xh to location xk . The forward inter-cell distance matrix F is used to compute the inter-cell flow cost in the forward search. Similar to a backward search, the change of the total inter-cell flow costs from the current cell assignment to a candidate assignment needs to be considered only, and is computed from the difference of the forward inter-cell distance matrix F between the two assignments as shown below. 0 0 F,j F, 0 Fj, Fj, 0 F = (21) . 0 F,j F, F, 0 0 0 0 Matrix F is rearranged by the sequence of the locations and is partitioned based on the four subsets of the machine cells, as shown in Figs. 7 and 8. Its sub-matrices can be detailed as, f f F,j = [di,k − di,h ](h−1)×1
for a(i) ∈ , j = a(h),
f f F, = [di,j −1 − di,j ](h−1)×(k−h) f Fj, = [−dh,j ]1×(k−h)
for j = a(h), a(j ) ∈ ,
f f Fj, = [dk,j − dh,j ]1×(f −k) f F,j = [di−1,k ](k−h)×1
for a(i) ∈ , a(j ) ∈ ,
for j = a(h), a(j ) ∈ ,
for a(i) ∈ , j = a(h),
(22a) (22b) (22c) (22d) (22e)
78
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
j
a1
a2
ah-1
ah
ah+1
ak-1
ak
ak+1
aM-1
x1
x2
xh-1
xh
xh+1
xk-1
xk
xk+1
xM-1
Forward
aM
xm
Backward
Fig. 7. Cell layout before cell ah is moved forward.
f f F, = [di−1,j −1 − di,j ](k−h)×(k−h) f f F, = [di−1,j − di,j ](k−h)×(f −k)
for a(i) ∈ , a(j ) ∈ , for a(i) ∈ , a(j ) ∈ .
(22f) (22g)
The sub-matrices of F in Eqs. (22a)–(22g) can be simplified in compliance with Eqs. (5a)–(5b),which is demonstrated, in Eqs. (23a)–(23g). F,j (i, j ) = xk − xh F, (i, j ) = xj −1 − xj
for a(i) ∈ , j = a(h), for a(i) ∈ , a(j ) ∈ ,
(23a) (23b)
Fj, (i, j ) = xh − xj
for j = a(h), a(j ) ∈ ,
(23c)
Fj, (i, j ) = xh − xk
for j = a(h), a(j ) ∈ ,
(23d)
F,j (i, j ) = xk − xi−1
for a(i) ∈ , j = a(h),
xj −1 − xi−1 − xj + xi 0 for a(i) ∈ , a(j ) ∈ ,
F, (i, j ) =
F, (i, j ) = xi − xi−1
(23e)
for h + 1 i < j k, otherwise
for a(i) ∈ , a(j ) ∈ .
(23f) (23g)
Based on Eqs. (23a)–(23g), the difference of the forward inter-cell flow-cost matrix over the two assignments can be computed as follows: 0 0 F,j ⊕ W,j F, ⊕ W, 0 Fj, ⊕ Wj, Fj, ⊕ Wj, 0 Gf = F ⊕ W = (24) 0 F,j ⊕ W,j F, ⊕ W, F, ⊕ W, 0 0 0 0 It is proved in Property 2 that the backward inter-cell distance matrix B is equal to the transformation of its forward inter-cell distance matrix F. The same relationship exists between their differences over two
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
79
a1
a2
ah-1
ah+1
ah+2
ak
j ah
ak+1
aM-1
x1
x2
xh-1
xh
xh+1
xk-1
xk
xk+1
xM-1
Forward
aM
xM
Backward
Fig. 8. Cell layout after cell ah is moved to xk .
consecutive assignments, that is, B = F . The difference of the backward inter-cell flow-cost matrix over the assignments can be derived from the following expression:
0 F ) ⊕ Wj, ( ,j Gb = B ⊕ W = (F) ⊕ W = (F, ) ⊕ W, 0
0 0 (Fj, ) ⊕ W,j (Fj, ) ⊕ W,j
0 (F,j ) ⊕ Wj, (F, ) ⊕ W, (F, ) ⊕ W,
0 0 . 0 0 (25)
It is assumed that the inter-cell flow matrix W is rearranged according to the sequence of the locations before it is used in the computation of matrices Gf and Gb , as shown in Eqs. (24) and (25). Therefore, the overall difference of the inter-cell flow-cost matrix over two assignments can be obtained from Eqs. (24) and (25) as follows: f b G=G + G
0 F,j ⊕ Wj, = F ⊕ W, , 0
F,j ⊕ W,j
0 (F,j + Fj, ) ⊕ W,j Fj, ⊕ W,j
F, ⊕ W, (Fj, + F,j ) ⊕ Wj, (F, + F, ) ⊕ W, F,I ⊕ W,
0 Fj, ⊕ Wj, . F, ⊕ W, 0 (26)
By summing all elements in Eq. (26), the difference of the total inter-cell flow costs can be expressed as, T C=F • W + F • W = G • 1 = F, • (W, + W, ) + F,j • (W,j + Wj, )
+ F, • (W, + W, ) + (Fj, + F,j ) • (Wj, + W,j )
+ F, • (W, + W, ) + Fj, • (Wj, + W,j ).
(27)
80
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
Eq. (27) can also be expressed in a non-matrix format by substituting all sub-matrices of the forward inter-cell flow-cost matrix from Eqs. (23a)–(23g): T C=
k h−1
(xj −1 − xj )(wa(i),a(j ) + wa(j ),a(i) )
i=1 j =h+1
+ +
h−1
(xk − xh )(wa(i),a(h) + wa(h),a(i) )
i=1 k−1
k
(xj −1 − xj − xi−1 + xi )(wa(i),a(j ) + wa(j ),a(i) )
i=h+1 j =i+1 M
+ (xh − xk )
(wa(h),a(i) + wa(i),a(h) )
j =k+1
+
k
M
(xi − xi−1 )(wa(i),a(j ) + wa(j ),a(i) )
i=h+1 j =k+1
+
k
(xh − xj + xk − xj −1 )(wa(h),a(j ) + wa(j ),a(h) ).
(28)
j =h+1
At each iteration of search during the forward search, there are M − h new assignment candidates to be tried to determine if a candidate assignment will reduce the total inter-cell flow costs. This trial procedure can be conducted by computing T C in Eq. (28) for h + 1 k M. The candidate with the maximum reduction of the total inter-cell flow costs will become a new incumbent assignment for the next iteration, if such a candidate exists. Therefore, the minimum of all T C will be used to serve such a purpose, which is shown as, T C min = min{T C(k) : k = h + 1, h + 2, . . . , M}.
(29)
A negative value of T C min implies that a new incumbent assignment is found, and all inter-cell flow-cost matrices and the total inter-cell flow costs need to be updated accordingly, as shown in Eqs. (19a)–(19c), (20). A positive value of T C min means no new assignment is found, and the search will continue with the cell with the next maximum row sum either in matrix Gb or matrix Gf . Example 3 (Illustrating the forward search). Continuing from the end of Example 2, the inter-cell flowcost matrices, after one more backward search, are noted as follows: 0 0 9 0 9 0 16 0 6 22 0 1 0 0 0 0 0 20 0 0 10 10 20 0 0 0 1 0 Gb = Gf = and X∗ = , . 9 36 0 2 47 3 42 0 9 54 1 0 0 0 18 6 18 0 42 0 0 0 0 0 0 0 0 1 From the row sums of matrices Gb and Gf above, it is observed that the maximum row sum is 54 from row 3 of matrix Gf . A forward search will be conducted to find an improved assignment by moving the cell 3 forward, as shown in Fig. 9.
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92 j =1
81
Cell
3
1
2 k=2?
k=3?
4 k=4?
h =1 x1=0
x2=3
x3=7
x4=9
Fig. 9. Cell 3 may be moved to location 2, 3 or 4.
1
2
3
4
k=3
Cell h=1
x1=0
j=4
h=2
x2=3
h=4
h=3 x3=7
x4=9
Fig. 10. Cell 3 moved to location 3 for a possible improved assignment.
There are three cases involved in the current iteration of the forward search, which correspond to k = 2, 3 and 4, respectively. For the cases of k = 3, the difference of the total inter-cell flow costs over the current assignment and the one being tested can be computed from Eqs. (21)–(28) as follows: All four locations can be regrouped into three sets, as shown in Fig. 10, j = {a(1)}, = {a(2), a(3)} and = {a(4)}. The difference of the forward inter-cell distance matrix F over the current assignment and the one being tested, resulting from moving cell 3 from location 1 to 3, is computed below using Eqs. (23a)–(23g) and (21): Fj, (1, 2) = x1 − x2 = 0 − 3 = −3, Fj, (1, 3) = x1 − x3 = 0 − 7 = −7, Fj, = [ −3
−7 ],
Fj, (1, 4) = x1 − x3 = 0 − 7 = −7, Fj, = [−7], F,j (2, 1) = x3 − x1 = 7 − 0 = 7, F,j (3, 1) = x3 − x2 = 7 − 3 = 4,
82
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
F,j
7 = , 4
F, (2, 3) = x2 − x1 − x3 + x2 = 3 − 0 − 7 + 3 = −1,
0 F, = 0
−1 , 0
F, (2, 4) = x2 − x1 = 3 − 0 = 3, F, (3, 4) = x3 − x2 = 7 − 3 = 4,
3 F, = , 4 0 −3 0 7 F = 4 0 0 0
−7 −1 0 0
−7 3 . 4 0
The above matrix F is ordered based on the location sequence that can be rearranged based on the cell sequence as it is originally defined. 0 −1 7 3 0 4 4 0 F = . −3 −7 0 −7 0 0 0 0 Both the difference of the forward inter-cell flow-cost matrix and that of the backward inter-cell flowcost matrix can be computed following Eqs. (24) and (25). 0 −4 21 3 0 0 20 0 Gf = F ⊕ W = , −3 −42 0 −7 0 0 0 0 0 0 −9 0 0 0 −5 0 Gb = B ⊕ W = F ⊕ W = . 7 24 0 0 9 12 −14 0 The difference of the total inter-cell flow costs over the current assignment and the one being tested can be obtained using Eq. (27): T C(3) = Gb • U + Gf • U = 12.
Similarly for k = 2 and 4, the difference of the total inter-cell flow costs over the current assignment and the one being tested can be computed from Eqs. (21)–(28) as T C(2) = 12 and T C(4) = 8. Therefore, the minimum of all three T C is, T C min = min{T C(k) : k = 2, 3, 4} = 4,
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
83
which is greater than zero. So no improved assignment is found in this branch of forward search. The next largest row sum of matrices Gb and Gb should be tried, which may result in a new backward or forward search. The backward search and forward search are the fundamental search techniques that are used in the modified directional decomposition heuristic (MDDH) to solve one-dimensional, non-equidistant MCL (1DNE) problems.
5. MDDH The basic principle underlying the directional decomposition heuristic (DDH) is to find a better cell location assignment by placing the cell with the current maximum outflow in either direction in another location within the same direction. The DDH algorithm, developed for the 1DE problem [20], is modified and extended for the 1DNE problem. Unlike the DDH, the MDDH algorithm uses more complicated procedures to compute the inter-cell flow costs and their differences over two consequent assignments. Algorithm 1 (MDDH for 1DNE). Step 0: Construct two-directional location-distance matrices Db and Df according to Eqs. (5a)–(5b) and inter-cell flow matrix W [see Sarker andYu [18]]. With the initial location assignment X0 , compute B(X0 ) and F(X0 ) using Eqs. (6b)–(6c). Compute Gb (X0 ) and Gf (X0 ) according to their definitions in Eq. (3) and T C(X0 ) from Eq. (9). Set X∗ = X0 and T C(X∗ ) = T C(X0 ), Gb (X∗ ) = Gb (X0 ) and Gf (X∗ ) = Gf (X0 ). Set final solution Xopt = X∗ and T C(Xopt = T C(X∗ ). Set the multi-pass index variable p = 1. Step 1: Sort row sums of Gb (X∗ ) and Gf (X∗ ) in ascending order. Find the machine cell j and its location h corresponding to the largest row sum. Step 2: If the current largest row sum is from a row in Gb (X∗ ), a backward search will be conducted. Compute T C min following Eqs. (17) and (18). If the largest row sum is from a row in Gf (X∗ ), a forward search will be needed. Follow Eqs. (28) and (29) to compute T C min . Step 3: If T C min < 0, then a better MCL assignment is found. Compute Gb (X∗ ) and Gf (X∗ ) according to Eqs. (13) and (14) in the case of a backward search; Eqs. (24) and (25) in the case of a forward search. Update T C(X∗ ) = T C(X∗ ) + T C min , Gb (X∗ ) = Gb (X∗ ) + Gb (X∗ ), and Gf (X∗ ) = Gf (X∗ ) + Gf (X∗ ). Update X ∗ , and go to Step 1. Otherwise, make the next largest row sum as the current largest row sum and go to Step 2. If all row sums under the current assignment X∗ have been tried, go to Step 4. Step 4: Make the next largest row sum of Gb (X0 ) and Gf (X0 ) as the current largest row sum, and go to Step 2. If all row sums under the initial assignment X0 have been tried, go to Step 5. Step 5: If T C(X∗ ) T C(Xopt ) and p < M, set Xopt = X∗ and T C(Xopt ) = T C(X∗ ), rotate location assignment X∗ to p locations forward (or backward, as long as the same direction is maintained for the whole procedure) to form a new initial assignment X0 , increase p by one, compute (X0 ), Gb (X0 ), Gf (X0 ) and T C(X0 ), set new incumbent solution X∗ = X0 and T C(X∗ ) = T C(X0 ), and go to Step 1. Otherwise stop.
84
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
The fundamental insight in the MDDH algorithm is the method to re-construct the location-distance matrix and its directional decomposition that are the foundation of computing all inter-cell flow-cost matrices. The computational complexity of MDDH is of the order of O(M 4 ) which is comparable with other existing heuristics in QAP. Algorithm 1 is demonstrated using data from Example 1. Example 4 (Illustration of the MDDH). The machine-cell location problem defined in Example 1 is a problem in which four machine cells need to be assigned to four locations along an unequally spaced linear line, as shown in Fig. 1. As it can be seen in the figure, the four locations for the four machine cells are described by a one-dimensional coordinate system that will be used to compute the location-distance matrices. The amount of inter-cell flows among the cells, displayed as the number above or beneath a line that connects any two cells, are also shown in the figure. The letters inside the rectangles represent cells that are initially assigned to the locations. It is demonstrated below how the example problem is solved using Algorithm 1. Step 0: The matrices Db and Df can be constructed following Eqs. (5a)–(5b) as, 0 0 0 0 0 3 7 9 3 0 0 0 0 0 4 6 Db = Df = (Db ) = , . 7 4 0 0 0 0 0 2 9 6 2 0 0 0 0 0 The inter-cell flow matrix W can be obtained using Algorithm 1, which, as a result, is configured in Fig. 1. Matrix W is displayed here together with the initial cell location assignment X0 . 0 4 3 1 1 0 0 0 5 0 0 5 0 1 0 0 W= X0 = , . 1 6 0 1 0 0 1 0 3 3 2 0 0 0 0 1 With the initial location assignment, the inter-cell directional-distance matrices and the corresponding inter-cell flow-cost matrices are computed as, 0 0 0 0 0 3 7 9 3 0 0 0 0 0 4 6 B = X0 Db X0 = F = B = , , 7 4 0 0 0 0 0 2 9 6 2 0 0 0 0 0 0 0 0 0 0 0 12 21 9 42 0 0 30 30 15 0 0 0 15 0 Gb = Gf = , . 7 24 0 0 31 0 0 0 2 2 27 18 4 0 49 0 0 0 0 0 Set X∗ = X0 , T C(X∗ ) = T C(X0 ) = 65, Gb (X∗ ) = Gb (X0 ) and Gf (X∗ ) = Gf (X0 ). Set Xopt = X∗ , T C(Xopt ) = T C(X∗ ) = 65. The current incumbent location assignment matrix X∗ can also be expressed by an assignment vector, a∗ = (1, 2, 3, 4). Step 1: The row sums of Gb and Gf are already displayed in Step 0. The current maximum row sum is 49 from row 4 in Gb . The row sum is associated with cell j = 4 in location h = 4. Step 2. As the current largest row sum in Gb is at the right most position in the layout a backward search will be conducted to find a better assignment. A series of new assignments may be tried
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
85
by moving cell 4 from location 4 to location 1, 2 or 3, as shown in Fig. 5. The resulting three possible assignments are tested using Eqs. (17) and (18) and the resulting incremental costs are: T C(1) = −2, T C(2) = 4, T C(3) = −4
and
T C min = T C(3) = −4.
Step 3: Since T C min =−4 < 0, a new incumbent assignment is found as displayed in Fig. 6 in Example 2, which corresponds to k = 3 in Step 2. The difference of the inter-cell flow-cost matrices from the current assignment to the new incumbent assignment are computed as demonstrated in Example 2. 0 0 0 0 0 0 6 −2 0 0 0 0 0 0 0 −10 Gb = Gf = . 2 12 0 2 0 0 0 −2 −6 −6 −4 0 0 0 4 0 The new inter-cell flow-cost matrices and total inter-cell flow costs are updated as follows: 0 0 0 0 0 15 0 0 0 15 Gbnew = Gbcurrent + Gb = , 9 36 0 2 47 21 12 0 0 33 0 12 27 7 46 0 20 20 0 0 Gfnew = Gfcurrent + Gf = , 0 0 0 0 0 0 0 4 0 4 T C new = T C current + T C = 165. Update the current incumbent assignment and the final solution. 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 X∗ = Xopt = , 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 T C(X∗ ) = T C new = 165
T C(Xopt ) = T C new = 165.
Step 1: The largest row sum of the newly updated matrices Gb and Gf as shown in the previous step is row 3 in Gb , which corresponds to cell j = 3 in location h = 4. Step 2: A new assignment may be found by moving cell 3 from location 4 to each of the other locations before it, that is k = 1, 2, 3. T C(1) = −8, T C(2) = 4, T C(3) = 4
and
T C min = T C(1) = −8.
Step 3: As T C min = −8 < 0, a new assignment is found. 0 0 0 0 0 0 9 0 0 0 15 0 0 0 5 0 0 0 20 0 Gb = + = 9 36 0 2 −9 −36 0 −2 0 0 21 12 0 0 −3 −6 18 0 18 6
9 0 9 0 0 20 , 0 0 0 18 0 42
86
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
0 0 Gf = 0 0
12 0 0 0
27 0 0 4
7 0 20 0 + 0 3 0 0
4 0 42 0
T C(X∗ ) = 165 − 8 = 157, 0 1 0 0 0 0 0 1 0 0 ∗ X = Xopt = 1 0 0 0 1 0 0 0 1 0
1 0 0 0
−27 0 0 −4
0 1 0 0
−1 0 −10 0 = 9 3 0 0
16 0 42 0
0 0 0 0
6 22 10 10 , 9 54 0 0
0 0 T C(Xopt ) = 157. 0 1
Step 1: The largest row sum of Gb and Gf in this new incumbent for search, depth 3, is 54 from row 3 of matrix Gf , which implies j = 3 and h = 1. Step 2: A forward search is performed in this step by relocating cell 3 to each of the other three locations, that is k = 2, 3, 4. T C(2) = 12, T C(3) = 12, T C(4) = 8
and
T C min = T C(4) = 8.
Step 3: As T C min = 8 > 0, no new assignment is found. Make the next largest row sum of Gb and Gf as the current one, that is 42 from row 4 of Gb corresponding to j = 4, h = 4. Step 2–3: For the current branch, T C min = 16 > 0, so no new assignment is found in this level of search. Perform the next level search by selecting the next largest row sum of Gb and Gf in the current depth. There are a total of eight branches in this search. None of them contains a new assignment that will reduce the total inter-cell flow costs. Therefore, go to Step 4. Step 4: Restore all necessary parameters from the initial search. 1 0 0 0 0 1 0 0 X∗ = X0 = , 0 0 1 0 0 0 0 1 0 0 0 0 0 0 12 21 9 42 0 0 30 30 15 0 0 0 15 0 Gb = Gf = . 2 7 24 0 0 31 0 0 0 2 27 18 4 0 49 0 0 0 0 0 Make the second largest row sum of the above Gb and Gf as the current largest row sum, which is 42 from row 1 of Gf corresponding to j = 1 and h = 1. Step 2–3: No new assignment is found. So go to the next level of search, which corresponds to the third largest row sum of Gb and Gf , that is j = 3 and h = 3; T C(1) = −12, T C(2) = 0
and
T C min = T C(1) = −12.
An assignment is found that is better than the current incumbent assignment at the initial search. However, this is a repeat of the incumbent assignment found at the second depth. Any further search has already been explored. There are five more branches left in the initial search. None of them contains any improved assignment. Go to Step 5.
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
87
Step 5: No improved solution is found in the subsequent passes of search. Therefore, the MDDH algorithm is concluded with the following final solution:
0 0 Xopt = 1 0
1 0 0 0
0 1 0 0
0 0 , aopt = N Xopt = (3, 1, 2, 4) 0 1
and
T C(Xopt ) = 157.
In Algorithm 1, if a newly found assignment at any level of search is one that previously occurred at some of other levels, the new assignment will be purged, and the search will move to next branch.
6. Computational results This research develops a solution methodology for the MCL problem which is a key part in designing a flexible, cellular manufacturing system. The 1DE MCL problem is generalized here to one with onedimensional, non-equally spaced machine-cell location problems (1DNE MCL). The MDDH, a modified version of the DDH, has been developed for solving the 1DNE problems. The main difference between the DDH and the MDDH is the different methodologies involved in computing the inter-cell flow costs for equidistant and non-equidistant layouts. If the MDDH heuristic is used to solve a 1DE problem, both the DDH and the MDDH will arrive at the same solution, except that the MDDH will require more computation time because it uses more complicated formulas to compute the inter-cell flow costs. The run time required to optimally solve a MCL problem of large instance is computationally prohibitive. Therefore, heuristics are the only solutions to the large MCL problems. One set of existing data [21,22] plus one set of randomly generated data were used as one-dimensional test problems. The heuristics developed in this research were implemented using several C++ programs that were run on a Gateway Pentium II Xeon 450 MHz personal computer.
6.1. Computation and comparison of MDDH with DIH on Obata’s O-f data Since there are not any published data that are compatible with problem structure and algorithmic procedure, Sarker et al. [16] used Obata’s data [21] to test their DIH, which was referred earlier as MDIH [23]. They used the multi-pass heuristic (MPH), a construction heuristic, to obtain an initial assignment for DIH for further improvement. The same set of initial assignments is also used for MDDH to make the MDDH solutions compatible with that of DIH. The results are reported in Table 1 along with DIH solutions and the optimal or best-computed solutions. In Table 1, the best-known solutions of the last two problems are obtained from MDDH. All of the solutions generated by MDDH have yielded the optimal/best-known solutions, while DIH only generated six optimal solutions for the first six O-f problems. The difference between the optimal/best-known solutions and the corresponding lower bounds are also listed in the table. The lower bounds on O-f data are obtained from Yu [20].
88
Problem O-f
T D CRAF T
T C DI H b
T C MDDH
T C OP T
LB D c
T C DI H −T C OP T T C OP T
T C MDDH −T C OP T T C OP T
T C OP T −LB D LB D
T C MDDH −LB D LB D
O-5 O-6 O-7 O-8 O-9 O-10 O-15 O-20
196 356 508 972 1232 1648 6386 14900
150 292 472 784 1032 1450 5140 12952
150 292 472 784 1032 1402 5134 12924
150 292 472 784 1032 1402 5134d 12924d
142 257 418 669 889 1192 4247 10315
0 0 0 0 0 0.0342 0.0012 0.0022
0 0 0 0 0 0 0 0
0.0563 0.1362 0.1292 0.1719 0.1609 0.1762 0.2089 0.2529
0.0563 0.1362 0.1292 0.1719 0.1609 0.1762 0.2089 0.2529
a Based on O-f data [21]. b Solutions from Sarker et al. [16]. c Best-known lower bounds from Nori and Sarker [24]. d Best solutions obtained in DDH.
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
Table 1 Comparison of total costs between DIH and MDDH using O-f dataa
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
89
6.2. Computational performance of MDDH on 100 randomly generated 1DNE problems A set of 100 problems for each problem size is randomly generated. The smallest problem is a 6-cell location problem, and the largest one is a 60-cell location problem. All the problems are constructed in the same way as the first case. The test results include the average computation time, average total costs and average lower bounds for the heuristic. The lower bounds for these problems are adopted from Yu [20]. All the average test results are the average of at least 100 problems of the same problem size. Relative performance measures are computed independently for each problem. Some performance measures used to evaluate the relative performances of SDH, DDH and MDDH are, S−D = (T C SDH − T C DDH )/T C SDH , D−M = (T C DDH − T C MDDH )/T C DDH , SDH −LB = (T C SDH − LB)/LB, DDH −LB = (T C DDH − LB)/LB, MDDH −LB = (T C MDDH − LB)/LB, SDH −OP T = (T C SDH − OP T )/OP T , DDH −OP T = (T C DDH − OP T )/OP T
and
MDDH −OP T = (T C MDDH − OP T )/OP T .
The performance measure S−D is used to measure the improvement of DDH over SDH, and so is D−M for MDDH over DDH. The measures SDH −LB , DDH −LB and MDDH −LB are the differences of the two heuristic solutions from their lower bound, while SDH −OP T , DDH −OP T and MDDH −OP T
are the differences from their optimal solution. The average relative performance measures are also listed in Table 2 for the 100 test problems. With this computation efficiency, MDDH can solve larger and more complicated MCL problems than what most of other heuristics can. For instances, a 1DE problem of size 60 was solved by MDDH in less than 24 s, while the same problem was solved by DIH in more than 224 s [20]. Overall, in terms of computation time and solution quality, the MDDH is more efficient than two other heuristics, MDIH [16] and BS [25] technique. On the average, the MDDH had approximately 70–80% reduction in computational time than the MDIH, especially for large-size problems. In addition, the MDDH provides better solutions than the MDIH, which has been evident from the O-f problems [21]. 7. Conclusions The MCL problem in designing a cellular manufacturing system is discussed in this research. The most important features found in this study are consolidated to give a general perspective of the cell location problems. The modified directional-decomposition heuristic (MDDH) developed in this paper outperformed most of other applicable heuristics, such as CRAFT, DIH, MDIH, and BS in both computation time and solution quality. In addition to the total inter-cell flow costs minimized by an optimal cell-location assignment, the duplication of bottleneck machine, an alternative way to handle the inter-cell flows, will
90 Problem size CP U SDH CP U DDH CP U MDDH S−D D−M SDH −LB DDH −LB MDDH −LB SDH −OP T DDH −OP T MDDH −OP T (Machine cells) 6 7 8 9 10 11 12 13 14 15 20 25 30 35 40 45 50 60
0.000 0.000 0.000 0.015 0.016 0.016 0.063 0.047 0.063 0.094 0.344 1.656 4.094 5.391 9.531 21.266 66.250 224.656
0.000 0.000 0.000 0.000 0.000 0.015 0.015 0.047 0.015 0.046 0.047 0.297 0.484 2.062 2.828 2.109 3.000 23.156
0.000 0.000 0.000 0.000 0.001 0.015 0.016 0.052 0.014 0.050 0.060 0.290 0.514 2.071 3.013 2.509 3.340 26.638
0.000 0.098 0.000 0.000 0.000 0.354 0.342 0.000 0.000 0.188 2.800 0.235 0.033 0.921 0.753 0.236 0.004 0.865
0.000 0.000 0.000 0.000 0.012 0.043 0.124 0.019 0.002 0.100 2.102 0.031 0.013 0.521 0.513 0.112 0.003 0.381
a Efficiency is reported in percentage. LB is adopted from Yu [20].
3.63 8.33 8.43 8.58 13.00 11.72 14.38 15.89 17.56 19.09 24.90 27.94 35.27 43.47 50.68 52.97 56.24 69.40
3.63 7.14 8.43 8.58 13.00 11.32 13.99 15.89 17.56 18.86 21.40 27.64 35.22 42.15 49.54 52.61 56.24 67.94
3.63 7.14 8.43 8.58 13.00 11.31 13.99 15.78 16.60 18.62 20.41 27.22 33.17 40.21 47.64 50.19 55.47 63.04
0.00 1.11 0.00 0.00 0.60 0.46 0.34 — — — — — — — — — — —
0.00 0.00 0.00 0.00 0.60 0.10 0.00 — — — — — — — — — — —
0.00 0.00 0.00 0.00 0.60 0.10 0.00 — — — — — — — — — — —
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
Table 2 Performance of SDH, DDH and MDDH and lower boundsa
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
91
provide another strategy to reduce the overall material-handling costs caused by the inter-cell flows. The proposed heuristics can also be used for some other applications in addition to the machine-cell location problems, such as machine or facility allocation, flight gate assignment in airport, electronic circuit board design, etc. Because of the computation efficiency of the heuristic, the machine-cell location problems with larger instances and more complicated layout can be solved by MDDH and its extensions, within a reasonable run time. The MDDH can solve relatively larger machine-cell location problems with good quality solutions because of its better computation capability and efficiency. This heuristic is scalable from one dimension to two dimensions because inter-cell flows are decomposed directionally and machine cells are partitioned for computational advantage and easier algorithmic manipulation. The minimized inter-cell flow costs by an optimal cell-location assignment can be further reduced by an optimal duplication plan for the bottleneck machines. By decomposing and partitioning inter-cell flows, the MDDH is found to be computationally more efficient than most other applicable heuristics, in addition to providing better quality solutions. Using the best-known solution generated by this heuristic as inputs, the duplication of bottleneck machine (DBM) produces an optimal duplication plan for bottleneck machines, which will further reduce the total material handling costs caused by the inter-cell flows. Solving large MCL problem heuristically by MDDH proved to be computationally manageable, and all the heuristics performed well in solving the test problems mentioned earlier. References [1] Irani SA, Cohen PH, Cavalier TM. Design of cellular manufacturing systems. Transactions of the ASME: Journal of Engineering for Industry 1992;114(3):352–61. [2] Kusiak A. Branching algorithms for solving the group technology problem. Journal of Manufacturing Systems 1992;10(4):332–43. [3] Logendran R. A model for duplicating bottleneck machines in the presence of budgetary limitations in cellular manufacturing. International Journal of Production Research 1992;30(3):683–94. [4] Seifoddini H. Duplication process in machine cell formation in group technology. IIE Transactions 1989;21(4):382–8. [5] Verma P, Ding FY. A sequence-based materials flow procedure for designing manufacturing cells. International Journal of Production Research 1995;33(12):3267–81. [6] Wang J, Roze C. Formation of machine cells and part families: a modified p-media model and a comparative study. International Journal of Production Research 1997;35(5):1259–86. [7] Hillier FS, Connors MM. Quadratic assignment problem algorithms and the location of indivisible facilities. Management Science 1966;13(1):42–57. [8] Nugent CE, Vollmann TE, Ruml J. An experimental comparison of techniques for the assignment of facilities to locations. Operations Research 1968;16(1):150–73. [9] Heider CH. An N-Step, 2-variable search algorithm for the component placement problem. Naval Research Logistics Quarterly 1973;20(4):699–724. [10] Burkard RE, Stratmann KH. Numerical investigations on quadratic assignment problems. Naval Research Logistics Quarterly 1978;25(1):129–48. [11] Bazaraa MS, Kirca O. A branch-and-bound-based heuristic for solving quadratic assignment problem. Naval Research Logistic Quarterly 1983;30(2):287–304. [12] Aneke NAG, Carrie AS. A design technique for the layout of multi-product flowlines. International Journal of Production Research 1986;24(3):471–81. [13] Co HC, Arrar A. Configuring cellular manufacturing systems. International Journal Production Research 1988;26(9): 1511–22.
92
J. Yu, B.R. Sarker / Computers & Operations Research 33 (2006) 64 – 92
[14] Houshyar A, McGinnis LF. A heuristic for assigning facilities to locations to minimize WIP travel distance in a linear facility. International Journal Production Research 1990;28(8):1485–98. [15] Kouvelis P, Chiang W-C, Yu G. Optimal algorithm for row layout problems in automated manufacturing systems. IIE Transactions 1995;27(1):99–104. [16] Sarker BR, Wilhelm WE, Hogg GL. One-dimensional machine location problems in a multi-product flowline with equidistant locations. European Journal of Operational Research 1998;105(3):401–26. [17] Diponegoro A, Sarker BR. Machine assignment problems for a multi-product flowline. Journal of the Operational Research Society 2003;54(4):472–89. [18] Sarker BR, Yu J. A two-phase procedure for duplicating bottleneck machines in a linear layout, cellular manufacturing system. International Journal of Production Research 1994;32(9):2049–66. [19] Searle SR. Matrix algebra useful for statistics. Wiley, New York, NY, 1982, p. 49–50. [20] Yu J. Machine-cell location problems in multi-product flowlines. PhD dissertation, Department of Industrial and Manufacturing Systems Engineering, Louisiana State University, Baton Rouge, LA, 1999, p. 70803–6409. [21] Obata T. Quadratic assignment problems: evaluation of exact and heuristic algorithms. PhD dissertation, Rensselaer Polytechnic Institute, Troy, NY, 1979. [22] Yu J, Sarker BR. Directional decomposition heuristic for a linear machine-cell location problem. European Journal of Operational Research 2003;149(1):142–84. [23] Sarker BR. The amoebic matrix and one-dimensional machine location problems. PhD dissertation, Department of Industrial Engineering, Texas A&M University, College Station, TX 77843–3131, 1989. [24] Nori VS, Sarker BR. Reducing work-in-process movements of multiple products in one-dimensional layout problems. Journal of the Operational Research Society 1997;48(4):412–22. [25] Wang S, Sarker BR. Locating cells with bottleneck machines in cellular manufacturing systems. International Journal of Production Research 2002;40(2):403–24.