Content uploaded by Raik Stolletz

Author content

All content in this area was uploaded by Raik Stolletz

Content may be subject to copyright.

Noname manuscript No.

(will be inserted by the editor)

Using linear programming to analyze and

optimize stochastic ﬂow lines

Stefan Helber, Katja Schimmelpfeng, Raik Stolletz and Svenja

Lagershausen

Leibniz Universit¨at Hannover, Institut f¨ur Produktionswirtschaft, K¨onigsworther

Platz 1, 30167 Hannover, Germany

e-mail: {raik.stolletz,stefan.helber}@prod.uni-hannover.de,

katja.schimmelpfeng@tu-cottbus.de,

February 14, 2008

Abstract This paper presents a linear programming approach to analyze

and optimize ﬂow lines with limited buﬀer capacities and stochastic pro-

cessing times. The basic idea is to solve a huge but simple linear program

that models an entire simulation run of a multi-stage production process in

discrete time, to determine a production rate estimate. As our methodol-

ogy is purely numerical, it oﬀers the full modeling ﬂexibility of stochastic

simulation with respect to the probability distribution of processing times.

However, unlike discrete-event simulation models, it also oﬀers the optimiza-

tion power of linear programming and hence allows to s olve buﬀer allocation

problems. We show under which conditions our method works well by com-

paring its results to exact values for two-machine models and approximate

simulation results for longer lines.

1 Modeling ﬂow lines with limited buﬀer capacities and random

processing times

Stochastic processing times at the stations of a ﬂow line with limited buﬀer

capacities can lead to blocking or s tarvation of the line’s bottleneck. In

this case the throughput of the line falls below the production rate of the

bottleneck operating in isolation (Gershwin, 1994, p. 117). In the design

process for a ﬂow line, one needs to quantify this impact of processing time

variability on the line’s production rate and inventory level to eﬃc iently

allocate machines and buﬀers.

In practice, discrete-event simulation (DES) is usually used to analyze

the performance of a planned ﬂow line. Several software packages with

2 Helb er, Stefan et al.

graphical user interfaces allow the planner to easily model a system at an

arbitrary level of detail (Swain, 2007). DES oﬀers a great degree of model-

ing ﬂexibility with respect to probability distributions and other details of

the line’s mode of operation. However, while modeling a ﬂow line via DES

is easy, a systematic optimization of the ﬂow line design is not. A simple

and relevant question is how to allocate a given total number of identical

buﬀer spaces in a ﬂow line so that the production rate is maximized. This

question can usually not be answered eﬃciently using DES because of the

long computation times of the simulation runs and the combinatorial nature

of the decision problem (Gershwin and Schor, 2000).

It is also possible to use analytic queueing models to derive exact or ap-

proximate closed-form solutions or decomposition algorithms for ﬂow lines

with (un-)limited buﬀer capacities. The numerical eﬀort for these methods

is often negligible so that a systematic optimization of the line is possi-

ble (Gershwin and Schor, 2000). However, the mathematical assumptions

required for these analytic models often restrict their use in practice. In

addition, even a slight modiﬁcation of such an analytic model may easily

extend the capabilities of a practitioner who may therefore resort to DES.

As a result, one rarely ﬁnds ﬂow lines with limited buﬀer capacity that

have been systematically optimized, as analytic queueing models are rarely

understood and optimization based on DES is often to o time -c onsuming.

For the special problem of analyzing and optimizing ﬂow lines with lim-

ited buﬀer capacity we propose a methodology that is about as s imple as

DES, but uses the optimization potential of mixed-integer linear program-

ming. The key idea is to work with a discrete-time dynamic production-

inventory model with continuous pro duction quantities. This model approx-

imates the behavior of a discrete-material production system operating in

continuous time . Among the parameters of this model is the production ca-

pacity of a production stage during a (discrete) time period. It stems from a

hypothetical s imulation run in continuous time. In other words, the realiza-

tions of the stochastic processing times of the diﬀerent jobs at a given pro-

duction stage are transformed via sampling into corresponding realizations

of production capacities for that production stage and the corresponding

time period. If the number of these periods in the model is suﬃciently large

and some other conditions (to be explored in this paper) hold, the discrete-

time model leads to a surprisingly accurate prediction of the production

rate of the original ﬂow line that operates in continuous time. To deter-

mine the production rate estimate within the context of our multi-stage

discrete-time production-inventory model, we use the simplex algorithm of

linear programming (LP). Our linear model can easily incorporate buﬀer

allocation and/or machine selection decisions. In this case, additional in-

teger decision variables for the buﬀer sizes are introduced. This leads to a

mixed-integer problem that can be solved via branch&bound or branch&cut

algorithms. Our approach therefore combines the ﬂexibility of DES with re-

spect to probability distributions of stochastic process ing times with the

optimization power of (mixed-integer) linear programming. The contribu-

Analysis and optimization of ﬂow lines 3

tion of this paper is to describe how the method works and under which

conditions it can be expected to yield precise production rate estimates.

The literature on DES of production system is unmanageable. Law and

Kelton (1991) and Kelton et al. (2006), among others, give introductions to

the methodology and describe simulation models of ﬂow lines. A survey of

the literature on analytic queueing models of ﬂow lines with limited buﬀer

capacity is given by Dallery and Gershwin (1992). The recent development

in the ﬁeld is presented in the book edited by Liberopoulos et al. (2006). Sev-

eral monographs treat the analysis of manufacturing systems via queueing

models (Buzacott and Shanthikumar, 1993; Gershwin, 1994; Tijms, 1994;

Altiok, 1996). The literature on linear-programming based simulation of

ﬂow lines is more limited. Abdul-Kader (2006) presents a linear program-

ming (evaluation) model of an unreliable ﬂow line in continuous time that is

based on an earlier model by Johri (1987). The buﬀer capacity in the model

by Abdul-Kader (2006) determines an upper limit of a summation index.

Therefore, the buﬀer capacity cannot be made a decision variable and only a

ﬁxed and given buﬀer allocation can be treated. The situation is similar for

a model by Matta and Chefson (2005) which is based on an earlier model by

Schruben (2000). In the model of a closed ﬂow line by Matta and Chefson,

the buﬀer capacity determines the number of constraints of the continuous

time LP. We are not aware of continuous time LP models of stochastic ﬂow

lines in which the buﬀer size is a decision variable. However, in order to

optimize the design of a ﬂow line, the buﬀer size must be allowed to be

a decision variable. For this reason we developed our discrete-time model

which is presented in this paper. From a methodological p oint of view, our

approach is very similar to the one presented by Helber and Henken (2007)

for shift scheduling in contact centers.

The remainder of this paper is structured as follows: In Section 2 we

present and compare LP-based simulation approaches for s tochastic ﬂow

lines. Section 3 presents results of a systematic numerical study to assess

the accuracy of the proposed metho d. We summarize our results and give

directions for further research in Section 4.

2 Continuous vs. discrete time linear programming models of

stochastic ﬂow lines

2.1 Continuous time evaluation model

As stated above, several modeling approaches have been proposed for con-

tinuous time LP models of ﬂow lines. The key idea is to use real-valued

decision variables to model the time at which processing of a workpiece w

at a station k starts and/or ends. An example of such a model can be formu-

lated as follows using the notation in Table 1, see also Matta and Chefson

(2005):

4 Helb er, Stefan et al.

Minimize

K

X

k=1

W

X

w=1

(XS

kw

+ XF

kw

) (1)

subject to

XS

kw

+ d

kw

= XF

kw

− B

kw

, ∀k, ∀w (2)

XS

k+1,w

= XF

kw

+ W

kw

, ∀k ≤ K − 1, ∀w (3)

XS

k,w+1

= XF

k,w

+ S

k,w+1

, ∀k, ∀w ≤ W − 1 (4)

XF

k,w+b

k

≥ XS

k+1,w

, ∀k ≤ K − 1, ∀w ≤ W − b

k

(5)

The objective function (1) ensures that each workpiece w will be trans-

ferred to the next station or buﬀer as soon as possible. The time workpiece

w spends at station k consists of the processing time d

kw

and the blocking

time B

kw

. The buﬀer behind the last station K is assumed to be inﬁnitely

large so that no workpiece can be blocked at the last station, i.e., B

Kw

= 0

holds for all workpieces w. If the workpiece w starts being processed at

station k at time XS

kw

, it leaves the station d

kw

+ B

kw

time units later,

see Equation (2). Equation (3) deﬁnes the waiting time W

kw

of workpiece

w in the buﬀer behind station k. The starting time of workpiece w + 1 is

determined in Equation (4) by the ﬁnishing time of the preceding workpiece

w and the starving time S

k,w+1

. Therefore, only one workpiece can be pro-

cessed at the same time at station k. Due to the limited buﬀer capacity b

k

,

the workpieces w and w + b

k

cannot be in the buﬀer behind station k at

the same time. For this reason Equation (5) states that workpiece w + b

k

cannot be transferred to a buﬀer before workpiece w has left this buﬀer.

Once this model has been solved for a given realization of processing time s,

an estimate for the production rate of the line can be computed.

In this model, the size of the buﬀers betwe en the stations determines the

number of constraints of the LP. The buﬀer allocation is therefore exogenous

to the model. Matta and Chefson (2005) discuss how the solution to such a

model can be incorporated into an approach to optimize the buﬀer alloca-

tion. If an identical sequence of realizations of random processing times for

workpieces w at stations k is fed into an LP like the one presented above

and into a DES, both modeling approaches lead to the same cycle time and

processing rate (Schruben, 2000; Matta and Chefson, 2005). A continuous

time LP model can therefore be used, at least in principle, to simulate a

stochastic ﬂow line. The resulting LP can become huge if tight conﬁdence

intervals for performance measures are required, but the power of comput-

ers and LP solvers keeps increasing, so this problem should eventually be

eliminated by technological progress. However, there does not appear to be

an obvious way to incorporate buﬀer allo c ation decisions into a continuous

time model. For this reason, we propose a diﬀerent approach.

Analysis and optimization of ﬂow lines 5

Table 1 Notation for the continuous time model

Sets and indices

w = 1, ..., W workpieces

k = 1, ..., K stations in the ﬂow line

Parameters

d

kw

processing time or duration at station k for workpiece

w

b

k

capacity of the buﬀer behind station k

Real-valued decision variables

XS

kw

starting time at station k for workpiece w

XF

kw

ﬁnishing time at station k for workpiece w

W

kw

waiting time for workpiece w in the buﬀer behind sta-

tion k

B

kw

blo cking time at station k for workpiece w

S

kw

starving time of station k before processing workpiece

w

2.2 Transformation of stochastic processing times into processing rates via

periodic sampling

In order to transform the continuous processing times into the modeling

context of a discrete time model, we can use a simple sampling approach.

Consider a sequence of processing times or durations d

kw

for an ordered set

of workpieces w that is processed at a station k. Assume that the station is

operating in isolation so that it can never be blocked or starved. The idea

of the s ampling approach is to count the number of events per period as

depicted in Figure 1.

Period 1 Period 2 Period 3

d

k1

d

k2

d

k3

d

k4

d

k5

d

k6

d

k7

c

k1

=3

c

k2

=1 c

k3

=2

Fig. 1 Sampling of discrete time processing rates

The uppe r row of this ﬁgure shows three discrete time periods 1 to 3

and the lower, the processing times of 7 workpieces successively processed

at that station so that it never idles until the last piece is processed. In the

6 Helb er, Stefan et al.

example, three workpieces can be ﬁnished in period 1, only one in period

2 and two in period 3. The shorter the processing times relative to the

period lengths are, the higher is the number of workpieces that can b e

processed during a period. As in each digital representation of analogous

signals, information is lost if the sampling frequency is too low as stated by

the Nyquist-Shannon-sampling theorem (Isermann (1987, pp. 31)). Loosely

speaking, in order not to lo ose information, the length of a period must,

according to this theorem, be shorter than half of the length of the shortest

possible processing time. If the shortest possible processing time can be

arbitrarily close to zero (for example, because processing times are as sumed

to be exponentially distributed), such a perfect sampling without any loss

of information is already theoretically imposs ible.

However, there is an additional problem: As the proc ess ing or duration

times d

kw

are considered to be realizations of random variables, the sam-

pled processing rates c

kt

for the discrete time periods are also realizations of

random variables. In order to provide a reasonable characterization of the

workstation in a discrete time model, a suﬃciently large number of work-

pieces must be considered and a suﬃciently large numbe r of realizations of

the processing rates c

kt

at station k for diﬀerent periods t is required.

For this reason it is c lear that on the one hand one would like to have

both a very high sampling frequency and a very large number of sampled

processing times of diﬀerent workpieces (and therefore a very large number

of periods t), but on the other hand one needs to be able to solve a discrete

time LP of limited size in limited time. This tradeoﬀ will be explored in

detail in our numerical study.

2.3 Discrete time evaluation and optimization model

Our discrete time production-inventory model of a stochastic ﬂow line is

based on the following assumptions for the case of given buﬀer sizes:

– The ﬂow line consists of stations k = 1, ..., K.

– Behind each but the last station there is a buﬀer that can hold b

k

parts.

This buﬀer size is exogenously given. The material supply to the ﬁrst

station and the space behind the last station is unlimited.

– Time is divided into discrete periods t of equal length.

– The maximum number of parts that can be processed at station k in pe-

riod t is c

kt

. It is the realization of a stochastic counting process obtained

via sampling, see Section 2.2.

– The objective is to maximize the production rate of the sys tem. The

production rate is the number of workpieces processed at the last station

divided by the length of the observation period. The observation period

starts after the ﬁrst t

0

periods (warm-up phase).

Analysis and optimization of ﬂow lines 7

Table 2 Notation for the discrete time model

Sets and indices

k = 1, ..., K stations in the ﬂow line

t = 1, ..., T periods

Parameters

c

kt

potential processing capacity of station k in period t, realization of

an integer random variable obtained by sampling

b

k

exogenously given capacity of the buﬀer behind station k

b

tot

exogenously given total buﬀer capacity between all stations

Real-valued decision variables

Q

kt

production quantity of station k in period t

Y

kt

end-of-p eriod inventory level of station k in period t

P R production rate estimate

Integer decision variables

X

k

endogenously determined capacity of the buﬀer behind station k

Using the above assumptions and the notation in Table 2, the (evalua-

tion) model in discrete time can be stated as follows:

Max P R =

1

T − t

0

·

T

X

t=t

0

+1

Q

Kt

(6)

subject to

Y

k,t−1

+ Q

kt

= Y

kt

+ Q

k+1,t+1

, k = 1, ..., K, t = 1, ..., T, (7)

Q

kt

≤ c

kt

, k = 1, ..., K, t = 1, ..., T, (8)

Q

kt

= 0, k = 1, ..., K, t < k, (9)

Y

kt

≤ b

k

, k = 1, ..., K, (10)

The production rate in the observation period is determined in the ob-

jective function (6). It is computed as the number of workpieces processed at

the last station after a warm-up phase of t

0

periods divided by the number

of periods after this warm-up phase. Equation (7) is a s tandard inventory

equation for a dynamic multi-stage production system with the convention

that those variables that are not deﬁned (e.g., “Q

K+1,T +1

”) are omitted.

The constraint (8) states that the production capacity for each period and

station may not be exceeded. Production at downstream production stages

8 Helb er, Stefan et al.

can only start when material can be available, see Equation (9). Equation

(10) states the the inventory level must not exceed the buﬀer capacity.

In this base (evaluation) variant of the discrete-time model, we assume

that the buﬀer allocation is given. We now turn to the buﬀer optmization

variant of the model and assume that only the total number b

tot

of buﬀer

spaces is given. We further assume that these buﬀer spaces can be freely

located be tween the machines and the production-rate maximizing buﬀer

allocation is sought. Then the constraint (10) has to be replaced by the

following two constraints:

Y

kt

≤ X

k

, k = 1, ..., K − 1 (11)

K−1

X

k=1

X

k

= b

tot

, (12)

The constraint (11) states that the end-of-period inventory level must

not exceed the now endogenous buﬀer s ize X

k

. The equation (12) guarantees

that all the available buﬀer spaces are allocated in the line. This minor

modiﬁcation allows to incorporate the buﬀer allocation problem and hence

to optimize the ﬂow line. If we aim at the production-rate maximizing buﬀer

allocation, the original linear program (6)-(10) therefore turns into a mixed-

integer program as buﬀer sizes must be integer.

3 Numerical evaluation of the approximation

3.1 Outline of the numerical study

In order to evaluate the acc uracy of our method, we performed a numerical

study. The measure of accuracy used in the study is the relative deviation of

the production rate estimate P R from Equation (6) of the linear program

from the true value (or a hopefully precise estimate of this true value).

In the ﬁrst part of this study, we compare our results to exact results for

reliable two-machine one-buﬀer systems with exponential processing times.

Such a syste m can be easily analyzed via the M/M/1/N queueing model.

The idea is to interpret the arrival process of the queueing mo del as the

production process of the ﬁrst machine of the line and the service process of

the queueing model as the production process of the second machine. The

system size N is the number of buﬀer spaces between the machines plus the

space at the second machine. It appears natural to start with two-machine

ﬂow lines as these are the smallest possible ﬂow lines with limited buﬀer

capacity. This initial analysis should provide ﬁrst insights which help to

design experiments for the analysis of the method for ﬂow lines with more

than two machines.

In all parts of our study, we asked for the impact of the following features

of problem instances on the accuracy of our method:

Analysis and optimization of ﬂow lines 9

– Number of periods in the discrete time linear program

– Number of buﬀers spaces for each buﬀer between the machines in the

ﬂow line

– (Average) processing rates at the machines

– Location of the bottleneck (if any) in the line

We conjectured that the accuracy should increase with the numbe r of

periods in the model as the “simulation run” gets longer. With respect to

the buﬀer size we expected to ﬁnd more precise results for problem instances

with larger buﬀers. The modeling discrepancy between the discrete ﬂow of

material in the real system and the continuous ﬂow in the linear program

should be less relevant, if blocking and starving is reduced due to larger

buﬀers. The impact of the processing rate at the workstations is more subtle

to analyze. On the one hand, very low rates (or long processing times) lead

to very small numbers of events per period, so that the sampling error due to

the discretization (see Section 2.2) is minimized. The accuracy of the method

should hence increase as the processing rates decrease. On the other hand,

if for a given number of periods the processing rate decreases, the number

of events within the studied time also decreases. This makes the production

rate estimate more variable and less accurate. For a given number of periods

that can be treated within the linear program, we therefore expect to ﬁnd

a processing rate that maximizes the accuracy of the method by balancing

these two opposing eﬀects . It was not clear to us whether the location of a

potential bottleneck in the system has a signiﬁcant eﬀect on the accuracy

of the method.

Exact results are not available for ﬂow lines with limited buﬀer sizes and

more than two machines. For this reas on, we compare our results to those

from a discrete-event simulation model coded in C (Helber, 1999). In this

second part of the study, we added the following problem features:

– Number of production stages

– Variability of the processing times

– Allocation of the buﬀer spaces

We expec ted to ﬁnd larger deviations as the number of production stages

increases, because the number of “modeling defects” due to the discretiza-

tion increases. With respect to the variability of the processing time s, we

conjectured to ﬁnd an increasing accuracy with decreasing variability as the

production rate of a zero-variability discrete material ﬂow line can be deter-

mined exactly via a continuous ﬂow model. It was not clear to us whether

the method should be more precise when the buﬀer allocation is exogenously

given or endogenously determined.

For all of these parameter types, we systematically explored a wide range

of parameter values which we considered to be relevant, in order to ﬁnd out

under which conditions the method appears save to use or not.

10 Helb er, Stefan et al.

Table 3 Test bed for the analysis of two-machine lines

Parameter type Number of cases Parameter value per case

Number of periods 5 2500, 5000, 10000, 20000, 40000

Buﬀer spaces 6 1, 2, 4, 8, 16, 32

per buﬀer

Base processing 3 0.1, 1.0, 10.0

rates

Bottleneck factor 5 (M

1

: 0.7; M

2

: 1.0), (M

1

: 0.9; M

2

: 1.0),

(M

1

: 1.0; M

2

: 1.0), (M

1

: 1.0; M

2

: 0.9),

(M

1

: 1.0; M

2

: 0.7)

Table 4 Impact of the number of periods

Number of periods 2500 5000 10000 20000 40000

MAD [%] 6.2 6.0 5.2 5.2 5.0

Table 5 Impact of the number of buﬀer spaces per buﬀer

Number of buﬀers 1 2 4 8 16 32

MAD [%] 16.3 8.4 3.5 2.1 1.4 1.4

3.2 Comparison with exact results for two-machine lines

In this ﬁrst part of the numerical study, we used the design of the test

bed presented in Table 3. In each case, we added t

0

= 500 time periods

to those reported in Table 3 as a “warm-up” phase. The processing rates

of the machines are the product of the base processing rate (for example,

0.1 in the ﬁrst base processing rate case) and the bottleneck factor for the

respective machine (e.g. 0.9 for machine M

1

in bottleneck factor case two,

leading to a production rate of 0.1 · 0.9 = 0.09 for machine M

1

).

The diﬀerent combinations of parameter types led a to full factorial de-

sign of the experime nt with 5 · 6 · 3 · 5 = 450 diﬀerent two-machine lines that

were both analyzed via our numerical method and via the exact solution of

the M/M/1/N queueing model. The average overall deviation ((estimate-

true value)/true value) of our production rate estimate from the true value

was 0.338%. However, this measure only indicates that there appears to be

no major systematic deviation as negative deviations are compensated by

positive deviations. The more relevant measure of accuracy is the mean ab-

solute deviation (MAD) over the 450 instances which was 5.517%. Figure 2

shows that in about 80% of the cases the production rate e stimation error

did not exceed 10% while the maximum error exceeded 25%.

Table 4 presents the MAD for each number of periods in the linear

program. The accuracy appears to increase moderately as the number of

periods increases. It seems to increase strongly with increasing buﬀer sizes,

just as we conjectured, see Table 5.

Table 6 indicates that indeed there appe ars to be a base processing rate

that maximizes the accuracy of our method. For this rate, on average one

Analysis and optimization of ﬂow lines 11

0

5

10

15

20

25

30

35

40

0 10 20 30 40 50

0

20

40

60

80

100

Percentage of the cases

Percentile of the relative deviation

Two-maschine line: Case 1

Cumulated percentage

Fig. 2 Percentage of cases over percentiles of relative deviations for all 450 cases

of two-machine lines

Table 6 Impact of the base processing rates

Base processing rate 0.1 1.0 10.0

MAD [%] 7.4 1.5 7.7

Table 7 Impact of the bottleneck location

Bottleneck location case 1 2 3 4 5

MAD [%] 5.1 6.0 5.8 5.5 5.2

part is processed per period if non-bottleneck machines operate in isolation.

This conﬁrms our hypothesis that for a given number of periods in the

linear program a too low base processing rate leads to too few events in the

“simulation run” and hence a too high variability of the production rate

estimate from the linear program. Table 7 indicates that the method is more

accurate for systems with clear bottlenecks (cases 1 and 5 in Table 7) than

for balanced lines. This is also a common result for other approximation

methods like two-machine decompositions, see Helber (1999, 2005). (A very

clear bottleneck essentially determines a systems performance, so that these

tend to be relatively easy to analyze.)

In a next step of our analysis (out of the original 450 instances), we

asked for the largest possible “compact” subset of instances within a given

accuracy limit. The four parameter dimensions in Table 3 with the param-

eter values given in this table deﬁne a complete four-dimensional cube that

represents the full-factorial design of our experiment. We now asked for the

largest four-dimensional sub-cube which is complete in the sense that all its

instances meet a given accuracy limit.

12 Helb er, Stefan et al.

Table 8 Compact subspace for the analysis of two-machine lines with a maximum

deviation of 10% (240 cases)

Parameter type Number of cases Parameter value per case

Number of periods 4 5000, 10000, 20000, 40000

Buﬀer spaces 4 4, 8, 16, 32

per buﬀer

Base processing 3 0.1, 1.0, 10.0

rates

Bottleneck factor 5 (M

1

: 0.7; M

2

: 1.0), (M

1

: 0.9; M

2

: 1.0),

(M

1

: 1.0; M

2

: 1.0), (M

1

: 1.0; M

2

: 0.9),

(M

1

: 1.0; M

2

: 0.7)

The idea is that this sub-cube or compact four-dimensional subset of

instances can be constructed by combining four compact partial sets of the

parameters that des cribe the factorial design of our expe riment. For exam-

ple, with respect to the buﬀer sizes {1, 2, 4, 8, 16, 32} intro duced in Table 3,

the partial sets of buﬀer size parameters {{1, 2, 4, 8}, {1, 2}, {2, 4, 8, 16, 32}

and {4, 8}} are all compact. However, the partial set {1, 4, 8} is not compact

because the buﬀer size “2” is missing between “1” and “4” and the subset

{4, 8, 32} is not compact bec ause the buﬀer size “16” is missing between its

neighbors “8” and “32”. We developed an additional integer program (not

reported here) to identify the largest possible sub-cube out of the parameter

space with a maximum production rate estimation error of 10%.

Table 8 shows the partial parameter sets for this compact subset. If

the minimum buﬀer size was 4 and a minimum of 5000 periods were used

within the linear program to estimate the production rate, the production

rate estimation error of the remaining 240 cases never exceeded 10% and

the MAD was only 1.88%. (Note that there were indeed many more cases

with an absolute value of the production rate estimation error below 10%

outside of this compact subspace. Figure 2 indicates that 80% or 360 out

of 450 cases led to a deviation of at most 10%, but about 120 of them were

outside of this four-dimensional sub-cube.) When we reduced the accuracy

limit to 5%, the compact subspace reported in Table 9 was detected. In

more than 150 cases, the MAD was only 0.909%.

In a last step of our analysis of two-machine lines with exponential pro-

cessing times, we decided to discard the extremely diﬃcult cases of very low

processing rates or very sm all buﬀers. We studied the subset of 200 cases

out of those introduced in Table 3 with a minimum base proc ess ing rate of

1.0 and a minimum buﬀer size of 4. This led to the frequency diagram in

Figure 3 with a MAD of 1.54% and a maximum error of 7.48%. We con-

cluded that the method works reasonably well for exponential two-machine

lines unless base processing rates or buﬀer sizes are very small.

Analysis and optimization of ﬂow lines 13

Table 9 Compact subspace for the analysis of two-machine lines with a maximum

deviation of 5% (150 cases)

Parameter type Number of cases Parameter value per case

Number of periods 5 2500, 5000, 10000, 20000, 40000

Buﬀer spaces 3 8, 16, 32

per buﬀer

Base processing 2 1.0, 10.0

rates

Bottleneck factor 5 (M

1

: 0.7; M

2

: 1.0), (M

1

: 0.9; M

2

: 1.0),

(M

1

: 1.0; M

2

: 1.0), (M

1

: 1.0; M

2

: 0.9),

(M

1

: 1.0; M

2

: 0.7)

0

10

20

30

40

50

60

0 10 20 30 40 50

0

20

40

60

80

100

Percentage of the cases

Percentile of the relative deviation

Two-maschine line: Case 2

Cumulated percentage

Fig. 3 Percentage of cases over percentiles of relative deviations for 200 cases of

two-machine lines with minimum base processing rate of 1.0 and buﬀer size of 4

3.3 Comparison with approximate simulation results for longer lines

To evaluate the performance of our method for longer lines we compared

its results to those obtained by a discrete-event simulation for the test bed

consisting of the 1944 cases described in Table 10.

We used the Erlang-k-distribution to generate processing times with a

squared coeﬃcient variation (SCV) below 1.0 and the balanced-mean vari-

ant of the Cox-2-distribution to generate processing times with a SCV of 1.0

or above (B uzacott and Shanthikumar, 1993, p. 542). Figure 4 shows the fre-

quency diagram of relative deviations. The maximum deviation was 40.82%

and the MAD was 5.57%. With respect to the number of periods in the

linear program, the number of buﬀer spaces per buﬀer and the bottleneck

location, we found results very similar to those for the two-machine lines.

However, the procedure seemed to do best for high processing rates, see

Table 11. Table 12 shows that the accuracy slightly deteriorates as the line

14 Helb er, Stefan et al.

Table 10 Test Bed A for the analysis of longer lines (1944 cases); “f. m.” means

“ﬁrst machine”, “l. m.” means “last machine”,“o. m.” means “other machines”

Parameter type Number of Parameter value per case

cases

Number of periods 3 5000, 10000, 20000

Buﬀer spaces 3 2, 10, 50

per buﬀer

Base processing 3 0.1, 1.0, 10.0

rates

Bottleneck factor 3 (f. m.: 0.9; o. m.: 1.0),

(all machines 1.0),

(l. m.: 0.9; o. m.: 1.0)

Number of stations 3 3, 5, 7

Processing time 4 0.25, 0.5, 1.0, 2.0

variability

Buﬀer allocation 2 even vs. production-rate maximizing

0

5

10

15

20

25

30

35

40

0 10 20 30 40 50

0

20

40

60

80

100

Percentage of the cases

Percentile of the relative deviation

Case 1

Cumulated percentage

Fig. 4 Percentage of cases over percentiles of relative deviations for all 1944 cases

of Test Bed A for longer lines

Table 11 Impact of the base processing rates

Base processing rate 0.1 1.0 10.0

MAD [%] 8.52 5.02 3.156

gets longer. The accuracy of the method did not see m to diﬀer signiﬁcantly

for systems with given or optimized buﬀer allocation.

The results in Table 13 show that the performance of our method de-

grades as the variability of the processing times increases.

Tables 14 and 15 summarize the results for parts of the original param-

eter space from Table 10. Case 7 in Table 15, for example, shows that for

Analysis and optimization of ﬂow lines 15

Table 12 Impact of the number of stations in the line

Number of stations 3 5 7

MAD [%] 4.844 5.798 6.056

Table 13 Impact of the squared coeﬃcient of variation of the processing times

SCV 0.25 0.5 1.0 2.0

MAD [%] 2.549 3.781 6.227 9.706

Table 14 Partial analysis for Test Bed A; “a. c.” means “all cases”

Case 1 2 3 4 5

Number of periods a. c. 5000 a. c. a. c. a. c.

Buﬀer spaces p. buﬀer a. c. a. c. 2 a. c. a. c.

Base processing rates a. c. a. c. a. c. 0.1 a. c.

Bottleneck factor cases a. c. a. c. a. c. a. c. a. c.

Line length cases a. c. a. c. a. c. a. c. a. c.

Variability cases a. c. a. c. a. c. a. c. 2.0

Buﬀer allocation cases a. c. a. c. a. c. a. c. a. c.

Number of cases 1944 648 648 648 486

Average deviation [%] -2.75 -2.45 -8.12 -7.11 -6.62

MAD [%] 5.57 5.93 13.3 8.52 9.71

Maximum absolute 40.82 40.82 40.82 40.82 40.82

deviation [%]

Table 15 Partial analysis for Test Bed A (continued)

Case 6 7 8 9

Number of periods 5000 5000 10000, 20000 10000, 20000

Buﬀer spaces per buﬀer a. c. 2 a. c. 10, 50

Base processing rates 0.1 0.1 1.0, 10.0 1.0, 10.0

Bottleneck factor cases a. c. a. c. a. c. a. c.

Line length cases a. c. a. c. a. c. a. c.

Variability cases 2.0 2.0 0.25, 0.5, 1.0 0.25, 0.5, 1.0

Buﬀer allocation cases a. c. a. c. a. c. a. c.

Number of cases 54 18 648 432

Average deviation [%] -14 -34.17 0.06 0.27

MAD [%] 15.52 34.17 2.92 0.62

Maximum absolute 40.82 40.82 16.79 3.25

deviation [%]

lines with a base processing rate of 0.1, two spaces per buﬀer and a SCV of

2.0, the MAD is 34.17% which indicates that in this part of the parameter

space the method fails. Case 9 in the same table, however, shows that for a

base processing rate of at least 1.0, a buﬀer size of at least 10 and a SCV of

the proc ess ing times of at most 1.0, the method leads to a MAD of 0.62%

with a maximum deviation of 3.25%. Figure 5 shows the frequency diagram.

In this area, the method seems to work quite reliably.

16 Helb er, Stefan et al.

0

20

40

60

80

100

0 10 20 30 40 50

0

20

40

60

80

100

Percentage of the cases

Percentile of the relative deviation

Case 9

Cumulated percentage

Fig. 5 Percentage of cases over percentiles of relative deviations for all 432 in-

stances of case 9 of test bed

Table 16 Test Bed B for the analysis of longer lines (216 cases)

Parameter type Number of Parameter value per case

cases

Number of periods 1 10000

Buﬀer spaces 4 1, 2, 4, 8

per buﬀer

Base processing 1 1.0

rates

Bottleneck factor 3 (f. m.: 0.9; o. m.: 1.0),

(all machines 1.0),

(l. m.: 0.9; o. m.: 1.0)

Number of stations 3 3, 5, 7

Processing time 3 0.25, 0.5, 1.0

variability

Buﬀer allocation 2 even vs. production-rate maximizing

In the ﬁnal step of our analysis we again turned our attention to smaller

buﬀers in the Test Bed B described in Table 16, as this part of the parameter

space is both practically important and most challenging to analyze.

Table 17 shows that the overall pe rformance of the procedure is relatively

poor, if only one or two buﬀer spaces per buﬀer exist. With four or more

buﬀer spaces, the approach works quite well. Once again, the performance

degrades as ﬂow lines get longer, see Table 18. The analysis of the eﬀect

of processing time variability in Table 19 conﬁrms the previous observation

that the method works well for low and medium variability of the processing

times. Figure 6 shows the frequency diagram for Test Bed B.

Analysis and optimization of ﬂow lines 17

Table 17 Impact of the number of buﬀers spaces per buﬀer (Test Bed B)

Number of buﬀers 1 2 4 8

MAD [%] 16.72 7.949 2.849 0.956

Table 18 Impact of the number of stations in the line (Test Bed B)

Number of stations 3 5 7

MAD [%] 5.562 7.474 8.319

Table 19 Impact of processing time variability (Test Bed B)

SCV 0.25 0.5 1.0

MAD [%] 3.222 6.232 11.902

0

5

10

15

20

25

30

35

40

0 10 20 30 40 50

0

20

40

60

80

100

Percentage of the cases

Percentile of the relative deviation

Small buffers: Case 1

Cumulated percentage

Fig. 6 Percentage of cases over percentiles of relative deviations for all 216 in-

stances of Test Bed B

Table 20 Partial analysis for Test Bed B

Case 1 2 3 4

Number of periods 10000 10000 10000 10000

Buﬀer spaces per buﬀer a. c. 1 2 4

Base processing rates a. c. a. c. a. c. a. c.

Bottleneck factor cases a. c. a. c. a. c. a. c.

Line length cases a. c. a. c. a. c. a. c.

Variability cases a. c. a. c. a. c. a. c.

Buﬀer allocation cases a. c. a. c. a. c. a. c.

Number of cases 216 54 54 54

Average deviation [%] -7.09 -16.72 -7.95 -2.84

MAD [%] 7.12 16.72 7.95 2.85

Maximum absolute 31.67 31.67 17.07 7.46

deviation [%]

18 Helb er, Stefan et al.

Table 21 Partial analysis for Test Bed B (continued)

Case 5 6 7

Number of periods 10000 10000 10000

Buﬀer spaces per buﬀer 8 2, 4, 8 1

Base processing rates a. c. a. c. a. c.

Bottleneck factor cases a. c. a. c. a. c.

Line length cases a. c. a. c. a. c.

Variability cases a. c. 0.25, 0.5 1.0

Buﬀer allocation cases a. c. a. c. a. c.

Number of cases 54 108 36

Average deviation [%] -0.84 -2.28 -14.17

MAD [%] 0.96 2.35 14.17

Maximum absolute 3.63 8.43 31.67

deviation [%]

0

10

20

30

40

50

60

70

0 10 20 30 40 50

0

20

40

60

80

100

Percentage of the cases

Percentile of the relative deviation

Small buffers: Case 6

Cumulated percentage

Fig. 7 Percentage of cases over percentiles of relative deviations for all 108 in-

stances of Case 6 of Test Bed B

We again studied parts of the parameter space of Test Bed B as reported

in Tables 20 and 21. The result for Case 6 in Table 21 shows that the method

works well, if at least two buﬀer spaces per buﬀer are available and the SCV

of the processing times does not exceed 0.5. The frequency diagram for this

case is presented in Figure 7.

The solution times for the linear program were usually within the area

of seconds up to a maximum of a few minutes on a 3 GHz Intel Pentium IV

machine with 4 GB of RAM and the CPLEX 10.0 solver from ILog. Some-

times it appeared to take more time to construct the matrix of the linear

program for a problem instance than to determine the optimal solution of

the linear program. With respect to the computation times, incorporating

the buﬀer allocation problem did not seem to make a major diﬀerence.

Analysis and optimization of ﬂow lines 19

4 Conclusion and further research

In this paper we presented a novel approach to incorporate simulation into

linear programming optimization models of ﬂow lines with limited buﬀer

capacity. The key idea was to use a discrete-time modeling framework and

to transfer sampled processing times of workpieces into sampled processing

capacities of workstations. Within a mixed integer programming software,

a ﬂow line can be simulated without using a dedicated discrete event simu-

lation package. All that is needed is a random number generator to create

a stream of realizations of stochastic processing times, which are turned

into sampled processing capacities. The advantage of the method is that

it allows to incorporate the buﬀer allocation problem into the analysis and

optimization of a ﬂow line. The method yields reasonably precise produc-

tion rate estimates, unless the buﬀers between the machines are very small

and/or the variability of the (eﬀective) processing times at the machines is

rather high. However, a s ystem with both a very high variability of the ef-

fective proc ess ing times and very few buﬀer spaces will usually not operate

eﬃciently anyway. In an economically eﬃcient ﬂow line, the bottleneck is

rarely starved or blocked and under these conditions our method generally

performs well. We conclude that it may be a powerful tool to analyze and

optimize ﬂow lines with low to moderate processing time variability.

We are currently extending this work to ﬂow lines with closed loops,

for example due to a ConWiP production control system. First results are

promising. It should also be possible to analyze re-entrant lines using our

method. Based on these results we will extend our analysis to the investment

problem of designing lines such that the net present value from the invest-

ment is maximized (Helb e r, 2001), including the decision about alternative

machines for the production stages.

References

Abdul-Kader, W. (2006). Capacity improvement of an unreliable production

line–ananalytical approach. Computers & Operations Research 33, 1695–

1712.

Altiok, T. (1996). Performance Analysis of Manufacturing Systems. New

York et al.: Springer.

Buzacott, J. A. and J. G. Shanthikumar (1993). Stochastic Models of Man-

ufacturing Systems. Englewood Cliﬀs, NJ: Prentice Hall.

Dallery, Y. and S. B. Gershwin (1992). Manufacturing ﬂow line systems:

A review of models and analytical results. Queuing Systems Theory and

Applications 12 (1-2), 3–94. Special issue on queuing models of manufac-

turing systems.

Gershwin, S. B. (1994). Manufacturing Systems Engineering. Englewood

Cliﬀs, New Jersey: PTR Prentice Hall.

Gershwin, S. B. and J. E. Schor (2000). Eﬃcient algorithms for buﬀer space

allocation. Annals of Operations Research 93, 117–144.

20 Helb er, Stefan et al.

Helber, S. (1999). Performance Analysis of Flow Lines with Non-Linear

Flow of Material, Volume 473 of Lecture Notes in Economics and Math-

ematical Systems. Berlin et al.: Springer-Verlag.

Helber, S. (2001). Cash-ﬂow-oriented buﬀer allo cation in stochastic ﬂow

lines. International Journal of Production Research 39, 3061–3083.

Helber, S. (2005). Analysis of ﬂow lines with cox-2-distributed processing

times and limited buﬀer capacity. Operations Research Spectrum 27, 211–

242.

Helber, S. and K. Henken (2007). Proﬁt-oriented shift scheduling of inbound

contact centers with skills-based routing, impatient customers, and retri-

als. Technical Report dp-379, Leibniz Universitaet Hannover, Institut

fuer Pro duktionswirtschaft, Koenigsworther Platz 1, D-30167 Hannover.

Isermann, R. (1987). Digitale Regelsysteme. Band I: Deterministische

Regelungen. Berlin, Heidelberg, New York: Springer.

Johri, P. K. (1987). A linear programming approach to capacity estimation

of automated production lines with ﬁnite buﬀers. International Journal

of Production Research 25, 851–866.

Kelton, W. D., R. P. Sadowski, and D. T. Sturrock (2006). Simulation with

Arena with CDROM (4 ed.). McGraw Hill Higher Education.

Law, A. M. and W. D. Kelton (1991). Simulation Modeling and Analysis

(2 ed.). New York et al.: McGraw-Hill.

Liberopoulos, G., C. T. Papadopoulos, B. Tan, J. M. Smith, and J. M.

Gershwin (Eds.) (2006). Stochastic Modeling of Manufacturing Systems.

Advances in Design, Performance Evaluation, and Control Issues, Berlin,

Heidelberg, New York. Springer.

Matta, A. and R. Chefson (2005). Formal properties of closed ﬂow lines

with limited buﬀer capacities and random processing times. In J. M.

Felix-Teixera and A. E. C. Brito (Eds.), The 2005 European Simulation

and Modelling Conference, Porto, pp. 190–198.

Schruben, L. W. (2000). Mathematical programming m odels of discrete

event system dynamics. In J. A. Joines, R. R. Barton, K. Kang, and P. A.

Fishwick (Eds.), Proceedings of the 2000 Winter Simulation Conference,

pp. 381–385.

Swain, J. J. (2007). Simulation software survey. OR/MS Today 34 (5).

Tijms, H. C. (1994). Stochastic Models. Chichester: Wiley.