price-directed control of remnant inventory systems

PRICE-DIRECTED CONTROL OF REMNANT INVENTORY SYSTEMS
DANIEL ADELMAN
The University of Chicago, Graduate School of Business, 1101 East 58th Street, Chicago, Illinois 60637, [email protected]
GEORGE L. NEMHAUSER
Logistics Engineering Center, School of Industrial and Systems Engineering, Georgia Institute of Technology, Atlanta, Georgia 30332,
[email protected]
(Received January 1997; revisions received January 1998, June 1998; accepted August 1998)
Motivated by make-to-order cable manufacturing, we describe a remnant inventory system in which orders arrive for units of raw material
that are produced-to-stock. As orders are satis!ed, the partially consumed units of material, or remnants, are either scrapped or returned
to inventory for future allocation to orders. We present a linear program that minimizes the long-run average scrap rate. Its dual prices
exhibit many rational properties, including monotonicity and superadditivity. We use these prices in an integer-programming-based control
scheme, which we simulate and compare with an existing control scheme previously used in practice.
faction of orders for length 5, while all other arcs represent
satisfaction of orders for length 3. The lengths 19; 18; 16;
and 13 do not appear because they are not attainable.
The bold arcs track a unit of length 20 from the time it
is produced until it is scrapped. (The dashed arcs will be
discussed later.) The unit is !rst allocated to an order for
length 3 and after some production delay returns to inventory
as a remnant of length 17. Next, this 17 is allocated to another
order for length 3 and returns as a remnant of length 14.
Upon allocation to three more orders for length 3, a remnant
of length 5 is returned. This unit of length 5 can again be
allocated to an order for length 3, returning a remnant of
length 2 that must be scrapped. Alternatively, this unit of
length 5 can be allocated to an order for length 5 to generate
zero scrap. We can summarize the policy depicted by the
bold arcs as requiring that all orders for length 5 be satis!ed
with units of length 5, and given this requirement, that orders
for length 3 be satis!ed by any unit available.
Now suppose that when an order for length 5 is to be satis!ed, only two units are in inventory, and they have lengths 5
and 6 (under some policy that generates them). To minimize
scrap, clearly we would prefer to allocate the unit of length
5. However, suppose now that the only two units available
are lengths 20 and 15. Which unit is preferable, if either? In
this case the answer is not so clear because it depends on the
scrap that is likely to be produced in the future by a remnant
of length 15 versus a remnant of length 10. In this paper
we provide a methodology for answering such questions.
1. INTRODUCTION
In this paper we introduce a model and present policies for
operating an inventory system that generates usable remnants. We !rst give a generic description of this system.
Then we discuss an industrial setting where it arises and
outline the rest of the paper.
1.1. System Description
Orders for lengths of material units arrive to a manufacturing
facility that stocks units of various lengths (depicted in Figure 1). Let C = {1; 2; : : : ; n} be the set of order lengths, and
suppose that orders for length j ∈ C are demanded at some
rate !j ¿0. If length j is not ordered, then !j = 0. An order
for a unit of length j can be satis!ed by any unit in inventory
having length i¿j. At the start of each period (one shift),
units are allocated to orders. After processing in a production
facility, each remnant generated—in this case one of length
i−j—must be scrapped if it is too short to be reallocated,
and otherwise is returned to inventory for future allocation
to another order. Scrapped units leave the system and are not
recycled. Raw units are produced to replenish length consumed and arrive at aggregate rate " with a fraction Pi having
length i. Let F be the set of raw and remnant lengths, including the null length 0 to represent no scrap. Without loss of
generality, we assume F ≡ C ∪ {0} and let Pi = 0 if length
i is not produced as a raw unit. The problem we consider in
such remnant inventory systems is to satisfy all orders with
allocations so as to minimize the long-run average scrap rate.
To illustrate the dynamics of this remnant "ow, the network in Figure 2 depicts all possible remaining lengths of
a unit for a factory that produces raw units only at length
20 (i.e., P20 = 1) and has orders only for lengths 3 and 5,
at rates !3 = 90 and !5 = 10. Horizontal arcs represent satis-
1.2. Motivation and Outline
This work is based on our development of an integerprogramming (IP) based system for controlling a large
!ber-optic cable manufacturing plant (Adelman et al.
Subject classi!cations: Production=scheduling, cutting stock: dynamic. Networks, generalized networks: duality theory. Programming, integer, applications: !ber-optic cable
manufacturing.
Area of review: MANUFACTURING OPERATIONS.
Operations Research, ? 1999 INFORMS
Vol. 47, No. 6, November–December 1999, pp. 889–898
889
0030-364X/99/4706-0889 $05.00
1526-5463 electronic ISSN
890
/
ADELMAN
AND
NEMHAUSER
Figure 1. A remnant inventory system.
1999). The new system implemented in early 1996 has
led to more than a 30% reduction in scrap costs. In this
context, units are optical !bers that are required by orders
for !ber-optic cables of customer-speci!ed lengths. The required transmission properties preclude the splicing of optical !bers within the cables, and so allocated !bers must
be at least as long as the ordered lengths. Consequently,
remnant !bers of various lengths are generated as cables
are manufactured. These !bers are stocked in inventory and
are continually replenished with new !bers, i.e., raw units.
During the manufacturing process of optical !bers, random
breakages and "aws occur and so a range of !ber lengths
is produced (Murr 1992). Consequently, we cannot solve
the scrap problem by simply changing the raw !ber lengths
produced to match orders, but instead we must control the
remnants.
In each period the IP explicitly considers only the current period’s decisions, rather than decisions spanning an
extended horizon. However, the long-run consequences of
these short-term decisions are accounted for using a function that values units according to length. To see how such
a function is used, let V20 ; V15 ; and V10 be the values of units
having lengths 20; 15; and 10, respectively. Then V20 −V15
is the net decrease in the total value of the inventory when
satisfying an order for length 5 with a unit having length 20.
Figure 2. Possible remaining lengths of a unit for an example factory.
If V20 −V15 ¡V15 −V10 ; then allocating the unit of length 20
is preferable to allocating the unit of length 15. If there is
equality, then we are indi#erent.
We obtain the function Vi through an auxiliarly linear program, called the Remnant Network Flow Model (discussed
in §2) that values units with respect to the “market” for them
inside the factory. Orders “purchase” the units they need at
prices re"ecting the factory-wide objective of minimizing
the long-run average scrap rate.
Our central goals in this paper are to:
1. provide a formal methodology for obtaining the value
function,
2. prove many rational properties the value function satis!es, and
3. characterize the e#ect of its repeated use over time in
our integer program.
The properties that arise, given in §3, not only heighten
the intuitive economic appeal of our approach, thereby enhancing its acceptance by management, but as we show in
§3.2 are actually essential to proper decision-making. However, because of linear programming degeneracy, there is
typically an in!nite set of alternative optima on which one
or more properties are violated. To deal with this problem,
we develop a class of right-hand-side perturbations in §3.3
that guarantee the derivation of a value function satisfying
all of the properties.
In §4 we present our integer programming model for making periodic decisions along with simulation results demonstrating that our IP-based, price-directed approach generates signi!cantly less scrap than an existing remnant control
algorithm. We also discuss implementation in a stochastic
environment.
1.3. Literature Review
Our linear program is related to ones given in Courcoubetis and Rothblum (1991), Krichagina et al. (1998), and
Gans and van Ryzin (1997), which are pathwise formulations in the tradition of cutting-stock problems (Gilmore
and Gomory 1961, Dyckho# 1981, Dyckho# 1990, Cheng
et al. 1994). In constrast with cutting-stock problems where
remnants are typically scrapped, our remnants are usable
and consumed over time. Viewing remnants as partially
consumed bins, our work is related to on-line bin-packing
(Galambos and Woeginger 1995), where bins are packed
sequentially through time. However, this literature explores
performance bounds for simple heuristics, which is quite
di#erent from our price-directed approach. The paper by
Scheithauer (1991) discusses how to incorporate remnant
values into the cutting-stock problem but does not explain
how to compute these values.
Price-directed methods, such as the Dantzig–Wolfe
decomposition (Dantzig and Wolfe 1960), for solving
mathematical programs have been known for some time.
The di#erence here is in the use of these prices not to
solve a problem instance, but rather to construct a control
policy for a dynamic system. Roundy et al. (1991) develop
a price-directed methodology for job shop scheduling,
ADELMAN
Figure 3. Conservation of "ow at a node in the network
G = (F; A).
AND
NEMHAUSER
/
891
by constraint (2) in the following linear program called the
Remnant Network Flow Model (PSCRAP), which minimizes the long-run average scrap rate #:
(PSCRAP)
Min # =
!
iSi ;
(1)
i∈F
!
Pi " +
Yk; i =
{k:(k; i)∈A}
!
!
Yi; k = !j
Yi; k ¿ 0
We now present a linear programming model whose optimal
dual prices yield the value function Vi . De!ne a network
G = (F; A); where the set of nodes is the set of lengths for
units F and the set of arcs is de!ned by
A = {(i; k): (i−k) ∈ C; i; k ∈ F}:
So A is the set of all possible allocations. For each (i; k) ∈ A
let the decision variable Yi; k represent the long-run average
rate at which units of length i are transformed into remnants
of length k (by satisfying an order for length i−k). Also let
Aj represent all possible allocations to an order for length j;
de!ned by Aj = {(i; k) ∈ A: i−k = j} ∀j ∈ C.
Note that some nodes represent units of length i ∈ F that
must be scrapped because they are too short to satisfy any
orders. In general, any unit may be scrapped if, for example,
units of that length build up faster than they can be used.
Thus, we give each node i ∈ F an outgoing arc Si ; representing the rate at which units of length i are scrapped. Each
node i ∈ F also has an incoming arc with "ow Pi ", where "
is a global decision variable specifying the production rate
of raw units and Pi is given. Of course, units of length i may
be supplied as remnants from other nodes k¿i and may also
be allocated to orders to produce remnants of length k¡i.
This conservation of "ow, depicted in Figure 3, is modeled
(5)
(6)
Constraints (3) ensure that orders are met, stating that the
rate at which units are allocated to orders of length j must
equal the rate !j at which they are demanded. Note that the
LP forces all units to be allocated or scrapped eventually,
i.e., in the long run there is no inventory holding.
In any feasible solution, " is the consumption rate of raw
units either through scrapping or allocation, as the following
conservation law expresses:
PROPOSITION 1. The Unit Length Flow Conservation Law
"
!
iPi =
i∈F
2.1. The Primal Model
(4)
∀i ∈ F;
" ¿ 0:
(2)
(3)
∀(i; k) ∈ A;
Si ¿ 0
2. THE REMNANT NETWORK FLOW MODEL
∀i ∈ F;
∀j ∈ C;
(i; k)∈Aj
where machine prices come from Langrangian multipliers
for dualized constraints of an integer program. Their operating policy uses these prices heuristically in solving local
single-machine scheduling subproblems.
Other work related to allocating !bers in !ber-optic
cable manufacturing includes Johnston (1993) and Northcraft (1974), who present heuristics similar to one given
in §4.3. The papers by Gue et al. (1997), Clements
et al. (1997), and Nandakumar and Rummel (1998)
present other problems that arise in !ber-optic cable
manufacturing.
Yi; k + S i
{k:(i; k)∈A}
!
j!j +
j∈C
!
(7)
iSi
i∈F
holds for any feasible solution ("; Y; S) to (PSCRAP).
PROOF. Multiplying each Equation (2) by i and summing
over all i ∈ F; we obtain
!
i∈F

i
!
{k: (i; k)∈A}
Yi; k −
!
{k: (k;i)∈A}

Yk; i  =
!
i(Pi "−Si ):
i∈F
Now each variable Yi; k appears in the left-hand side of this
equation twice: once with coe$cient i and once with coe$cient −k. Thus, using (3) we may rewrite the left-hand side
as
!
(i−k)Yi; k =
(i; k)∈A
! !
j∈C (i; k)∈Aj
jYi; k =
!
j!j :
j∈C
It follows that minimizing the long-run average scrap rate
is equivalent to minimizing the rate at which units are consumed, i.e., (PSCRAP) is equivalent to
(PMU)
Min "; subject to (2) – (6):
Because all nodes i ∈ F have a scrap arc, there is a trivial necessary and su$cient feasibility condition, which we
assume holds.
892
/
ADELMAN
AND
NEMHAUSER
PROPOSITION 2. Primal Feasibility: (PMU) and (PSCRAP)
are feasible if and only if ∃i ∈ F; such that Pi ¿0 and
i¿ max{ j∈C: !j ¿0} j:
It now follows that (PMU) and (PSCRAP) have optimal
solutions.
In Figure 2, because length 20 is the only raw length
produced, the "ow on the arc entering node 20 is ". The
"ows on the dashed arcs coming out of nodes 2,1, and 0 are
S2 ; S1 ; and S0 , respectively. All intermediate arcs represent
the "ows Yi; k .
By using only the bold arcs in Figure 2, an optimal
solution can be constructed to (PMU) with "∗ = 16:667.
∗
∗
∗
∗
∗
Hence, Y20;
17 = Y17; 14 = Y14; 11 = Y11; 8 = Y8; 5 = 16:667 by
"ow conservation (2). At node 5 the "ow splits so that
Y5;∗ 0 = 10; and Y5;∗ 2 = 6:667. Consequently, S2∗ = 6:667;
S1∗ = 0; and S0∗ = 10. It is easily veri!ed that constraints (3)
are satis!ed. The optimal input rate is "∗ = 16:667.
Thus, the optimal scrap rate is #∗ = 2S2∗ = 13:333; which
can be veri!ed by applying unit length "ow conservation
(7). As a percentage of total length consumed, #∗ =20"∗ = 4%
is scrap.
We discuss the intuition behind this primal optimal solution in §3.2, in the context of a corresponding dual optimal
solution. As we shall see, we can convert this primal optimal
solution to another primal optimal solution that has positive
"ow on (8; 3) → (3; 0) by shifting "ow from (8; 5) → (5; 0).
Because there are an in!nite number of alternative primal
optimal solutions that use arcs (8,3), (8,5), (5,0), and (3,0)
in various proportions, there is no rational basis for restricting consideration only to those policies that achieve the
particular rates Yi;∗k in any one of those solutions. These
considerations motivate us to consider the dual.
2.2. The Dual
The dual of (PMU) is
!
(DMU) Max
!j BBj ;
(8)
j∈C
!
Pi Vi 61;
(9)
i∈F
BBi−k 6Vi −Vk
∀(i; k) ∈ A;
Vi ¿0 ∀i ∈ F:
(10)
(11)
Each node i ∈ F in the remnant network is given a potential
Vi ; the value of a unit having length i; which is the dual price
associated with the unit "ow balance constraint (2) for that
node. Similarly, BBj corresponds to the demand satisfaction
constraint (3) for length j; and therefore values orders for
length j.
When (PMU) is nondegenerate these dual prices are
unique, and we interpret them as follows. If raw units of
length i are supplied from a secondary source at some small
rate $¿0, then Vi is the marginal decrease in ". Similarly,
if additional orders for length j arrive at rate $¿0, then BBj
is the marginal increase in ".
We are interested in pairs ("∗ ; Y ∗ ; S ∗ ) and (V ∗ ;
BB∗ ) of optimal solutions to (PMU) and (DMU), respectively, that satisfy the complementary slackness conditions
"
∗
&
!
k∈F
'
Pk Vk∗ −1
= 0;
Si∗ Vi ∗ = 0
∗
Yi;∗k (Vi ∗ −Vk∗ −BBi−k
)=0
(12)
∀i ∈ F; and
∀(i; k) ∈ A:
(13)
(14)
Trivially, if %j∈C !j ¿0; then "¿0 in every feasible solution.
Thus by (12), the value of the average raw unit is 1.
In the “market” for units modeled by (DMU), constraint
(10) means that orders for length i−k are willing to purchase
units of length i; for Vi ∗ −Vk∗ ; only if they cost no more than
∗
BBi−k
. This follows from complementary slackness (14)
because otherwise Yi;∗k = 0.
PROPOSITION 3. For all j ∈ C such that !j ¿0;
∗
) ∀j ∈ C:
BBj∗ = min (Vi ∗ −Vi−j
(i; k)∈Aj
(15)
PROOF. By (10), and by the fact we are maximizing an objective function (8) with positive coe$cients, (15) holds.
This result holds for all j ∈ C such that !j ¿0; but may
be violated if !j = 0. However, in §3.3 we show that a dual
optimal solution can always be found that satis!es (15). As
there may exist more expensive allocations, but none less
∗
expensive, we call BBi−k
the base budget of an order for
length i−k. The objective (8) then maximizes the rate at
which value for the factory accumulates from orders “purchasing” units.
For each length j, the minimum in (15) can be attained
at multiple lengths i. We call any (i; k) in Aj that attains the
minimum a permissible allocation.
DEFINITION 1. The set
∗
= Vi ∗ −Vk∗ }
A∗0 ≡ {(i; k) ∈ A : BBi−k
(16)
is called the set of permissible allocations under the optimal
dual prices (V ∗ ; BB∗ ).
DEFINITION 2. F ∗ = {i ∈ F: Vi ∗ = 0} is the set of scrappable
lengths.
Because the arcs in F ∗ and A∗0 have zero reduced cost,
they may have positive "ow in an optimal primal solution.
In §4 we consider IP-based policies that allow only these
arcs.
The base budget BBj∗ decomposes into two terms: one
for purchasing length j and one for purchasing the resulting change in system scrap. To see this, let (V # ; BB# ) be
a feasible solution to (DSCRAP), the dual of (PSCRAP).
Then (V # ; BB# ) is an optimal solution to (DSCRAP) if and
ADELMAN
only if
V# + i
Vi ∗ = (i
k∈F kPk
∀i ∈ F;
(17)
and
BBj# + j
BBj∗ = (
k∈F kPk
∀j ∈ C
(18)
is an optimal solution to (DMU). This mapping gives us an
interesting interpretation of the quantity Vi ∗ − Vk∗ , the net
decrease in the value of the inventory in making allocation
(i; k), because it implies the identity
Vi ∗ − Vk∗ =
(i − k) + (Vi # − Vk# )
(
:
f∈F fPf
(19)
Hence, in making such an allocation, V ∗ (and BB∗ )
accounts for both the order length cut from the unit,
i − k, and the change in the scrap position of the inventory
Vi # − Vk# . The denominator on the right-hand side simply
scales according to the average raw unit length. Also, as
a consequence of (17), (18), and (19), we are indi#erent between using either (V ∗ ; BB∗ ) or (V # ; BB# ), because
∗
#
(%f∈F fPf )(BBi−k
− (Vi ∗ − Vk∗ )) = BBi−k
− (Vi # − Vk# ).
3. PROPERTIES OF OPTIMAL SOLUTIONS
3.1. The Properties
We give six properties that are intuitively desirable for the
value function Vi ∗ to satisfy. Subsequently we will prove
that there always exists a dual optimal solution satisfying
these properties, and we show how to obtain one.
PROPERTY 1. Monotonicity: Vi ∗ ¿Vk∗
i¿k.
∀i; k ∈ F such that
Monotonicity states that a unit is at least as valuable as
any shorter unit. This is intuitive because the unit can handle
any set of orders that a shorter one can.
∗
PROPERTY 2. Superadditivity: Vi+k
¿Vi ∗ +Vk∗
that i + k ∈ F.
∀i; k ∈ F such
Superadditivity means that a unit of length 15, for example, is worth at least much as two units, one having length
5 and the other having length 10. The rationale is that any
set of allocations possible with the two units is also possible
with the single unit having length 15. A 15 may even be able
to handle other sets of allocations that the 5 and 10 together
cannot, such as !ve allocations to orders for length 3.
PROPERTY 3. Scrap valueless: Any length i that is scrapped
has Vi ∗ = 0. We call such lengths scrappable.
Any length scrapped should have zero value because it
does not satisfy any orders. This follows from (13) for
AND
NEMHAUSER
/
893
lengths i such that Si∗ ¿0. However, because there may be
some primal optimal solutions with Si∗ = 0 and others with
Si∗ ¿0; Vi ∗ = 0 is not guaranteed for all optimal solutions of
(DMU), even if i is less than the minimum (positively) ordered length. This situation illustrates the di$culty that can
be caused by degeneracy and alternative optima.
We now present three properties of permissible allocations. First, the set of permissible allocations includes
“perfect !ts”.
PROPERTY 4. Zero scrap permissibility: It is permissible to
generate zero scrap; i.e.; BBj∗ = Vj∗ − V0∗ = Vj∗ ∀j ∈ C.
Here we use Property 3 to assume that V0∗ = 0. Note that
this property should hold even for order lengths j ∈ C with
!j = 0.
PROPERTY 5. Permutability: If it is permissible to satisfy
an order for length j1 with a unit of length i; and then
permissible to use the remnant to satisfy an order for
length j2 ; then it is also permissible to satisfy the order for
∗
length j2 !rst and then j1 . Formally; if BBj∗1 = Vi ∗ − Vi−j
1
∗
∗
∗
∗
∗
∗
and BBj2 = Vi−j1 − Vi−j1 −j2 ; then BBj2 = Vi − Vi−j2 and
∗
∗
BBj∗1 = Vi−j
− Vi−j
.
2
1 −j2
PROPERTY 6. Usability: For all i ∈ F; either i is scrappable;
i.e:; Vi ∗ = 0; or there exists an order length j with !j ¿0
∗
and i − j¿0 such that BBj∗ = Vi ∗ − Vi−j
.
Usability states that each unit, regardless of length, has
an e$cient use; i.e., it either has zero value and is therefore
scrappable, or there exists at least one permissible allocation
to an order length that is positively demanded in the long
run. The usability of a unit having length i is immediate
from zero scrap permissibility whenever !i ¿0. However,
usability should also hold even for lengths i ∈ F with !i = 0.
As a consequence of usability, it is impossible for a unit to
get “stuck” in the system because it has no use.
3.2. Alternative Optima
Figure 4 illustrates a value function associated with our example in §1.1 and §2.1 that is monotonic and superadditive. Also V0∗ = V1∗ = V2∗ = 0 because these lengths must be
scrapped. This V ∗ , together with BB3∗ = V3∗ and BB5∗ = V5∗ ,
constitute a dual optimal solution, so zero scrap permissibility is satis!ed.
The value function depicted in Figure 4 is listed as solution #1 in Table 1, which also contains two alternative
dual optimal solutions. In all three solutions, BB3∗ = V3∗ and
BB5∗ = V5∗ . The values in solutions #2 and #3 that di#er
from solution #1 are highlighted. The reader can verify that
all three dual solutions are feasible and satisfy the complementary slackness conditions (12) – (14) with respect to the
primal solution presented in §2.1 and are hence optimal.
Nevertheless, solutions #2 and #3 violate monotonicity as
894
/
ADELMAN
AND
NEMHAUSER
Figure 4. An example value function.
well as superadditivity, e.g., solution #2 has V1∗ + V4∗ ¿V5∗ .
Also, despite the fact that a unit of length 1 would have to
be scrapped, V1∗ (= 0 in solution #2.
In all dual solutions BB3∗ = V8∗ − V5∗ and BB5∗ =
∗
V5 −V0∗ . By (14) this means that arc "ows Y8;∗ 5 and Y5;∗ 0 may
be positive; i.e., each allocation in the path (8; 5) → (5; 0) is
permissible. Permutability says, and it is easy to verify, that
BB5∗ = V8∗ − V3∗ and BB3∗ = V3∗ − V0∗ ; i.e., each allocation
in the path (8,3) → (3,0) is permissible as well.
Table 1. Multiple dual optimal values of Vi ∗ for the example problem.
Vi ∗
Unit Length i
Solution #1
Solution #2
Solution #3
0
1
2
0
0
0
0
0.1667
0
0
0
0
3
4
5
0.1667
0.1667
0.1667
0.1667
0.3333
0.1667
0.1667
0.1667
0.1667
6
7
8
0.3333
0.3333
0.3333
0.3333
0.5
0.3333
0.3333
0.3333
0.3333
9
10
11
0.5
0.5
0.5
0.5
0.6667
0.5
0.5
0.6667
0.5
12
13
14
0.6667
0.6667
0.6667
0.6667
0.8333
0.6667
0.6667
0.8333
0.6667
15
16
17
0.8333
0.8333
0.8333
0.8333
1
0.8333
0.8333
1
0.8333
18
19
20
1
1
1
1
1.1666
1
1
1.1666
1
The bold and dashed arcs in Figure 2 together represent
the set of permissible allocations for solution #1. As posed
earlier, suppose an order for length 5 is to be satis!ed and
there are two units in inventory, one of length 20 and one of
length 15. Which allocation is preferable, if either? Because
(20,15) is permissible in solution #1 but (15,10) is not, we
may therefore conclude that length 20 is preferable. However, both allocations are permissible in solutions #2 and
#3. Despite the fact that solutions #2 and #3 are optimal, we
argue that in practice (15,10) should not be used.
To understand why, we must consider what the allocations not in A∗0 for solution #1, i.e., (15,10), (12,7), (10,5),
(9,4), (7,2), and (6,1), have in common. First note that they
all represent satisfaction of orders for length 5. Secondly,
each allocates a second or third order for length 5 to the
unit. Indeed, we may summarize the set of permissible allocations for solution #1 by stating that over its lifetime we
may use each raw unit to satisfy at most one order for length
5. Thus, we may satisfy six orders for length 3 to produce
scrap of length 2. Or, we may satisfy one order for length 5
and !ve orders for length 3 to produce zero scrap. We would
like to use this last pattern as much as possible. However,
we do not have enough orders for length 5 to use it as often
as we wish, because nine orders for length 3 arrive for each
single order for length 5 (according to !3 and !5 ). Consequently, satisfying more than one order for length 5 with a
given unit wastes these precious orders, despite the fact that
satisfying four orders for length 5 results in zero scrap, for
example.
So then why is (15,10) permissible in solutions #2
and #3? In solution #2, each allocation in the path
20 → 15 → 10 → 7 → 4 → 1 is permissible. However, because V1∗ ¿0 by complementary slackness (13) S1∗ = 0, and
hence there can be no "ow traversing this path. In practice, if we allowed these permissible allocations, then units
having length 1 would build up in!nitely if not scrapped,
and once scrapped would yield a suboptimal scrap rate. In
solution #3, there is no permissible allocation for a unit of
length 10, nor is it scrappable. Hence, in practice, if we allowed only permissible allocations, units of length 10 would
∗
build up in!nitely as well. In both of these cases Y15;10
=0
in all corresponding primal optimal solutions even though
(15,10) is permissible. The reason in these cases is because
usability is violated by some subsequent remnant length.
One way to ensure usability is to add in!nitesimal positive in"ows of each length of unit i ∈ F, so
then the optimization must !nd a use for each length.
When there are also in!nitesimal in"ows for each order length j ∈ C, we prove in §3.3 that all properties are
satis!ed.
3.3. Proofs of the Properties
The set A∗0 generates a union of several alternative primal
solutions, corresponding to a union of allocation policies,
all of which satisfy the permutability property. Of all properties, that is the only one that does not depend on the
$-perturbations we give next.
ADELMAN
THEOREM 1 (PROPERTY 5). The set A∗0 satis!es the permutability property:
(i1 ; i2 ) ∈ A∗0 and (i2 ; i3 ) ∈ A∗0
PROOF. By (10) and by the de!nition of A∗0 .
and
Vi1∗−(i2 −i3 ) − Vi3∗ ¿BBi∗1 −i2 = Vi1 − Vi2∗ :
These inequalities imply
Vi1∗−(i2 −i3 ) 6Vi1∗ − Vi2∗ + Vi3∗
− Vi2 + Vi3 ;
j∈C
But then this equation can be written in two ways:
Vi1∗ − Vi1∗−(i2 −i3 ) = Vi2∗ − Vi3∗ = BBi∗2 −i3 ;
THEOREM 2 (PROPERTY 1). Under an $-perturbation; Vi ∗ is
nondecreasing.
Vi1∗−(i2 −i3 ) − Vi3∗ = Vi1∗ − Vi2∗ = BBi∗1 −i2 :
The conclusion then follows.
As demonstrated in §3.2, an arbitrary set of optimal dual
prices does not necessarily satisfy Properties 1– 6. However, we now show that under any in!nitesimal perturbation
contained within a class called $-perturbations, all these
properties are satis!ed.
DEFINITION 3. Choose a small $¿0 and vectors % ∈ R |F| and
& ∈ R |C| such that
%i ¿0 ∀i ∈ F;
!
%i = 1;
with !j = 0;
{ j∈C: j6i}
Perturb each primal constraint (2) so that it reads
!
%i $ + Pi " +
Yk; i
{k: (k; i)∈A}
∀i ∈ F;
∗
∗
∗
Vi ∗ − Vi−j
= BBj∗ 6Vi+1
− Vi+1−j
:
∗
∗
But by the induction hypothesis Vi−j
6Vi−j+1
, which implies
∗
∗
then that Vi 6Vi+1 :
PROOF. Each such length i can be allocated to orders at a
maximum rate of %{ j∈C : j6i} &j $. Because by De!nition 3,
%{ j∈C: j6i} &j ¡%i , this leaves some excess in"ow from %i $,
which must therefore be scrapped; i.e., Si∗ ¿0. The result
follows from complementary slackness (13).
&j = 0 ∀j ∈ C with !j ¿0; and
!
&j ¡%i ∀i ∈ F:
Yi; k + Si
PROOF. First note that V0 ∗ = 0 by complementary slackness,
because to be feasible S0∗ = %0 $¿0. Therefore, V0∗ 6V1∗ .
∗
Now suppose that Vk−1
6Vk∗ for all k6i, for some i ∈ F.
∗
Because Vi is optimal and we are minimizing V s in (23), Vi ∗
cannot be decreased in isolation. Note that Vi ∗ can always be
feasibly decreased without violating (11), because Vi ∗ ¿0,
and without violating (9). Therefore, there must exist a j ∈ C
∗
such that Vi ∗ − Vi−j
= BBj∗ . By dual feasibility we have
THEOREM 3 (PROPERTY 3). Under an $-perturbation; all
lengths i ∈ F such that i¡ min{ j∈C : !j ¿0} j have Vi ∗ = 0.
i∈F
{k: (i; k) ∈ A}
(23)
i∈F
subject to (9) – (11) and (22).
See Greenberg (1986) and Jansen et al. (1996) for more
on perturbations.
Vi1∗−(i2 −i3 ) = Vi1∗ − Vi2∗ + Vi3∗ :
=
(21)
Such a perturbation is called an $-perturbation.
and solving
!
!
Max
&j BBj −
%i Vi
∗
therefore,
&j ¿0 ∀j ∈ C
895
j∈C
and
!
and each primal constraint (3) so that it reads
!
Yi; k = !j + &j $ ∀j ∈ C:
/
Such perturbations represent the introduction of an exogenous supply of raw units at rate $, with a fraction %i having
length i. The &j s ensure that order lengths j such that !j = 0
are priced appropriately.
As $ ↓ 0, the e#ect of an $-perturbation on the dual is an
optimization over the dual optimal face. This optimization
can be executed by adding the cut
!
!j BBj = "∗ ;
(22)
Vi1∗ − Vi1∗−(i2 −i3 ) ¿BBi∗2 −i3 = Vi2∗ − Vi3∗
∗
NEMHAUSER
(i; k)∈Aj
⇒ (i1 ; i1 − (i2 − i3 )) ∈ A∗0 and (i1 − (i2 − i3 ); i3 ) ∈ A∗0 :
Vi1∗−(i2 −i3 ) ¿Vi1∗
AND
(20)
The converse of this theorem is not true. For example,
suppose P8 = 1; !3 ¿0, and !5 ¿0, but !3 ¡!5 . Then units
of length 3 must be scrapped, even though length 3 is ordered. Nevertheless, as a corollary to monotonicity, the set
of scrappable lengths, F ∗ , is a set of consecutive integers
starting with 0.
896
/
ADELMAN
AND
NEMHAUSER
THEOREM 4 (PROPERTY 4). Under an $-perturbation zero
scrap permissibility holds; i.e.; BBj∗ = Vj∗ ∀j ∈ C in every
optimal dual solution.
can be constructed under which (V ∗ ; BB∗ ) is optimal to
(23).
PROOF. See Adelman (1997).
PROOF. Because !j + &j $¿0, primal feasibility implies
that there exists an i ∈ F such that Yi;∗i−j ¿0, so by com∗
plementary slackness Vi ∗ − Vi−j
= BBj∗ . By permutability,
this arc can be permuted down until arriving at a k¿j
∗
∗
= 0 and Vk∗ − Vk−j
= BBj∗ . Thus Vk∗ = BBj∗ .
such that Vk−j
If k = j, then we are done; otherwise, by monotonicity
Vj∗ 6Vk∗ = BBj∗ . Now by dual feasibility Vj ¿BBj∗ , so equality must hold.
THEOREM 5 (PROPERTY 2). Under an $-perturbation; Vi ∗ is
superadditive.
PROOF. Because BBj∗ = Vj∗ by zero scrap permissibility, dual
feasibility says
∗
Vj∗ = BBj∗ 6Vi ∗ − Vi−j
∀(i; i − j) ∈ A:
Now we show that all lengths either have a possible use
among the set of permissible allocations or can be scrapped.
THEOREM 6 (PROPERTY 6). Under an $-perturbation; the usability property is satis!ed; that is; for all i ∈ F; either
i ∈ F ∗ or (inclusive) there exists a k such that !i−k ¿0; and
(i; k) ∈ A∗0 .
PROOF. Under an $-perturbation each length i has an in"ow of %i $, which must be either scrapped or allocated. If
some of the "ow is scrapped, then Si∗ ¿0 and so Vi ∗ = 0
by complementary slackness (13). If all of the "ow is allocated, then there must be some arc (i; k) on which it is
sent such that !i−k ¿0. This follows from De!nition 3 because %{ j∈C: j6i} &j ¡%i ensures that not all of %i $ can be
consumed by order lengths j6i such that !j = 0. Because
Yi;∗k ¿0; (i; k) ∈ A∗0 by complementary slackness (14).
Di#erent choices of % and & may give di#erent dual optimal solutions. From the results given above, any such solution satis!es all properties. However, it is still possible,
as in §3.2, to have permissible allocations (i; k) such that
Yi;∗k = 0 in all corresponding primal optimal solutions satisfying complementary slackness. Such an example is given
in Adelman (1997). To avoid this situation it is necessary to
produce an optimal primal-dual pair satisfying strict complementary slackness, which can be done using an interior
point algorithm (Jansen et al. 1996). This means Yi;∗k ¿0
for all permissible allocations (i; k) ∈ A∗0 , and Si∗ ¿0 for all
scrappable lengths i ∈ F ∗ .
We have shown that under $-perturbation, Properties
1– 6 are satis!ed by an optimal solution to (23). We can
also show a related result.
THEOREM 7. Suppose (V ∗ ; BB∗ ) is an optimal solution of
(DMU) satisfying Properties 1– 6. Then an $-perturbation
4. SIMULATION
4.1. The One-Period Decision Problem and
System Environment
In each period we have a set of units available for allocation, each with a known length, along with a set of orders
requiring allocation. Each order is for a known length and
number of units. We must (1) select a subset of orders to satisfy, and (2) allocate units to each order selected. Because
there may not be enough units to satisfy all orders, each order is given a user-speci!ed priority bonus. This problem is
solved periodically over time, as new orders arrive and new
remnant and raw units become available. In §4.2 we present
an integer program that uses the value function in making
these periodic decisions. In §4.3 we use simulation to compare this approach with a decision rule previously used in
the cable factory.
Although we have analyzed a deterministic system, in
practice remnant inventory systems, such as in !ber-optic
cable manufacturing, experience random arrivals of orders
and units. To test the e#ectiveness of our methodology in
such an environment, the system we simulate has Poisson
arrivals of orders and units, thinned according to the distributions !j and Pi . We impose a constraint on the maximum number of units that may circulate in the system, so
it is impossible for the inventory to grow inde!nitely. Although we do not impose such a hard constraint on the order backlog, in each period we select a maximal number of
orders with the units available. In addition, whenever the
number of orders awaiting allocation grows too large, we
allow a few orders to take nonpermissible allocations. Although this negatively impacts the scrap rate, we !nd that
by setting the production rate of raw units slightly above
"∗ and allowing a large enough number of units to circulate, the relative frequency of nonpermissible allocations is
negligible.
In operating the system, whenever a unit is generated shorter than any length ordered (i.e., of length
i¡ min{ j∈C: !j ¿0} j) it is immediately scrapped. Scrappable
lengths i with !i ¿0 are held in inventory until the maximum number of units allowed in circulation is reached, at
which time one is scrapped. If no unit can be scrapped and
this maximum number of units is achieved, then production
of raw units ceases until a unit can be scrapped.
4.2. IP-Based Operating Policies
In each period n ∈ {0; 1; : : :} let On be the set of orders awaiting allocation and Un be the set of units available. For each
o ∈ On let Lo ∈ C be the length of units required by order o.
Also, let Lu ∈ F be the length of unit u ∈ Un . Assume that
each order o ∈ On requires a0 units. (We can interpret the
ADELMAN
!j s de!ned in §1.1 as aggregate rates.) De!ne
&n ≡ {(u; o) ∈ Un × On : Lu ¿Lo }
(24)
∀u ∈ Un
to be the set of orders that unit u can satisfy, and
Ho; n ≡ {u ∈ Un : (u; o) ∈ &n }
∀o ∈ On
to be the set of units that can satisfy order o.
The total base budget of an order requiring ao ¿0 units
of length Lo is ao BBL∗o . The total budget for the order is then
taken to be
ao BBL∗o
+ 'o ;
(25)
where 'o ¿0 is the priority bonus for order o. For each unit
u long enough to satisfy order o, we set the assignment cost
to be VL∗u − VL∗u −Lo .
Let Zo be a decision variable that is 1 if order o is !lled,
0 otherwise, and let Xu; o be a decision variable equal to 1 if
unit u is assigned to order o, 0 otherwise. At the beginning
of each period n we solve
!
(IP) Max
(ao BBL∗o + 'o )Zo
o∈On
−
!
(u;o)∈&n
(VL∗u − VL∗u −Lo )Xu; o ;
(26)
!
Xu; o 61 ∀u ∈ Un ;
(27)
!
Xu; o = ao Zo
(28)
o∈Gu; n
u∈Ho; n
Xu; o ∈ {0; 1}
Zo ∈ {0; 1}
∀o ∈ On ;
∀(u; o) ∈ &n ;
∀o ∈ On :
Constraints (27) ensure that each unit is allocated to at
most one order. Constraints (28) state that order o is selected if and only if ao units are allocated to it. Observe
that when ao = 1 ∀o ∈ On , substituting out the Zo variables
and rewriting the right-hand side of (28) to be 61 converts
this into an assignment problem. By considering all units
and orders simultaneously, the model globally optimizes the
allocations in each period, for example satisfying as many
orders as possible with the limited permissible allocations
available. We assume that the capacity of the facility that
processes the allocated units is not binding, so that we are
limited only by the availability of units.
If the 'o s are set small enough, only permissible allocations would be taken in an optimal integer solution. Alternatively, we could restrict the set of allocations &n in (24).
In either case the objective function (26) because of (15)
would e#ectively reduce to
!
Max
' o Zo ;
(29)
o∈On
NEMHAUSER
/
897
Table 2. An empirical comparison of scrap.
to be the set of feasible assignments of units to orders. Also
de!ne
Gu; n ≡ {o ∈ On : (u; o) ∈ &n }
AND
SYSTEM
system1
system2
system3
system4
system5
system6
system7
system8
LP
IP
OLD RULE
5.92%
6.25
5.88
8.05
5.60
6.06
5.91
6.74
5.96% (0.09)
6.24 (0.07)
5.88 (0.06)
8.06 (0.12)
5.60 (0.06)
6.04 (0.07)
5.91 (0.06)
6.79 (0.14)
12.97% (0.38)
7.70 (0.14)
7.43 (0.10)
10.23 (0.18)
14.28 (0.33)
13.23 (0.42)
7.63 (0.11)
11.79 (0.32)
so that orders are prioritized according to their bonuses 'o .
Because if 'o = 0 we would be indi#erent between selecting
order o using only permissible allocations, and not selecting
it, we set 'o ¿0 for all orders o to give at least some positive
incentive for selection.
4.3. Results
For comparision, we simulated the performance of an existing remnant inventory control decision rule:
(OLD RULE) Beginning with the longest order and
giving successive priority to longest orders !rst, give
highest priority to generating the shortest remnant possible in each of the successive ranges [a1 ; b1 ); [a2 ; b2 ),
up to range [ah ; bh ).
In Adelman et al. (1999) the authors present a comparison
of this old approach with our methodology, using data from
an actual !ber-optic cable factory. The results given here
are based on a controlled simulation.
Orders ranged from 10 to 25 in length and required only
one unit. Raw units ranged from 35 to 60 in length, randomly
generated by a di#erent distribution Pi for each system. The
remnant return delay was 2 periods and up to 100 units were
allowed to circulate in the system. Raw units were produced
at the rate 1:1"∗ , where "∗ was computed by solving (PMU)
for each system instance.
For eight remnant inventory systems, each de!ned by its
!j s and Pi s, Table 2 compares scrap rates from (PSCRAP),
our IP-based approach, and (OLD RULE). Scrap is reported as a percentage of total length of units produced, with
the half-lengths of 95% con!dence intervals for the simulated quantities collected over 5,000 periods (approximately
50,000 orders) obtained using the method of batch means
(Law and Kelton 1991) with around 30 batches.
The scrap rates these systems generate from repeatedly
using our price-directed integer program empirically seem
to converge to the minimum scrap rates given by our linear
program. Compared with the old rule, we decrease scrap by
34% on average. Because of variability in the order and unit
arrival streams, the scrap rate "uctuates over time, along
with the order backlog and unit inventory. However, in our
experiments these "uctuations eventually smooth out to give
us these results.
898
/
ADELMAN
AND
NEMHAUSER
5. CONCLUSIONS
We have presented an inventory system in which the central
focus is on the allocation of remnants over time. We provided a methodology for valuing remnants, and presented
many insightful properties satis!ed by this value function.
In addition, we presented an integer program that can be
used in practice with these values to make allocation decisions. Our simulation results demonstrated that the empirical scrap rates attained by repeated use of this integer program through time, with our LP-based value function, seem
to converge to the LP’s minimum long-run average scrap
rate.
ACKNOWLEDGEMENTS
This paper is based on Daniel Adelman’s (1997) thesis,
which was supported by a Department of Energy PreDoctoral Fellowship for Integrated Manufacturing. Adelman was also supported by the University of Chicago
Graduate School of Business. Both authors were supported
by a grant from Lucent Technologies. George Nemhauser
was supported by NSF grant DDM-9115768.
REFERENCES
Adelman, D. 1997. Remnant inventory systems. Ph.D.
Dissertation, Georgia Institute of Technology, School of
Industrial and Systems Engineering, Atlanta, GA.
—–, G.L. Nemhauser, M. Padron, R. Stubbs, R. Pandit. 1999.
Allocating !bers in cable manufacturing. Manufacturing &
Service Oper. Management 1 21–35.
Cheng, C.H., B.R. Feiring, T.C. Cheng. 1994. Cutting stock
problem — a survey. Internat. J. Production Econom. 36
291–305.
Clements, D.P., J.M. Crawford, D.E. Joslin, G.L. Nemhauser, M.E.
Puttlitz, W.P. Savelsbergh, M. 1997. Heuristic optimization:
a hybrid AI=OR approach. Proc. CP97: Constraint-Directed
Scheduling.
Courcoubetis, C., U.G. Rothblum. 1991. On optimal packing of
randomly arriving objects. Math. Oper. Res. 16 176–194.
Dantzig, G., P. Wolfe. 1960. Decomposition principle for linear
programs. Oper. Res. 8 101–111.
Dyckho#, H. 1981. A new linear programming approach to the
cutting stock problem. Oper. Res. 29 1092–1104.
—–. 1990. A topology of cutting and packing problems. Euro. J.
Oper. Res. 44 145–159.
Galambos, G., G.J. Woeginger. 1995. On-line bin packing — a
restricted survey. ZOR — Math. Methods Oper. Res. 42
25 – 45.
Gans, N.F., G.J. van Ryzin. 1997. Optimal control of a multi-class,
"exible queueing system. Oper. Res. 45 677– 693.
Gilmore, P.C., R. Gomory. 1961. A linear programming approach
to the cutting-stock problem. Oper. Res. 9 849 – 859.
Greenberg, H.J. 1986. An analysis of degeneracy. Naval Res.
Logist. Quart. 33 635 – 655.
Gue, K.R., G.L. Nemhauser, M. Padron. 1997. Production
scheduling in almost continuous time. IIE Trans. 29 391–
398.
Jansen, B., C. Roos, T. Terlaky. 1996. Introduction to the theory
of interior point methods. T. Terlaky, ed., Interior Point
Methods of Mathematical Programming. Kluwer Academic
Publishers, The Netherlands.
Johnston, R.E. 1993. Dimensional e$ciency in cable manufacturing: problems and solutions. Math. and Comput.
Modelling 16 19 – 35.
Krichagina, E.V., R. Rubio, M.I. Taksar, L.M. Wein. 1998. A
dynamic stochastic stock cutting problem. Oper. Res. 46(5)
690 – 701.
Law, A.M., W.D. Kelton. 1991. Simulation Modeling
and Analysis. McGraw-Hill, New York.
Murr, M.R. 1992. Some stochastic problems in !ber production.
PhD Dissertation. Rutgers State University of New Jersey,
New Brunswick, NJ.
Nandakumar, P., J.L. Rummel. 1998. A subassembly
manufacturing yield problem with multiple production runs.
Oper. Res. 46.
Northcraft, L.P. 1974. Computerized cable inventory. Indust.
Engrg. 6 45 – 49.
Roundy, R.O., W.L. Maxwell, Y.T. Herer, S.R. Tayur, A.W.
Getzler. 1991. A price-directed approach to real-time
scheduling of production operations. IIE Trans. 23 149 –160.
Scheithauer, G. 1991. A note on handling residual lengths.
Optimization 22 461– 466.