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 flow 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 flow lines with limited buffer 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 offers the full modeling flexibility of stochastic
simulation with respect to the probability distribution of processing times.
However, unlike discrete-event simulation models, it also offers the optimiza-
tion power of linear programming and hence allows to s olve buffer 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 flow lines with limited buffer capacities and random
processing times
Stochastic processing times at the stations of a flow line with limited buffer
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 flow line, one needs to quantify this impact of processing time
variability on the line’s production rate and inventory level to effic iently
allocate machines and buffers.
In practice, discrete-event simulation (DES) is usually used to analyze
the performance of a planned flow 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 offers a great degree of model-
ing flexibility with respect to probability distributions and other details of
the line’s mode of operation. However, while modeling a flow line via DES
is easy, a systematic optimization of the flow line design is not. A simple
and relevant question is how to allocate a given total number of identical
buffer spaces in a flow line so that the production rate is maximized. This
question can usually not be answered efficiently 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 flow lines
with (un-)limited buffer capacities. The numerical effort 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 modification of such an analytic model may easily
extend the capabilities of a practitioner who may therefore resort to DES.
As a result, one rarely finds flow lines with limited buffer 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 flow lines with lim-
ited buffer 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 different 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 sufficiently 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 flow 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 buffer
allocation and/or machine selection decisions. In this case, additional in-
teger decision variables for the buffer 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 flexibility 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 flow 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 flow lines. A survey of
the literature on analytic queueing models of flow lines with limited buffer
capacity is given by Dallery and Gershwin (1992). The recent development
in the field 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
flow lines is more limited. Abdul-Kader (2006) presents a linear program-
ming (evaluation) model of an unreliable flow line in continuous time that is
based on an earlier model by Johri (1987). The buffer capacity in the model
by Abdul-Kader (2006) determines an upper limit of a summation index.
Therefore, the buffer capacity cannot be made a decision variable and only a
fixed and given buffer 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 flow line by Matta and Chefson,
the buffer capacity determines the number of constraints of the continuous
time LP. We are not aware of continuous time LP models of stochastic flow
lines in which the buffer size is a decision variable. However, in order to
optimize the design of a flow line, the buffer 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 flow
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 flow lines
2.1 Continuous time evaluation model
As stated above, several modeling approaches have been proposed for con-
tinuous time LP models of flow 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 buffer 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 buffer behind the last station K is assumed to be infinitely
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) defines the waiting time W
kw
of workpiece
w in the buffer behind station k. The starting time of workpiece w + 1 is
determined in Equation (4) by the finishing 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 buffer capacity b
k
,
the workpieces w and w + b
k
cannot be in the buffer behind station k at
the same time. For this reason Equation (5) states that workpiece w + b
k
cannot be transferred to a buffer before workpiece w has left this buffer.
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 buffers betwe en the stations determines the
number of constraints of the LP. The buffer 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 buffer 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 flow line. The resulting LP can become huge if tight confidence
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 buffer allo c ation decisions into a continuous
time model. For this reason, we propose a different approach.
Analysis and optimization of flow lines 5
Table 1 Notation for the continuous time model
Sets and indices
w = 1, ..., W workpieces
k = 1, ..., K stations in the flow line
Parameters
d
kw
processing time or duration at station k for workpiece
w
b
k
capacity of the buffer behind station k
Real-valued decision variables
XS
kw
starting time at station k for workpiece w
XF
kw
finishing time at station k for workpiece w
W
kw
waiting time for workpiece w in the buffer 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 figure 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 finished 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 sufficiently large number of work-
pieces must be considered and a sufficiently large numbe r of realizations of
the processing rates c
kt
at station k for different 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 different 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 tradeoff 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 flow line is
based on the following assumptions for the case of given buffer sizes:
– The flow line consists of stations k = 1, ..., K.
– Behind each but the last station there is a buffer that can hold b
k
parts.
This buffer size is exogenously given. The material supply to the first
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 first t
0
periods (warm-up phase).
Analysis and optimization of flow lines 7
Table 2 Notation for the discrete time model
Sets and indices
k = 1, ..., K stations in the flow 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 buffer behind station k
b
tot
exogenously given total buffer 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 buffer 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 defined (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 buffer capacity.
In this base (evaluation) variant of the discrete-time model, we assume
that the buffer allocation is given. We now turn to the buffer optmization
variant of the model and assume that only the total number b
tot
of buffer
spaces is given. We further assume that these buffer spaces can be freely
located be tween the machines and the production-rate maximizing buffer
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 buffer s ize X
k
. The equation (12) guarantees
that all the available buffer spaces are allocated in the line. This minor
modification allows to incorporate the buffer allocation problem and hence
to optimize the flow line. If we aim at the production-rate maximizing buffer
allocation, the original linear program (6)-(10) therefore turns into a mixed-
integer program as buffer 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 first part of this study, we compare our results to exact results for
reliable two-machine one-buffer 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 first 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 buffer spaces between the machines plus the
space at the second machine. It appears natural to start with two-machine
flow lines as these are the smallest possible flow lines with limited buffer
capacity. This initial analysis should provide first insights which help to
design experiments for the analysis of the method for flow 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 flow lines 9
– Number of periods in the discrete time linear program
– Number of buffers spaces for each buffer between the machines in the
flow 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 buffer size we expected to find more precise results for problem instances
with larger buffers. The modeling discrepancy between the discrete flow of
material in the real system and the continuous flow in the linear program
should be less relevant, if blocking and starving is reduced due to larger
buffers. 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 find
a processing rate that maximizes the accuracy of the method by balancing
these two opposing effects . It was not clear to us whether the location of a
potential bottleneck in the system has a significant effect on the accuracy
of the method.
Exact results are not available for flow lines with limited buffer 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 buffer spaces
We expec ted to find 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 find an increasing accuracy with decreasing variability as the
production rate of a zero-variability discrete material flow line can be deter-
mined exactly via a continuous flow model. It was not clear to us whether
the method should be more precise when the buffer 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 find 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
Buffer spaces 6 1, 2, 4, 8, 16, 32
per buffer
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 buffer spaces per buffer
Number of buffers 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 first 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 first 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 different combinations of parameter types led a to full factorial de-
sign of the experime nt with 5 · 6 · 3 · 5 = 450 different 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 buffer 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 flow 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 confirms 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 define 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
Buffer spaces 4 4, 8, 16, 32
per buffer
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 buffer sizes {1, 2, 4, 8, 16, 32} intro duced in Table 3,
the partial sets of buffer 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 buffer size “2” is missing between “1” and “4” and the subset
{4, 8, 32} is not compact bec ause the buffer 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 buffer 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 difficult cases of very low
processing rates or very sm all buffers. 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 buffer 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 buffer sizes are very small.
Analysis and optimization of flow 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
Buffer spaces 3 8, 16, 32
per buffer
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 buffer 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 coefficient 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 buffer spaces per buffer 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
“first 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
Buffer spaces 3 2, 10, 50
per buffer
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
Buffer 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 differ significantly
for systems with given or optimized buffer 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 flow 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 coefficient 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.
Buffer spaces p. buffer 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
Buffer 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
Buffer spaces per buffer 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
Buffer 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 buffer 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 buffer 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
Buffer spaces 4 1, 2, 4, 8
per buffer
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
Buffer allocation 2 even vs. production-rate maximizing
In the final step of our analysis we again turned our attention to smaller
buffers 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 buffer spaces per buffer exist. With four or more
buffer spaces, the approach works quite well. Once again, the performance
degrades as flow lines get longer, see Table 18. The analysis of the effect
of processing time variability in Table 19 confirms 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 flow lines 17
Table 17 Impact of the number of buffers spaces per buffer (Test Bed B)
Number of buffers 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
Buffer spaces per buffer 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.
Buffer 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
Buffer spaces per buffer 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
Buffer 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 buffer spaces per buffer 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 buffer allocation problem did not seem to make a major difference.
Analysis and optimization of flow lines 19
4 Conclusion and further research
In this paper we presented a novel approach to incorporate simulation into
linear programming optimization models of flow lines with limited buffer
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 flow 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 buffer allocation problem into the analysis and
optimization of a flow line. The method yields reasonably precise produc-
tion rate estimates, unless the buffers between the machines are very small
and/or the variability of the (effective) 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 buffer spaces will usually not operate
efficiently anyway. In an economically efficient flow 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 flow lines with low to moderate processing time variability.
We are currently extending this work to flow 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 Cliffs, NJ: Prentice Hall.
Dallery, Y. and S. B. Gershwin (1992). Manufacturing flow 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
Cliffs, New Jersey: PTR Prentice Hall.
Gershwin, S. B. and J. E. Schor (2000). Efficient algorithms for buffer 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-flow-oriented buffer allo cation in stochastic flow
lines. International Journal of Production Research 39, 3061–3083.
Helber, S. (2005). Analysis of flow lines with cox-2-distributed processing
times and limited buffer capacity. Operations Research Spectrum 27, 211–
242.
Helber, S. and K. Henken (2007). Profit-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 finite buffers. 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 flow lines
with limited buffer 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.