Professional Documents
Culture Documents
North-Holland
131
1. Introduction
A multilevel production environment occurs when several production stages are to be planned (or
scheduled) simultaneously. Choosing lot sizes in such a system with limited capacity is a complex task. The
multilevel capacitated lotsizing problems most commonly dealt with in the literature are a simplification of
reality and can be described as follows:
* Present address: INSEAD, Fontainebleau, France.
0377-2217/91/$03.50 ~ 1991 - Elsevier Science Publishers B.V. (North-Holland)
132
given the external d e m a n d for N items over a time horizon of T periods, find the solution which
minimizes total setup and holding cost, without violating the following constraints:
backlogging of end items is not allowed,
- an item can be produced when all required c o m p o n e n t s are available,
- there are resources with limited capacity which must be respected,
each time an item is produced, a setup cost has to be paid and (in some cases) setup time is lost,
- holding cost is calculated based on the end of period inventory.
Mathematically this can be stated as follows:
-
Problem C L S P
N
min
(1)
E E (s,Y~, +hili, )
i=1 t = l
s.t.
Ii.1
Y'~ rijxl,,
i=I,...,N,
t=l,...,T,
(2)
jES(i)
N
E(a~xi,+A~Y~,)~C, k,
k=l
. . . . . K, t = l . . . . . T,
(3)
i=1
x,,<~BY,,
x,,, I , > 0 ,
~,~(0,1},
i = 1 . . . . . N, t = l
i=l,...,N,
. . . . . T,
t = l . . . . . T,
i = 1 . . . . . N, t = l . . . . . T,
(4)
(5)
(6)
where
a,k
A)
di,
si
h,
C,~
B
S(i)
N
T
K
r,j
x,
I,
Y,,
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
As we will show in the following sections, additional complications make the problem m u c h more
difficult than the generic formulation suggests. On the other h a n d introducing constant leadtimes or
transfer times when moving from level to level does not considerably change the complexity of the
problem, as long as these move times remain independent of actual shop load. They may however
introduce some period zero infeasibilities.
Figure 1 gives an example of such a general model and will be used to explain some definitions. In this
example there are four end items (1 to 4) each with k n o w n external d e m a n d s ( d 1 to d4). F o r all
components (5 to 17), the dependent d e m a n d can be calculated from the p r o d u c t structure and the
successor's d e m a n d (e.g., 1 is the successor of 5). For c o m p o n e n t 8 there is also an additional independent
d e m a n d (ds). The product structure in Figure 1 is very general. There are a n u m b e r of assembly type
operations, series type operations as well as item commonalities (e.g., item 12 is used by 7 as well as 8).
There are three capacity constraints (A, B and C) as indicated by the boxes in the figure. The first two
133
d2
d3
d4
~8
"
II
III
Multi level
Uncapacitated
Afentakis et al * [1]
Rosling * [29]
Graves [19]
Blackburn and Millen [9]
Crowston and Wagner * [10]
Crowston et al. [11]
Love * [25]
Zangwill * [37]
Capacitated
134
we develop heuristics based on rounding LP solutions which are capable of solving a large class of
different capacitated multilevel lotsizing problems. The final section of this paper is devoted to the
development of a large set of problems to test the efficiency of these heuristics. Given that no other
heuristics for the problem existed which could be used as a benchmark were available we opted for a set of
small test problems for which the optimal solution is known.
2.
Lotsizing
methods
If we want to solve complex lotsizing problems in real environments we need to use fast and simple
heuristics. This is particularly true if this lotsizing procedure is only part of a larger system such as for
instance MRP. For the single level capacitated lotsizing problem, heuristics have already shown to produce
good results [33]. They are for most environments the only realistic approach.
2.1. Common sense heuristic
When designing heuristics for an optimization problem, one can basically distinguish between two main
approaches. The first group of methods is based on optimization theory and is in one way or another a
truncated or accelerated version of the true optimization algorithm. The advantages of this approach are
that the method is in general quite reliable, it is easy to determine bounds on the obtained solution, etc. On
the other hand, this technique requires mathematical insight and can be quite complex. Examples of such
heuristics for lotsizing are, e.g., the Lagrangean heuristic developed by Thizy and Van Wassenhove [32]
and the network based approach by Zahorik et al. [36].
The second way to develop heuristics is to apply a set of common sense rules to the problem. These
rules can be based on insights into the problem (as is the case in most heuristics) or on randomisation as is
the case in simulated annealing. The advantages of this second approach mainly come from practical
observations. These heuristics are generally quite fast and fairly transparant to the user.
Let us now focus our attention on common sense heuristics for capacitated lotsizing problems. Most
heuristics of this type work in very much the same way. Basically one can distinguish between three main
steps:
- A step aimed at reducing costs through batching into larger lotsizes (i.e. trying to save expensive setups
by paying a small amount of holding cost). Actually this is the body of the heuristic.
- A step to guarantee a feasible solution when the algorithm stops. This step is needed for two different
purposes: (1) to make sure that a feasible solution is created at the end of the algorithm even if no moves
have been suggested by the first step, and (2) one needs to preserve feasibility of a partial solution during
the batching step.
- An optional improvement step to perturb the solution and make additional savings based on small
changes to the basic solution.
In order to build this kind of heuristic, one must be able to check quickly whether proposed batchings
of demand are feasible or not. In other words the existence of a fast feasibility routine is essential to the
design of these heuristics.
2.2. Complexity of heuristics
The main purpose of this section is to classify the complexity of the feasibility ensuring step for
different lotsizing problems. The classification will tell us how difficult it is to design common sense
heuristics for these problems. Mathematically the feasibility problem can be stated as:
Given an instance of the capacitated lotsizing problem, i.e. a demand matrix, a set of capacity constraints
and product structure, does this problem have a solution?
The complexity of the capacitated lotsizing problem itself has been studied extensively [7,16]. The
feasibility problem on the other hand has not, except for a few simple cases.
135
setup times is in P.
Proof. Consider the following generic lotsizing algorithm:
Step 1: Set all setup variables II,,,= 1 (for all i, t).
Step 2: Solve the system of inequalities given by the constraints defined by problem CLSP.
Step 3: If this system has a solution, the problem is feasible and a solution is found. Otherwise no
solution exists and the problem is infeasible.
Since only the feasibility problem is considered costs are not important for the final solution and setup
costs can be disregarded. Putting all Y,, to 1 does not consume capacity given the zero setup times. This
yields a system of linear inequalities ( A x <~b). Solving such a system (Step 2) is no more difficult than
solving the linear programming problem:
min
x0
s.t.
x o + Ax <~b.
It is known that any linear programming problem can be solved in a running time bounded by a
polynomial function of the problem size (e.g. using Karmarkar's algorithm [21]). Hence finding out
whether a problem without setup times has a solution is in P. []
Lemma 2. The feasibility problem for capacitated lotsizing problems with nonzero setup times is NP-complete.
Proof. It is easy to see that the problem is in NP since a non-deterministic algorithm only needs to guess a
production plan, which can afterwards be checked for feasibility in polynomial time.
We prove that the problem is NP-complete by a reduction to the 3 partition problem which is known to
be NP-complete (Garey and Johnson [17]).
The 3 partition problem can be stated as:
Given a set S of 3N elements, a bound B >/0 and a size d i >/0 for each element of S, such that ]B < d i < B
and such that Y~,~ sd, = NB, does there exist a partitioning of S into N disjoint sets S l, S 2. . . . . SN such
that for 1 ~ j <~N, ~ , ~ s d , - - B? (Note that each Sj must therefore contain exactly three elements from S.)
Consider on the other hand the following lotsizing problem:
Given 3N items and N time periods, let d , = 0 for all i and t = 1. . . . . N - 1, while diN = d,. Moreover let
~ t = l ..... 3NY~t=I
Nd, = NB and each d, in the range between B and B. Each item has a setup time
equal to A > B, while the capacity in each period is B + 3A.
It is clear that each instance of the 3 partition problem can be viewed as an instance of this lotsizing
problem. Note that, given the capacity constraints, each item can be setup only once over the total horizon,
otherwise infeasibilities will occur.
.
Total capacity = ( B + 3A ) * N,
Total production = NB,
Total capacity left for setup = 3AN.
Hence each solution to the lotsizing problem also gives a solution to the 3 partition problem, which proves
the NP-completeness of the feasibility problem for lotsizing with equal setup times. []
136
Theorem 1. The feasibility problem for capacitated lotsizing problems which do not include setup times is in P.
I f setting up machines consumes limited resource, the feasibility problem is NP-complete.
Theorem 1 has important implications for the design of heuristics. If setup times are present, a simple
'common sense' algorithm cannot guarantee a feasible solution to all problem instances. This is probably
the main reason why one finds very few articles on lotsizing with setup times although this problem is
certainly as important as lotsizing with setup costs. In many cases setup costs are viewed as a Lagrangean
substitute for setup times which allows one to develop valid schedules or an otherwise very hard problem.
2.2.2. Capacitated lotsizing - with zero setup times
Although ensuring feasibility for problems without setup times is in P, this does not mean that all
different problem types in this class are equally easy. Note that the proof of Lemma 1 uses LP to find a
feasible solution. Solving an LP problem may require considerable time. For a number of special cases a
faster noniterative approach can be used.
A. Single level, single constraint. This is one of the easiest problems for which a closed form formula can be
defined. Dixon and Silver [12] proved that feasibility can be checked using the following formula:
N
i=1
(7)
m=l
137
3. LP-based heuristics
In this section, new heuristics are developed for the multilevel capacitated lotsizing problem with zero
setup times. Linear programming was chosen as a basis for the methods because it inherently captures
three very important elements of the problem: links across levels, links between time periods and shared
capacity. Equally important, LP codes are readily available in most computer centers. Finally LP models
can easily be adjusted when additional constraints apply. Unfortunately, without restricting some of the
variables to be integer, setup costs cannot be correctly modeled in an LP formulation. Our approach is to
try to round the obtained LP solution using insights into the problem structure.
Before the different heuristics are defined some introductory remarks may be needed to justify this
approach. Referring to the literature review of the single level case, one could argue that there may be
other (and faster) methods to solve these multilevel capacitated lotsizing problems. However the complexity of the multilevel problems prevents one from using these other approaches effectively. Consider the
relaxation algorithms presented for the single level capacitated lotsizing problem (e.g., Thizy and Van
Wassenhove [32]). If one applies Lagrangean relaxation to the capacity constraint, the problem decomposes in N single item uncapacitated lotsizing problems. These problems can be solved quite efficiently using
the dynamic programming approach of Wagner and Whitin [34]. When setup variables are fixed (as in the
primal part of the TVW algorithm), the problem can be reformulated as a transportation problem, and the
extreme flows can be found quite efficiently. For the case of single level capacitated lotsizing problem, the
primal as well as the dual problems can be solved to optimality quite fast using the special structure of the
problems.
Suppose now that we want to use a similar approach for the multilevel case. When capacity constraints
are relaxed in a Lagrangean fashion, they enter as production costs in the objective function. The problem
then decomposes in M single (end) item, multilevel uncapacitated lotsizing problems. The objective then is
to minimize a function which includes time dependent production costs. However as of yet there is no
efficient algorithm to solve these types of problems. Suppose on the other hand that one relaxes the
constraints which link the items across levels. In this case one obtains a number of single level capacitated
problems and these are of course hard to solve.
Consequently, if one wants to obtain subproblems which can be solyed efficiently, both the capacity
constraints and the multilevel constraints have to be relaxed. This is exactly the approach taken by
Billington [5] to solve the problem with a single bottleneck. Consider again the primal problem and
suppose the setups are specified. Even this simplified version of the original problem remains quite
complex since no special structure can be found for which efficient algorithms exist. Hence if one wants to
obtain primal solutions, a general LP problem has to be solved. Consequently a monolithic LP approach
will probably work more efficiently than these repeated applications of LP codes with fixed setups.
min
E 52 52
t=l
"r=l t=7
E E s,r,,
t-I
"r=l
(8)
138
s.t.
Y~xi~,=l,
i = 1 . . . . . N, t = l . . . . . T,
(9)
r=l
t
Y'~xi,,>~ Y'~xs(i,,t,
"r=l
N
E
i=1
i = 1 . . . . . N, t = l
. . . . . T,
(10)
"r=l
T
Eakid,,x,,,<~C~ k,
k = l . . . . . K t = l . . . . . T,
(11)
r=t
xi,,~<Y,,,
xi,t>~O,
i = 1 . . . . . N, ~ ' = 1 . . . . . T, t=~" . . . . . T,
i = 1 . . . . . N, ~ ' = 1 . . . . . T, t=~" . . . . . T,
Y,,~{0,1},
i = 1 . . . . . N, ~-=1 . . . . . T,
(12)
(13)
(14)
where
S(i)
Xi~.t
Cirt
Although (SPLS) is rather large in its general form, for certain specific problems a n u m b e r of reductions
and improvements can be made. For the special case of capacitated lotsizing (single level or multi level)
the n u m b e r of variables and constraints can be limited based on Proposition 1 (below). Also a n u m b e r of
additional constraints can be added to strengthen the LP lower bound. For ease of notation we will
consider only a single capacity constraint.
Proposition 1. An upper bound on the total inventory for item i (measured in capacity units) that can be built
up by the end of period t is given by
M . . . . i,t = min aidi,t+l,T,
Cm m=l
ajdj,~ .
j=l
m=l
m=l
i=1
m=l
aidim
forallj~Qt/Qmt.
139
(15)
-1
with I Qm,
t+l.
140
This algorithm treats the different levels starting from the most constrained level (defined as the level
with the highest ratio of total demand to the total available capacity) and ties are broken arbitrarily. On
each level the items are treated in order of nonincreasing setup cost s;. As long as the setup matrix is not
completely integer the different steps of the algorithm are repeated.
Step 2. Put Y,7 = 1 where Y/7 = max( Y/j I Y,j ~ Q }- If I Q I = 2 and J2 =Jl + 1 also put the second
fractional Y,j variable = 0. Solve LP and go to Step 3. Else solve LP and go to Step 1.
Step 3. If the LP solution is infeasible or if
Y'
[g.tlaftr> E
[Yn,] befre
or if
s; *
(2
ybefre-tj, -
y before]ij2] < L p a f t e r
_ Lpbefore,
then delete the most recently added constraint which forced an Y~j to zero and resolve LP. Goto Step 1.
Step 4. Find j lY, j ~ {0, 1} and j as small as possible: if Yq ~< 0.5 then put Y,j = 0, solve LP and goto
Step 5; if ~ j > 0.5 then put Y,j = 1, solve LP and goto Step 1. If no such j is found then i = i + 1, if i > N
then level = level + 1 and i = 1. If level > L STOP. Else goto Step 1.
Step 5. If the LP solution is infeasible or if
E
n=l .....
/rntl
. r 1after
i t=l ..... j
>~
y"
y"
[Ynt] befre
or if
Si * (1 -- ~j)
< L P after -
L P befre.
Replace the most recently added constraint which forced an ~ j to zero with ~ j = 1 and resolve LP. Goto
Step 1.
Step 1 searches for chains of Yq which sum up to 1. If two consecutive fractional ~ j are found the
smallest is forced to 0 and the largest to 1 in Step 2. Otherwise only the largest ~ j in the chain is forced to
1, leaving the others free. If no such chains were found, Step 4 searches for the first free setup variable for
the considered item and forces it to 1 or 0 depending on its fractional value being above or below 0.5. In
cases where some setup variables were fixed to 0, some additional checking is done in Steps 3 and 5. These
steps check whether feasibility remains guaranteed, whether the new rounded solution is cheaper than
before and whether it would not have been cheaper if this variable had also been forced to 1.
141
ward one here. In our implementation a simple backtracking algorithm with a last in, first out strategy is
used which fixes setup variables in order of increasing product number and period over all levels.
Algorithm PBB:
4. Computationalperformance
In this section we will test our heuristics on a number of problems. Since until now, no other heuristics
or optimal algorithms have been developed for these types of problems, we opt for rather small problem
sizes. This allows us to compare the performance of these heuristics to optimal solutions. In a companion
paper we compare these LP based heuristics to common sense heuristics for some restricted problems [28].
The set of test problems considers only serial product structures.
Five different parameters were included in the experimental design. The number of levels ranged from
one to three with a capacity constraint at each level. Cost structures for all items (i.e. end items,
subassemblies and components) were chosen to reflect either low (L) or high (H) TBO values, where TBO
is defined as the average time between orders according to the classical EOQ lotsize formula. At each level
all possible cost structures were combined with all combinations at the other levels. Hence two different
combinations were generated for single level problems (L and H), 4 for two level problems (LL, HH, LH,
HL) and 8 for three level systems (LLL, LLH, L H L .... ). For each of these combined cost profiles, 3
replications were taken. Hence there are 3 , 2 L sets of cost data depending on the number of levels L.
Capacity absorption was either the same for all items (value 1; i.e. uniform processors) or randomly
selected (i.e. random processors). Capacity tightness as measured by total demand over total available
capacity is given four values, 95%, 75%, 50% and 1% or uncapacitated. For two level systems the available
Table 2
Summary of experimental design
No. of levels
Uniform processors
Random processors
1 level
6 cost sets
4 capacity profiles
PROB301
6 cost sets
4 capacity profiles
PROB301M
2 levels
12 cost sets
16 capacity profiles
PROB302
12 cost sets
16 capacity profiles
PROB302M
3 levels
24 cost sets
14 capacity profiles
PROB303
XXXXXXXXXXXXX
142
Table 3
Average CPU in seconds on VAX 11/785
LPH1
LPH2
PROB301
PROB301M
Problem
2.8
4.7
2.5
5.0
PBB
9.7
51.0
IP
18.4
214.8
PROB302
PROB302M
17.4
28.3
20.5
38.3
138.4
2603.7
441.9
6677.3
PROB303
45.2
55.9
1011.5
2935.5
capacity at level 1 compared to level 2 is either equal (11), has the bottleneck at the end items ( / \ ) or the
bottleneck at the components ( \ / ) . For the three level problems only hourglass profiles were tested, i.e.
with the bottleneck located at the middle level. Table 2 summarizes the experimental design. For three
level systems, the case of random processors was omitted due to computer time limitations. A more
detailed description is given in the appendix.
4.2. Discussion
4.2.1. Computational requirements
All problems were solved on a VAX 11/785 using the four algorithms described earlier. Table 3 gives
average CPU times in seconds for all algorithms.
A number of important remarks can be made. For the LP oriented heuristics the large difference in
CPU time between uniform and random processors can be explained by the width of the integrality gap
between the LP solution and the optimal solution. Whereas for uniform processors this gap is on average
2.28% and less than 5% for the most difficult problems, these values grow to 4.67% and 18% for random
processors. As a consequence there will be more noninteger values in the latter case hence requiring more
iterations of the algorithm. Note also that even for these small problems CPU times become excessively
large for PBB and the optimal solution method as the number of levels grows.
<
I-13_
~1~
SINGLE LEVEL
TWO LEVELS
2
~
THREE LEVELS
0
rr
LL
Z
I--
>
l.iJ
o
LPH1
LPH2
PBB
HEURISTIC
143
-q
<
3
//~>5/
~'
O_
o
~//~.' TWO LEVELS, RANDOM PROCESSOR
o
13Z
I.I.
Z
o
<
C3
LPHl-single level
LPH2-single level
PBB-single tevef
LPH2-two levels
PBB-twe levers
HEURISTIC
5. Conclusions
This paper discussed two main topics related to the capacitated lotsizing problem. The first part of the
paper discussed complexity issues for realistic lotsizing problems. We proved that the main complexity
factor for the design of heuristics is the occurrence of setup times. More specifically, if setup time
consumes part of the limited capacity, finding a feasible solution is NP-complete. Consequently designing
simple heuristics for this problem is very difficult, unless one allows the heuristic to stop without a
solution.
Checking feasibility for problems without setup times on the other hand, can be done in polynomial
time. However, as shown in Section 2, constructing a feasible solution can be quite intricate. For certain
problem classes (i.e. those which are most realistic: multilevel, multiple capacity constraints, assembly type
144
of problem . . . . ) an iterative procedure may be needed for this purpose. Therefore, even for the so called
easy problems, simple heuristics may in fact become quite intricate and time consuming.
Based on these conclusions one might argue that one of the few alternatives remaining to solve these
problems is mathematical programming. In the second part of this paper we develop some heuristics based
on an LP formulation of the problem. The heuristics described in Section 3 try to curtail the enumeration
process, using information from the problem structure and LP relaxation of the model. Tests on small
problems show that these heuristics perform rather well under various circumstances.
Finally, we conclude that these heuristics are the first of their kind to solve multilevel lotsizing problems
with capacity constraints at multiple levels. The approach is very general in that a wide variety of different
lotsizing models can easily be solved by the same heuristics. Moreover the approach can be easily extended
to include additional constraints (e.g. aggregate inventory level).
Since up to now only small test problems have been solved some further research remains to be done.
First, the heuristics can be tested on larger problems taken from practical applications. The heuristics may
be improved by looking for other structural information or patterns in the LP solution. Finally the
complexity issue can be explored in more depth, trying to define more distinct classes such that it becomes
clear which specific lotsizing problems remain good candidates for heuristic development and which
problems should be solved based on mathematical programming based algorithms.
Appendix
Experimental design
Table A.1 presents the demand in units for the three end items. D e m a n d for each item was randomly
generated with a mean of 100. A different demand variability was chosen for each item.
Cost sets
Table A.2 presents 6 different setup cost sets. The first three sets in the table are data for low TBO
problems, while the last three cost sets result in a higher TBO. Note that since the systems under study are
serial and consequently have the same number of items on each level of the product structure, these cost
Table A.1
Demand set: 3 items - 10 periods
Period
item l
item2
item3
1
110
78
25
2
120
119
8
3
89
81
129
4
80
120
237
5
125
115
105
6
93
90
139
7
92
107
0
8
88
85
155
9
92
124
262
10
109
100
9
145
L1
L2
L3
HI
H2
H3
item 1
item 2
item 3
52
88
76
92
83
105
78
53
90
160
230
310
220
280
190
205
210
290
Table A.3(a)
Capacities for single level problems
Prob. No.
Capacity
1
2
0.95 (T)
O.75 (M)
0.50 (L)
0.01 (U)
Table A.3(b)
Capacity profiles for two level problems
Prob. No.
Profile
Capacity level 1
Capacity level 2
1
2
3
4
5
6
7
8
9
1o
11
12
13
14
15
16
II
11
II
H
/\
/\
/\
/\
/\
/\
\/
\/
X/
\/
\/
\/
0.95 (T)
0.75 (M)
0.50 (L)
0.01 (u)
0.95 (T)
0.95 (T)
0.95 (Y)
0.75 (M)
0.75 (M)
0.50 (L)
0.75 (M)
0.50 (L)
0.01 (U)
0.50 (L}
0.01 (U)
0.01 (U)
0.95 (T)
0.75 (M)
0.50 (L)
0.01 (u)
0.75 (M)
0.50 (L)
0.01 (U)
0.50 (L)
0.01 (U)
0.01 (U)
0.95 (T)
0.95 (Y)
0.95 (Y)
0.75 (M)
0.75 (M)
0.50 (L)
sets can be used at any level. The table gives the setup cost to be used, while it is assumed that the echelon
holding cost for all items is set equal to 1 at each level. This results in TBOs from 1.02 to 1.50 for low cost
values and from 1.8 to 2.5 for high values.
Capacities
Tables A.3(a), A.3(b) and A.3(c) give the capacity profiles used for single, two and three level problems
respectively. For two level problems a symbolic representation for the relative availability of capacity for
the first and the second level is also given in the table. For three level problems, all generated cases have an
hourglass profile, with the most constrained level in the middle. Table A.3(d) indicates how the actual
capacity in each period can be calculated using the information in the tables.
For two level problems three possibilities for the relative capacity availability of level 1 over level 2 were
included (i.e. equal II, bottleneck at end level / \ and bottleneck at component level \ / ) . For three level
146
Table A.3(c)
Capacity profiles for three level problems
Prob. No.
Capacity level 1
Capacity level 2
Capacity level 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
0.01
0.01
0.01
0.50
0.50
0.01
0.01
0.01
0.50
0.50
0.50
0.75
0.75
0.75
0.50 (L)
0.75 (M)
0.75 (M)
0.75 (M)
0.75 (M)
0.95 (T)
0.95 (T)
0.95 (T)
0.95 (T)
0.95 (T)
0.95 (T)
0.95 (T)
0.95 (T)
0.95 (T)
0.01
0.01
0.50
0.01
0.50
0.01
0.50
0.75
0.01
0.50
0.75
0.01
0.50
0.75
(U)
(U)
(U)
(t)
(L)
(U)
(U)
(U)
(L)
(L)
(L)
(M)
(M)
(M)
(U)
(U)
(L)
(U)
(L)
(U)
(L)
(M)
(U)
(L)
(M)
(U)
(L)
(M)
Table A.3(d)
Calculation of actual capacity at each level
The value for the actual capacity used in the experiments was calculated using the following F O R T R A N formula:
capacity = AINT (total demand/(FLOAT(No, periods)* fraction) + 0.5), where
capacity
is the capacity in each period used in the experiment.
total demand is the demand over all periods and all items expressed in capacity units.
No. periods
is the number of periods in the problem.
fraction
is the value taken from tables A.3(a), (b) or (c).
problems on the other hand only an hourglass profile was used since all other situations are extensions to
two level problems.
Table A.4
Capacity absorption coefficients
Set
item 1 at level 1
item 2 at level 1
item 3 at level 1
1
1
1
1
2
3
item 1 at level 2
item 2 at level 2
item 3 at level 2
1
1
1
2
3
1
item 1 at level 3
item 2 at level 3
item 3 at level 3
1
1
1
X
X
X
147
coefficients were excluded from the tests, since these require large amounts of CPU times with their 90
integer variables.
References
[1] Afentakis, P., Gavish, B., and Karmarkar, U., "Computationally efficient optimal solutions to the lotsizing problem in
multistage assembly systems", Management Science 30/2 (1984) 222-239.
[2] Bahl, H.C., and Ritzman, L.P., "A cyclical scheduling heuristic for lotsizing with capacity constraints", International Journal of
Production Research 22/5 (1984) 791-800.
[3] Bahl, H.C., Ritzman, E.P., and Gupta, J.N.D. "Determining lot sizes and resource requirements: A review", Operations Research
35/3 (1987) 329-345.
[4] Barany, I., Roy, T.J. van, and Wolsey, L.A., "Strong formulations for multi item capacitated lotsizing", Management Science
30/10 (1984) 1255-1261.
[5] Billington, P.J., "Multilevel lotsizing with a bottleneck work center", Unpublished Ph,D. Thesis, Graduate School of Management, Cornell University, May 1983.
[6] Billington, P.J., McClain, J.O., and Thomas, L.J., "Mathematical programming approaches to capacity-constrained MRP
systems: Review, formulation and problem reduction", Management Science 29/10 (1983) 1126-1141.
[7] Bitran, G.R., and Matsuo, H. "The multi item capacitated lot size problem: Error bounds on Manne's Formulation",
Management Science 32/3 (1986) 350-359.
[8] Blackburn. J.D., and Millen, R,A., "Simultaneous lotsizing and capacity planning in multistage assembly processes", European
Journal of Operational Research 16 (1984) 84-93.
[9] Blackburn, J.D., and Millen, R.A., "Improved heuristics for multistage requirements planning systems", Management Science
28/1 (1982) 44-56.
[10] Crowston, WB,, and Wagner, M.H., "Dynamic lot size models for multistage assembly systems", Management Science 20/1
(1973) 14-21.
[11] Crowston, W.B., Wagner, M.H., and Henshaw, A., "'A comparison of exact and heuristic routines for lot size determination in
multistage assembly systems", A H E Transactions 4/4 (1972) 313-317.
[12] Dixon, P.S. and Silver, E.A., "A heuristic solution procedure for the multi item, single level, limited capacity, lotsizing problem",
Journal of Operations Management 2/1 (1981) 23-39.
[13] Dogramaci, A., Panayiotopoulos, J.C., and Adam, N.R., "The dynamic lotsizing problem for multiple items under limited
capacity", AIIE Transactions 13/4 (1981) 294-303.
[14] Eisenhut, P.S., "A dynamic lotsizing algorithm with capacity constraints", AI1E Transactions 7/2 (1975) 170-176.
[15] Eppen, G.D., and Martin, R.K., "Solving multi item capacitated lotsizing problems using variable redefinition", Working Paper,
Graduate School of Business, University of Chicago, May 1985, 38 pp.
[16] Florian, M., Lenstra, J.K., and Rinnooy Kan, A.H.G., "Deterministic production planning: Algorithms and complexity",
Management Science 26/7 (1980) 122 20.
[17] Garey, M.R., and Johnson, D.S., Computers and lntractibilio,: A Guide to the Theoo' of NP Completeness, Freeman, San
Francisco, CA, 1979, 338 pp.
[18] Gelders, L.F., Maes, J., and Van Wassenhove, L.N., "A branch and bound algorithm for the multi item single level capacitated
dynamic lotsizing problem", in: S. Axs~iter, Ch. Schneeweiss and E. Silver (eds.), Multistage Production Planning and Inventory
Control, Lecture Notes in Economics and Mathematical Systems 266, Springer, Berlin, 1986, 92-108.
[19] Graves, S.C., "Multistage lotsizing: An iterative procedure", in: Schwarz (ed.), Multilevel Production and lnvento O, Control
,~vstems: Theory and Practice, North-Holland, Chapter 4, 1981, 95-110.
[20] Gtinther, H.O., "Planning of lot sizes and capacity requirements in a single stage production system", European Journal of
Operational Research, 31/2 (1987) 223-231.
[21] Hooker, J.N., "Karmarkar's linear programming algorithm", Interfaces 16/4 (1986) 75-90.
[22] Karni, R., and Roll, Y., "A heuristic algorithm for the multi-item lotsizing problem with capacity constraints". HE Transactions
14/4 (1982) 249-256.
[23] Lambrecht, M., and Van der Eecken, J., " A facilities in series capacity constrained dynamic lot size model", European Journal
of Operational Research 2 (1978) 42-49.
[24] Lambrecht, M.R., and Vanderveken, H., "Heuristic procedures for the single operation multi item loading problem", AI1E
Transactions 11/4 (1979)319 326.
[25] Love, S.F., "A facilities in series inventory model with nested schedules", Management Science 18/5 (1972) 327-338.
[26] Maes, J., "'Capacitated lotsizing techniques in manufacturing resource planning", Unpublished Ph.D. Thesis, Katholieke
Universiteit Leuven, 1987.
[27] Maes, J.. and Van Wassenhove, L.N., "A simple heuristic for the multi item single level capacitated lot sizing problem",
Operations Research Letters 4/6 (1986) 265-273,
[28] Maes. J., and Van Wassenhove, L.N., "Simple heuristics for the capacitated multilevel Iotsizing problem", to appear in
International Journal of Production Resarch.
148
[29] Rosling, K., "Optimal lot sizing for dynamic assembly systems", Working paper, Linkrping Institute of Technology, Sweden,
1985, 54 pp.
[30] Silver, E.A., and Meal, H.C., "A heuristic for selecting lot size quantities for the case of deterministic time-varying demand rate
and discrete opportunities for replenishment", Production and Inventory Management 2nd Qrt. (1973) 64-77.
[31] Steinberg, E., and Napier, H.A., "Optimal multilevel lotsizing for requirement planning systems", Management Science 26/12
(1980) 1258-1271.
[32] Thizy, J.M, and Van Wassenhove, L.N., " Lagrangean relaxation for the multi item capacitated lotsizing problem: A heuristic
implementation", liE Transactions 17/4 (1985) 308-313.
[33] Van Wassenhove, L.N, and De Bodt, M.A., "Capacitated lot sizing for injection moulding: A case study", Journal of the
Operational Research Society 34/6 (1983) 489-501.
[34] Wagner, H.M., and Whitin, T.H., "Dynamic version of the economic lot size model", Management Science 5/1 (1958) 89-96.
[35] Williams, J.F., "Heuristic techniques for simultaneous scheduling of production and distribution in multi-echelon structures:
Theory and empirical comparisons", Management Science 27/3 (1981) 336-352,
[36] Zahorik, A., Thomas, L.J., and Trigeiro, W.W., "Network programming models for production scheduling in multistage, multi
item capacitated system", Management Science 30/3 (1984) 308-325.
[37] Zangwill, W.I., "A deterministic multiproduct, multi-facility production and inventory model", Operations Research 14/3 (1966)
486-507.