coordinating production planning in cellular manufacturing environment using tabu search

18
Coordinating production planning in cellular manufacturing environment using Tabu search Mingyuan Chen * , Dong Cao Department of Mechanical and Industrial Engineering, Concordia University, 1455 de Maisonneuve Boulevard, West Montreal, Que., Canada H3G 1M8 Received 8 July 2002; accepted 24 February 2004 Abstract In this paper, an integrated model for production planning in cellular manufacturing (CM) systems is proposed. The model considers general CM features such as quadratic terms for inter-cell material handling and decisions for manufacturing cell construction. In addition, the solution of the model will provide production planning decisions such as times to start part processing and levels of finished part inventory. The model is then transformed to equivalent simpler models and is solved by Tabu search based procedure. Results from testing numerical examples show encouraging behaviors of the developed model and algorithm. q 2004 Elsevier Ltd. All rights reserved. Keywords: Production planning; Cellular manufacturing; Integer programming; Tabu search 1. Introduction Cellular manufacturing (CM) is a widely used approach for organizing machines and people into groups to produce a variety of parts in part families. CM is also effective in implementing flexible manufacturing systems and is normally associated with automated batch production (Singh, 1996). Successful CM implementations have resulted in reduced set-up times, reduced material flow and in- process inventory, better system management, improved production efficiency and product quality (Hyer & Wemmerlov, 1989; Wemmerlov & Johnson, 1997). In the past 30 years, CM problems have been studied by many researchers as summarized by Reisman, Kumar, and Cheng (1997), and Sarker and Mondal (1999). Recently, CM research has expanded to developing integrated models and methods as discussed in Song and Choi (2001). For example, Atmani, Lashkari, and Caron (1995) presented a model 0360-8352/$ - see front matter q 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.cie.2004.02.002 Computers & Industrial Engineering 46 (2004) 571–588 www.elsevier.com/locate/dsw * Corresponding author. E-mail addresses: [email protected] (M. Chen); [email protected] (D. Cao).

Upload: mingyuan-chen

Post on 26-Jun-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Coordinating production planning in cellular manufacturing

environment using Tabu search

Mingyuan Chen*, Dong Cao

Department of Mechanical and Industrial Engineering, Concordia University, 1455 de Maisonneuve Boulevard,

West Montreal, Que., Canada H3G 1M8

Received 8 July 2002; accepted 24 February 2004

Abstract

In this paper, an integrated model for production planning in cellular manufacturing (CM) systems is proposed.

The model considers general CM features such as quadratic terms for inter-cell material handling and decisions for

manufacturing cell construction. In addition, the solution of the model will provide production planning decisions

such as times to start part processing and levels of finished part inventory. The model is then transformed to

equivalent simpler models and is solved by Tabu search based procedure. Results from testing numerical examples

show encouraging behaviors of the developed model and algorithm.

q 2004 Elsevier Ltd. All rights reserved.

Keywords: Production planning; Cellular manufacturing; Integer programming; Tabu search

1. Introduction

Cellular manufacturing (CM) is a widely used approach for organizing machines and people into

groups to produce a variety of parts in part families. CM is also effective in implementing flexible

manufacturing systems and is normally associated with automated batch production (Singh, 1996).

Successful CM implementations have resulted in reduced set-up times, reduced material flow and in-

process inventory, better system management, improved production efficiency and product quality (Hyer

& Wemmerlov, 1989; Wemmerlov & Johnson, 1997). In the past 30 years, CM problems have been

studied by many researchers as summarized by Reisman, Kumar, and Cheng (1997), and Sarker and

Mondal (1999). Recently, CM research has expanded to developing integrated models and methods as

discussed in Song and Choi (2001). For example, Atmani, Lashkari, and Caron (1995) presented a model

0360-8352/$ - see front matter q 2004 Elsevier Ltd. All rights reserved.

doi:10.1016/j.cie.2004.02.002

Computers & Industrial Engineering 46 (2004) 571–588www.elsevier.com/locate/dsw

* Corresponding author.E-mail addresses: [email protected] (M. Chen); [email protected] (D. Cao).

for simultaneous cell formation and operation allocation. Lockwood, Mahmoodi, and Mosier (2000)

studied CM scheduling problems. Production planning in CM systems was discussed in Chen (2001) and

Olorunniwo (1996). A variety of effective methods were developed to investigate and solve CM

problems. These include traditional mathematical programming (Chen, 1998; Heragu & Chen, 1998)

and simulation studies (Shang & Tadikamalla, 1998; Shinn & Williams, 1998). Non-traditional methods

such as neural networks, Tabu search, genetic search and simulated annealing have also been used to

search for optimal solutions of various CM problems as can be found in Jamal (1993), Joines, Culbreth,

and King (1996), Lozano, AdensoDiaz, and Onieva (1999), Rao and Gu (1995), Sofianopoulou (1997).

Some of the methods were compared in Asokan, Prabhakaran, and Kumar (2001) for their effectiveness

and efficiency in solving CM problems.

In this paper, we followed the integrated approach to study a production planning problem over a

certain planning horizon in CM systems with fixed charge cost. Most existing mathematical

programming models for cell formation assume that the number of cells has been given and the cells

have been identified. The solutions of the problems were then to allocate proper machines to the cells and

to decide the part families to be processed. The purposes are to minimize certain criteria such as material

handling cost or dis-similarities among part families. For CM planning, Schaller, Erenguc, and Vakharia

(2000) proposed an integer programming model to simultaneously determine the cells to be used and

units of parts to be processed in different time periods. In this paper, we consider a similar production

planning problem, but the integer programming model developed in this research has more general

features where not only the number of cells, but also the formation of the cells are to be determined by

the solution of the model. The objective of the model is to minimize the total cost including inter-cell

material handling cost, fixed cell set-up cost, production set-up cost and product inventory cost in the

system. Detailed description of the problem and the development of the integer programming model are

given in Section 2. Due to the NP-hardness of the model we employ an embedded optimization

technique to transform the original model to a parametric LP problem. A specially designed Tabu search

(Glover & Laguna, 1997) procedure is developed to find optimal or near-optimal solution of the

transformed problem. Model transformations are presented in Section 3. Details of the Tabu search

process are discussed in Section 4. We tested the developed methods using several numerical examples.

Detailed data and computational results of one of the example problems are presented in Section 5. In

Section 6, we present the summary, conclusions and our plans for future research in this area.

2. Model description

Consider a manufacturing system consisting of a number of machines to process different types of

parts. Each part-type may require some or all of the machines for processing. Machines are grouped into

a number of manufacturing cells. The types and units of machines to be allocated in the constructed cells

will be determined for minimum production costs. In addition, we need to decide the best time periods

for part processing in a production planning horizon of multiple time periods. Finished parts inventory is

allowed in the production system. A non-linear mixed integer programming model was developed to

solve this CM production planning problem. The objective function of this model is to minimize the total

cost including inter-cell material handling cost, fixed cost for setting up cells, fixed production cost,

inventory cost and machine cost. In solving this problem, we assume that there is a single process plan

for each part-type. Since there is no alternative process plans, part processing cost is not included in

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588572

the objective function. The model is formulated with the assumption of different distances or different

unit costs for material handling between different cells. This more general feature resulted in non-linear

quadratic terms of material handling cost in the objective function. The set-up cost associated with a

certain part-type takes place in a time period if that type of parts are processed in that period. This is also

a non-linear function. Other cost terms and constraint functions in the model are linear. Minimizing the

given cost function is subject to manufacturing process requirements. In developing this model, we

assume that machine capacities are limited so that multiple units of the same type of machines may be

required in a cell. The machines to be placed in the cells are not fixed as in Schaller et al. (2000), but to be

determined by the model depending on finished parts delivery and production planning. Before the

details of the model are presented, we first give the notations.

2.1. Known parameters and coefficients

t time index, t ¼ 1;…;T

i part-type index, i ¼ 1;…; I

j index of operations of part-type i; j ¼ 1;…; Ji

k machine index, k ¼ 1;…;K

c cell index, c ¼ 1;…;C

Rilm material handling cost for one unit of part i between cell l and cell m; l;m ¼ 1;…;C; l – m;

i ¼ 1;…; I

Fc fixed cost to form cell c in the system

DiðtÞ demand for finished number of part-type i in time period t

Hi unit inventory cost of holding part-type i for one time period

Si fixed cost for processing part-type i

Wi cost to operate one unit of machine k; k ¼ 1;…;K

AiðjkÞ capacity requirement to process operation j of part-type i by machine k

Uc largest number of machines allowed in cell c

2.2. Decision variables

PiðtÞ units of part-type i to be processed in period t

ViðtÞ units of finished part-type i held in inventory in period t

nkc units of type k machine to be placed in cell c

xiðjkÞc ¼1; if operation j of part-type i will be processed by machine k in cell c;

0; otherwise;

(

yic ¼1; if part-type i will be processed in cell c;

0; otherwise;

(

zc ¼1; if cell c will be formed;

0; otherwise;

(

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 573

diðtÞ ¼1; if PiðtÞ . 0;

0; if PiðtÞ ¼ 0;

(

The value of AiðjkÞ indicates the capacity required for machine k to process operation j of one unit of

part-type i: Subscripts j and k are related by the given process plan and are not independent to each other.

Using the above-defined variables and parameters with ðP;V ;X;Y ;Z;D;NÞ ¼

ðPiðtÞ;ViðtÞ; xiðjkÞc; yic; zc; diðtÞ; nkcÞ; we formulate the mathematical programming model for planning

CM production as below:

MP:

min MPðP;V ;X;Y ;Z;D;NÞ ¼XTt¼1

XI

i¼1

XCl¼1

XCm¼1;–l

1

2RilmPiðtÞyilyim þ

XCc¼1

Fczc þXTt¼1

XI

i¼1

HiViðtÞ

þXTt¼1

XI

i¼1

SidiðtÞ þXKk¼1

XCc¼1

Wknkc; ð1Þ

s.t.

XCc¼1

xiðjkÞc ¼ 1; j ¼ 1;…Ji; i ¼ 1;…; I; ð2Þ

xiðjkÞc # yic; j ¼ 1;…; Ji; i ¼ 1;…; I; c ¼ 1;…;C; ð3Þ

yic # zc; i ¼ 1;…; I; c ¼ 1;…;C; ð4Þ

XKk¼1

nkc # Uczc; c ¼ 1;…;C; ð5Þ

XI

i¼1

AiðjkÞPiðtÞxiðjkÞc # nkc; k ¼ 1;…;K; c ¼ 1;…;C; t ¼ 1;…;T ; ð6Þ

PiðtÞ þ Viðt 2 1Þ2 ViðtÞ ¼ DiðtÞ; i ¼ 1;…; I; t ¼ 1;…;T ; ð7Þ

PiðTÞ $ 0; i ¼ 1;…; I; t ¼ 1;…; T ; ð8Þ

ViðtÞ $ 0; i ¼ 1;…; I; t ¼ 1;…;T 2 1; ð9Þ

ViðTÞ ¼ 0; i ¼ 1;…; I; ð10Þ

diðtÞ ¼1; if PiðtÞ . 0;

0; if PiðtÞ ¼ 0;

(ð11Þ

xiðjkÞc; yic; zc; diðtÞ ¼ 0; 1; nkc $ 0; integer variables; ;i; j; c; t: ð12Þ

The objective function, Eq. (1), is to minimize the summation of the cost considered in this model.

The first term of this cost function is the inter-cell material handling cost to move parts between cells.

The second term is the fixed charge cost for setting up manufacturing cells. The third term is the cost

of holding the finished items over the planning horizon. The fourth term is the cost for setting up

the system to process different parts in different time periods. The last term is the summation

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588574

of machine costs. The first constraint in the model, Eq. (2), enforces that any operation of any part will

be processed in only one of the cells. Eq. (3) presents the relationship between operations and parts.

Eq. (4) ensures that if a part is processed in a certain cell, then that cell must be constructed. Eq. (5)

gives the maximum number of machines to be placed in a cell, should it be built. Eq. (6) presents

machine capacity requirements based on processing times required to process the parts. Eq. (7) is the

relationship between production and inventory levels over the planning horizon. Eq. (8) states that the

production in all time periods should not be negative. In solving this model, we assume that the initial

inventory levels of processed parts are known and no backlog is allowed as shown in Eq. (9). Eq. (10)

states that at the end of the planning horizon, there are no inventories left. Eq. (11) enforces the set-up

cost associated with processing each part-type. Eq. (12) states integer requirement for some of the

decision variables.

3. Solution method

Problem MP is a nonlinear mixed integer programming problem. If we ignore the last three terms in

the objective function in Eq. (1) and remove Eqs. (7)–(12) from MP, the model will be simplified to a

quadratic assignment problem with fixed charge cost. The simplified model is NP-hard (Nemhauser &

Wolsey, 1988). Therefore, MP is also NP-hard since it includes additional decision variables for cell

formation and production planning. It is well known that directly solving such problems by brute-force

algorithms is difficult due to NP-hardness of computation. From our experience in developing and

computing other similar models, we found that the computational difficulties are mainly caused by the

constraints in Eqs. (5) and (6) related to general integer decision variables nkc: It is unfortunate that the

integer requirement for nkc cannot be relaxed and treated as continuous variables in this model. Since nkc

are the numbers of different types of machines in each cell, they are relatively small. If they are treated as

continuous variables, then to round-up or round-down these variables will make the solution infeasible.

With such considerations, we did not take the approximate approach of relaxing the integer requirement

for these variables. Instead, we developed a heuristic method in this research to solve the presented

problem. We first transform model MP into an equivalent problem of reduced size with an embedded

sub-optimization problem. We then use a Tabu search procedure to search for optimal solution of the

transformed problem. Details of the problem transformation are presented below.

3.1. A sub-optimization problem

Assuming that ðX;Y ;Z;D;NÞ ¼ ðxiðjkÞc; yic; zc; diðtÞ; nkcÞ is a partial solution to problem MP, consider

the following sub-optimization problem with respect to decision variables PiðtÞ and ViðtÞ:

SP:

min SPðP;VÞ ¼XTt¼1

XI

i¼1

XCl¼1

XCm¼1;–l

1

2RilmPiðtÞyilyim þ

XTt¼1

XI

i¼1

HiViðtÞ; ð13Þ

s.t.

Eqs: ð6Þ– ð11Þ:

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 575

The above sub-optimization problem is in fact to determine the optimal production plan for minimum

inventory and material handling costs when cell-machine configuration is given by (X; Y ;Z;D;N). Note

that Eq. (11) is equivalent to:

PiðtÞ. 0; if diðtÞ ¼ 1;

¼ 0; if diðtÞ ¼ 0:

(ð14Þ

The following corollary can be derived from Eq. (7), the production and inventory relation constraint.

Corollary 1. The material handling cost

XTt¼1

XI

i¼1

XCl¼1

XCm¼1;–l

1

2RilmPiðtÞyilyim

depends only on the cell configuration determined by X; Y and Z when the accumulated demands of

different products over the planning horizon are constant.

This corollary can be verified by noting that

XTt¼1

XI

i¼1

XCl¼1

XCm¼1;–l

1

2RilmPiðtÞyilyim ¼

XI

i¼1

XCl¼1

XCm¼1–l

1

2Rilmyilyim

XTt¼1

PiðtÞ

!;

and

XTt¼1

PiðtÞ ¼XTt¼1

DiðtÞ2 Við0Þ ¼ constant:

By Corollary 1, we equivalently restate problem SP as follows.

SP

min SPðVÞ ¼XTt¼1

XI

i¼1

HiViðtÞ; ð15Þ

s.t.

Eqs: ð6Þ– ð11Þ:

Problem SP is defined where a partial solution ðX; Y ; Z;D;NÞ; is feasible to the original problem. For

computational convenience, we express problem SP by introducing a new variable a with an associated

coefficient u1:

SP0

min SPðX;Y ;Z;D;NÞ ¼XTt¼1

XI

i¼1

HiViðtÞ þ a £ u1; ð16Þ

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588576

s.t.

XI

i¼1

AiðjkÞPiðtÞxiðjkÞc 2 a # nkc; k ¼ 1;…;K; c ¼ 1;…;C; t ¼ 1;…;T : ð17Þ

Eqs: ð7Þ– ð11Þ;

where a $ 0 is to measure the maximum violation of machine availability and u1 . 0 is the penalty

ratio for this violation. a £ u1 is the penalty term imposed on the objective function when the machine

availability is not respected. The following corollary presents the equivalence between problems

SP and SP0.

Corollary 2. If a partial solution ðX;Y ;Z;D;NÞ is feasible to the original problem MP, then there exists

a positive value up1 such that for any u1 . up1; problems SP and SP0 have identical optimal solutions.

Proof. When ðX;Y ;Z;D;NÞ is feasible to MP, problem SP0 is a penalty expression of problem SP and

a £ u1 is the penalty term. By the exact penalty theory in Bazaraa, Sherali, and Shetty (1993), it can be

shown that there exists a positive value up1 such that for any u1 . up1;a £ u1 is an exact penalty function,

i.e. a £ u1 ¼ 0: This means that problems SP and SP0 have identical optimal solution for u1 . up1: A

Remarks.

1. Problem SP0 is always feasible for any given partial solution ðX;Y ;Z;D;NÞ; except when Við0Þ ,

Dið1Þ; i [ 1;…; I: In fact, when Við0Þ , Dið1Þ; the system must be set to process part-type i at time

period 1 ðdið1Þ ¼ 1Þ; since no backlog is allowed. In the rest of this paper, we always let dið1Þ ¼ 1; if

Við0Þ , Dið1Þ:

2. When a partial solution ðX; Y ; Z;D;NÞ is infeasible to problem MP, the partial solution may be

feasible to problem SP0 with a non-zero penalty value in the objective function.

Consider the objective function of problem SP:

SPðS;VÞ ¼XTt¼1

XI

i¼1

XCl¼1

XCm¼1;–l

1

2RilmPiðtÞyilyim þ

XTt¼1

XI

i¼1

HiViðtÞ: ð18Þ

The analytic form of this function related to ðX;Y ;Z;D;NÞ is not available. However, from

Corollaries 1 and 2, we know that it can be evaluated by using optimal solution corresponding to the

partial solution ðX; Y ; Z;D;NÞ of problem SP0. In fact, problem SP0 with fixed partial solution ðX;Y ;Z;

D;NÞ is a linear programming problem which can be solved without much difficulty. In Section 3.2, we

will re-formulate problem MP with embedded optimization sub-problems. We then present a heuristic

method with parametric linear programming and Tabu search process to find optimal or near optimal

solutions of the original problem.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 577

3.2. An embedded optimization problem

With the sub-optimization problem SP defined in Section 3.1, we consider the following embedded

optimization problem:

MP0

min MP0ðX; Y ;Z;D;NÞ ¼XCc¼1

Fczc þ SMðX; Y ; Z;D;NÞ þXTt¼1

XI

i¼1

SidiðtÞ þXKk¼1

XCc¼1

Wknkc; ð19Þ

s.t.

Eqs: ð2Þ– ð5Þ; ð11Þ and ð14Þ;

where SMðX; Y ; Z;D;NÞ is the objective function value of the sub-optimization problem SP0 as defined

in Section 3.1 with given partial solution ðX;Y ; Z;D;NÞ: From Corollaries 1 and 2, we know that solving

problem MP0 for any u1 . up1 is equivalent to solving the original problem MP. We now impose a

penalty term converted from the cell limit constraint Eq. (5) to obtain the following embedded

optimization problem:

MP00

min MP00ðX;Y ;Z;D;NÞ ¼XCc¼1

Fczc þ SMðX; Y ;Z;D;NÞ þXTt¼1

XI

i¼1

SidiðtÞ þXKk¼1

XCc¼1

Wknkc

þXCc¼1

u2 £ Devc; ð20Þ

s.t.

Eqs: ð2Þ– ð4Þ; ð11Þ and ð14Þ;

where

Devc ¼

XKk¼1

nkc 2 Uczc; ifXKk¼1

nkc 2 Uczc . 0;

0; otherwise;

8>><>>:

and u2 is a positive penalty ratio. The term u2 £ Devc is the penalty imposed on the objective function

when the cell capacity limit is exceeded. Since the penalty term u2 £ Devc is an exact penalty function

(Bazaraa et al., 1993; Cao & Leung, 2002), the following theorem can be directly derived from

Corollaries 1 and 2.

Theorem 1. There exist positive values up1 and up2 such that for any ðu1; u2Þ $ ðup1; up2Þ; solving problem

MP00 is equivalent to solving the original problem MP.

Proof. The relaxed admissible region of problem MP00 consists of a limited number of alternatives. From

Corollary 2, we know that any infeasible solution is associated with a penalty value on the objective

function of problem MP00, and for any feasible partial solution, there exists a positive value up1 such that

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588578

for anyu1 $ up1; the penalty term vanishes. The above theorem is obvious on noticing the limited number

of alternatives and the exact penalty property of both penalty terms for a partial feasible solution. A

3.3. Removing dependent decision variables

In Section 3.2, an equivalent embedded optimization problem was formulated with decision variables

PiðtÞ and ViðtÞ removed. Before the detailed heuristic solution procedure is presented, the mathematical

programming model can be further simplified by removing other dependent decision variables for more

efficient computation. A closer inspection on the decision variables ðX; Y ; Z;D;NÞ will reveal that Y and

Z are not independent. In fact, in the set of decision variables ðX;Y ;ZÞ; only X are independent. Once the

values of X are given, the values of Y and Z will be uniquely determined as follows, based on the fact that

the parameters Rilm and Fc in MP are all non-negative:

yic ¼ max{xiðjkÞc; ;k ¼ 1;…;K}; ð21Þ

zc ¼ max{yic; ;i ¼ 1;…; I}: ð22Þ

In Section 3.1, we have concluded that solving the original problem MP is equivalent to finding an

optimal solution to problem MP00. This optimization problem is of a simple structure in which three

independent decision variables ðX;D;NÞ are present. In searching for an optimal solution, we employ a

Tabu search procedure in X;D and N domains, since variables Y and Z are dependent on X as shown in

Eqs. (21) and (22). Details of the search process are presented in Section 4.

4. Tabu search for solving the embedded problem

Transforming problem MP into MP00 does not change its NP-hardness property since its basic

structure has not changed. Solving problem MP00 is still NP-hard. In this section, we present a short-term

Tabu search method to solve MP00 aiming at finding optimal or near optimal solutions to the original

problem.

Tabu search is a meta-heuristic method developed by Glover (1989, 1990a,b). In many different

applications, it has been successful in finding optimal or near-optimal solutions to difficult combinatorial

optimization problems. The main difficulty of finding optimal solutions for such problems is due to the

existence of many local optima. In the basic short-term scheme of Tabu search, the strategy to escape

from local optima is quite straightforward. It requires the search process to depart from a local optimal

solution xl and move to the best possible solution xp in the neighborhood, not to terminate the search at

the current local optimum. When the neighborhood is too large to be explored, only part of the

neighborhood (a sub-neighborhood) may be searched. With the search history incorporated in the search

process, certain attributes of the recently visited area of solutions are classified as Tabu active. Future

moves containing these elements are excluded. The Tabu mechanism prevents the moves going back to

these solutions to avoid local optima. On the other hand, Tabu active status (a Tabu list) of a move may

be modified if certain appropriately defined aspiration criterion is satisfied. This may lead the search

procedure to a good solution. Before the step-by-step algorithm of the short term Tabu search procedure

is presented, several concepts used in the search process are introduced below.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 579

† Feasible solution. A feasible solution ðX;D;NÞ ¼ ðX; YðXÞ;ZðXÞ;D;NÞ satisfying all constraints

of problem MP00, i.e. Eqs. (2)–(5), (11) and (12), where yic and zc are functions of xiðjkÞc as given in

Eqs. (21) and (22), respectively.

† Swap operation. A swap operation occurs in one of the following three cases:

Case 1. A swap operation in X is to change two x values from xiðjkÞc ¼ 1 and xiðjkÞc0 ¼ 0 to

xiðjkÞc ¼ 0 and xiðjkÞc0 ¼ 1; where c0 – c: The values of all other variables are unchanged.

Denote the new solution generated in this way by ðX0;D;NÞ; the solution transition ðX;

D;NÞ! ðX0;D;NÞ is called a swap move in X: In fact, in solving our manufacturing cell

formation problem, such transition corresponds to the change of cells in which operation j on

part i is executed.

Case 2. A swap operation in D is to change the value of a single component diðtÞ from

diðtÞ ¼ 1 to diðtÞ ¼ 0; or from diðtÞ ¼ 0 to diðtÞ ¼ 1: The values of all other variables are

unchanged. Denote the new solution generated in this way by ðX;D0;NÞ the solution transition

ðX;D;NÞ! ðX;D0;NÞ is called a swap move in D: Note that this swap operation will not be

performed if dið1Þ are determined by Við0Þ , Dið1Þ:

Case 3. A swap operation in N is to change a single component nkc from its current value to a

new value with the value of other decision variables unchanged. Denote the new

solution created in such way by ðX;D;N 0Þ; the solution transition ðX;D;NÞ! ðX;D;N 0Þ is

called a swap move in N: The switch of a nkc value is done in one of the following three

different ways:

(W1). n0kc ¼ nkc þ 1;

(W2). n0kc ¼ nkc 2 1; if nkc 2 1 . 0;

(W3). n0kc ¼ 0:

To let n0kc ¼ 0 from its current value for speeding up the search process in locating an

optimal or near optimal solution of the problem in MP00. This is a unique feature developed

in this search. The reason is that a good solution of the problem requires that some cells

only have certain types of machines. The move from a general integer directly to zero saves

many unnecessary steps.

† Solution neighborhood. Given a solution ðX;D;NÞ; the neighborhood of this solution QðX;D;NÞ is

defined by the ensemble of the swap moves defined in Cases 1–3. In the Tabu search process,

the neighborhood of each solution ðX;D;NÞ contains limited number of solutions to be explored.

The size of the neighborhood is determined based on several considerations. As discussed earlier,

evaluation of each solution requires solving a linear programming sub-problem SP0. The size of

the neighborhood should allow a thorough search within the neighborhood and fast moving to

other areas of the whole feasible region.

† Aspiration criterion. The objective function value MP00ðX;Y ;Z;D;NÞ of the revised problem MP00

is used as the aspiration level F: That is, F ¼ MP00ðX;Y ;Z;D;NÞ:

† Stopping criterion. The Tabu search procedure stops if a predetermined number of iterations

have been reached; or the solution has not been improved after a certain number of consecutive

iterations (Glover, 1990b). These numbers are normally decided before the search started with

reference to given Tabu list size and problem size.

With the above definitions and discussion, the following short-term Tabu search procedure is adapted

from Pirlot (1996) to solve the CM planning problem:

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588580

1. Initialization. Select an initial solution ðX;D;NÞ1 satisfying Eqs. (2)–(4). Initialize the best value Fp

of F and the corresponding solution ðX;D;NÞp:

FðX;D;NÞ1 ! Fp;

ðX;D;NÞ1 ! ðX;D;NÞp:

The three Tabu lists TL1, TL2 and TL3 corresponding to variables X;D and N; respectively, are set

empty.

2. Iterative search. Let ðX;D;NÞz denote the current solution, for step z ¼ 1; 2;…; �F is used to store the

best value of F encountered during the exploration of the neighborhood or sub-neighborhood of

ðX;D;NÞz: Let ð �X; �D; �NÞ denote the solution in QðX;D;NÞz for which Fð �X; �D; �NÞ ¼ �F. �F is initially set

to 1: For all ðX;D;NÞ [ QðX;D;NÞz; if F , �F and if the move ðX;D;NÞz ! ðX;D;NÞ is not Tabu or

the move is Tabu but the corresponding F passes the aspiration criterion, then let

FðX;D;NÞ! �F and ðX;D;NÞ! ð �X; �D; �NÞ:

Let ð �X; �D; �NÞ! ðX;D;NÞzþ1:

If �F , Fp: then ð �X; �D; �NÞ! ðX;D;NÞp and �F ! Fp:

A move is established: ðX;D;NÞz ! ðX;D;NÞzþ1 and modify the associated Tabu list information.

3. End. If the stopping criterion is reached, stop. The above algorithm was coded in C with the linear

programming sub-problems solved by CPLEX subroutines. It was executed on a PC computer with

Pentium III-600 processor. This algorithm was tested with several numerical examples. Details of one

of them are presented and discussed in Section 5.

5. Numerical examples

The heuristic algorithm presented in Section 4 has been applied to solve a number of small-size

problems with up to four machine types allocated to three possible cells to process four different part-

types, each having 2–3 operations. The planning decisions were made over three time periods. To test

the effectiveness of the heuristic algorithm, the nonlinear terms in MP were linearized with added

constraint. The linearization was done in a way similar to that in Chen (2001). The original model then

became a mixed integer linear programming problem and was solved by LINDO. The obtained optimal

solutions of these example problems were used to compare with the solutions found by the heuristic

search algorithm. The heuristic search procedure started with arbitrarily set initial solutions and was able

to find near optimal solutions within 200 search iterations. For all the tested example problems, the

relative errors of the best objective function values from the heuristic solutions were less than 1%

comparing to those from the real optimal solutions. It took from 30 min to 2 h to find the optimal

solutions of these example problems using LINDO on the PC computer. It took less than 5 min to

complete the 200 iterations using the developed heuristic search algorithm to find the near optimal

solutions of these problems with the same computer. These preliminary results are very encouraging

since they demonstrate the effectiveness and efficiency of the algorithm in solving this difficult problem.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 581

In the rest of this section, we present the details of one larger example problem solved by the developed

heuristic algorithm.

In this example problem, we consider five types of machines to be allocated to four possible cells.

Multiple units of the same type of machines can be placed in any of the cells to be built. These machines

process five different part-types, each having two to four operations. Data of machine costs, maximum

number of available machines and machine capacity requirements by part operations are given in

Table 1. For example, Table 1 shows that the unit cost of machine type 1 is 30. Required machine

capacities to process part-types 1–3 are 0.04, 0.035 and 0.03 units of machine types 1–3, respectively.

Similar data for processing other parts are also shown in Table 1. Table 2 presents the distances among

the four possible cells as well as maximum number of machines allowed for each cell and corresponding

fixed cell set-up costs. The demands of different products over the planning horizon of six periods are

given in Table 3. Table 4 presents set-up cost Si to process different part-types, unit inventory cost Hi and

the initial inventory levels Við0Þ for the part-types.

The Tabu search process starts with penalty ratios u1 ¼ u2 ¼80,000 and Tabu list sizes LT1 ¼

LT2 ¼ 35 and LT3 ¼ 20: These three Tabu lists correspond to variables X;D and N; respectively. The

initial machine allocations are shown in Table 5 which are arbitrarily given. This initial solution may not

be feasible to the original problem MP, but it is a feasible solution of the embedded optimization

problem MP00. In solving this example problem, the Tabu search process terminates if solutions are not

improved after 30 consecutive iterations. Results from the best solution found by this search process are

summarized in Tables 6 and 7 for cell formation, machine allocation and production planning decisions.

Table 1

Machine part operation data

Machine type Unit machine cost Part-type

1 2 3 4 5

1 30 0.040 0 0.025 0 0.025

2 30 0.035 0.023 0 0.030 0.020

3 30 0.030 0.030 0.035 0 0.030

4 30 0 0 0 0.035 0

5 30 0 0.035 0 0.020 0.035

Table 2

Cell data

Cell number 1 2 3 4

1 0.0 0.1 0.2 0.3

2 0.1 0.0 0.1 0.4

3 0.2 0.1 0.0 0.5

4 0.3 0.4 0.5 0.0

Cell capacity 6 7 15 45

Fixed cell cost 120 140 300 900

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588582

Table 4

Set-up cost ðSiÞ; unit inventory cost ðHiÞ and initial inventories level ðViÞ

Part-type Si Hi Við0Þ

1 15.0 0.4 0

2 15.0 0.4 0

3 15.0 0.4 0

4 15.0 0.4 0

5 15.0 0.4 0

Table 3

Demands over periods

Period Part-type

1 2 3 4 5

1 60 30 40 45 40

2 40 40 40 60 50

3 30 50 35 30 45

4 25 60 50 25 50

5 40 50 60 50 45

6 40 45 40 40 50

Table 5

Initial machine allocation

Machine type Cell number

1 2 3 4

1 1 2 3 0

2 1 2 4 0

3 2 1 4 0

4 1 1 4 0

5 2 1 3 0

Table 6

Best solution for cell part and machine allocation

Cell to set-up Cell 1 Cell 2 Cell 3

Parts to be processed 2,3 1,2 1,4,5

Machine type/units 1/2, 3/2, 5/2 1/3, 2/2, 3/2 1/2, 2/5, 3/3, 4/2,5/3

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 583

As for production planning, almost all part-types are processed in every time period. Two exceptions are

that the system is not set up to process part-type 1 or part-type 4 in period 4. The objective function

values corresponding to the Tabu search iterations are shown in Table 8. This set of data in Table 8 are

also plotted and shown in Figs. 1 and 2. Fig. 1 shows the general trend of the objective function while

Table 7

Best production/inventory levels

Part-type Period

1 2 3 4 5 6

1 60/0 40/0 55/25 0/0 40/0 40

2 30/0 40/0 52.86/2.86 57.14/0 50/0 45/0

3 40/0 40/0 35/0 52.86/2.86 57.14/0 40/0

4 47.86/2.86 57.14/0 55/25 0/0 50/0 40/0

5 40/0 50/0 45/0 50/0 45/0 50/0

Table 8

Objective function value ðFÞ evolution

Iteration 1 2 3 4 5 6 7 8 9 10

F 682,135 673,740 653,538 644,202 602,255 593,997 573,835 572,120 564,531 562,186

Iteration 11 12 13 14 15 16 17 18 19 20

F 562,126 482,096 402,067 402,007 333,176 260,977 260,947 188,732 188,702 188,672

Iteration 21 22 23 24 25 26 27 28 29 30

F 188,642 113,804 113,774 113,744 68,684 68,654 68,649 68,654 68,668 68,689

Iteration 31 32 33 34 35 36 37 38 39 40

F 68,719 68,719 68,713 76,287 76,783 89,975 92,660 98,158 115,110 132,432

Iteration 41 42 43 44 45 46 47 48 49 50

F 138,756 155,237 159,422 159,472 164,886 155,411 155,432 170,789 155,490 178,892

Iteration 51 52 53 54 55 56 57 58 59 60

F 178,862 178,839 178,868 178,898 178,928 178,846 178,794 178,783 178,773 178,787

Iteration 61 62 63 64 65 66 67 68 69 70

F 178,813 178,843 178,788 178,759 178,672 178,645 178,598 151,996 151,986 151,928

Iteration 71 72 73 74 75 76 77 78 79 80

F 151,914 151,911 141,891 141,881 141,872 141,867 141,862 141,835 141,834 141,779

Iteration 81 82 83 84 85 86 87 88 89 90

F 139,804 129,827 82,889 80,890 71,695 69,900 68,929 49,944 47,949 33,975

Iteration 91 92 93 94 95 96 97 98 99 100

F 33,945 33,915 33,885 33,855 32,287 32,259 32,229 21,838 15,594 6563

Iteration 101 102 103 104 105 106 107 108 109 110

F 6558 6572 6592 6613 6634 6616 6586 2472 1935 1911

Iteration 111 112 113 114 115 116 117 118 119 120

F 1899 1894 1920 1957 2010 17,011 26,022 27,587 34,593 50,059

Iteration 121 122 123 124 125 126 127 128 129 130

F 54,540 54,556 60,074 60,110 62,167 83,439 89,492 108,846 130,195 155,483

Iteration 131 132 133 134 135 136 137 138 139 140

F 155,453 155,470 155,500 155,463 155,403 155,373 155,350 155,334 155,316 155,346

Iteration 141 142 143 144 145 146 147 148 149 150

F 155,299 155,324 155,316 155,346 155,382 155,435 146,094 146,031 146,023 146,021

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588584

Fig. 2 presents the detailed moves of the function value around iteration No. 112. The best objective

function value Fp ¼ 1894 for this example problem was achieved at that point.

The obtained final solution shows that cells 1–3 should be built. Part-types 1 and 2 will be processed

by the machines allocated to the three cells, while part-types 3–5 are processed by the machines in only

one of the cells. That is, type 3 parts are processed in cell 1, types 4 and 5 parts are processed in cell 3.

The cross cell processing is due to the limited sizes of the cells. Cell 4 is not selected even if it has a

larger limit to house more machines since setting up this cell is much more expensive than setting up

other cells. The heuristic algorithm took about 10 min on the PC computer to find this solution. For this

example problem, we were not able to use LINDO or CPLEX to confirm that this solution is indeed

optimal since the size of the linearized mixed integer programming model is quite large and the required

amount of computation exceeds our computing capacity.

6. Remarks

† Tabu search is a meta-heuristic method. The quality of the solution found by our method depends

on several factors. We found that the initial solution of the problem affects the final results

Fig. 2. Detailed moves around the minimum.

Fig. 1. Objective function value moves.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 585

significantly. The sizes of the Tabu list LT1, LT2 and LT3 can also make significant differences in

the final solution. A more careful selection of the initial solution could reduce the computing time

to large extent.

† There are no general guidelines to determine the optimal sizes of the Tabu lists. In practice, the

search process should be constructed with different Tabu list sizes. From the computation of the

example problems in this paper, we observed that the Tabu list sizes suggested by Glover (1997)

from 5 to 10 evaluated solutions did not work well in solving our problems. We found that the

size around 30 worked best for us. When the initial solution is far from the optimal or sub-optimal

solution, a larger Tabu list works better. If it can be decided that the initial solution should not be

far from the optimal solution, then a smaller Tabu list will make the process more efficient.

7. Summary and conclusions

In this paper, the problem of production planning in CM systems was discussed. Production planning,

cell formation and fixed charge costs were considered simultaneously. The problem was formulated as a

non-linear mixed integer-programming model. The solution of the model is to minimize total cost of

inter-cell material handling, cell construction and required machines, and to minimize production

planning related cost. The formulation integrates both cell design and cell operation aspects in a single

mathematical programming model. The complicated features of the NP-hard model make it impossible

to solve the problem within tolerable computational times on regular computing platforms, if traditional

optimization methods are used. In order to obtain optimal or near optimal solutions of the problem, an

embedded optimization procedure was developed to transform the original mixed integer-programming

model into a binary problem. We then applied Tabu search method to find optimal or near optimal

solution of the reduced problem. One of the advantages of the developed approach is that the search

process does not need to start with a feasible solution to the original problem. The final solution found by

the search process will be feasible even the initial solution was infeasible. Example problems tested in

this research showed that the developed search method can arrive at near optimal solutions in most cases.

Similar approach can be found in the literature. For example, Teghem, Pirlot, and Antoniadis (1995)

developed a simulated annealing algorithm with embedded linear program to solve a production

planning problem. While in this research a heuristic algorithm coupling Tabu search and linear

programming is developed to solve an integrated production planning and cell formation problem in a

CM environment.

The developed model and algorithm can be further extended without much technical difficulty. For

example, job-scheduling requirement may be included in the model as side constraints (Cao & Uebe,

1995). They can be treated by using penalty functions with certain modifications of the present Tabu

search procedure. The current and extended models may be solved by developing deeper search

procedures and more powerful computational algorithms. For example, better lower bounds could be

generated by Lagrangian relaxation for deeper Tabu search as suggested in Glover and Laguna (1997).

In addition, adaptive Tabu list size (Salhi, 2002) could be used instead of fixed Tabu list size. The above-

mentioned model and algorithm modifications will be further explored for better search performances in

our future research in this area.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588586

Acknowledgements

This research is supported by Research Grant No. OGP0121863 from Natural Sciences and

Engineering Research Council (NSERC) of Canada and by Faculty of Engineering and Computer

Science Research Support Fund, Concordia University, Montreal, Que., Canada. The authors sincerely

thank the anonymous referee for his/her comments and suggestions on an earlier version of this paper.

References

Asokan, P., Prabhakaran, G., & Kumar, G. S. (2001). Machine-cell grouping in cellular manufacturing systems using non-

traditional optimisation techniques. A comparative study. International Journal of Advanced Manufacturing, Technology,

18, 140–147.

Atmani, A., Lashkari, R. S., & Caron, R. J. (1995). A mathematical programming approach to joint cell formation and operation

allocation in cellular manufacturing. International Journal of Production Research, 33, 1–15.

Bazaraa, M., Sherali, H., & Shetty, C. (1993). Nonlinear programming: Theory and algorithms. New York: Wiley.

Cao, D., & Leung, L. C. (2002). A partial cooperation model for non-unique linear two-level decision problems. European

Journal of Operational Research, 140, 134–141.

Cao, B., & Uebe, G. (1995). Solving transportation problems with nonlinear side constraints with Tabu search. Computers and

Operations Research, 22, 593–603.

Chen, M. (1998). A mathematical programming model for system reconfiguration in a dynamic cellular manufacturing

environment. Annals of Operations Research, 77, 109–128.

Chen, M. (2001). A model for integrated production planning in cellular manufacturing systems. Integrated Manufacturing

Systems, 12, 275–284.

Glover, F. (1989). Tabu search. Part 1. INFORMS Journal on Computing, 1, 190–206.

Glover, F. (1990a). Tabu search. Part 2. INFORMS Journal on Computing, 2, 4–32.

Glover, F. (1990b). Tabu search. A tutorial. Interfaces, 20, 74–94.

Glover, F., & Laguna, M. (1997). Tabu search. Boston: Kluwer.

Heragu, S. S., & Chen, J.-S. (1998). Optimal solution of cellular manufacturing system design: Bender’s decomposition

approach. European Journal of Operational Research, 107, 175–192.

Hyer, N. L., & Wemmerlov, U. (1989). Group technology in the US manufacturing industry: a survey of the current practices.

International Journal of Production Research, 27, 1287–1304.

Jamal, A. M. M. (1993). Neural network and cellular manufacturing. Industrial Management and Data Systems, 93, 21–25.

Joines, J. A., Culbreth, C. T., & King, R. E. (1996). Manufacturing cell design: an integer programming model employing

genetic algorithms. IIE Transactions, 28, 69–85.

Lockwood, W., Mahmoodi, F., & Mosier, C. (2000). Scheduling unbalanced cellular manufacturing systems with lot splitting.

International Journal of Production Research, 38, 951–966.

Lozano, S., Adenso-Diaz, B., & Onieva, L. (1999). A one-step Tabu search algorithm for manufacturing cell design. OR; the

Journal of the Operational Research Society, 50, 509–516.

Nemhauser, G. L., & Wolsey, L. A. (1988). Integer and combinatorial optimization. New York: Wiley.

Olorunniwo, F. O. (1996). Changes in production planning and control systems with implementation of cellular manufacturing.

Production and Inventory Management, 37, 65–70.

Pirlot, M. (1996). General local search methods. European Journal of Operational Research, 92, 493–511.

Rao, H. A., & Gu, P. (1995). A multi-constraint neural network for the pragmatic design of cellular manufacturing systems.

International Journal of Production Research, 33, 1049–1070.

Reisman, A., Kumar, A., & Cheng, C. H. (1997). Cellular manufacturing: a statistical review of the literature (1965–1995).

Operations Research, 45, 508–535.

Salhi, S. (2002). Defining tabu list size and aspiration criterion with tabu search methods. Computers and Operations Research,

29, 67–86.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588 587

Sarker, B. R., & Mondal, S. (1999). Grouping efficiency measures in cellular manufacturing: a survey and critical review.

International Journal of Production Research, 37, 285–314.

Schaller, J. E., Erenguc, S. S., & Vakharia, A. J. (2000). A mathematical approach for integrating the cell design and production

planning decision. International Journal of Production Research, 38, 3953–3971.

Shang, J. S., & Tadikamalla, P. R. (1998). Multicriteria design and control of a cellular manufacturing system through

simulation and optimization. International Journal of Production Research, 36, 1515–1529.

Shinn, A., & Williams, T. (1998). A stitch in time: a simulation of cellular manufacturing. Production and Inventory

Management Journal, 39, 72–77.

Singh, N. (1996). Systems approach to computer-integrated design and manufacturing. New York: Wiley.

Sofianopoulou, S. (1997). Application of simulated annealing to a linear model for the formulation of machine cells in group

technology. International Journal of Production Research, 35, 501–513.

Song, S.-J., & Choi, J.-H. (2001). Integrated autonomous cellular manufacturing. A new concept for the 21st century.

International Journal of Manufacturing Technology and Management, 3, 293–307.

Teghem, J., Pirlot, M., & Antoniadis, C. (1995). Embedding of linear programming in a simulated annealing algorithm for

solving a mixed integer production planning problem. Journal of Computational and Applied Mathematics, 64, 91–102.

Wemmerlov, U., & Johnson, D. J. (1997). Cellular manufacturing at 46 user plants: implementation experiences and

performance improvements. International Journal of Production Research, 35, 29–49.

M. Chen, D. Cao / Computers & Industrial Engineering 46 (2004) 571–588588