Transcript
Page 1: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

Contents lists available at ScienceDirect

Int. J. Production Economics

Int. J. Production Economics 122 (2009) 725–740

0925-52

doi:10.1

� Cor

E-m

gershw

journal homepage: www.elsevier.com/locate/ijpe

An efficient buffer design algorithm for production lineprofit maximization

Chuan Shi, Stanley B. Gershwin �

Department of Mechanical Engineering, Massachusetts Institute of Technology, Cambridge, MA 02139-4307, USA

a r t i c l e i n f o

Article history:

Received 20 October 2008

Accepted 25 June 2009Available online 16 July 2009

Keywords:

Flow line

Buffer allocation

Profit maximization

In-process inventory

Nonlinear optimization

73/$ - see front matter & 2009 Elsevier B.V. A

016/j.ijpe.2009.06.040

responding author.

ail addresses: [email protected] (C. Shi),

[email protected] (S.B. Gershwin).

a b s t r a c t

In this paper, we present an effective algorithm for maximizing profits through buffer

size optimization for production lines. We consider both buffer space cost and average

inventory cost with distinct cost coefficients for different buffers, and we include a

nonlinear production rate constraint. To solve the problem, a corresponding uncon-

strained problem is introduced and a nonlinear programming approach is adopted.

Numerical results are provided to show the efficiency and accuracy of our algorithm for

both short and long lines.

& 2009 Elsevier B.V. All rights reserved.

1. Introduction

1.1. Problem

A manufacturing system is a set of machines, trans-portation elements, computers, storage buffers, andother items that are used together for manufacturing(Gershwin, 1994). A production line, or flow line, ortransfer line, is organized with machines connected inseries and separated by buffers. Fig. 1, for instance, is a six-machine line. Squares represent machines or sequences ofmachines without buffers while circles represent buffers.(In the following, we treat a sequence of machineswithout buffers as a single machine.) As it is shown inFig. 1, material flows in the direction of the arrows, fromupstream inventory to the first machine for an operation,to the first buffer where it waits for the second machine,to the second machine, etc. It is desirable to find ways tooptimize buffer space allocation to make factories mostefficient and most profitable. Tools for rapid design of

ll rights reserved.

production lines are especially important for productswith short life cycles.

Generally, designers of such production lines want toeither optimize the production rate, or the profit, ofthe line. However, material flow may be disrupted bymachine failures. The inclusion of buffers increasesthe average production rate of the line by limiting thepropagation of disruptions, but at the cost of additionalcapital investment, floor space of the line, and inventory.In this paper, we assume that the manufacturing processand machines have already been chosen. Therefore, thedecision variables are sizes of buffer spaces. Productionline cost comes from buffer space cost and averageinventory cost.

In this paper, aiming at maximizing profits under aproduction rate constraint for production lines, wepresent an accurate, fast, and reliable algorithm foroptimizing buffer space through a nonlinear programmingapproach. In our objective function, we consider bothbuffer space cost and average inventory cost.

1.2. Literature review

Substantial research has been conducted on produc-tion line evaluation and optimization (Dallery and

Page 2: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

B1 B2 B3 B4 B5

N2 N3 N4 N5N1

M1 M2 M4 M5 M6M3

Inventory space

n2 n3 n4 n5Average inventory n1

Fig. 1. A production line example.

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740726

Gershwin, 1992). There are many studies focusing onmaximizing the production rate but few studies concen-trating on maximizing the profit. In production lineoptimization, there are two distinct approaches: thesimulation based approach and the numerical evaluationapproach. It is desirable to develop numerical methodssince they are much faster than simulation. For a briefdescription of simulation methods, see Gershwin andSchor (2000). Here we describe some literature on non-simulation methods.

As early as 1967, Buzacott derived the analyticformula for the production rate for two-machine, one-buffer lines in a deterministic processing time model(Buzacott, 1967). The invention of decomposition meth-ods with unreliable machines and finite buffers(Gershwin, 1987) and its corresponding DDX algorithm(Dallery et al., 1988) enabled the numerical evaluationof the production rate of lines having more than twomachines. Methods have been found for the exactnumerical analysis of some small lines with more thantwo machines.1 However, they are severely limited. Inthis paper, we use decomposition for the approximateanalysis and optimization of much larger systems. DeKoster (1987) introduced an aggregation method toestimate the production rate of long lines. Park (1993)developed a two-phase heuristic algorithm to solve thetotal buffer space minimization problem. But hismethod could not always find the optimal solutionsand did not always converge. Schor (1995) and Gersh-win and Schor (2000) presented an efficient bufferallocation algorithm that applied a primal–dualapproach to minimize the total buffer space under aproduction rate constraint. They also studied the profitmaximization of a line through a nonlinear program-ming method that was fast and accurate, but they didnot consider the production rate constraint in the latterproblem.

More recently, Huang et al. (2002) considered a flow-shop-type production system and used a dynamicprogramming approach to maximize its production rateor minimize its work-in-process under a certain bufferallocation strategy. Diamantidis and Papadopoulos (2004)also presented a dynamic programming algorithm foroptimizing buffer allocation based on the aggregationmethod given by Lim et al. (1990). Although their dynamicprogramming methodology brought new approaches toproduction line design, they did not attempt to maximizethe profits of lines. Chan and Ng (2002) compared four

1 Gershwin and Schick (1983) derived an analytical solution for a

three-machine line with unreliable machines and small buffers. There

are also numerical methods for exact analysis of lines that are slightly

longer with small buffers (Tan, 2002).

buffer allocation strategies and presented a modified onefor production rate maximization. Shi and Men (2003)introduced a hybrid algorithm based on hybrid nestedpartitions and a Tabu search method for production lineoptimization. However, they also focused on maximizingthe production rate of the line under a total buffer spaceconstraint, rather than the profit of the line. Smith andCruz (2005) solved the buffer allocation problem forgeneral finite buffer queueing networks in which theyminimize buffer space cost under the production rateconstraint, but they did not consider the average inven-tory cost. One paper that considers both buffer space costand average inventory cost is Dolgui et al. (2002). Theirbuffer allocation problem consists in determining buffercapacities considering the production rate of the line, thebuffer acquisition and installation cost, and the inventorycost. For that problem, they proposed a genetic algorithmwhere tentative solutions were evaluated with an approx-imate method based on the Markov-model aggregationapproach. They did not have the production rate con-straint in their problem. Some practical considerationsin optimization of flow production systems were reportedin Tempelmeier (2003). In addition, some metaheuristicmethods were adopted to deal with the scheduling andbalancing problems for production lines or assembly lines(Bautista and Pereira, 2007; Jin et al., 2006).

The optimization problem becomes much harder ifthe production rate constraint is considered in productionline design because the production rate is a nonlinearfunction of buffer sizes. Our problem includes theproduction rate constraint and aims at maximizingthe profit for the line. As introduced in Section 1.1, weconsider both buffer space cost and average inventorycost in our objective function, and assign distinct costcoefficients to different buffers. The average inventory ofthe line, and consequently the line’s cost, are alsononlinear functions of buffer sizes. Hence, we havenonlinear elements in both our objective function andconstraints.

1.3. Outline of paper

The paper is organized as follows. The model we studyin our research and important features of its behavior aredescribed in Section 2. The proposed algorithm is derivedin Section 3, following by numerical results showing itsaccuracy and efficiency in Section 4. We summarize thepaper and propose future research in Section 5. Inaddition, we provide the continuous variable version ofthe solution of two-machine line evaluation in AppendixA, the proofs about our algorithm for a special case inAppendix B, and a brief introduction to the P% surfacesearch in Appendix C.

Page 3: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 727

2. Problem statement, assumptions, and notation

2.1. Model of the line

The model described here is the deterministic proces-sing time model of Gershwin (1987, 1994). We make allthe assumptions and approximations of that model,follow all his conventions, and use his notation. Weoutline the key features of the model below.

In our model, we denote machine i by Mi and buffer i

by Bi. The line consisting of k machines and k� 1 buffers iscalled a k-machine, k� 1-buffer line, or k-machine line forshort. Processing times of all machines are equal,deterministic, and constant. Time is scaled so thatoperations take one time unit. Transportation time isnegligible compared to the operation time.

In addition, Ni, the size of buffer Bi; 8i ¼ 1; . . . ; k� 1, aredecision variables. Therefore, there are k� 1 decisionvariables for a k-machine, k� 1-buffer line. Machines areunreliable and are parameterized by probabilities offailure and repair. Specifically, the parameters of machineMi are pi, the probability of a failure during a time unitwhile the machine is operating; and ri, the probability of arepair during a time unit while the machine is down. As aconsequence, the times to failure and to repair aregeometrically distributed. By convention, repairs andfailures occur at the beginnings of time units and changesin the buffer levels take place at the ends of time units.Machine parameters are fixed. We let P be the productionrate of a line. Although the production rate P is a functionof machines and their reliability, we vary only buffer sizes,so we write P ¼ PðN1; . . . ;Nk�1Þ, or PðNÞ for short, whereN is the vector ðN1; . . . ;Nk�1Þ. PðNÞ is a nonlinear functionof buffer sizes N, and is calculated numerically bydecomposition for lines having more than two machines.The numerical method is described in Gershwin (1994).

The profit of a k-machine, k� 1-buffer line can beformulated as

Profit ¼ APðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini � K ,

where A40 is the profit coefficient associated with theproduction rate PðNÞ, bi and ci are cost coefficientsassociated with the buffer space and average inventoryfor the ith buffer, respectively, and K stands for all costsother than those due to buffer sizes, average inventory,and raw material. Since K is independent of N, we simplifythe formulation above and write our objective function as

JðN1; . . . ;Nk�1Þ ¼ APðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini. (1)

In the following, we refer to J as the profit of the line. Tosimplify terminology, the first item on the right side ofEq. (1) can be seen as the total revenue of the line; whilethe other two items together can be interpreted as thetotal cost of the line. Allowing different buffers to havedifferent cost coefficients is realistic as we know that, forexample, the cost of buffer space in a clean room is muchexpensive than elsewhere in a factory.

2.2. Monotonicity and concavity of PðNÞ

A common intuition in the line design field is theconcavity of PðNÞ, though there is no analytical result thatconclusively shows that the lines we study in this paperexhibit the concavity property. However, some research insimilar systems indicates that this is a reasonableassumption. Extensive numerical experiments supportthis assumption as well. Shanthikumar and Yao (1989a)pointed out monotonicity and concavity properties incyclic queueing networks with finite buffers. In theirresearch, service processes were exponential, with ratesthat are increasing functions of the number of customersin the queue. In Shanthikumar and Yao (1989b), theyestablished the concavity of the throughput in a multicellsystem. They considered two types of cells. The first typeis an open queueing network with limited buffer capacityof the Jackson (1963) type, while the second type is anordered-entry system with heterogeneous servers andlimited buffer capacity. They showed that the productionrate of each cell of either type is an increasing and concavefunction of its buffer allocation. Anantharam and Tsoucas(1990) proved stochastic concavity of throughput in aseries of queues with single exponential servers, finitebuffers, and communication blocking (blocking beforeservice). Meester and Shanthikumar (1990) showed theconcavity of throughput in tandem queueing systems withfinite buffers and exponential servers. Dallery et al. (1994)generalized their work by establishing the concavity ofthroughput as a function of buffer sizes (and initialconditions, for a closed network) for a greatly extendedclass of distributions of service times. Glasserman and Yao(1996) found that the throughput was a concave functionof buffer parameters in serial lines with general blockingand synchronized service. They studied similar systemsunder a wide variety of blocking mechanisms, anddemonstrated concavity for systems with exponentialprocessing times, and other qualitative properties forgeneral service time distributions.

In addition, some work based on the concavity of theproduction rate for the same or similar systems has beenpublished. Park (1993) assumed the concavity of theproduction rate over both a buffer and a vector of buffersin his study of buffer size optimization. Gershwin andSchor (2000) studied the same model and established aprimal–dual algorithm for buffer space allocation inproduction lines basing on the assumption of concavePðNÞ. Levantesi et al. (2001) presented an algorithm forbuffer allocation in production lines with the sameassumption. Jeong and Kim (2000) applied that propertyto assembly systems with unreliable machines and finitebuffers after an empirical study through simulation toshow the concavity of the throughput for their systems. So(1997) also mentioned the concavity of the productionrate in his study on optimal buffer allocation strategy forunpaced production lines with machines having differentservice times and finite buffers.

It is also necessary to assume that PðNÞ is monotoni-cally increasing in N. Schor (1995) provided a relativelydetailed survey on this property. As an example, Fig. 2exhibits the monotonicity and concavity of PðNÞ for a three

Page 4: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90

100

0.76 0.78 0.8

0.82 0.84 0.86 0.88 0.9

P(N

1,N

2)

N1

N2

Fig. 2. Monotonicity and concavity of PðNÞ.

2 We include the continuous variable version of the analytic solution

of the two-machine line in Appendix A.

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740728

machine line with r1 ¼ 0:1, p1 ¼ 0:01, r2 ¼ 0:1, p2 ¼ 0:01,r3 ¼ 0:1, and p3 ¼ 0:01. Monotonicity and concavity ofPðNÞ are key assumption behind our algorithm.

2.3. Problem formulations

In this section, we introduce mathematical models.Our prime goal is a constrained problem, in which weaim at maximizing profits of production lines subjectto a production rate constraint. In order to solve theconstrained problem, we present a corresponding uncon-strained problem, in which we drop the production rateconstraint. We introduce the two problems here and leavethe reason for introducing the unconstrained problem tothe next section.

2.3.1. The constrained problem

The constrained problem is formulated as follows:

max JðN1; . . . ;Nk�1Þ

¼ APðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. PðN1; . . . ;Nk�1Þ � P%,

Ni � 0; 8i ¼ 1; . . . ; k� 1, (2)

where P% is the required production rate. The firstconstraint is the production rate constraint. Note that itis nonlinear. The second constraint is called the buffersize constraint. It comes from the natural property ofbuffer sizes since it makes no sense to have negativebuffer sizes.

However, it is necessary for us to further limit thebuffer sizes. This is because we use the decomposition toevaluate the production rate of the line, and the decom-position is based on an analytical solution of thetwo-machine line (Gershwin, 1994). This analyticaltwo-machine-line evaluation requires buffer sizes to begreater than 2. For a line having buffer sizes equal to orless than 2, there are different ways to measure itsperformance and we do not discuss them in this paper.Therefore, we only focus on lines whose buffer sizes are allgreater than 2. In the following, let Nmin denote theminimum of the buffer size and we re-write the

constrained problem as

max JðN1; . . . ;Nk�1Þ

¼ APðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. PðN1; . . . ;Nk�1Þ � P%,

Ni � Nmin; 8i ¼ 1; . . . ; k� 1. (3)

2.3.2. The unconstrained problem

In the unconstrained problem, we ignore the produc-tion rate constraint. Thus, the unconstrained problem is

max JðN1; . . . ;Nk�1Þ

¼ APðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. Ni � Nmin; 8i ¼ 1; . . . ; k� 1. (4)

This is a convenient, although not quite accurate, namesince we still have the buffer size constraint. As we showin Section 3, the unconstrained problem can be solvedeasily by a gradient method. We will further illustrate therelationship between the two problems and reveal howwe take advantage of the unconstrained problem to solvethe constrained one.

3. Solution technique

In this section, we present our algorithm for solving theconstrained problem. Instead of solving it directly, weadopt a two-step strategy in which we introduce a newvariable A0. We replace A by A0 in the unconstrainedproblem (4) and solve it iteratively for different valuesof A0.

It is easy to solve the unconstrained problem through agradient method as we take advantage of the analyticalform of the two-machine-line evaluation, which enablesus to treat Ni as continuous variables. This is because theformulas for the production rate and average inventory ofthe two-machine line do not require Ni to be integers.2

This enables us to evaluate a two-machine line whosebuffer size is not an integer. As a consequent, though ourmodel is a deterministic processing time discrete statemodel, we can still treat Ni as continuous variables. Inaddition, since we evaluate PðNÞ by the decomposition andthe continuous variable version of the analytic two-machine-line evaluation (introduced in Appendix A), andtreat Ni as continuous variables, we are able to treat PðNÞand JðNÞ as continuously differentiable functions. Thisallows us to adopt a gradient method to solve theunconstrained problem, since @PðNÞ=@Ni; 8i is meaningfuland we can compute it numerically. However, we need toindicate that due to the lack of an analytical expression ofthe profit of a line having more than two machines, wecompute gradients according to a forward differenceformula.

It is important to point out that gradient methods areappropriate when the space being searched has a single

Page 5: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 729

maximum. This requires our objective function of theunconstrained problem, JðN1; . . . ;Nk�1Þ, to have only onemaximum point for the proposed optimization method towork correctly. Schor (1995) encountered the same issueand showed that JðN1; . . . ;Nk�1Þ has single maximumthrough numerical evidence and an intuitive argument.He introduced a two-step gradient method to solve ourunconstrained problem. His results were demonstratedto be correct when compared with both simulationand another optimization method (Seong et al., 1994).Gershwin and Schor (2000) confirmed this.

3.1. Algorithm derivation

Solving the unconstrained problem yields two cases:

1.

The unconstrained problem has a solutionðN%

1 ; . . . ;N%

k�1Þ in which PðN%

1 ; . . . ;N%

k�1Þ � P%. In thiscase, the solution of the constrained problem isðN%

1 ; . . . ;N%

k�1Þ.

2.

3 A feasible vector x is regular if the equality constraint gradients

rhiðxÞ; i ¼ 1; . . . ;m, and the active inequality constraint gradients

rgjðxÞ; j 2 MðxÞ, are linearly independent. Also x is regular in the

exceptional case where there are no equality constraints and all the

inequality constraints are inactive at x. MðxÞ is the set of active inequality

constraints, i.e., MðxÞ ¼ fjjgjðxÞ ¼ 0g (Bertsekas, 1999).

The solution of the unconstrained problem satisfiesPoP%. This is not the solution of the constrainedproblem. In this case, we consider the followingunconstrained problem:

max JðN1; . . . ;Nk�1Þ

¼ A0PðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. Ni � Nmin; 8i ¼ 1; . . . ; k� 1 (5)

in which A of (4) is replaced by A0. Let ðN01; . . . ;N0k�1Þ be

the solution to this problem and P0 ¼ PðN01; . . . ;N0k�1Þ.

Then, we claim the following.

Assertion. The constrained problem

max JðN1; . . . ;Nk�1Þ

¼ A0PðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. PðN1; . . . ;Nk�1Þ � P%

Ni � Nmin; 8i ¼ 1; . . . ; k� 1 (6)

has the same solution for all A0 in which the solution of theunconstrained problem (5) has P0oP%.

This is because the solution of problem (6) will satisfyPðN1; . . . ;Nk�1Þ ¼ P% so the objective function is equiva-lent to A0P%

�Pk�1

i¼1 biNi �Pk�1

i¼1 cini. Since the first term isindependent of all of the Ni, it has no effect on the solutionof the problem.

We claim in the assertion that if the optimal solutionof the unconstrained problem (4) is not the solutionof the constrained problem (3), then the solution ofthe constrained problem (3), ðN%

1 ; . . . ;N%

k�1Þ, satisfiesPðN%

1 ; . . . ;N%

k�1Þ ¼ P%. Therefore, to solve the constrainedproblem (3), we replace A by A0 in both problems (3) and(4) and solve problem (5) for different A0’s. We need tofind the value of A0 such that the solution to problem (5)satisfies PðN1; . . . ;Nk�1Þ ¼ P%. Then, this solution is thesame as that of the original constrained problem (3).

We prove this assertion by the Karush–Kuhn–Tucker(KKT) conditions of nonlinear programming. We firstconvert the constrained problem (3) into the minimiza-tion form:

min � JðN1; . . . ;Nk�1Þ

¼ �APðN1; . . . ;Nk�1Þ þXk�1

i¼1

biNi þXk�1

i¼1

cini

s.t. P%� PðN1; . . . ;Nk�1Þ � 0,

Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1. (7)

We have argued that we treat Ni as continuousvariables, and PðNÞ and JðNÞ as continuously differentiablefunctions. Let us consider the KKT conditions. A statementof the KKT conditions (Bertsekas, 1999) is that: Let x% be alocal minimum of the problem

min f ðxÞ

s.t. h1ðxÞ ¼ 0; . . . ;hmðxÞ ¼ 0,

g1ðxÞ � 0; . . . ; grðxÞ � 0, (8)

where f, hi, and gj are continuously differentiable func-tions from Rn to R. Assume that x% is regular.3 Then thereexists unique Lagrange multipliers l%

1 ; . . . ; l%

m andm%

1 ; . . . ;m%

r , satisfying the following conditions:

rxLðx%;l%;m%Þ ¼ 0,

m%

j � 0; j ¼ 1; . . . ; r,

m%

j gjðx%Þ ¼ 0; j ¼ 1; . . . ; r, (9)

where Lðx; l;mÞ ¼ f ðxÞ þPm

i¼1lihiðxÞ þPr

j¼1mjgjðxÞ is calledthe Lagrangian function.

Before we apply the KKT conditions to our problem, weneed to point out a necessary condition that guaranteesthe existence of Lagrange multipliers. One appropriate forour problem is the Slater constraint qualification forconvex inequalities (Bertsekas, 1999), which is: Let x% be alocal minimum of the problem (8), where f and gj arecontinuously differentiable functions from Rn to R, andthe functions hi are linear. Assume that the functions gj

are convex and that there exists a feasible vector x

satisfying gjðxÞo0; 8j 2 Mðx%Þ: Then x% satisfies the KKTconditions.

Let us now consider our constrained problem. Thereare no equality constraints in the problem, but there are k

inequality constraints:

g0ðNÞ ¼ P%� PðN1; . . . ;Nk�1Þ � 0,

giðNÞ ¼ Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1. (10)

Due to the concavity of PðNÞ, g0ðNÞ is a convex function. Allother giðNÞ are linear so that they are also convex. It is nothard to find a feasible vector to make our problem satisfythe Slater constraint qualification. Since the requiredproduction rate, P%, has to be feasible for the line, thereexists sufficiently large N such that PðN1; . . . ; Nk�1Þ4P% so

Page 6: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740730

g0ðN1; . . . ; Nk�1Þo0. In addition, giðN1; . . . ; Nk�1Þo0; 8i ¼1; . . . ; k� 1 because Nmin � Nio0; 8i ¼ 1; . . . ; k� 1. Hence,our constrained problem satisfies the Slater constraintqualification, and there exists unique Lagrange multipliersm%

i ; i ¼ 0; . . . ; k� 1, for our problem to satisfy the KKTconditions:

�rJðN%Þ þ m%

0rðP%� PðN%

ÞÞ þXk�1

i¼1

m%

i rðNmin � N%

i Þ ¼ 0

(11)

or

@JðN%Þ

@N1

@JðN%Þ

@N2

..

.

@JðN%Þ

@Nk�1

0BBBBBBBBBBBB@

1CCCCCCCCCCCCA

� m%

0

@PðN%Þ

@N1

@PðN%Þ

@N2

..

.

@PðN%Þ

@Nk�1

0BBBBBBBBBBBB@

1CCCCCCCCCCCCA

� m%

1

1

0

..

.

0

0BBBBB@

1CCCCCA� m%

2

0

1

..

.

0

0BBBBB@

1CCCCCA

� � � � � m%

k�1

0

0

..

.

1

0BBBBB@

1CCCCCA¼

0

0

..

.

0

0BBBBB@

1CCCCCA

, (12)

and

m%

i � 0; 8i ¼ 0; . . . ; k� 1, (13)

m%

0 ðP%� PðN%

ÞÞ ¼ 0, (14)

m%

i ðNmin � N%

i Þ ¼ 0; 8i ¼ 1; . . . ; k� 1, (15)

where N% is the optimal solution of our constrainedproblem.

Next, we show that finding the Lagrange multipliersm%

i ; i ¼ 0; . . . ; k� 1, and the optimal solution N% to satisfythe KKT conditions (12)–(15) is equivalent to solving theconstrained problem (3) by our algorithm. Suppose thatN% is an interior solution.4 In all our experiments, theoptimal solutions have this feature. In this case, bycondition (15), we know that m%

i ¼ 0; 8i ¼ 1; . . . ; k� 1.Hence, we can simplify the KKT conditions (12)–(15) to

@JðN%Þ

@N1

@JðN%Þ

@N2

..

.

@JðN%Þ

@Nk�1

0BBBBBBBBBBBB@

1CCCCCCCCCCCCA

� m%

0

@PðN%Þ

@N1

@PðN%Þ

@N2

..

.

@PðN%Þ

@Nk�1

0BBBBBBBBBBBB@

1CCCCCCCCCCCCA

¼

0

0

..

.

0

0BBBBB@

1CCCCCA

, (16)

m%

0 ðP%� PðN%

ÞÞ ¼ 0, (17)

where m%

0 � 0. We know, since N% is not the optimalsolution of the unconstrained problem, that rJðN%

Þa0.rJðN%

Þa0 means that not all @JðN%Þ=@Ni are equal to 0.

Thus, m%

0 a0 since otherwise condition (16) would be

4 An interior solution means that all N%

i in N% are greater than Nmin.

We discuss the case in which some N%

i are on the boundary, i.e.,

N%

i ¼ Nmin, in Appendix B.

violated. By condition (17), the optimal solution N%

satisfies PðN%Þ ¼ P%. Since g0 is the only active inequality

constraint, N% is regular. In addition, conditions (16) and(17) reveal how we could find m%

0 and N%. For every m%

0 ,condition (16) determines N% since there are k� 1equations and k� 1 unknowns. Therefore, we can thinkof N%

¼ N%ðm%

0 Þ. We search for a value of m%

0 such thatPðN%

ðm%

0 ÞÞ ¼ P%. As we indicate in the following, this isexactly what our algorithm does.

Replacing m%

0 by m040 in constraint (16) gives

@JðNÞ

@N1

@JðNÞ

@N2

..

.

@JðNÞ

@Nk�1

0BBBBBBBBBBB@

1CCCCCCCCCCCA

� m0

@PðNÞ

@N1

@PðNÞ

@N2

..

.

@PðNÞ

@Nk�1

0BBBBBBBBBBB@

1CCCCCCCCCCCA

¼

0

0

..

.

0

0BBBB@

1CCCCA, (18)

where N is the unique solution of (18). Note that N is thesolution of the following optimization problem:

min � JðNÞ ¼ �JðNÞ þ m0ðP%� PðNÞÞ

s.t. Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1 (19)

which is equivalent to

max JðNÞ ¼ JðNÞ � m0ðP%� PðNÞÞ

s.t. Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1 (20)

or

max JðNÞ ¼ APðNÞ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini � m0ðP%� PðNÞÞ

s.t. Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1 (21)

or

max JðNÞ ¼ ðAþ m0ÞPðNÞ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. Ni � Nmin; 8i ¼ 1; . . . ; k� 1 (22)

or, finally,

max JðNÞ ¼ A0PðNÞ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. Ni � Nmin; 8i ¼ 1; . . . ; k� 1, (23)

where A0 ¼ Aþ m0. This is exactly the unconstrainedproblem (5), and N is its optimal solution. Note thatm040 indicates that A04A. In addition, the KKT condition(17) indicates that the optimal solution of the constrainedproblem N% satisfies PðN%

Þ ¼ P%. This means that, forevery A04A (or m040), we can find the correspondingoptimal solution N satisfying condition (18) by solvingproblem (5), and, we need to find the A0 such that thesolution to problem (5), denoted as NA0 , satisfiesPðNA0

Þ ¼ P%. Then, m0 ¼ A0 � A and NA0 satisfy conditions(16) and (17). Hence, m0 ¼ A0 � A is exactly the Lagrangemultiplier satisfying the KKT conditions of our constrainedproblem, and N%

¼ NA0 is the optimal solution of ourconstrained problem. Consequently, solving the con-strained problem (3) through our algorithm is essentially

Page 7: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

N2

P > .88

A’=1000

A’=2000 A’=3000A’=4000

A’=5000A’=6000

Optimum

locus of cost optima 30 40 50 60 70 80 90

100

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 731

finding the unique Lagrange multipliers and optimalsolution of the problem. We have proven our assertion.

Therefore, in our algorithm, we conduct an one-dimensional search on A04A and stop after we find theA0 such that the solution to the unconstrained problemsatisfies PðN1; . . . ;Nk�1Þ ¼ P%. We conclude that it is alsothe desired solution of the constrained problem. Wesummarize our algorithm in Section 3.2.

3.2. Algorithm statement

10 20

1.

20 30 40 50 60 70 80 90 100

Check the feasibility of the problem. We describe thisin Section 3.5.

N1

2.

Fig. 3. An example of the algorithm.

Solve the unconstrained problem (4). If the solutionðN%

1 ; . . . ;N%

k�1Þ satisfies PðN%

1 ; . . . ;N%

k�1Þ � P%, stop. Thesolution of the constrained problem is ðN%

1 ; . . . ;N%

k�1Þ.This step is also the necessity check of the algorithm aswe point out in Section 3.5.

3.

Do a one-dimensional search on A04A to find A0 suchthat the solution of the unconstrained problemsatisfies PðN%

1 ; . . . ;N%

k�1Þ ¼ P%. Stop. The desired solu-tion is ðN%

1 ; . . . ;N%

k�1Þ.

3.3. An example of the algorithm

We provide an example to show the algorithm. It is athree-machine, two-buffer line with parameters r1 ¼ 0:12,p1 ¼ 0:01, r2 ¼ 0:09, p2 ¼ 0:01, r3 ¼ 0:11, p3 ¼ 0:01, andthe profit function JðN1;N2Þ ¼ 1000PðN1;N2Þ � 0:5N1 � N2.Suppose first that the required production rate, P%, is 0.85.Solving the unconstrained problem and letting ðN1; N2Þ bethe optimal solution yield PðN1; N2Þ ¼ 0:8576. SincePðN1; N2Þ4P%

¼ 0:85, the solution ðN1; N2Þ is equivalentto the solution of the constrained problem and no furthersearch on A04A is needed.

Next suppose that the required production rate, P%, is0.88. In this case, the optimal solution of the uncon-strained problem does not satisfy PðN1; N2Þ � P%. Thus, weneed to conduct the one-dimensional search on A04A tofind the optimal solution of the constrained problem. So,we solve the unconstrained problem for A0 ¼ 1000;2000;. . . ;6000, and the optimal solutions for distinct A0 areshown in Fig. 3. Fig. 3 also tells that the requiredproduction rate P%

¼ 0:88. The locus of unconstrainedoptima of the cost function is sketched. Let ðNA0

1 ;NA0

2 Þ be theoptimal solution of the unconstrained problem for acertain A0. Note that for A0 ¼ 1000;2000, and 3000, theunconstrained optima have PðNA0

1 ;NA0

2 Þo0:88 while forA0 ¼ 4000;5000, and 6000, the unconstrained optimahave PðNA0

1 ;NA0

2 Þ40:88. Therefore, if the problem to besolved is to maximize 1000P � 0:5N1 � N2 subject toP � 0:88, then the solution is the intersection of P ¼ 0:88and the locus of unconstrained optima.

3.4. Detailed description of the algorithm

We describe in detail the algorithm we propose tosolve the constrained problem here. The algorithmincludes solving the unconstrained problem and theone-dimensional search on A04A, if necessary. We have

explained that we can treat the decision variables, Ni, ascontinuous variables, and JðN1; . . . ;Nk�1Þ as a continuouslydifferentiable function. Therefore, we adopt a gradientmethod that is based on the decomposition (Gershwin,1987) and the DDX algorithm (Dallery et al., 1988) to solvethe unconstrained problem.

3.4.1. Gradient method for the unconstrained problem

We solve the unconstrained problem with a gradientmethod. An initial guess ðN0

1; . . . ;N0k�1Þ is selected first. For

example, N0i can be chosen as the minimal value to satisfy

Pð1; . . . ;N0i ; . . . ;1Þ � P%. If this inequality is satisfied with

equality in all i, then the initial guess satisfiesPðN0

1; . . . ;N0k�1Þ � P%. This is how we choose the initial

guess in our implementation of the algorithm. However, itis helpful to indicate that our algorithm does not requirethat PðN0

1; . . . ;N0k�1Þ � P%. We have verified this with

experiments and the initial guesses ðN01; . . . ;N

0k�1Þ such

that PðN01; . . . ;N

0k�1Þ4P% lead to the same solution.

Then, we calculate the gradient direction to movein ðN1; . . . ;Nk�1Þ space. A line search is then conducted inthat direction until a maximum is encountered. Thisbecomes the next guess. A new direction is chosen and theprocess continues until no further improvement can beachieved. There is no analytical expression to computeprofits of lines having more than two machines. Conse-quently, to determine the search direction, we computethe gradient, g, according to a forward difference formula,which is

gi ¼JðN1; . . . ;Ni þ dNi; . . . ;Nk�1Þ � JðN1; . . . ;Ni; . . . ;Nk�1Þ

dNi,

(24)

where gi is the gradient component of buffer Bi, J is theprofit of the line and can be obtained by Eq. (1), and dNi isthe increment of buffer Bi. Since we treat Ni as continuousvariables, in the gradient calculation above, we choosedNi ¼ 0:01, which has proved to be a good choice in allexperiments we have conducted.

Apart from acquiring the gradient direction, we stillneed to determine the step size, a. We conduct a bisectionsearch to find a such that JðN1 þ ag1; . . . ;Nk�1 þ agk�1Þ, orJðNþ agÞ, is maximized. Then, we calculate the nextgradient and repeat. This process ends when there is no

Page 8: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740732

improvement in profit or when all components of thegradient are sufficiently small. A block diagram of thisgradient method appears in Fig. 4.

3.4.2. One-dimensional search on A04A

To find A0 such that the solution of the unconstrainedproblem satisfies PðN1; . . . ;Nk�1Þ ¼ P%, we use the NewtonChord method (Isaacson and Keller, 1994), which is anefficient way to find t0 such that f ðt0Þ ¼ 0 for a givenfunction f ð�Þ. Thus, in our algorithm, for any particularvalue of A0, we define f ðA0Þ as

f ðA0Þ ¼ PðNoptA0 Þ � P%, (25)

where NoptA0 is the optimal buffer allocation associatedwith that A0 and P% is the required production rate. TheNewton Chord method in our algorithm consists of thefollowing three steps:

1.

Guess A00 and A01. Calculate the approximate slope

s ¼f ðA01Þ � f ðA00Þ

A01 � A00. (26)

2.

Choose A02 so that

f ðA00Þ þ ðA0

2 � A00Þs ¼ 0 (27)

or

A02 ¼ �f ðA00Þ

sþ A00. (28)

3.

Repeat with A00 ¼ A01 and A01 ¼ A02 until jf ðA00Þj is smallenough.

In our implementation, the termination criterion isjf ðA00Þj � 10�4. The first two values of A0 are A00 ¼ A andA01 ¼ Aþ 1000.

N is the solution.Stop.

Is J(Nnext) > J(N)?

Find a such that J(N+ag) is maximized.

Define Nnext = N + ag.

Calculate gradient g.

Specify initial guess.N = (N1,...,Nk-1).

Ye

No

Fig. 4. Block diagram of th

3.5. Implementation issues

Implementation issues about the algorithm include thefeasibility and necessity of the algorithm, the initializationof the DDX algorithm of the decomposition, and theconversion from continuous solutions to integers.

Before running the algorithm, we should ensure thatthe required production rate, P%, is feasible for the line tobe optimized. This means that P% should satisfy

P%omini

ri

ri þ pi

, (29)

where ri=ðri þ piÞ is the isolated production rate ofmachine Mi. If this fails, no set of buffers can satisfy theproduction rate constraint.

We also have to make sure that there is a need toconduct the one-dimensional search on A04A of ouralgorithm. This actually can be decided after we firstsolve the unconstrained problem. We have indicated thisin Section 3.1 and restate it as the second step of thealgorithm in Section 3.2. If the unconstrained problem (4)has a solution ðN1; . . . ;Nk�1Þ in which PðN1; . . . ;Nk�1Þ � P%,then we do not need to implement the one-dimensionalsearch on A04A and the solution is equivalent to that ofthe constrained problem.

Furthermore, since we apply the DDX algorithm for thedecomposition and it is an iterative algorithm, we mustinitialize it whenever it is called in our algorithm. We usethe most recent value of ðN1; . . . ;Nk�1Þ from the lastevaluation, instead of a standard initialization, to reducethe numbers of iterations and the two-machine-lineevaluations.

Finally, it is necessary to point out that, to use theresult of the algorithm in practical production line designfor factories, we have to convert it back to integers.The easiest way is to round each continuous solutionNi to the nearest integer. One can also check all 2k�1

Set N = Nnext.s

e gradient method.

Page 9: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

0.84

0.86

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 733

combinations of all N%

i and N%

i , i ¼ 1; . . . ; k� 1, where N%

i

is the minimal integer larger than N%

i , while N%

i is themaximal integer smaller than N%

i .

0.72

0.74

0.76

0.78

0.8

0.82

0 500 1000 1500 2000

P(N

*)

Value of A’

N2* becomes non-minimalN3* becomes non-minimal

N1* becomes non-minimal

Fig. 5. PðN%Þ vs. A0 .

4. Numerical results and analysis

Numerical results are provided to show not only theefficiency of our algorithm but also its implementationprocess. Hence, taking a four-machine, three-buffer line asan example, we first explain how PðN%

Þ changes with A0.Then, we apply the algorithm to both short and long linesto illuminate its efficiency. Computation speed is dis-cussed at the end of this section. In our implementationof the algorithm, we let Nmin be 2þ �, where � ¼ 10�6.In addition, the algorithm is written with Matlab and runfor all experiments on a computer with a 2.4 GHz IntelCore 2 Duo CPU.

Table 2Machine parameters of the five-machine line experiment.

Machine M1 M2 M3 M4 M5

r 0.11 0.12 0.10 0.09 0.10

p 0.008 0.01 0.01 0.01 0.01

4.1. System behavior

Let us consider a four-machine, three-buffer line,whose parameters are summarized in Table 1. All costcoefficients are set to be 1 so that profit is calculatedas

JðN1; . . . ;N3Þ ¼ A0PðN1; . . . ;N3Þ �X3

i¼1

Ni �X3

i¼1

ni. (30)

To study the system behavior of the algorithm, we run itfor this line to generate the curve of PðN%

Þ versus A0. Wevary the A0 from 0 to 2000 with a step size of 1 and thedesired curve is shown in Fig. 5. There are four segmentsin the curve. The flat segment stands for the case in whichthe optimal sizes of all buffers are Nmin. For A0 rangingfrom 0 to 249, the optimal buffer sizes for the line stay onthe boundary of the feasible region so they areðNmin;Nmin;NminÞ. The production rates associated withthose A0 are identical, forming the horizontal segment inthe curve. After A0 passes 249, one of the optimal buffersizes ðN%

2 Þ becomes greater than Nmin, i.e., it turns to anon-minimal value from Nmin. From that time, theproduction rate begins to monotonically increase withA0. Each time a new buffer becomes non-minimal, thederivative of the production rate curve changes, but thecurve remains continuous. Fig. 5 suggests that PðN%

Þ forwhich not all components in N% are 2þ � increases withA0 monotonically. This system behavior further verifies ouralgorithm; as A0 increases, PðN%

Þ increases monotonicallyso we can eventually find the A0 such that PðN%

Þ � P%

(for P% feasible).

Table 1Data for the system behavior experiment.

Machine M1 M2 M3 M4

r 0.11 0.12 0.10 0.09

p 0.008 0.01 0.01 0.01

4.2. Experiments on short lines

Our algorithm optimizes short lines very quickly,which can be shown by the following two experiments.We optimize a five-machine line and a six-machine line,and compare the optimal solutions of our algorithm withsolutions gained from searching the P ¼ P%

ðN1; . . . ;Nk�1Þ

surface in ðN1; . . . ;Nk�1Þ space.5

4.2.1. Experiment on a five-machine, four-buffer line

The machine parameters are listed in Table 2. Therequired production rate P% is 0.88. It is easy to check thatthe isolated production rate of the bottleneck of the line,machine M4, is greater than P%, so the problem is feasible.The profit is calculated as

J ¼ 2500PðNÞ �X4

i¼1

Ni �X4

i¼1

ni.

To verify the optimal solution, we conduct a search onthe P% surface in ðN1; . . . ;Nk�1Þ space. We search on thesurface around the optimal solution of our algorithm andthe step size for all buffers in our search is 0.01.Experimental results including optimal solutions bothfrom our algorithm and P% surface search, errors, and therounded integer optimal solution are generated in Table 3.We see that the maximal error is 0.23% and appears in n2.Computer time for this experiment is 2.69 s. The numberof the two-machine-line evaluations is 87666. (Thereason we provide this number is that it is not affected

5 For a brief introduction about the P% surface search, see

Appendix C.

Page 10: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

Table 3Results of the five-machine line experiment.

P%

surface

search

The

algorithm

Error (%) Rounded N%

Production

rate

0.8800 0.8800 0.00 0.8800

N%

1 28.85 28.8570 0.02 29

N%

2 58.46 58.5694 0.19 59

N%

3 92.98 92.9068 0.08 93

N%

4 87.39 87.4415 0.06 87

n1 19.0682 19.0726 0.02 19.1791

n2 34.3084 34.3835 0.23 34.7289

n3 48.7200 48.6981 0.04 48.9123

n4 31.9894 32.0063 0.05 31.9485

Profit ($) 1798.2 1798.1 0.006 1797.4

Table 4Results of the revised five-machine line experiment.

P%

surface

search

The

algorithm

Error (%) Rounded N%

Production

rate

0.8800 0.87995 0.00 0.87996

N%

1 30.90 31.1110 0.68 31

N%

2 65.02 64.7286 0.45 65

N%

3 79.02 78.9987 0.03 79

N%

4 96.59 96.1601 0.45 96

n1 20.6757 20.8461 0.82 20.7578

n2 39.9641 39.8214 0.36 39.9949

n3 41.7716 41.7820 0.03 41.8100

n4 33.7392 33.6399 0.29 33.6141

Profit ($) 1713.3 1713.8 0.03 1713.7

20

40

60

80

100

120

140

160

0 2 4 6 8 10 12 14

The

optim

al s

izes

of b

uffe

rs

Buffer size cost coefficient of buffer B3

The optimal size of buffer B1The optimal size of buffer B2The optimal size of buffer B3The optimal size of buffer B4

Fig. 6. Optimal buffer spaces vs. cost coefficient of B3.

Table 6Results of the six-machine line experiment.

P%

surface

search

The

algorithm

Error (%) Rounded N%

Production

rate

0.8800 0.8799 0.00 0.8799

N%

1 33.20 33.4002 0.60 33

N%

2 46.25 46.3292 0.17 46

N%

3 103.01 102.6612 0.34 103

N%

4 111.51 110.9841 0.47 111

N%

5 56.11 56.0119 0.17 56

n1 22.4904 22.6863 0.87 22.3744

n2 26.4580 26.5914 0.50 26.3037

n3 51.4389 51.4330 0.11 51.3898

n4 42.7788 42.7599 0.04 42.6693

n5 17.4193 17.4689 0.28 17.4469

Profit ($) 2096.7 2096.4 0.01 2097.8

Table 5Machine parameters of the six-machine line experiment.

Machine M1 M2 M3 M4 M5 M6

r 0.11 0.12 0.10 0.09 0.10 0.11

p 0.008 0.01 0.01 0.01 0.01 0.009

Buffer B1 B2 B3 B4 B5

bi 1 2 0.5 0.8 1

ci 1 1 2 1 1.5

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740734

by the capability and performance of the computer thatruns the algorithm.) Hence, our algorithm offers accurateresults very quickly.

The optimal solution reveals that, since machine M4 isthe bottleneck, the optimal size of buffer B3 is greater thanthe optimal sizes of other three buffers. So, next wechange b3, the cost coefficient associated with buffersize of B3, to 2. This means that the line pays more for thebuffer size of B3. Thus, we expect the optimal solution forthe new line to have a smaller size for B3 while greatersizes for the other three buffers so as to satisfy theproduction rate constraint. Experimental results confirmour expectation (see Table 4). We see that the optimalbuffer size of B3 is reduced from 92.9068 to 78.9987, andoptimal buffer sizes of other three buffers increase. Themaximal error is 0.82% and appears in n1. Computertime for the revised experiment is 3.12 s. The number ofthe two-machine-line evaluations is 98 106. To furtherstudy this phenomenon, we conduct more experimentsfor this line by varying the cost coefficient of B3 from 0 to14 with a step size of 0.2, and report results in Fig. 6. Fig. 6indicates that as the cost coefficient of B3 becomes largerand larger, the optimal value of B3 becomes smaller tolimit the cost spent on it. Meanwhile the optimal values ofthe other three buffers get larger so the line maintains therequired production rate.

4.2.2. Experiment on a six-machine, five-buffer line

The machine parameters and cost coefficients areprovided in Table 5. The required production rate P% isstill 0.88, and it is easy to check that it is feasible for theline. The profit is calculated as

J ¼ 3000PðNÞ �X5

i¼1

biNi �X5

i¼1

cini.

Experimental results are presented in Table 6. Themaximal error between the solution of our algorithmand that of surface search is 0.87% and appears in n1.

Page 11: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

Table 7Machine parameters of the 12-machine line experiment.

Machine M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12

r 0.11 0.12 0.10 0.09 0.10 0.11 0.10 0.11 0.12 0.10 0.12 0.09

p 0.008 0.01 0.01 0.01 0.01 0.01 0.009 0.01 0.009 0.008 0.01 0.009

Table 8Results of the 12-machine line experiment.

P%

surface

search

The

algorithm

Error (%) Rounded N%

Production

rate

0.8800 0.8800 0.00 0.8799

N%

1 29.10 29.1769 0.26 29

N%

2 59.20 59.2830 0.14 59

N%

3 97.80 97.7980 0.002 98

N%

4 107.50 107.4176 0.08 107

N%

5 84.50 84.4804 0.02 84

N%

6 70.80 70.6892 0.17 71

N%

7 63.10 63.1893 0.14 63

N%

8 53.10 52.9274 0.33 53

N%

9 47.20 47.2232 0.05 47

N%

10 47.90 47.7967 0.22 48

N%

11 48.80 48.7716 0.06 49

n1 19.2388 19.2986 0.31 19.1979

n2 34.9561 35.0423 0.25 34.8194

n3 52.5423 52.6032 0.12 52.6833

n4 45.1528 45.1840 0.07 45.0835

n5 34.4289 34.4770 0.14 34.2790

n6 30.7073 30.7048 0.01 30.8229

n7 28.0446 28.1299 0.30 28.0902

n8 21.5666 21.5438 0.11 21.5932

n9 21.5059 21.5442 0.18 21.4299

n10 22.6756 22.6496 0.11 22.7303

n11 20.8692 20.8615 0.04 20.9613

Profit ($) 4239.3 4239.2 0.002 4239.5

6 http://www.mathworks.com/products/curvefitting/.

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 735

Computer time for this experiment is 7.72 s. The numberof the two-machine-line evaluations is 286 368.

4.3. Experiments on long lines

Next we apply our algorithm to lines with more than10 machines. In particular, we run an experiment for a 12-machine, 11-buffer line. Again, to verify our optimalsolution, we conduct a search on the P% surface. Wesearch on the surface around the optimal solution gainedby our algorithm but this time we set the step size in oursearch to 0.1 for all buffers to reduce search time. Machineparameters are shown in Table 7. We still use 0.88 as afeasible required production rate for this line. In addition,we set all cost coefficients to 1 and the profit is calculatedas

J ¼ 6000PðNÞ �X11

i¼1

Ni �X11

i¼1

ni.

Experimental results are generated in Table 8. We seethat the maximal error is 0.33% and appears in N%

8 . Itwould be further reduced if we decreased the step size ofthe P% surface search. Therefore, our algorithm providesaccurate optimal solutions for long lines as well. Compu-ter time for this experiment is 91.47 s. The number of thetwo-machine-line evaluations is 3 236 500.

4.4. Computation speed

Finally, we discuss the computation speed about ouralgorithm. Although we have shown that our algorithmoffers the optimal solution for a 12-machine, 11-bufferline within 2 min, it is important to observe the algorithmbehavior for longer lines. Thus, we run our algorithm for aseries of experiments for lines having identical machines.We vary the length of the line from 4 machines up to30 machines. Machine parameters are p ¼ 0:01 andr ¼ 0:1. In all cases, we choose a feasible production rateP%¼ 0:88, and the objective function is

JðNÞ ¼ APðNÞ �Xk�1

i¼1

Ni �Xk�1

i¼1

ni, (31)

where A ¼ 500k for the line of length k. Furthermore, weinitialize A00 ¼ A and A01 ¼ Aþ 1000. The numbers of thetwo-machine-line evaluations for lines with differentlengths are generated in Table 9 and Fig. 7, respectively.We fit a curve to those points in order to reveal therelation between the length of the production line and thecomputation effort of our algorithm. From those points inFig. 7, we guess that we can find an exponential curve to

fit them. Using the Curve Fitting Toolbox of Matlab,6 wefind

y ¼ 8:536� 105e0:1664k, (32)

where y denotes the number of the two-machine-lineevaluations and k denotes the length of the line. The curveis shown in Fig. 7 as well. It can be seen, from Table 9, thatit takes our algorithm about 3 min to find the optimalbuffer allocation for the 15-machine line, and about10 min to find the optimal buffer allocation for the20-machine line. However, the exponential curve impliesthat our algorithm needs much more time for lines withmore than 30 machines. As we have pointed out in Section1, in practice, it is possible that several machines arelocated adjacently in series and followed by a buffer. Sowhile it is not rare for a transfer line to have more than 30machines, the number of buffers is often much smaller.However, the exponential curve spurs us to furtherimprove our algorithm to make it more efficient for longerlines. We finally present the specific optimal solution forthe

Page 12: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

Table 9Numbers of the two-machine-line evaluations for lines with different

lengths.

Line length Production rate # of two-machine

evaluations

Computer

time (s)

4 0.8800 19 616 0.725

5 0.8799 47 136 1.428

6 0.8799 85 536 2.419

7 0.8800 168 010 4.500

8 0.8801 381516 9.974

9 0.8801 592 522 15.246

10 0.8799 1027 808 25.793

11 0.8800 1575 414 39.471

12 0.8800 2 329 460 61.903

13 0.8799 3 612 774 95.386

14 0.8799 5 309 640 138.166

15 0.8800 7 380 412 188.281

20 0.8800 27 540 720 686.022

25 0.8800 64 081036 1594.281

30 0.8799 122188 024 3061.463

0

2e+007

4e+007

6e+007

8e+007

1e+008

1.2e+008

1.4e+008

0 5 10 15 20 25 30 0

500

1000

1500

2000

2500

3000

3500

The

num

ber o

f the

two-

mac

hine

-line

eva

luat

ion

Com

pute

r tim

e, s

econ

ds

Length of production lines

fitting curve

Fig. 7. The number of the two-machine-line evaluations vs. the length of

production lines and its fitting curve.

20

30

40

50

60

70

80

90

100

0 5 10 15 20 25 30

The

optim

al s

izes

of b

uffe

rs

Index of buffers

Buffer sizesAverage inventories

Optimal buffer allocation

Rat

io o

f ave

rage

inve

ntor

y to

buf

fer s

ize

Fig. 8. Results of the 30-machine line. (a) Op

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740736

30-machine line. The optimal sizes of buffers are shown inFig. 8(a). The curve of ni=Ni is illustrated in Fig. 8(b).

5. Conclusion

5.1. Summary

In this paper, we present an accurate, fast, and reliablealgorithm for maximizing profits through buffer spaceoptimization for production lines. In the cost function, weconsider both buffer space cost and average inventory costand assign different cost coefficients to different buffers.In addition, we include a production rate constraint in ourproblem. A nonlinear programming approach is adoptedto solve the problem. Experimental results are alsoprovided to show the accuracy and efficiency of ouralgorithm. Our algorithm is based on the assumption ofthe concavity of PðNÞ. Thus, one future research focus is toprove this assumption rigorously.

5.2. Future work

There are several research directions to which we canextend our algorithm in the future.

1.

0.3 0

0.4 0.4 0.4 0.4 0

0.5 0.5 0.5 0.5 0

tima

Assembly/Disassembly (A/D) systems.A/D systems are extensions of lines in which assemblyand disassembly take place. The first extension of ouralgorithm is to acyclic A/D systems.

2.

Systems with loops.Many production lines contain pallets or fixtures thattravel in closed loops. Many production lines arecontrolled by constant work-in-progress (CONWIP) torestrict inventory. Such systems have tokens that travelin closed loops. Thus, there is a need for machine linedesigners to invite algorithms to enhance the perfor-mance of such lines. Werner (2001) and Gershwin andWerner (2007) presented a decomposition algorithm

8.42468.52468.6

0 5 10 15 20 25 30Index of buffers

bar n/N

ni / Ni curve¯

l buffer allocation, (b) ni=Ni curve.

Page 13: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 737

that enabled us to evaluate the production rate forlines with single loops. Zhang (2006) extended it tolines with multiple loops. So a good extension is thatwe take advantage of the decomposition algorithms tomaximize profits for lines with loops.

3.

Systems with machine selection.In the design of a production line, each operation hasvarious machine choices. Each machine has its owndistinct parameters and cost. Different machine com-binations lead to diverse production line performance.Nahas et al. (2009) developed a method to selectmachines and buffers in unreliable series–parallelproduction lines to maximize the production ratesubject to a total cost constraint. We want to decidewhich machine to choose for each operation as weselect buffers to maximize the profit for the line.

4.

Systems with set-up cost for buffers.This means whenever we decide to establish a bufferbetween two machines (or machine sets), we intro-duce a fixed buffer set-up cost. After the buffer isestablished, the buffer space cost will be proportionalto its size. So, in this case, buffer space cost will be 0 ifNi ¼ 0 or ai þ biNi if Ni � Nmin for buffer Bi.

5.

Systems with quality control.By taking account of quality control, we assume thatmachines generate both good parts and bad parts.Unfortunately, buffers delay the inspection of badparts. Consider a two-machine line. Suppose parts areinspected only after the second machine. So, when thefirst machine begins to generate bad parts, we will notknow it immediately if there are still some good partsin the buffer. We will only know that the first machineis generating bad parts after all good parts in the bufferare processed by the second machine and it begins toprocess the first bad part. During that delay, the firstmachine could have generated more bad parts. Thus, inthis case, buffers bring potential delay to inspection,which reduces the production rate and the profit ofthe line. Kim and Gershwin (2005) pointed out that inthe case of our example above, an increase of buffersize could either increase or decrease the productionrate for different lines.

6.

Systems with additional buffer space constraints.In addition to the constraints in our constrainedproblem, we may encounter additional buffer spaceconstraints of the form

PigijNi � hj. For instance,

consider a production line, in which two buffers, saybuffers B5 and B6, are in the clean room. Due to thehigh cost of buffer space in the clean room, there is amaximum total space constraint for B5 and B6 asN5 þ N6 � C, where C is a constant. This bringsadditional constraints to our problem, so we need tomake necessary modification to our algorithm so thatit can apply to the new problem.

These extensions are key complements to make ourmodel more practical for actual manufacturing systems infactories. A good understanding of our algorithm behavioron those extensions would be valuable in future produc-tion line design.

Acknowledgments

The authors are grateful for support from the MIT-Portugal Program and from the Singapore-MIT Alliance.

Appendix A

The continuous variable version of the solution of thedeterministic two-machine line is presented in thissection. Suppose we have a two-machine line withparameters r1, p1, r2, and p2, and the buffer size is N. Inthe two-machine case, the state of the system is s ¼

ðn;a1;a2Þ when n is the buffer level ð0 � n � NÞ and ai isthe repair state of machine i ði ¼ 1;2; ai ¼ 0;1Þ. pðn;a1;a2Þ

stands for the steady-state probability of that state.Gershwin (1994) showed that the steady-state probabilitydistribution is

pð0;0;0Þ ¼ 0, (A.1)

pð0;0;1Þ ¼ CXr1 þ r2 � r1r2 � r1p2

r1p2, (A.2)

pð0;1;0Þ ¼ 0, (A.3)

pð0;1;1Þ ¼ 0, (A.4)

pð1;0;0Þ ¼ CX, (A.5)

pð1;0;1Þ ¼ CXY2, (A.6)

pð1;1;0Þ ¼ 0, (A.7)

pð1;1;1Þ ¼CX

p2

r1 þ r2 � r1r2 � r1p2

p1 þ p2 � p1p2 � r1p2, (A.8)

pðN � 1;0;0Þ ¼ CXN�1, (A.9)

pðN � 1;0;1Þ ¼ 0, (A.10)

pðN � 1;1;0Þ ¼ CXN�1Y1, (A.11)

pðN � 1;1;1Þ ¼CXN�1

p1

r1 þ r2 � r1r2 � p1r2

p1 þ p2 � p1p2 � p1r2, (A.12)

pðN;0;0Þ ¼ 0, (A.13)

pðN;0;1Þ ¼ 0, (A.14)

pðN;1;0Þ ¼ CXN�1 r1 þ r2 � r1r2 � p1r2

p1r2, (A.15)

pðN;1;1Þ ¼ 0, (A.16)

pðn;a1;a2Þ ¼ CXnYa1

1 Ya2

2 ,

2 � n � N � 2; a1 ¼ 0;1; a2 ¼ 0;1, (A.17)

where C is a normalizing constant and

Y1 ¼r1 þ r2 � r1r2 � r1p2

p1 þ p2 � p1p2 � p1r2, (A.18)

Y2 ¼r1 þ r2 � r1r2 � p1r2

p1 þ p2 � p1p2 � r1p2, (A.19)

X ¼Y2

Y1. (A.20)

For convenience, we define internal states as thosestates in which 2 � n � N � 2; while boundary states asthose states in which n ¼ 0, 1, N � 1, or N. We further letpB be the summation of the steady-state probabilities of

Page 14: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740738

all boundary states and pI be the summation of thesteady-state probabilities of all internal states. Then,

pB ¼X

all boundary states

pðn;a1;a2Þ

¼ CXr1 þ r2 � r1r2 � r1p2

r1p2

þ CX þ CXY2

þCX

p2

r1 þ r2 � r1r2 � r1p2

p1 þ p2 � p1p2 � r1p2

þ CXN�1þ CXN�1Y1 þ

CXN�1

p1

r1 þ r2 � r1r2 � p1r2

p1 þ p2 � p1p2 � p1r2

þ CXN�1 r1 þ r2 � r1r2 � p1r2

p1r2. (A.21)

In addition, we calculate pI in the continuous variableversion by

pI ¼X

all internal states

pðn;a1;a2Þ

¼XN�2

n¼2

CXnð1þ Y1Þð1þ Y2Þ

¼

CXN�1

� X2

X � 1if jX � 1j4d;

ð1þ Y1Þð1þ Y2Þ

CðN � 3Þð1þ Y1Þð1þ Y2Þ if jX � 1j � d;

8>>>>>><>>>>>>:

(A.22)

where d is a very small non-zero positive value. Let pT bethe summation of all steady-state probabilities of bothboundary states and internal states, then

pT ¼ pB þ pI ¼ 1. (A.23)

To find C, let LB be pB=C and LI be pI=C. LB and LI can becalculated directly by the machine parameters of the lineand the buffer size N. Since pB and pI must sum to 1, then

C ¼1

LB þ LI. (A.24)

The production rate of the line can be calculated by

P ¼r1

r1 þ p1

ð1� pbÞ

¼r1

r1 þ p1ð1� pðN;1;0ÞÞ

¼r1

r1 þ p11� CXN�1 r1 þ r2 � r1r2 � p1r2

p1r2

� �, (A.25)

where pb ¼ pðN;1;0Þ is the probability of blocking.Finally, let us consider how to calculate the average

inventory for the line. We compute the average inventoryfor the internal states, denoted by nI, as

nI ¼X

all internal states

npðn;a1;a2Þ

¼XN�2

n¼2

CnXnð1þ Y1Þð1þ Y2Þ

¼

CXð�2X þ ðN � 1ÞXN�2

�XN�1

� X2

X � 1Þ

X � 1if jX � 1j4d;

ð1þ Y1Þð1þ Y2Þ

1

2CNðN � 3Þð1þ Y1Þð1þ Y2Þ if jX � 1j � d;

8>>>>>>>><>>>>>>>>:

(A.26)

where d is a very small non-zero positive value. Then, tocalculate the average inventory for the line, we need toconsider both internal states and boundary states whosesteady-state probability is non-zero and n is non-zero.Then, the average inventory of the line is calculated as

n ¼X

all states

npðn;a1;a2Þ

¼ pð1;0;0Þ þ pð1;0;1Þ þ pð1;1;1Þ þ nI

þ ðN � 1ÞðpðN � 1;0;0Þ þ pðN � 1;1;0Þ þ pðN � 1;1;1ÞÞ

þ NpðN;1;0Þ. (A.27)

Appendix B

Here, we provide the proofs of our assertion for thecase in which some N%

i ¼ Nmin. Recall that the assertion is:

Assertion. The constrained problem

max JðN1; . . . ;Nk�1Þ

¼ A0PðN1; . . . ;Nk�1Þ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. PðN1; . . . ;Nk�1Þ � P%,

Ni � Nmin; 8i ¼ 1; . . . ; k� 1

has the same solution for all A0 in which the solution of theunconstrained problem (5) has P0oP%.

Let B be fijN%

i ¼ Nming. Hence, N%

i ¼ Nmin; 8i 2 B, whileN%

i 4Nmin; 8ieB. In this case, those N%

i equal to Nmin are onthe boundary of the feasible region of the optimalsolution. By condition (15), we know that m%

i ¼ 0; 8ieB

and ia0. Hence, we simplify the KKT conditions (12)–(15)to

@JðN%Þ

@N1

@JðN%Þ

@N2

..

.

@JðN%Þ

@Nk�1

0BBBBBBBBBBB@

1CCCCCCCCCCCA

� m%

0

@PðN%Þ

@N1

@PðN%Þ

@N2

..

.

@PðN%Þ

@Nk�1

0BBBBBBBBBBB@

1CCCCCCCCCCCA

�Xi2B

m%

i ei ¼

0

0

..

.

0

0BBBB@

1CCCCA, (B.1)

where

ei ¼

0

..

.

1

..

.

0

0BBBBBBB@

1CCCCCCCA

in which the 1 is in the ith position.

m%

0 ðP%� PðN%

ÞÞ ¼ 0, (B.2)

m%

i ðNmin � N%

i Þ ¼ 0; 8i ¼ 1; . . . ; k� 1, (B.3)

where m%

i � 0; 8i ¼ 0; . . . ; k� 1. We first argue that not allN%

i ; ieB satisfy @JðN%Þ=@Ni ¼ 0. This is because if

@JðN%Þ=@Ni ¼ 0 for all N%

i ; ieB and all other N%

i ¼ Nmin;

i 2 B, then the solution of the constrained problemðN%

1 ; . . . ;N%

k�1Þ is equivalent to the solution of the

Page 15: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

15 20

25 30

35 40

40 45 50 55 60 65 70

70

75

80

85

90

N3

P* surfaceThe optimal solution

N1

N2

Fig. C1. P% surface of the example.

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740 739

unconstrained problem, since it is just constrained bythe buffer size constraint. This is a conflict. Therefore, itis not possible for all N%

i ; ieB to satisfy @JðN%Þ=@Ni ¼ 0.

So, 9i for which N%

i4Nmin and @JðN%

Þ=@Nia0. Since

N%

i4Nmin, by condition (B.3), we know m%

i¼ 0. Thus,

m%

0 a0 since otherwise condition (B.1) would be violated.Hence, by condition (B.2), we know that the optimalsolution N% satisfies PðN%

Þ ¼ P%. In this case, there aremore than one active inequality constraints: the pro-duction rate constraint g0ðNÞ and buffer size constraintsgiðNÞ; 8i 2 B. It is not hard to see that rg0ðN

%Þ and

rgiðN%Þ; 8i 2 B are linearly independent so the optimal

solution is regular.As before, replacing m%

0 by m040 and m%

i ;8i 2 B bymi40; 8i 2 B in constraint (B.1) gives

�rJðNÞ þ m0rðP%� PðNÞÞ þ

Xi2B

mirðNmin � NiÞ ¼ 0, (B.4)

where N is the unique solution. Note that N is exactly theoptimal solution of the following optimization problem:

min � JðNÞ ¼ �JðNÞ þ m0ðP%� PðNÞÞ þ

Xi2B

miðNmin � NiÞ

s.t. Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1,

Ni ¼ Nmin; 8i 2 B (B.5)

which is equivalent to

max JðNÞ ¼ JðNÞ � m0ðP%� PðNÞÞ

s.t. Nmin � Ni � 0; 8i ¼ 1; . . . ; k� 1,

Ni ¼ Nmin; 8i 2 B (B.6)

or

max JðNÞ ¼ ðAþ m0ÞPðNÞ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. Ni � Nmin; 8i ¼ 1; . . . ; k� 1,

Ni ¼ Nmin; 8i 2 B (B.7)

or, finally,

max JðNÞ ¼ A0PðNÞ �Xk�1

i¼1

biNi �Xk�1

i¼1

cini

s.t. Ni � Nmin; 8i ¼ 1; . . . ; k� 1,

Ni ¼ Nmin; 8i 2 B, (B.8)

where A0 ¼ Aþ m0. Again, this is exactly our unconstrainedproblem in which A is replaced by A0, and N is its optimalsolution, except that in the optimal solution, Ni ¼ Nmin;

8i 2 B. A similar argument as in Section 3.1 could proveour assertion for this case.

Appendix C

We provide a brief discussion about the P% surfacesearch here. All buffer size allocations, N, such that PðNÞ ¼P% compose the P% surface. For instance, consider a four-machine line with parameters r1 ¼ 0:11, p1 ¼ 0:008,r2 ¼ 0:12, p2 ¼ 0:01, r3 ¼ 0:1, p3 ¼ 0:01, r4 ¼ 0:09, andp4 ¼ 0:01. P%

¼ 0:88. A portion of the P% surface of thisexample is shown in Fig. C1. It means that all points onthis surface satisfy PðNÞ ¼ P%. We further let the profit isJðNÞ ¼ 2000PðNÞ �

P3i¼1Ni �

P3i¼1ni. Then, the optimal

solution achieved by our algorithm is also shown in thisfigure. To verify the optimal solution, we conduct a searchon this P% surface. It is obvious that the P% surface isboundless and it is impractical to search the wholesurface, even for the simplest three-machine line. There-fore, in our implementation, we only search around theoptimal solution achieved by our algorithm. Since there isonly one maximum, searching around the optimal solu-tion is accurate enough.

In the P% surface search, we first need to find allfeasible points on the surface around the optimal solutiongained by our algorithm. To do this, we set ranges for allbuffers and then at each time we vary one buffer size by asmall step size (0.01 or 0.1) while keeping other buffersunchanged. Therefore, we can calculate the productionrates and the profits for all combinations of thosebuffers. All those points, whose production rate P satisfyjP � P%

j � d where d is a very small non-zero positivevalue, compose the P% surface. Then we compare theprofits of those points. The point having the maximalprofit in the P% search becomes the optimal solution bythis method. Then, we compare our optimal solution withthis one and calculate the error.

References

Anantharam, V., Tsoucas, P., 1990. Stochastic concavity of throughput inseries of queues with finite buffers. Advances in Applied Probability22 (3), 761–763.

Bautista, J., Pereira, J., 2007. Ant algorithms for a time and spaceconstrained assembly line balancing problem. European Journal ofOperational Research 177, 2016–2032.

Bertsekas, D.P., 1999. Nonlinear Programming, second ed. AthenaScientific.

Buzacott, J.A., 1967. Automatic transfer lines with buffer stocks.International Journal of Production Research 5 (3), 183–200.

Chan, F.T.S., Ng, E.Y.H., 2002. Comparative evaluations of buffer allocationstrategies in a serial production line. The International Journal ofAdvanced Manufacturing Technology 19 (11), 789–800.

Dallery, Y., David, R., Xie, X.-L., 1988. An efficient algorithm for analysis oftransfer lines with unreliable machines and finite buffers. IIETransactions 20 (3), 280–283.

Dallery, Y., Gershwin, S.B., 1992. Manufacturing flow line systems: areview of models and analytical results. Queueing Systems Theoryand Applications 12, 3–94 (special issue on Queueing Models ofManufacturing Systems).

Page 16: An efficient buffer design algorithm for production line profit maximization

ARTICLE IN PRESS

C. Shi, S.B. Gershwin / Int. J. Production Economics 122 (2009) 725–740740

Dallery, Y., Liu, Z., Towsley, D., 1994. Equivalence, reversibility, symmetryand concavity properties in fork-join queuing networks withblocking. Journal of the ACM (JACM) 41 (5), 903–942.

De Koster, M.B.M., 1987. Estimation of line efficiency by aggregation.International Journal of Production Research 25 (4), 615–626.

Diamantidis, A.C., Papadopoulos, C.T., 2004. A dynamic programmingalgorithm for the buffer allocation problem in homogeneousasymptotically reliable serial production lines. Mathematical Pro-blems in Engineering 2004 (3), 209–223.

Dolgui, A., Eremeev, A., Kolokolov, A., Sigaev, V., 2002. A geneticalgorithm for the allocation of buffer storage capacities in aproduction line with unreliable machines. Journal of MathematicalModelling and Algorithms 1 (2), 89–104.

Gershwin, S.B., 1987. An efficient decomposition method for theapproximate evaluation of tandem queues with finite storage spaceand blocking. Operations Research 35 (2), 291–305.

Gershwin, S.B., 1994. Manufacturing Systems Engineering. Prentice-Hall,Englewood Cliffs, NJ Currently available at hhttp://home.comcast.net/�hierarchy/MSE/mse.htmli. For corrections, see hhttp://web.mit.edu/manuf-sys/www/gershwin.errata.htmli.

Gershwin, S.B., Schick, I.C., 1983. Modeling and analysis of three stagetransfer lines with unreliable machines and finite buffers. OperationsResearch 31 (2), 354–377.

Gershwin, S.B., Schor, J.E., 2000. Efficient algorithms for buffer spaceallocation. Annals of Operations Research 93, 117–144.

Gershwin, S.B., Werner, L.M., 2007. An approximate analytical method forevaluating the performance of closed-loop flow systems withunreliable machines and finite buffers. International Journal ofProduction Research 45 (14), 3085–3111.

Glasserman, P., Yao, D.D., 1996. Structured buffer-allocation problems.Discrete Event Dynamic Systems 6 (1), 9–41.

Huang, M.-G., Chang, P.-L., Chou, Y.-C., 2002. Buffer allocation in flow-shop-type production systems with general arrival and servicepatterns. Computer and Operations Research 29 (2), 103–121.

Isaacson, E., Keller, H.B., 1994. Analysis of Numerical Methods. DoverPublication, New York.

Jackson, J.R., 1963. Jobshop-like queueing systems. Management Science10 (1), 131–142.

Jeong, K.-C., Kim, Y.-D., 2000. Heuristics for selecting machines anddetermining buffer capacities in assembly systems. Computers andIndustrial Engineering 38 (3), 341–360.

Jin, Z., Yang, Z., Ito, T., 2006. Metaheuristic algorithms for the multistagehybrid flowshop scheduling problem. International Journal ofProduction Economics 100, 322–334.

Kim, J., Gershwin, S.B., 2005. Integrated quality and quantity modeling ofa production line. OR Spectrum 27 (2–3), 287–314 Liberopoulos, G.,Papadopoulos, C.T., Tan, B., MacGregor Smith, J., Gershwin, S.B. (Eds.),Reprinted in Stochastic Modeling of Manufacturing Systems—

Advances in Design, Performance Evaluation, and Control Issues.Springer, Berlin, 2006.

Levantesi, R., Matta, A., Tolio, T., 2001. A new algorithm for bufferallocation in production lines. In: The Third Aegean International

Conference on Design and Analysis of Manufacturing Systems, TinosIsland, Greece.

Lim, J.-T., Meerkov, S.M., Top, F., 1990. Homogeneous, asymptoticallyreliable serial production line: theory and a case study. IEEETransactions on Automatic Control 35 (5), 524–534.

Meester, L.E., Shanthikumar, J.G., 1990. Concavity of the throughput oftandem queueing systems with finite buffer storage space. Advancesin Applied Probability 22 (3), 764–767.

Nahas, N., Nourelfath, M., Ait-Kadi, D., 2009. Selecting machines andbuffers in unreliable series–parallel production lines. InternationalJournal of Production Research 47 (14), 3741–3774.

Park, T., 1993. A two-phase heuristic algorithm for determining buffersizes of production lines. International Journal of ProductionResearch 31 (3), 613–631.

Schor, J.E., 1995. Efficient algorithms for buffer allocation. Master’sThesis, Massachusetts Institute of Technology. Also available as MITLaboratory for Manufacturing and Productivity Report LMP-95-006,May.

Seong, D., Chang, S.Y., Hong, Y., 1994. An algorithm for buffer allocationwith linear resource constraints in a continuous flow production line.Technical Report IE-TR-94-05, Department of Industrial Engineering,POSTECH, Korea.

Shanthikumar, J.G., Yao, D.D., 1989a. Monotonicity and concavityproperties in cyclic queueing networks with finite buffers. In:Perrios, H.G., Altiok, T. (Eds.), Queuing Networks with Blocking.Elsevier Science, Amsterdam, pp. 325–344.

Shanthikumar, J.G., Yao, D.D., 1989b. Optimal buffer allocation in amulticell system. International Journal of Flexible ManufacturingSystems 1 (4), 347–356.

Shi, L., Men, S., 2003. Optimal buffer allocation in production lines. IIETransactions 35 (1), 1–10.

Smith, J.M., Cruz, F.R.B., 2005. The buffer allocation problem for generalfinite buffer queueing networks. IIE Transactions 37 (4), 343–365.

So, K.C., 1997. Optimal buffer allocation strategy for minimizing work-in-process inventory in unpaced production lines. IIE Transactions 29(1), 81–88.

Tan, B., 2002. State-space modeling and analysis of pull controlledproduction systems. In: Gershwin, S.B., Dallery, Y., Papadopoulos, C.,Smith, J. (Eds.), Analysis and Modeling of Manufacturing Systems.Kluwer International Series in Operations Research and ManagementScience (Chapter 15).

Tempelmeier, H., 2003. Practical considerations in the optimization offlow production systems. International Journal of ProductionResearch 41 (1), 149–170.

Werner, L., 2001. Analysis and design of closed loop manufacturingsystems. Master’s Thesis, Operations Research Center, MassachusettsInstitute of Technology.

Zhang, J.Z., 2006. Analysis and design of manufacturing systems withmultiple-loop structures. Ph.D. Thesis, Department of MechanicalEngineering, Massachusetts Institute of Technology.


Recommended