You are on page 1of 38

Finite inventory budgets in production capacity and safety stock

placement under the guaranteed service approach


Tarik Aouam1,2,∗ Foad Ghadimi1 Mario Vanhoucke1,3,4

January 6, 2021

Abstract
Following the guaranteed service approach (GSA), several studies have investigated the inter-
action between production and inventory decisions in multistage supply systems and developed
efficient algorithms to solve the large-scale optimization problems that emerge. These works have
largely ignored limited inventory budgets and their effect on production and inventory decisions.
In reality, however, firms tend to limit the amount of capital tied-up in inventories, and there is
usually a limited amount of storage space at a warehouse or a retailer. This study investigates
the problem of production capacity and safety stock placement with both limited capacity and
inventory budgets in general acyclic supply chains. This problem allocates capacity to production
stages and sets inventory targets at logistics stages, with the objective to minimize the expected
total supply chain cost while meeting a target customer service level.
The present paper contributes to the GSA literature in several ways. First, we compare guaran-
teed and chance-constraint approaches to model limited inventory budgets and analyze their effect
on safety stock placement. Second, we present two new equivalent formulations of the production
capacity and safety stock placement problem. Solving these new models using a successive piece-
wise linear approximation algorithm outperforms existing solution procedures in terms of solution
quality and time, in both cases of infinite and finite inventory budgets. Third, taking advantage
of the structure of these formulations, we develop a two-phase heuristic, which finds optimal or
near-optimal solutions and greatly improves CPU times. Finally, our numerical experiments show
that inventory budgets affect production capacity and safety stock placement decisions, increasing
both work in process (WIP) and safety stock levels.

Keywords— Supply chain management, production capacity, inventory budget, safety stocks, guar-
anteed service, mixed integer programming.

1 Introduction
In order to sustain a competitive advantage, supply chains are under unprecedented pressure to co-
ordinate production, transportation, and inventory decisions over complex supply networks, while

Corresponding author
1
Faculty of Economics and Business Administration, Ghent University, Tweekerkenstraat 2, 9000 Gent, Belgium
2
Université Internationale de Rabat, Rabat Business School - BearLab, Morocco
3
Vlerick Business School, Reep 1, 9000 Gent, Belgium
4
UCL School of Management, University College London, 1 Canada Square, London E14 5AA, United Kingdom
Email addresses: tarik.aouam@ugent.be (T. Aouam), foad.ghadimi@ugent.be (F. Ghadimi), mario.vanhoucke@ugent.be
(M. Vanhoucke)

1
delivering products at a lower cost and higher customer service. With the intent to model and analyze
the interaction between production and inventory decisions, several studies have adopted the guar-
anteed service approach (GSA), for example Tian et al. (2011); You and Grossmann (2011); Graves
and Schoenmeyr (2016); Lemmens et al. (2016); Kumar and Aouam (2018b); Aouam and Kumar
(2019); Ghadimi et al. (2020). Under GSA, which was first developed by Simpson Jr (1958), a supply
chain stage uses a combination of inventory and extraordinary measures to fulfil all customer demand
within a guaranteed service time. GSA offers great computational efficiency and can be used to opti-
mize inventory decisions in complex real-world networks (Eruguz et al., 2016). In addition, industry
managers seem to be comfortable with the notion of guaranteed service, despite the assumption of
using extraordinary measures (Graves and Willems, 2000).
Although several GSA studies have investigated the joint optimization of production and inven-
tory decisions in large supply networks and developed efficient solution algorithms, they have ignored
inventory budgets. In practice, however, firms tend to limit the amount of capital tied-up in invento-
ries and there is usually a limited amount of storage space at a warehouse or a retailer (Rosenblatt,
1981; Minner and Silver, 2005). Indeed, inventory budgets have been taken into consideration to set
inventory policies for different organizations, such as: the US Air Force (Sherbrooke, 1971); Xilinx
company, which produces programmable logic integrated circuits (Brown et al., 1999); an industrial
distributor of pneumatic products in the US (Millstein et al., 2014); a multinational first-tier auto-
motive supplier (Vidal-Carreras et al., 2017); and a food manufacturer and distributor (Yang et al.,
2017). Additionally, inventory budgets must be taken into account when storage space is a scarce
resource. This is the case for example when land acquisition cost is very high (Hariga, 2010), or when
shelf-space is limited (Brown and Tucker, 1961; Hübner et al., 2013; Lim et al., 2004; Reiner et al.,
2013; Geismar et al., 2015).
Furthermore, it has been found that inventory budgets affect safety stock placement. Graves and
Schoenmeyr (2016) introduce storage or processing capacity to limit the quantity of items that can
be stored or processed in a given time frame, which can be assimilated to an inventory budget. They
demonstrate that this limitation changes optimal safety stock placement policy when compared to the
infinite inventory budget or capacity case. They propose a censored-base stock policy and a dynamic
programming algorithm to set inventory targets for supply chains with a spanning tree network.
Ghadimi and Aouam (2021) impose a limit on the maximum inventory at the warehouse in a serial
system, with one manufacturer supplying a warehouse and a retailer. They prove analytically that
the well-known all-or-nothing property in serial systems under GSA does not hold when the storage
space at the warehouse is low. They also show, through extensive numerical experiments, that limited
storage at the warehouse does not alter the production capacity allocation at the manufacturer. This
result might be due to the simple network structure or to the fact that inventory is only constrained
at the warehouse.
The present study expands this line of work by investigating production capacity and safety stock
placement with finite budgets for capacity and inventory in general acyclic supply chains. In fact, it
is important to jointly optimize production and safety stock placement while considering both limited
production capacity and inventory budgets. A limited capacity at a production stage results in an
elongated lead time, which requires its downstream logistics stages to keep high inventory levels.
When these logistics nodes are constrained by an inventory budget, such as storage space for example,
holding high inventories might not be feasible. In such a case, either inventory should be shifted to a
different location, or capacity should be increased at the production stage to decrease the lead time.
As a result, ignoring limited inventory budgets may lead to sub-optimal or infeasible production and

2
inventory decisions.
This paper presents guaranteed and chance-constraint approaches to model limited inventory bud-
gets. The resulting production capacity and safety stock placement problem is a mixed-integer non-
linear program (MINLP) with a non-convex objective and constraints. While small instances of such
problems could be solved to global optimality using commercial solvers, instances of reasonable sizes
may require prohibitive computational times (Bussieck and Vigerske, 2010). A first approach to solve
the problem is to adapt the Lagrangian decomposition method proposed by Ghadimi et al. (2020) to
include inventory budget constraints. Our computational experiments show that a standard MINLP
solver is unable to provide feasible solutions even for small instances, while the adapted Lagrangian
decomposition method finds good solutions but requires long CPU times for larger instances. We
thus propose two new equivalent formulations of the production and safety stock placement problem.
Solving these new models using a successive piecewise linear approximation algorithm outperforms the
Lagrangian decomposition method, in terms of solution quality and time. Furthermore, taking advan-
tage of the structure of the new formulations, we develop a two-phase heuristic, which finds optimal
or near-optimal solutions and greatly improves CPU times. An important result is that the developed
algorithms in this paper outperform the Lagrangian decomposition method of Ghadimi et al. (2020)
both in cases of finite and infinite inventory budgets.
The outline of the paper is as follows. Section 2 briefly reviews relevant literature and highlights
the contribution of this work. Section 3 presents model assumptions and three MINLP formulations
of the production capacity and safety stock placement with infinite inventory budget. Section 4
discusses two approaches to model inventory budget constraints and study their effect on safety stock
placement. Solution procedures for the integrated problem are detailed in Section 5 and computational
experiments are reported in Section 6. Section 7 concludes the paper.

2 Related work and contribution


Safety stock optimization models in multi-echelon inventory systems have been studied following one
of two approaches: the stochastic service approach or the guaranteed service approach. The two ap-
proaches were compared by Graves and Willems (2003). While the stochastic service approach allows
a more exact understanding at the stage level that can serve as the building block for more complex
systems, GSA models the entire system at once without the need to approximate portions of the sys-
tem (You and Grossmann, 2011). In this paper, we adopt GSA to integrate production and inventory
decisions while considering capacity and inventory budget in general acyclic supply chains.

GSA studies with production and inventory decisions. Several studies have adopted GSA to
model and analyze the interaction between production and inventory decisions. Sitompul et al. (2008)
consider a serial supply chain with finite production capacity and propose a heuristic to set safety stocks
based on a correction factor estimated through simulation. Tian et al. (2011) develop an iterative
approach to jointly solve the problems of tactical production planning and safety stock placement.
They show the applicability of their solution method for industrial-scale problems using real-world
examples in the semi-conductor industry. You and Grossmann (2011) model a similar problem in
the chemical process industry. Their model simultaneously determines the optimal production plan,
safety stocks, purchase amount of raw materials, and sales amount of finished goods. As a solution
procedure, they propose a tailored branch-and-refine algorithm based on a successive piecewise linear
approximation. Graves and Schoenmeyr (2016) address the safety stock placement problem in supply

3
chains with finite capacity at each stage. They were able to characterize the optimal policy for a single-
stage. For multiple stages, they propose a modified base stock policy where orders are censored by
the capacity constraint. Accordingly, they extend the dynamic program (DP) of Graves and Willems
(2000) to solve the safety stock placement problem for capacitated supply chains with a spanning
tree structure. The above studies present different approaches to integrate production and inventory
decisions. However, they do not reflect the effect of utilization and variability on lead times and
consider lead times as exogenous parameters that are not dependent on the production decisions.
Recent works following GSA have considered production lead times to be endogenous variables,
linking production and inventory decisions. In this way, authors are able to analyze the effect of
different types of production decisions on safety stock placement, and formulate tractable problems to
jointly optimize these decisions in large-scale supply chains. Lemmens et al. (2016); Kumar and Aouam
(2018a,b) use queuing theory to formulate the problem of jointly optimizing lot-sizing and multi-
echelon inventory in supply networks. They analyze the effect of lot-sizes and production capacity
on inventory decisions. Aouam and Kumar (2019) represent production stages as G/M/1 queues and
study the impact of subcontracting and overtime on safety stock placement. Kumar and Aouam (2019)
integrate the tactical planning model of Graves (1986) with safety stock placement to analyze the
impact of production smoothing on inventory decisions. These works develop dynamic programming
algorithms to solve the emerging large-scale optimization problems and show that there is a great
added-value in coordinating production and inventory decisions. Although the above studies provide
a viable approach to jointly optimize production decisions and safety stock placement, the proposed
solution procedures can only handle supply chains with a spanning tree structure; yet, most real-world
supply chains have general acyclic networks (Willems, 2008).
Ghadimi et al. (2020) introduce capacity budgets and study the problem of jointly optimizing
capacity allocation to production stages and safety stock placement. Unlike previous works, they
do not assume any queuing model and consider general lead time functions that are decreasing and
convex in capacity. As a solution procedure, they develop a novel Lagrangian decomposition method
that iteratively solves two subproblems, namely a capacity planning subproblem and a safety stock
placement subproblem. Their algorithm is able to jointly optimize production and inventory decisions
in supply chains with a general acyclic network. The present paper builds on this line of inquiry
and presents new solution approaches that improve the results obtained by Ghadimi et al. (2020) in
terms of solution quality and time for large-scale acyclic supply chains, adapted from Willems (2008).
Furthermore, this work incorporates inventory budgets at logistics nodes and analyzes their effect on
production and inventory decisions.

Models with constrained inventory. Inventory constraints have been considered in several
stochastic service models. Veinott Jr (1965) is one of the first papers to address a stochastic inventory
problem with storage space limitations. He proposes an optimal base stock ordering policy in a
periodic review system with a finite horizon. When demand is stationary, the myopic ordering policy
is proved to be optimal (Ignall and Veinott Jr, 1969). Beyer et al. (2001) consider the stochastic
multi-product inventory model subject to a warehouse storage constraint. They obtain the optimal
ordering policy for finite horizon as well as stationary and nonstationary discounted-cost infinite-
horizon. Ghalebsaz-Jeddi et al. (2004) study a multi-product continuous review system when the
payment is due upon order arrival. They incorporate a budget restriction on the amount that can be
invested in inventory, where the budget constraint can easily be converted into a storage constraint.
Minner and Silver (2005) study a multi-product continuous review problem with Poisson demands

4
and zero lead times, where the aggregate inventory level at any time is restricted by a budget or space
limitation. Bera et al. (2009) study a multi-item stochastic inventory model in which safety factor
and order quantity are treated as decision variables subject to a random budget constraint. Wang
and Hu (2010) develop a multi-item (Q,r) model for the correlative demands between the necessary
component under a budgetary constraint. Xu and Leung (2009) develop an inventory policy in a
two-party vendor managed system where the retailer restricts the maximum space allocated to the
vendor. Hariga (2010) models a single item continuous review inventory problem in the presence of a
space restriction, where the over-ordered quantity has to be returned to the supplier. Pasandideh et al.
(2013) present a multi-item multi-period inventory control problem with all-unit and/or incremental
quantity discount policies under limited storage capacity.
Although several stochastic service studies have examined the effect of constrained inventory, GSA
works have typically assumed infinite inventory budgets, apart from a few exceptions. Magnanti et al.
(2006) and Li and Jiang (2012) include an inventory constraint that limits the number of days of
safety stock that can be held at each stage of the supply chain network. Graves and Schoenmeyr
(2016) restrict the number of items that can be processed at a storage stage in a period. They develop
a constant base stock policy with censored ordering, where the replenishment orders are censored by
the storage constraint. Ghadimi and Aouam (2021) study a serial supply chain network consisting of
one manufacturer operating multiple workcenters, one warehouse with limited storage capacity, and
one retailer. They formulate a problem to optimize capacity allocation to workcenters and safety
stock placement at the warehouse and retailer. For the case of a single workcenter processing a single
product, they characterize the optimal solution and show that the standard all-or-nothing property
does not hold when the warehouse storage capacity is limited. When the manufacturer has multi-
ple workcenters processing multiple products, they develop a nested Lagrangian relaxation heuristic
(NLRH) where the storage and budget constraints are dualized in two steps. Through extensive nu-
merical experiments, they notice that limited storage at the warehouse affects the optimal safety stock
placement but does not change the production capacity allocation at the manufacturer. This result
might be due to the simple network structure or to the fact that inventory is only constrained at the
warehouse. The present paper advances this research direction by investigating the production and
safety stock placement problem with limited capacity and inventory budgets.

Summary of main contributions. Specifically, this study contributes to the GSA literature as
follows.

• This paper presents a guaranteed approach and a chance-constraint approach to model limited
inventory budgets, and analyzes their effect on safety stock placement. Our experiments suggest
the use of guaranteed constraints when the target probability of inventory budget satisfaction is
very high.

• Whether the guaranteed approach or the chance-constraint approach is adopted, the resulting
production capacity and safety stock placement problem is a mixed-integer nonlinear program
(MINLP) with a non-convex objective and constraints. As a first solution procedure, we adapt
the Lagrangian decomposition method of Ghadimi et al. (2020) to include inventory budget
constraints. Our computational results show that while a standard MINLP solver is unable to
provide feasible solutions for small instances, the adapted Lagrangian decomposition method
finds optimal solutions for small instances and good solutions for larger instances but requires
long CPU times.

5
• Two new alternative formulations of the integrated problem are proposed and proven to be
equivalent to the original problem formulation. These new models are solved using a succes-
sive piecewise linear approximation (SPLA) algorithm. SPLA applied on both formulations
outperforms the adapted Lagrangian decomposition method in terms of solution quality and
CPU times. An important aspect of this contribution is that the proposed solution procedure
outperforms the Lagrangian decomposition method even in the case of infinite inventory budget
considered in Ghadimi et al. (2020).

• To further improve the performance of SPLA, we develop a two-phase heuristic SPLA-II


that takes advantage of the structure of the two new formulations. Indeed, when the number of
production stages or the number of possible integer lead time values are large, there is a significant
increase both in the number of binary variables in the first formulation and in the number of
constraints in the second formulation. As a consequence of these facts, the size of instances to
be solved in each iteration of SPLA becomes very large. Therefore, we propose a two-phase
algorithm SPLA-II to tackle this issue. In the first phase, a cutting plane algorithm solves
successive continuous relaxations of the second formulation with restricted sets of constraints,
using SPLA to determine an optimal continuous solution. In the second phase, a neighborhood
of the continuous solution restricts the number of binary variables in the first formulation.
The size of this neighborhood allows the decision-maker to trade-off solution quality with CPU
times. Computational results show that the two-phase heuristic greatly improves CPU times
while yielding optimal or near-optimal solutions for all instances.

3 Production capacity and safety stock placement models with in-


finite inventory budget
This section presents three formulations of the production capacity and safety stock placement problem
with infinite inventory budget.

3.1 Notations

Sets
M set of nodes in the network
P set of production nodes
E set of capacity budget groups
Pe set of production nodes belong to capacity group e
L set of logistics nodes
Msup set of nodes facing external suppliers
Mdem set of nodes facing external customers
A set of arcs (i, j)
Qp set of possible lead time values at production node p
Q1p , Q2p (⊂ Qp ) restricted sets of possible lead time values at production node p

Parameters
µp mean demand rate at node p (units per period)
bp unit cost for capacity in production node p (e per unit per period)

6
wp work-in-process holding cost at production node p (e per unit per period)
Be capacity budget at capacity group e (e)
Kj available inventory budget (storage space) at logistics node j (e)
κj inventory budget (storage space) usage at logistics node j (e per unit per period)
γj smallest acceptable probability that inventory budget is satisfied at logistics node j
σj standard deviation of demand at node j (units per period)
λj fixed delay at logistics node j (periods)
zj safety factor at logistics node j
hj inventory holding cost at logistics node j (e per unit per period)
hexp
j unit expediting cost at logistics node j (e per unit per period)
H(zj ) uncertainty cost for a given zj at logistics node j
(e per unit per period)
sij minimum external incoming service time at supply node j (periods)
sj maximum external outgoing service time at demand node j (periods)
lp,q qth integer value for lead time at production node p (periods)
rp,q capacity level that results on having lead time equal to lp,q (units per period)

Decision variables
Rp capacity at production node p (units per period)
LTp integer variable for lead time of production node p (periods)
SIj integer variable for incoming guaranteed service time for node j (periods)
Sj integer variable for outgoing guaranteed service time for node j (periods)
Yp,q binary variable that gets 1 if production node p gets qth lead time and capacity level;
and 0 otherwise

3.2 The model of Ghadimi et al. (2020)


The supply chain under consideration has a general acyclic structure, represented by a graph G =
(M, A). M = P ∪ L is the set of all nodes, consisting of production nodes (p ∈ P) and logistics nodes
(j ∈ L) and A is the set of directed arcs between nodes showing the flow of material. A production
node p corresponds to a workcenter, a production unit, an assembly line or a factory in the supply
chain. Each production node has a deterministic, capacity-dependent lead time. A logistics node j is
a potential storage location in the supply chain with a fixed lead time λj . Logistics nodes represent
raw material holding locations, warehouses, distribution centers or retailers. A capacity group (e ∈ E)
in the supply chain is defined as a subset of production nodes (Pe ⊂ P) with a shared budget Be
for capacity allocation. Further, supply nodes in set Msup ⊂ M refer to the stages that face external
suppliers, while demand nodes in set Mdem ⊂ L are the stages that serve external customers.
In any period t, Dj (t) denotes external demand at demand node j ∈ Mdem . Demand at any
P
intermediate node i is given by Di (t) = (i,j)∈A ϕij Dj (t), where ϕij refers to the number of items
at stage i required to produce one unit of output at node j. It is assumed that demand during net

replenishment lead time T is normally distributed with mean µT and standard deviation σ T . To
replenish their inventory, logistics nodes follow a periodic review base stock policy with a common
review period. The base stock level is set to cover demand during net replenishment lead time T with
a target service level Φ(zj ), where zj is a service factor and Φ(·) is the standard normal cumulative
distribution function. The base stock level at logistics node j can be expressed as Bj (T ) = µj T +

zj σj T . Following GSA, when demand exceeds the base stock level, extraordinary measures such as

7
overtime are used to expedite items from the pipeline inventory to satisfy the excess demand.
Each production node p has a deterministic and guaranteed production lead time LTp , which is
considered to be capacity-dependent, specifically, it is assumed to be a decreasing and convex function
of production capacity Rp . When a production node receives an order at time period t, it always
guarantees that the whole order will be shipped to the next stage at time t + LTp . In case of delays,
production nodes use special measures such as overtime or subcontracting to expedite delayed items
and guarantee the production lead time.
Based on the framework of GSA, each stage j quotes a guaranteed outgoing service time Sj to
all its downstream stages within which is able to fulfill the whole orders. The incoming service time
SIj observed by stage j is the maximum outgoing service time quoted to it by its suppliers, i.e.
SIj = max {Si |(i, j) ∈ A}. Moreover, at each supply node, the incoming service time SIj must be
greater than or equal to the external incoming service time sij and the outgoing service time at the
demand node Sj cannot exceed the external outgoing service time sj .
The production capacity and safety stock placement problem, P0, sets capacities, Rp at production
nodes, and service times, Sj and SIj at logistics nodes, to minimize the expected total cost of the
system.
X X p
P0 min wp µp LTp (Rp ) + H(zj )σj SIj + λj − Sj (1)
p∈P j∈L

subject to:
X
bp Rp ≤ Be ∀e ∈ E (2)
p∈Pe

Rp > µp ∀p ∈ P (3)
SIj + λj − Sj ≥ 0 ∀j ∈ L (4)
SIp + LTp (Rp ) − Sp = 0 ∀p ∈ P (5)
SIj ≥ Si ∀(i, j) ∈ A (6)
Sj ≤ s j ∀j ∈ Mdem (7)
SIj ≥ sij ∀j ∈ Msup (8)
SIj , Sj ∈ Z+ ∀j ∈ M (9)
+ +
LTp (Rp ) ∈ Z , Rp ∈ R ∀p ∈ P (10)

Where for each logistics node, j ∈ L, the marginal uncertainty cost associated with lead time
demand is expressed as
(
hj zj + (hexp
P
j + hj − p|(p,j)∈A ϕpj wp )G(zj ) if j is supplied by a production node
Hj (zj ) = exp
hj zj + hj G(zj ) otherwise
(11)

with G(.) denoting the standard normal loss function. This cost includes the cost of holding inventory
and expediting excess demand.
The objective function (1) minimizes the total expected WIP holding cost at production nodes
and inventory cost at logistics nodes. Constraints (2) ensure that in each capacity group the total
capacity allocation cost is within the available budget for that group. Constraints (3) guarantee that
at any production node p the utilization level is strictly less than one. Constraints (4) ensure the
nonnegativity of the net replenishment lead time at logistics nodes, while constraints (5) set the net

8
replenishment lead time at production nodes equal to zero. The relationship between incoming and
outgoing service times is captured by constraints (6). Service times at demand and supply nodes are
restricted by constraints (7) and (8), respectively. Constraints (9) and (10) restrict all service times
and lead times to positive integer numbers and capacity to positive real number.

3.3 Alternative formulations


The above MINLP model P0 has a non-convex objective function and nonlinear constraints. The
nonlinearity of P0 is due to nonlinear lead time functions and safety stock costs that include a square
root function. Next, we propose two different ways to linearize the production lead time function and
present the corresponding alternative formulations.

3.3.1 An alternative formulation with binary variables

This formulation introduces binary variables to discretize the lead time function at each production
stage. Let Qp denote the index set of lead time discrete values. lp,q and rp,q represent the qth
possible integer value of the lead time function at production node p and its corresponding capacity,
respectively, i.e. lp,q = LTp (rp,q ). Binary variable Yp,q equals 1 if index q, and accordingly lp,q and rp,q ,
is selected at production node p; and 0 otherwise. This results in the first alternative formulation:
XX X p
P1 min wp µp lp,q Yp,q + H(zj )σj SIj + λj − Sj (12)
p∈P q∈Qp j∈L

subject to:
X X
bp rp,q Yp,q ≤ Be ∀e ∈ E (13)
p∈Pe q∈Qp
X
SIp + lp,q Yp,q − Sp = 0 ∀p ∈ P (14)
q∈Qp
X
Yp,q = 1 ∀p ∈ P (15)
q∈Qp

Yp,q ∈ {0, 1} ∀p ∈ P, ∀q ∈ Qp (16)


constraints: (4) and (6) - (9).

Constraints (13) and (14) define the new capacity budget constraints and net lead time at production
stages. Constraints (15) ensure that only one lead time value is selected for each production node and
constraints (16) define the binary variables.

3.3.2 An alternative formulation with linear segments

A second way to linearize the lead time function is through the use of linear segments to define each
discrete lead time value. Figure 1 plots production capacity Rp as a function of lead time LTp , i.e.
the inverse of the lead time function. For each q ∈ Qp , we define the line segment with negative slope
ap,q = rp,q+1 − rp,q and intercept fp,q = rp,q − ap,q × lp,q ; note that lp,q+1 − lp,q = 1. Then, every point
on the curve, corresponding to an integer lead time value lp,q and capacity rp,q , can be defined as the
intersection of the two linear segments corresponding to q and q − 1.
Taking into account that Sp −SIp = LTp (Rp ) from equation (5), we can write the second alternative

9
fp, q−1

ap, q−1

Capacity Rp
fp, q

ap, q

rp, q

lp, q

Lead time LTp

Figure 1: Defining discrete lead times and capacities based on two line segments

formulation as:
X X p
P2 min wp µp (Sp − SIp ) + H(zj )σj SIj + λj − Sj (17)
p∈P j∈L

subject to:
Rp ≥ fp,q + ap,q × (Sp − SIp ) ∀p ∈ P, ∀q ∈ Qp (18)
R p ∈ R+ ∀p ∈ P (19)
constraints: (2)- (4) and (6)-(9).

Constraints (18) define the capacity as a function of the production lead time at each production
node. In fact, when the budget constraints (2) are binding at optimality, constraints (18) are also
binding because the right-hand side terms are maximized, since Sp − SIp is minimized in the objective
and slopes ap,q are negative.

3.3.3 Comparison of the two alternative formulations

The above two formulations result from two different ways to linearize the production lead time
function. At each production node p, both formulations explicitly define all possible values of the lead
time and capacity, which are indexed by q ∈ Qp . Proposition 1 shows that problem formulations P0,
P1, and P2 are equivalent and yield the same optimal solution.

Proposition 1. Problem formulations P0, P1 and P2 are equivalent.

Proof. See Appendix A.

Table 2 summarizes the number of variables and constraints, which are introduced due to this
discretization. Common variables and constraints between the two formulations, unrelated to the

linearization, are not reported in this table. When the number of production stages P and the

number of possible lead time values Qp are large, then the number of binary variables is very large
in model P1 and the number of constraints is very large in model P2. This fact will be exploited to
design a two-phase algorithm to efficiently solve the production capacity and safety stock placement
problem in Section 5.

10
Table 2: Comparison of P1 and P2 based on discretization variables and constraints

Model Number of variables Number of constraints


P
P1 p∈P
Qp P
P
P2 P
p∈P Qp

4 Modeling and analysis of inventory budget constraints


The formulations described in sections 3 assume that the inventory budget is infinite. In this section,
two approaches for modeling inventory budget constraints are presented and an illustrative example
shows the effect of these constraints on safety stock placement and inventory holding costs.

4.1 Guaranteed and approximate chance-constraint approaches


Inventory budget constraints impose a limit on the inventory that can be held at logistics nodes in
any time period. However, since inventory in each period is stochastic there are different ways to
introduce a budget constraint. In our model, each logistics node j operates under a base stock policy
with a base stock level Bj . The inventory level at time t is given by,

t−Sj t−λj −SIj t−Sj


X X X
Ij (t) = Bj − Dj (τ ) + Dj (τ ) = Bj − Dj (τ ) (20)
τ =0 τ =0 τ =t−λj −SIj +1

where, Dj (t) denotes the demand at logistics node j in period t. The expression of I(t) is written
based on the fact that in period t, logistics node j first receives its replenishment order from its sup-
pliers that was placed in period t − λj − SIj , i.e. the inventory level at logistics node j increases by
Dj (t − λj − SIj ), then it must satisfy the replenishment orders placed by its adjacent downstream
nodes in period t−Sj , i.e. inventory level at logistics node j decreases by Dj (t−Sj ). By the end of pe-
Pt−λ −SIj Pt−S
riod t, the cumulative replenishment is τ =0j Dj (τ ) and the cumulative shipment is τ =0j Dj (τ ).
The difference between the cumulative replenishment and shipment, called the inventory shortfall is
Pt−Sj
τ =t−λj −SIj +1 Dj (τ ), which is demand over the net replenishment lead time N LTj = SIj + λj − Sj .
The net inventory level at logistics node j is the initial inventory or base stock level minus the in-
ventory shortfall. We define Kj to be the available investment budget (or storage space) at logistic
node j, and κj the inventory budget usage factor. Next, we present two approaches to introduce an
inventory budget constraint at logistics node j.

A guaranteed approach. In this approach, we want to guarantee that the investment in inventory
is always within the inventory budget. In this case, we impose a budget constraint on the max-
imum inventory which corresponds to the minimum demand during net replenishment time, i.e.
Pt−Sj
τ =t−λj −SIj +1 Dj (τ ) = 0. The guaranteed inventory budget constraints can be stated as

κj Bj ≤ Kj ∀j ∈ L (21)

The base stock level Bj is set to guarantee a service level αj . Furthermore, since demand during net
replenishment lead time follows a normal distribution, the guaranteed inventory budget constraints
can be rewritten as
p
κj µj N LTj + κj zαj σj N LTj ≤ Kj ∀j ∈ L (22)

11
An approximate chance-constraint approach. The inventory budget constraints can be defined as
the probability that the inventory investment is within inventory budget to be no smaller than γj
(Ghalebsaz-Jeddi et al., 2004). Formally we impose the following constraints

P {κj Ij (t) ≤ Kj } ≥ γj ∀j ∈ L (23)

or when we replace I(t) by its expression from (20),


 
 t−Sj 
X
P κj Bj − κj Dj (τ ) ≤ Kj ≥ γj ∀j ∈ L (24)
 
τ =t−λj −SIj +1

When demand during the net replenishment lead time follows a normal distribution, constraints (24)
can be expressed as
p
κj (zαj + zγj )σj N LTj ≤ Kj ∀j ∈ L (25)

We say that constraints (25) are approximate chance-constraints because they include negative
demand values. For high values of γj these approximate constraints will be over-conservative and
would constraint inventory more than the guaranteed constraints (22), as will be shown using the
illustrative example below. Inventory budget constraints (22) or (25) can be added to any of the
production capacity and safety stock placement formulations P0, P1, P2.

4.2 Comparison and effect on safety stocks


Using an illustrative example of a simple supply chain, we compare the effect of the guaranteed inven-
tory budget constraints (22) and approximate chance-constraints (25) on safety stock placement and
inventory holding costs.

Example description. The supply chain under consideration consists of one manufacturer, one
warehouse and one retailer in tandem as depicted in Figure 2.

Manufacturer Warehouse Retailer

Figure 2: Supply chain network of the illustrative example

Demand follows a normal distribution with mean and standard deviation equal to 100 and 200
units per period, respectively. The WIP cost at the manufacturer is set to w = e100 per unit per
whs ret
period. We define the value addition at the manufacturer and warehouse as β 1 = h w and β 2 = hhwhs ,
respectively, and set β 1 = 1.1 and β 2 = 1.15. The safety stock factor at the warehouse and retailer is
set equal to 1.645 and 1.96, corresponding to a 95% and 97.5% service level, respectively. Based on
Aouam and Kumar (2019), the unit expediting costs at the warehouse and retailer are computed as
hwhs hret
1−Φ(z whs )
− (hwhs − w) and 1−Φ(z ret ) , respectively. Logistics delays at the warehouse and retailer are

12
λwhs = 2 periods and λret = 1 period, respectively, while the production lead time LT = 15 periods.
The maximum outgoing service time at the retailer and the minimum incoming service time at the
manufacturer are equal to 0. The inventory budget is equal to e2000 at the warehouse and e3000
at the retailer, and the inventory budget usage is equal to κ = e1 per unit per period at both the
warehouse and retailer.

Solution of the illustrative example. Using one of the algorithms presented in Section 5, we solve
the production capacity and safety stock placement problem to optimality considering three cases:
(i) Infinite inventory budgets at the warehouse and retailer, (ii) approximate chance-constraints at
the warehouse and retailer with γ = 0.95, and (iii) guaranteed inventory budget constraints at the
warehouse and retailer. Table 3 reports the optimal outgoing service time at the warehouse, the safety
stocks at the warehouse and retailer, and the total inventory holding cost.

Table 3: Solutions of the illustrative example

S whs SS whs SS ret Inventory holding cost


Infinite inventory budgets 0 1356.5 392.0 e 396,263.88
Chance constraints with γ=0.95 16 329.0 1616.3 e 439,252.67
Guaranteed approach 13 658.0 1466.7 e 462,073.53

Table 3 shows that when there is infinite inventory budgets at the warehouse and retailer, inven-
tory decoupled, i.e. inventory is kept at both warehouse and retailer, and the total cost of the system
is e 396,263.88. In the case of approximate chance-constraints with γ = 0.95, inventory is partially
decoupled which means that keeping inventory at the retailer results on a lower cost but because of
the inventory budget limitation at the retailer, some of the inventory is kept at the warehouse. In
this case the total cost of the system is e 439,252.67. Similarly, the guaranteed approach results in a
partially decoupled inventory but with a higher total inventory cost, equal to e 462,073.53. Next, we
compare the safety stock placement and inventory costs in more detail.

Comparing inventory placement and total inventory costs. Figures 3 and 4 show the ex-
pected inventory levels, or the safety stocks, and the total inventory cost for the approximate chance-
constraints approach, with different values of γ, and for the guaranteed approach. When γ =75%, the
optimal outgoing service time at the warehouse is S whs,∗ = 0, meaning that inventory is decoupled.
This solution is the same as the infinite budget solution and hence the budget constraints are not
binding. When γ increases to 80%, then S whs,∗ = 17 and the total inventory cost increases. In this
case, it becomes more cost-efficient not to keep inventory at the warehouse, i.e. inventory is coupled
at the retailer. For γ between 80% and 93%, the optimal service time at the warehouse and the total
inventory cost remain the same, because the inventory budget constraint at the retailer is not binding.
As can be seen from Figure 4, the total inventory cost start to increase rapidly when γ increases
beyond 93%. The reason is that the inventory budget constraint at the retailer becomes binding and
part of the inventory is shifted to the warehouse, corresponding to partial decoupling. In this case,
as γ increases, S whs,∗ decreases, i.e. the net replenishment lead time at the warehouse increases while
the net replenishment lead time at the retailer decreases.
When γ = 0.975, the optimal service time at the warehouse becomes S whs,∗ = 13, which is identical
to the optimal solution of the guaranteed approach and corresponds to a total inventory cost of e
462,073.53. When γ increases beyond 97.5%, the inventory cost in the approximate chance-constraints

13
approach is higher than the guaranteed approach. The reason is that approximate chance-constraints
approach consider negative demand realizations because of the normality assumption. Therefore, we
suggest to use the guaranteed approach instead of the approximate chance-constraints approach when
γ is very high and demand is assumed to follow a normal distribution.

SS$%&
&& , chance constraint &&$%&guaranteed approach
SS
&& ,
!"# chance constraint &&!"# guaranteed approach
18
16.6
Hundreds

16.2
15.7
16 15.2
14.7
14.1
14 13.6 13.6
Inventory (units)

12

10
8.1
8 7.4
6.6
5.7
6
4.7
3.9
4 3.3

2
0.0
0
75.0 85.0 95.0 96.0 97.0 98.0 99.0 150.0
Probability of satisfying inventory budget constraint, ! (%)

Figure 3: Safety stocks at the warehouse and retailer as a function of γ

5 Solution procedures
In this section, we present a successive piecewise linear approximation algorithm SPLA to solve
models P1 and P2 based on Magnanti et al. (2006). Then, we propose a two-phase algorithm SPLA-
II that makes use of SPLA and takes advantage of the structure of the two alternative formulations
to efficiently solve the production capacity and safety stock placement problem.

5.1 A successive piecewise linear approximation (SPLA)


P1 and P2 are MINLPs where the only nonlinearity of the problem is related to the square root term
in the objective function. SPLA iteratively refines lower and upper bounds of the objective function
by using successive piecewise linear approximations and solving corresponding integer linear programs.
p
In this method, we use the “multiple-choice” formulation to approximate the square root term Xj ,
using a set of intervals in the piecewise linear function denoted by Nj = {1, 2, 3, ..., n} and the
lower and upper bounds on Xj in each interval given by νj,0 , νj,1 , νj,2 , ..., νj,n−1 , νj,n . Applying the
multiple-choice approach to problem P1, with Xj = SIj + λj − Sj , gives the following piecewise linear

14
460
Chance constraint approach

Inventory costs (thousand € )


Guaranteed approach

450
440
430
420
410
400

75 80 85 90 95 100

Probability of satisfying inventory budget constraint, γ (%)

Figure 4: Inventory costs for the chance-constraint and guaranteed approach

approximation problem
XX X X
PLA − P1 min wp µp lp,q Yp,q + H(zj )σj (fj,n Ψj,n + aj,n Θj,n ) (26)
p∈P q∈Qp j∈L n∈N

subject to:
X
Θj,n = SIj + λj − Sj ∀j ∈ L (27)
n∈N
X
Ψj,n ≤ 1 ∀j ∈ L (28)
n∈N

νj,n−1 Ψj,n ≤ Θj,n ≤ νj,n Ψj,n ∀j ∈ L, ∀n ∈ N (29)


Θj,n ∈ R+ , Ψj,n ∈ {0, 1} ∀j ∈ L, ∀n ∈ N (30)
constraints: (4), (6) - (9) and (13) - (16).
√ √
ν − νj,n−1 √
where aj,n = νj,n
j,n −νj,n−1
and fj,n = νj,n − aj,n νj,n are the slope and intercept of the approximation
line segments, respectively. Similarly, the piecewise linear approximation problem of problem P2 is
given by
X X X
PLA − P2 min wp µp (Sp − SIp ) + H(zj )σj (fj,n Ψj,n + aj,n Θj,n ) (31)
p∈P j∈L n∈N

subject to: constraints: (2)-(4), (6)-(9), (18), (19) and (27)-(30).

Obviously, including more intervals in the above approximations results in more accurate outcomes.
However, adding more intervals and corresponding variables and constraints increases the size of the
problem and accordingly the computational times. To control the size of the models, SPLA iteratively
adds linear segments to improve the approximation. In the first step, a one-piece linear approximation
is considered, i.e. all square root terms are replaced with their secants. Solving the resulting integer

15
linear program gives a first lower bound and upper bound. In fact, the optimal objective value of
PLA − P1 is a lower bound on the optimal value of P1 and the optimal solution of PLA − P1 is a
feasible solution for P1 and hence provide an upper bound.
In each subsequent iteration, new intervals are introduced, based on the optimal values of variables
P
Xj = n∈N Θj,n obtained in the previous iteration, and the resulting PLA − P1 is solved. Each
iteration results in a lower bound value and an upper bound value of P1. The algorithm keeps iterating
until the best lower bound and upper bound are close enough to reach an optimality tolerance tol.
When tol = 0, SPLA is an exact solution method and problem P1 is solved to optimality. Algorithm
1 summarizes the procedure for solving P1 and P2 using SPLA.

Algorithm 1 Solving P1 and P2 using SPLA


1: function SPLA-Solve(P) . P can be P1 or P2
2: Consider one interval linear approximation for the square root
SP LA
−LB SP LA
3: while tol < 100 × U B LB SP LA or iter < itermax do
4: Solve(PLA − P) using an MILP solver . Using CPLEX solver
5: Update global upper bound and lower bound
6: if obtained net lead time (i.e. Xj ) lies at the bound of some intervals then Don’t add any interval for node j
7: else add new interval for node j end if
8: iter ← iter + 1 end while
9: return U B SP LA
10: end function

5.2 A two-phase heuristic



As noted in Section 3.3.3, when the number of production stages P and the number of possible lead

time values Qp are large, the number of binary variables is very large in model P1 and the number
of constraints is very large in model P2. As a consequence, the size of instances to be solved in each
iteration of SPLA becomes very large. Therefore, we propose a two-phase algorithm SPLA-II to
tackle this issue. In the first phase, the algorithm iteratively solves a continuous relaxation of P2
with restricted sets of constraints using SPLA to determine an optimal continuous solution. Based
on this continuous solution, a restricted set of binary variables is considered in the second phase, when
solving model P1 using SPLA. Next, we detail the two phases of the algorithm.

Phase 1: SPLA with a cutting plane algorithm.


When SPLA is used to solve model P2, in each iteration of the algorithm problem PLA − P2 is

solved. This problem has integer variables (Ψj,n , SIj , Sj ) and a large set of constraints including Qp
constraints (18) to define the lead time function at each production node p. The size of instances of
PLA − P2 would make SPLA very slow. In the first phase of the proposed algorithm, SPLA is used
to iteratively solve relaxations RPLA − P2 of problem PLA − P2, which are defined as follows
X X X
RPLA − P2 min wp µp (Sp − SIp ) + H(zj )σj (fj,n Ψj,n + aj,n Θj,n ) (32)
p∈P j∈L n∈N

subject to:
Rp ≥ fp,q + ap,q × (Sp − SIp ) ∀p ∈ P, ∀q ∈ Q2p (33)
SIj , Sj ∈ R+ ∀j ∈ M (34)
constraints: (2)-(4), (6)-(8), 19 and (27)-(30).

16
RPLA − P2 is a relaxation of PLA − P2, since service times are now continuous in (34). In
addition, capacity constraints are imposed on a restricted index set Q2p ⊂ Qp .
The cutting plane algorithm proceeds as follows. We first start with Q2p = ∅. Then, in each
iteration of SPLA, RPLA − P2 is solved and a solution (Rp , Sj , SIj ) is obtained. We identify the
indices corresponding to violated constraints among constraints (18) and add these indices to set Q2p .
The process is repeated until the obtained solution satisfies all constraints (18). This algorithm takes
advantage of the structure of formulation P2, since not all discrete values have to be considered at
once and hence the number of constraints is limited. In addition, the continuous relaxation of P2 has
less variables compared to the continuous relaxation of P1.

Phase 2: SPLA over a restricted neighborhood.


The objective of phase 2 is to identify the best integer lead time value for each production node in a
restricted neighborhood of the continuous solution obtained in phase 1. In other words, we construct
an index subset Q1p ⊂ Qp , which we call a restricted neighborhood and optimize P1 over this restricted
neighborhood. This would make the solution of model P1 much easier, because the number of binary
variable is greatly reduced.

Continous lead time


Restricted set Q1p of size 3

rp, q−1
Capacity Rp

rp, q
R1p
rp, q+1

lp, q−1 = [LT1p] −1 lp, q = [LT1p] LT1p lp, q+1 = [LT1p] + 1

Lead time LTp

Figure 5: Constructing a restricted set Q1p of size 3

Specifically, given the continuous lead time values LTp1 = Sp1 − SIp1 obtained in the first phase, we
can construct restricted neighborhoods Q1p of different sizes. Q1p of size 1 would include the index q
corresponding to LTp1 , i.e. the nearest integer value LTp1 . Q1p of size 3 would include the index q,
 

q − 1 and q + 1 corresponding to LTp1 , LTp1 − 1 and LTp1 + 1 as shown in Figure 5. Based on Q1p ,
     

17
a restricted problem is formulated as follows
XX X p
P1 − R min wp µp lp,q Yp,q + H(zj )σj SIj + λj − Sj (35)
p∈P q∈Q1p j∈L

subject to:
X X
bp rp,q Yp,q ≤ Be ∀e ∈ E (36)
p∈Pe q∈Q1p
X
SIp + lp,q Yp,q − Sp = 0 ∀p ∈ P (37)
q∈Q1p
X
Yp,q = 1 ∀p ∈ P (38)
q∈Q1p

Yp,q ∈ {0, 1} ∀p ∈ P, ∀q ∈ Q1p (39)


constraints: (4) and (6)- (9).

SPLA is then used to solve the restricted problem P1 − R with much less binary variables than
in the original formulation P1.
Algorithm 2 summarizes the two-phase algorithm SPLA-II.

Algorithm 2 The two-phase algorithm SPLA-II


1: function Solve(P0)
2: Phase 1 : SPLA with a cutting plane algorithm
3: Consider one interval linear approximation for the square root
SP LA
−LB SP LA
4: while tol < 100 × U B LB SP LA or iter < itermax do
5: Solve(RPLA − P2) using an MILP solver . Using CPLEX solver
6: Update global upper bound and lower bound
7: if net lead time lies at the bound of some intervals then don’t add any interval for node j
8: else add new interval for node j end if
9: Based on the obtained lead time solution, find the index of violated constraints in (18)
10: Update Q2p by adding the index of violated constraints
11: iter ← iter + 1 end while
12: return continuous LTp = Sp − SIp
13: Phase 2 : SPLA over a restricted neighborhood
14: Construct restricted neighborhood Q1p based on LTp
15: function SPLA-Solve (P1 − R) end function
16: return S ∗ , SI ∗ , Y ∗
17: end function

6 Computational experiments
Four real-world supply chains from the data sets of Willems (2008) are adapted to construct instance
sets of P0. Based on these sets, we evaluate the performance of the two-phase algorithm SPLA-II
along with SPLA-P1 and SPLA-P2, corresponding to applying algorithm SPLA to solve models P1
and P2, respectively. Moreover, we modify the Lagrangian decomposition method (LDM) of Ghadimi
et al. (2020) to take into account inventory budget constraints at logistics nodes (see Appendix B)
and compare the performance of the modified LDM with the proposed algorithms. All algorithms
are coded in GAMS 24.9.2 and solved using CPLEX solver. Computational experiments were run on
a 64-bit computer with a 2.7 GHz Intel Core i5 processor and 8 GB of RAM under OSX 10.14.6. The
SPLA and LDM are terminated when the optimality gap is less than 0.1%, or the CPU time exceeds

18
3600 seconds. The proposed solution algorithms are compared to BARON, a standard MINLP solver
(Sahinidis, 2017). Model P0 is coded in GAMS 24.7.4 and solved using the BARON solver with
default settings.
To evaluate the solution quality of the algorithms, four performance measures are defined:

• Optimality gap Gap% is the relative difference between the best upper bound (GU B) and the
best lower bound (GLB), i.e. Gap% = GU B−GLB
GLB × 100

• Relative deviation DevI % is the relative deviation between the best upper bound of SPLA-P1
−GU BLDM
or SPLA-P2 and the best upper bound of LDM, i.e. DevI %= GU BSPLA-P GU BLDM × 100

• Relative deviation DevII % is the relative deviation between the best upper bound of SPLA-P1
−GU BSPLA-P2
and the best upper bound of SPLA-P2, i.e. DevII % = GU BSPLA-P1 GU BSPLA-P2 × 100.

• Relative deviation DevIII % is the relative deviation between the objective value obtained using
SPLA-II and the best upper bound obtained from SPLA-P1 or SPLA-P2, i.e.
−GU BSPLA-P
DevIII % = GU BSPLA-II
GU BSPLA-P × 100.

6.1 Design of instances


We conduct our computational experiments on four supply chains of different sizes adapted from the
data set of Willems (2008), where more than 30% of the stages are manufacturing stages. Table 4
describes the selected supply chains. Stages in the supply chains of Willems (2008) have different
functions such as manufacturing, distribution, part procurement, transportation and retail. In the
considered supply chains, we model all the manufacturing stages as production nodes and all the
remaining stages as logistics nodes. For each supply chain, we generate five independent instances to
form instance sets A to D.
Table 4: Size of the instance sets

Sets Chain name Total nodes Production nodes Arcs

A Chain04 22 7 39
B Chain06 28 10 28
C Chain16 145 53 224
D Chain19 156 56 263

External demand at demand nodes is generated uniformly between 100 and 1000 units per period
with the same coefficient of variation that is given in the data sets of Willems (2008). Demand at
intermediate nodes are calculated based on ϕij = 1. At logistics nodes, the target service level is set
to 97.5%, corresponding to safety stock factor zj = 1.96, and the fixed delay λj is generated uniformly
between 1 and 10 periods. The minimum external incoming service times at supply nodes sij are set
to zero and the maximum external outgoing service times at demand nodes sj are generated uniformly
between 0 and 10 periods.
Following Ghadimi et al. (2020), we consider the following production lead time function
   2  3  4
µ µ µ µ
a0,p + a1,p Rpp + a2,p Rpp + a3,p Rpp + a4,p Rpp
LTp (Rp ) = ap +  a5,p (40)
µ
1 − Rpp

In equation (40), the production lead time LTp consists of two parts: the first part which is denoted
by ap refers to the average time an item spends in the raw material staging area (for example ap = 0.5

19
period) and the second part is related to the time that an item spends at the workstation and the
finished good staging area. In our instances, the coefficients a0,p to a4,p are generated uniformly in
the interval [-100,100] and a5,p is generated uniformly in the interval [-1.5, 1.5], while making sure
that LTp is convex in Rp . The inventory budget usage factor κj is generated uniformly between 1
and 10. The inventory budget Kj is set randomly as a function of the base stock level when the net
p 
replenishment lead time is equal to λj , specifically Kj = (50% to 150%) × κj × µj λj + zj σj λj .
WIP and inventory holding costs are set using the parameter “stageCost” in the data set of
Willems (2008) with a interest rate of 10% per annum. Based on Aouam and Kumar (2019), when
the logistics node j is supplied by at least one production node, the unit expediting cost is set as
hj P 
1−Φ(zj ) − hj − (p,j)∈A wp and when the logistics node j is supplied by just logistics nodes, the unit
hj
expediting cost is set as 1−Φ(z j)
. The unit cost of capacity bp is generated uniformly between 100 and
1000. The number of capacity budget groups is generated uniformly between 1 and the total number
of production nodes, then we randomly allocate production nodes to these capacity budget groups.
For each capacity group, the capacity budget is generated randomly to have an average utilization of
85%.

6.2 Computational results


In this section, the performance of SPLA-II, SPLA-P1, SPLA-P2, LDM and BARON are com-
pared based on sets A, B, C and D for two different cases: case 1) infinite inventory budget and case
2) finite inventory budget, where the guaranteed inventory budget constraints (22) are included in
the models. We will only consider constraints (22) in our computational study, since both inventory
budget constraints (22) or (25) include the same nonlinear term, which is the square root of net lead
time. For SPLA-II, three different sizes of the restricted neighborhood Q1p are considered, namely
1
Qp = 7, Q1p = 11 and Q1p = 15. Recall that the restricted neighborhood Q1p of a production node
p is the set of indices corresponding to the integer lead time values considered in phase 2 of algorithm
SPLA-II.
Tables 5 and 6 summarize the results for the case of infinite inventory budget, while Tables 7 and
8 summarize the results for the case of finite inventory budget. Tables 5 and 7 report the average,
minimum, and maximum of Gap%, CPU time, DevI % and DevII % for SPLA-P1, SPLA-P2, LDM
and BARON. Tables 6 and 8 report the average, minimum, and maximum of CPU time and DevIII %
for the two-phase algorithm SPLA-II. The details of the computational results for all generated
instances are reported in Tables 10 - 25 of Appendix C.

6.2.1 Case 1: infinite inventory budget

Table 5 shows that when there is infinite inventory budget, BARON is able to find feasible solutions
for instances in sets A and B within one hour time limit with an average Gap of 234.7% and 432.8%,
respectively. When the size of instances increases, BARON is unable to find feasible solutions for
instances in sets C and D. LDM finds optimal or near optimal solutions for all instances in sets A and
B with an average Gap of 0.02% and 0.05% and average CPU time of 13 and 22 seconds, respectively.
The average Gap% of LDM increases with the size of instances from 0.05% in set B to 2.07% and
3.39% in sets C and D, respectively.
SPLA-P1 determines optimal solutions for all instances in sets A and B within an average CPU
time of 6 and 3 seconds, respectively. The average Gap% of SPLA-P1 increases with the size of
instances from 0% in sets A and B to 0.23% and 0.87% in sets C and D, respectively. Algorithm

20
SPLA-P2 returns optimal solutions for all instances in sets A and B within an average CPU time of
7 and 57 seconds, respectively. The average Gap% of SPLA-P2 increases from 0% in sets A and B
to 0.50% and 1.03% in sets C and D, respectively.
Both SPLA-P1 and SPLA-P2 result in smaller average Gap% in comparison to the LDM. The
average DevI % is zero in sets A and B for both SPLA-P1 and SPLA-P2, which means that both
methods are able to provide the same solutions as the LDM. This also illustrates that the lower bounds
of SPLA-P1 and SPLA-P2 are tighter than the Lagrangian decomposition lower bound. When the
size of instances increases in sets C and D, SPLA-P1 and SPLA-P2 provide better solutions than
LDM, since DevI % is negative, and in smaller CPU times for all instances, as can be seen from Tables
12 and 13.
When comparing the performance of SPLA-P1 and SPLA-P2, one can conclude that SPLA-P1
provides better solutions on average. In fact, the average DevII % is zero in sets A and B, meaning
that both methods provide the same solutions for all instances; however, for larger instances in sets C
and D, the average DevII % is positive. Moreover, the minimum DevII % is equal to 0 and hence the
solution of SPLA-P1 is at least as good as the solution of SPLA-P2 for all considered instances.

Table 5: Performance of BARON, LDM, SPLA-P1 and SPLA-P2 with infinite inventory budget

BARON LDM SPLA-P1 SPLA-P2


DevII %
Gap% Time(s) Gap% Time(s) Gap% Time(s) DevI % Gap% Time(s) DevI %

Avg 234.7 3600 0.02 13 0.00 6 0.00 0.00 7 0.00 0.00


A Min 168.8 3600 0.00 5 0.00 3 0.00 0.00 3 0.00 0.00
Max 268.8 3600 0.07 19 0.00 8 0.00 0.00 15 0.00 0.00

Avg 432.8 3600 0.05 22 0.00 3 0.00 0.00 57 0.00 0.00


B Min 364.4 3600 0.02 13 0.00 1 0.00 0.00 37 0.00 0.00
Max 530.1 3600 0.08 51 0.00 4 0.00 0.00 77 0.00 0.00

Avg - 3600 2.07 6381 0.23 3423 -0.60 0.50 4374 -0.44 0.15
C Min - 3600 0.79 3761 0.00 294 -1.11 0.00 2390 -0.85 0.00
Max - 3600 3.09 10987 1.10 7011 -0.18 1.44 6391 -0.02 0.60

Avg - 3600 3.39 11775 0.87 5645 -0.77 1.03 5561 -0.70 0.08
D Min - 3600 2.17 10512 0.61 4290 -1.83 0.17 4216 -1.76 0.00
Max - 3600 5.09 13388 1.02 6321 -0.13 1.66 7093 0.00 0.32

Based on Table 6, one can observe that in SPLA-II generally the average CPU time increases as
1
Qp increases. This makes sense since the number of binary variables considered in the second phase

of SPLA-II is higher. However, as Q1p increases the quality of the solutions improves, since average
DevIII decreases. Therefore, the size of the restricted neighborhood Q1p provides a trade-off between
the quality of the solution and CPU time.

For all instances in sets A and B, SPLA-II with Q1p = 15 is able to find optimal solutions,
DevIII = 0. For sets C and D, the average DevIII = −0.01% and -0.08%, respectively, showing
that on average SPLA-II provides better solutions than both SPLA-P1 and SPLA-P2. Based

on Tables 20 and 21, one can see that when Q1p = 15, the obtained solution of SPLA-II in four
instances is on average 0.204% better than the solution of SPLA-P1 and SPLA-P2, in three instances
SPLA-II provides same solution as SPLA-P1 and SPLA-P2, and in three instance the obtained
solution of SPLA-II is on average 0.135% worst that the solution of SPLA-P1 and SPLA-P2.
Most importantly, the CPU times of SPLA-II are much smaller than the CPU times of SPLA-P1
and SPLA-P2. This was to be expected since SPLA-II resolves the issues of large number of binary
variables in model P1 and large number of constraints in model P2.

21
Table 6: Performance of the two-phase algorithm SPLA-II with infinite inventory budget
1 1 1
Qp = 7 Qp = 11 Qp = 15

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

Avg 3 0.08 4 0.02 5 0.00


A Min 3 0.00 4 0.00 4 0.00
Max 4 0.37 5 0.09 6 0.00

Avg 5 0.39 15 0.13 48 0.00


B Min 3 0.06 8 0.00 17 0.00
Max 7 0.84 25 0.64 84 0.00

Avg 121 0.14 156 0.04 216 -0.01


C Min 50 0.03 53 -0.02 58 -0.02
Max 258 0.36 307 0.19 542 0.00

Avg 569 0.94 701 0.42 802 -0.08


D Min 470 0.51 502 -0.30 611 -0.47
Max 715 1.77 888 1.61 900 0.21

6.2.2 Case 2: finite inventory budget

Table 7 shows that when there is finite inventory budget, BARON is not able to determine feasible
solutions for all considered instances within one hour time limit. LDM finds optimal or near optimal
solutions for all instances in sets A and B with an average Gap of 0.03% and 0.05% and average CPU
time of 37 and 1213 seconds, respectively. The average Gap% and CPU time of LDM increase to
2.07% in 7968 seconds and 1.61% in 7651 seconds for sets C and D, respectively.
SPLA-P1 and SPLA-P2 determine optimal solutions for all instances in set A and the same
optimal or near-optimal solutions for instances in set B, as reported in Table 15. However, SPLA-P1
seems to be faster than SPLA-P2. The average CPU times of SPLA-P1 are 4 seconds for set A and
18 seconds for set B, while those of SPLA-P2 are 5 and 155 seconds for the same sets. In addition,
SPLA-P1 results in a smaller optimality Gap% than SPLA-P2 for all instances in sets C and D,
as shown in Tables 16 and 17. For these sets, the average optimality Gap% of SPLA-P1 is 0.19%
and 0.21% and for SPLA-P2 it is 0.85% and 0.56%, respectively. Therefore, SPLA-P1 outperforms
SPLA-P2 in terms of solution quality and CPU times.
Both SPLA-P1 and SPLA-P2 have a smaller average Gap% and average CPU time in comparison
to LDM. For sets A and B, the average DevI % is zero for both SPLA-P1 and SPLA-P2. This
means that the three algorithms find the same optimal or near-optimal solutions in sets A and B;
however, LDM requires much more computation time. When the size of instances increases in sets
C and D, the average DevI % becomes negative meaning that SPLA-P1 and SPLA-P2 are able to
provide solutions with lower cost than those of LDM. We should note that, SPLA-P1 and SPLA-
P1 provide better solutions than LDM in smaller CPU times for all instances in sets C and D since
DevI % is negative, as can be seen from Tables 16, and 17.
From Table 8, we can observe that in SPLA-II the average DevIII % decreases and the average

CPU time increases with the size of the restricted neighborhood Q1p . This means that the quality of
the solutions improves at the expense of more computational time. We note that for all instance sets,
the CPU times of SPLA-II are much smaller than those of SPLA-P1, SPLA-P2 and LDM and

with a maximum DevIII % = 1.08 for Q1p = 7.

In addition, we observe that for all instances in sets A and B, SPLA-II with Q1p = 15 is able to
find the same solutions as SPLA-P1 and SPLA-P2 since DevIII % = 0; while for instances in sets
C and D, the average DevIII is negative or equal to zero, i.e. on average, SPLA-II provides better

22
Table 7: Performance of BARON, LDM, SPLA-P1 and SPLA-P2 with finite inventory budget

BARON LDM SPLA-P1 SPLA-P2


DevII %
Gap% Time(s) Gap% Time(s) Gap% Time(s) DevI % Gap% Time(s) DevI %

Avg - 3600 0.03 37 0.00 4 0.00 0.00 5 0.00 0.00


A Min - 3600 0.00 3 0.00 2 0.00 0.00 2 0.00 0.00
Max - 3600 0.07 161 0.00 5 0.00 0.00 7 0.00 0.00

Avg - 3600 0.05 1213 0.03 18 0.00 0.03 155 0.00 0.00
B Min - 3600 0.00 130 0.00 5 0.00 0.00 15 0.00 0.00
Max - 3600 0.09 3092 0.09 29 0.00 0.09 275 0.00 0.00

Avg - 3600 2.07 7968 0.19 4077 -0.98 0.85 4229 -0.82 0.16
C Min - 3600 1.14 4387 0.02 2447 -1.46 0.31 3614 -1.44 -0.17
Max - 3600 2.94 11187 0.45 5892 -0.47 1.88 5927 -0.47 0.45

Avg - 3600 1.61 7651 0.21 2906 -0.29 0.56 2985 -0.22 0.07
D Min - 3600 0.92 4064 0.01 191 -0.63 0.04 871 -0.63 -0.15
Max - 3600 2.28 10860 0.52 5647 -0.04 1.61 4403 -0.01 0.34


solutions. Specifically, based on Tables 24 and 25, one can see that when Q1p = 15, the solutions
of SPLA-II are better in five instances with an average difference of -0.0287%, they are the same in
four instances, and they are worst in one instance with an average difference of 0.05%. However, the
CPU times of SPLA-II are much smaller.
Table 8: Performance of the two-phase algorithm SPLA-II with finite inventory budget
1 1 1
Qp = 7 Qp = 11 Qp = 15

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

Avg 4 0.12 5 0.02 8 0.00


A Min 3 0.00 4 0.00 4 0.00
Max 5 0.35 6 0.09 13 0.00

Avg 12 0.08 25 0.00 30 0.00


B Min 7 0.00 15 0.00 19 0.00
Max 16 0.25 35 0.00 41 0.00

Avg 64 0.20 86 0.03 107 -0.02


C Min 8 -0.02 13 -0.04 17 -0.04
Max 139 0.68 151 0.19 172 0.00

Avg 211 0.43 341 0.10 534 0.00


D Min 44 0.10 82 -0.01 321 -0.02
Max 501 1.08 627 0.45 677 0.05

When comparing the obtained results in case 1 (infinite inventory budget) and case 2 (finite
inventory budget), one can notice that the problem becomes more difficult to solve for BARON
when the inventory budget constraints (22) are introduced in model P0. In fact, BARON is able to
determine feasible solutions for all instances in sets A and B in the case of infinite budget, while no
feasible solution was found in the case of a finite budget. This can be explained by the nonlinearity
of inventory budget constraints. In contrast, in the presence of the inventory budget constraints, the
difficulty of the problem does not necessarily increase for SPLA-P1, SPLA-P2 and SPLA-II. These
algorithms use a successive piecewise linear approximation of square root terms, making the inventory
budget constraints linear.
In summary, the above computational experiments show that even small instances of the produc-
tion capacity and safety stock placement problem P0 are not solvable in reasonable CPU times using
BARON. LDM finds optimal or near-optimal solutions for small instances in reasonable computation

23
times and good solutions for larger instances but requires long CPU times. SPLA-P1 generally pro-
vides better solutions than SPLA-P2 and requires less computation time; however, both algorithms
outperform LDM in terms of average optimality gap and CPU times. SPLA-II finds optimal or
near-optimal solutions and greatly decreases solution times compared to SPLA-P1 and SPLA-P2.
Furthermore, the size of the restricted neighborhood Q1p in SPLA-II provides a trade-off between the
quality of the solution and CPU time.

6.3 Effect of inventory budget on production and inventory decisions


In this section, we show that inventory budgets affect both production and inventory decisions,
using Chain04 from Table 4 as an illustrative example. The corresponding supply chain network is
depicted in Figure 6 of Appendix D. This network includes production nodes p1 to p7 and logistics
nodes categorized as supply nodes l1 to l4, intermediate nodes l5 and l8, and demand nodes l6, l7,
and l9 to l15. We use the same parameter settings as in Section 6.1 and consider that all production
nodes are subjected to one capacity budget, B=e 25000.
Our analysis considers four inventory budget scenarios: Scenario 1 assumes infinite inventory
budgets at all logistics nodes. Scenario 2 imposes inventory budgets at intermediate logistics nodes
p
with Kj = µj λj + zj σj λj . Scenario 3 considers finite inventory budgets at demand logistics nodes
p
with Kj = µj λj + zj σj λj . Scenario 4 limits inventory only at logistics node l9 such that Kl9 =
√ 
0.75 × µl9 λl9 + zl9 σl9 λl9 = 10000. Table 9 reports results for the four scenarios. The top part of
the table gives optimal capacities R and lead times LT at production nodes. The bottom part of the
table includes total WIP at production nodes, total safety stock at supply nodes SS sup , total safety
stock at intermediate nodes SS inter , and total safety stock at demand nodes SS dem .

Table 9: Results for the four inventory budget scenarios

Scenario 1 Scenario 2 Scenario 3 Scenario 4

Stage R LT R LT R LT R LT

p1 2849.46 8 2849.46 8 2756.6 10 2698.23 12


p2 170.66 5 167.08 6 187.3 3 163.06 8
p3 347.93 7 359.29 6 359.29 6 333.22 9
p4 537.03 10 537.03 10 530.33 11 520.43 13
p5 884.04 7 884.04 7 884.04 7 1064.24 3
p6 954.76 4 954.76 4 1177.48 2 915.5 5
p7 251.19 6 247 7 247 7 241.88 9

WIP 39033 39125 42630 50149


SS sup 10851 36722 36722 36722
SS inter 12642 0 15573 12286
SS dem 27527 35671 20150 23515

Table 9 shows that when inventory budget constraints are introduced in Scenarios 2, 3, and 4, both
production and inventory decisions are changed compared to Scenario 1, in which inventory budgets
are infinite. This result is not in line with the observations of Ghadimi and Aouam (2021) who find
that inventory budgets affect inventory decisions but not production decisions. We conclude that
their results only hold in the case of a serial system with one manufacturer, one inventory-constrained
warehouse, and one retailer. We should note that in our case, both inventory and production decisions
are affected whether inventory budgets are imposed at intermediate or demand nodes.
At intermediate and demand nodes, imposing inventory budgets not only affects production ca-
pacity and lead time solutions, but also increases the total WIP and safety stock in the system. Table

24
9 shows that total WIP in Scenarios 2, 3 and 4 is equal to 39125, 42630, and 50149 units, respectively.
These WIP levels are higher than the WIP in Scenario 1, which is equal to 39033 units. The table
also shows that the total safety stock in the system, SS sup + SS inter + SS dem , for Scenarios 2, 3 and
4 is 72394, 72445, and 72523 units, respectively. Again these safety stock levels are higher than the
total safety stock in Scenario 1, which is equal to 51020 units.
In Scenario 2, with inventory budgets at intermediate nodes, the capacity of node p3 increases to
decrease production lead time from 7 to 6 periods. Because of the limited capacity budget B, the
capacities of nodes p2 and p7 decrease, increasing the corresponding lead times from 5 and 6 periods
to 6 and 7 periods, respectively. Increasing capacity of p3 reduces the net lead time of its downstream
logistics node l7 to zero. At the same time, inventory is shifted to supply nodes and demand nodes
l12 to 114, and no inventory is kept at intermediate nodes l5 and l8. As a result, the total WIP in the
system increases from 39033 to 39125 units. Safety inventory at supply nodes increases from 10851
to 36722 units and for demand nodes from 27527 to 35671 units; while at intermediate nodes, safety
stock level decreases from 12642 to 0 units.
Inventory budgets are introduced at demand nodes in Scenario 3. In this case, more capacity is
allocated to production nodes that supply demand nodes, specifically, nodes p2, p3, and p6. Since
capacity budget is binding, the capacities of nodes p1, p4, and p7 decrease. In addition, some inventory
is shifted to supply nodes l1 to l4. As a result, the total WIP in the system increases from 39033
to 42630 units, and safety stock level increases from 10851 to 36722 units at supply nodes and from
12642 to 15573 units at intermediate nodes. Safety stock at demand nodes decreases from 27527 to
20150 units.
In Scenario 4, inventory budget at demand node l9 is quite limited and it follows that shifting
inventory from this node to supply nodes is not sufficient to satisfy the inventory budget constraint
at l9. Therefore, more capacity is allocated to the production node that supplies l9, i.e., node p5.
This, in turn, results in reducing the capacity of all other production nodes p1, p2, p3, p4, p6, and p7,
due to the limited production capacity budget. This capacity allocation shifts inventory from demand
nodes to supply nodes. As a consequence, the total WIP in the system increases from 39033 to 50149
units, and the total inventory in the system decreases from 27527 to 23515 units at demand nodes
and from 12642 to 12286 units at intermediate nodes. Safety inventory increases from 10851 to 36722
units at supply nodes.
In sum, whether finite inventory budgets are imposed at intermediate or demand nodes, both pro-
duction capacity allocation and safety stock placement are changed compared to the infinite inventory
budget case. In addition, we observe that inventory budgets tend to increase total WIP and total
safety inventory in the system.

7 Conclusion
Several GSA studies have investigated the integration of production and inventory decisions in
large supply networks and developed efficient solution algorithms for the optimization problems that
emerge. These studies have typically ignored inventory budgets. In practice, however, firms tend to
limit the amount of capital tied-up in inventories, and there is usually a limited amount of storage space
at a warehouse or a retailer. The present study models and solves the problem of jointly optimizing
production capacity and safety stock placement with both limited capacity and inventory budgets in
general acyclic supply chains. The objective is to minimize the expected total supply chain cost while
meeting a target customer service level and budget constraints.

25
Following GSA, we model the production capacity and safety stock placement with inventory bud-
get constraints. A guaranteed approach and a chance-constraint approach are proposed to incorporate
finite inventory budgets and their effect on safety stock placement is analyzed. Our experiments sug-
gest the use of guaranteed constraints when the target probability of inventory budget satisfaction is
very high. In addition, we find that when inventory budgets are imposed, both production capacity
allocation and safety stock placement are changed compared to the infinite inventory budget case.
We also observe that inventory budgets tend to increase total WIP and total safety inventory in the
system. Furthermore, when an inventory budget is introduced at a logistic node, either more capacity
is allocated to the supplying production nodes, or inventory is shifted to other logistics nodes.
The production and safety stock placement problem with inventory budget constraints is a mixed-
integer nonlinear program (MINLP) with a non-convex objective and constraints. Our experiments
show that a standard MINLP solver is unable to yield feasible solutions even for small instances. We,
therefore, develop tailored algorithms to efficiently solve the problem. As a first solution procedure,
we adapt the Lagrangian decomposition method of Ghadimi et al. (2020) to include inventory budget
constraints. Using adapted real-world data sets from Willems (2008), our computational results show
that the adapted Lagrangian decomposition method finds optimal solutions for small instances and
good solutions for larger instances but requires long CPU times.
As a second solution approach, we use a successive piecewise linear approximation (SPLA) algo-
rithm to solve two new alternative formulations of the integrated problem. These new formulations
are shown to be equivalent to the original problem. SPLA applied on both formulations outperforms
the adapted Lagrangian decomposition method in terms of solution quality and CPU times. An im-
portant contribution is that this second solution procedure outperforms the Lagrangian decomposition
method even in the case of infinite inventory budget considered in Ghadimi et al. (2020). The size
of the new formulations increases with the number of production nodes and the number of possible
lead times. To tackle this issue, we propose a third solution procedure. This is a two-phase heuris-
tic, called SPLA-II, that takes advantage of the structure of the two new formulations. In the first
phase, a cutting plane algorithm solves successive continuous relaxations of the second formulation
with restricted sets of constraints, using SPLA to determine an optimal continuous solution. In the
second phase, a neighborhood of the continuous solution restricts the number of binary variables in
the first formulation. The size of this neighborhood allows the decision-maker to trade-off solution
quality with CPU times. Our computational results show that SPLA-II greatly improves CPU times
while yielding optimal or near-optimal solutions for all instances.
There are several possible extensions of the present work. The present model can be extended
to include finite inventory budgets together with other production decisions, such as batch sizing,
production smoothing, or lot scheduling. Furthermore, the present study assumes that logistics nodes
follow a base stock policy with a common review period. Considering different review periods at
logistics nodes may further decrease supply chain costs and take into account setup or ordering costs.
The emerging optimization problems would be interesting to study but would present computational
challenges. Developing efficient solution procedures for these new problems is an interesting future
research direction.
Acknowledgments
We acknowledge the support provided by the Research Foundation - Flanders (FWO) for the project
with contract number FWO.OPR.2016.0019.01.

26
References
Aouam, T. and Kumar, K. (2019). On the effect of overtime and subcontracting on supply chain
safety stocks. Omega, 89:1–20.

Bera, U., Rong, M., Mahapatra, N., and Maiti, M. (2009). A multi-item mixture inventory model
involving random lead time and demand with budget constraint and surprise function. Applied
Mathematical Modelling, 33(12):4337–4344.

Beyer, D., Sethi, S. P., and Sridhar, R. (2001). Stochastic multiproduct inventory models with limited
storage. Journal of Optimization Theory and Applications, 111(3):553–588.

Brown, A., Ettl, M., Lin, G., and Petrakian, R. (1999). Implementing a multiechelon inventory system
at a semiconductor company: Modeling and results. IBM Watson Labs technical report, Yorktown,
New York.

Brown, W. and Tucker, W. (1961). The marketing center: Vanishing shelf space. Atlanta Economic
Review, 11(10):9–13.

Bussieck, M. R. and Vigerske, S. (2010). Minlp solver software. Wiley Encyclopedia of Operations
Research and Management Science.

Eruguz, A. S., Sahin, E., Jemai, Z., and Dallery, Y. (2016). A comprehensive survey of guaranteed-
service models for multi-echelon inventory optimization. International Journal of Production Eco-
nomics, 172:110–125.

Geismar, H. N., Dawande, M., Murthi, B., and Sriskandarajah, C. (2015). Maximizing revenue through
two-dimensional shelf-space allocation. Production and Operations Management, 24(7):1148–1163.

Ghadimi, F. and Aouam, T. (2021). Planning capacity and safety stocks in a serial production–
distribution system with multiple products. European Journal of Operational Research, 289(2):533–
552.

Ghadimi, F., Aouam, T., and Vanhoucke, M. (2020). Optimizing production capacity and safety
stocks in general acyclic supply chains. Computers & Operations Research, page 104938.

Ghalebsaz-Jeddi, B., Shultes, B. C., and Haji, R. (2004). A multi-product continuous review inven-
tory system with stochastic demand, backorders, and a budget constraint. European Journal of
Operational Research, 158(2):456–469.

Graves, S. C. (1986). A tactical planning model for a job shop. Operations Research, 34(4):522–533.

Graves, S. C. and Schoenmeyr, T. (2016). Strategic safety-stock placement in supply chains with
capacity constraints. Manufacturing & Service Operations Management, 18(3):445–460.

Graves, S. C. and Willems, S. P. (2000). Optimizing strategic safety stock placement in supply chains.
Manufacturing & Service Operations Management, 2(1):68–83.

Graves, S. C. and Willems, S. P. (2003). Supply chain design: Safety stock placement and supply
chain configuration. In de Kok, A. G. and Graves, S. C., editors, Handbook of Operations Research
and Management Science, Vol. 11, chapter 3, pages 95–131. Elsevier.

27
Hariga, M. A. (2010). A single-item continuous review inventory problem with space restriction.
International Journal of Production Economics, 128(1):153–158.

Hübner, A. H., Kuhn, H., and Sternbeck, M. G. (2013). Demand and supply chain planning in
grocery retail: an operations planning framework. International Journal of Retail & Distribution
Management.

Ignall, E. and Veinott Jr, A. F. (1969). Optimality of myopic inventory policies for several substitute
products. Management Science, 15(5):284–304.

Kumar, K. and Aouam, T. (2018a). Effect of setup time reduction on supply chain safety stocks.
Journal of manufacturing systems, 49:1–15.

Kumar, K. and Aouam, T. (2018b). Integrated lot sizing and safety stock placement in a network of
production facilities. International Journal of Production Economics, 195:74–95.

Kumar, K. and Aouam, T. (2019). Extending the strategic safety stock placement model to consider
tactical production smoothing. European Journal of Operational Research, 279(2):429–448.

Lemmens, S., Decouttere, C., Vandaele, N., Bernuzzi, M., and Reichman, A. (2016). Performance
measurement of a rotavirus vaccine supply chain design by the integration of production capacity
into the guaranteed service approach. Available at SSRN 2841176.

Li, H. and Jiang, D. (2012). New model and heuristics for safety stock placement in general acyclic
supply chain networks. Computers & Operations Research, 39(7):1333–1344.

Lim, A., Rodrigues, B., and Zhang, X. (2004). Metaheuristics with local search techniques for retail
shelf-space optimization. Management science, 50(1):117–131.

Magnanti, T. L., Shen, Z.-J. M., Shu, J., Simchi-Levi, D., and Teo, C.-P. (2006). Inventory placement
in acyclic supply chain networks. Operations Research Letters, 34(2):228–238.

Millstein, M. A., Yang, L., and Li, H. (2014). Optimizing abc inventory grouping decisions. Interna-
tional Journal of Production Economics, 148:71–80.

Minner, S. and Silver, E. A. (2005). Multi-product batch replenishment strategies under stochastic
demand and a joint capacity constraint. IIE Transactions, 37(5):469–479.

Pasandideh, S. H. R., Niaki, S. T. A., and Mousavi, S. M. (2013). Two metaheuristics to solve
a multi-item multiperiod inventory control problem under storage constraint and discounts. The
International Journal of Advanced Manufacturing Technology, 69(5-8):1671–1684.

Reiner, G., Teller, C., and Kotzab, H. (2013). Analyzing the efficient execution of in-store logistics
processes in grocery retailing—the case of dairy products. Production and Operations Management,
22(4):924–939.

Rosenblatt, M. J. (1981). Multi-item inventory system with budgetary constraint: A comparison


between the lagrangian and the fixed cycle approach. The International Journal Of Production
Research, 19(4):331–339.

Sahinidis, N. V. (2017). BARON 17.8.9: Global Optimization of Mixed-Integer Nonlinear Programs,


User’s Manual.

28
Sherbrooke, C. C. (1971). An evaluator for the number of operationally ready aircraft in a multilevel
supply system. Operations Research, 19(3):618–635.

Simpson Jr, K. F. (1958). In-process inventories. Operations Research, 6(6):863–873.

Sitompul, C., Aghezzaf, E.-H., Dullaert, W., and Landeghem, H. V. (2008). Safety stock placement
problem in capacitated supply chains. International Journal of Production Research, 46(17):4709–
4727.

Tian, F., Willems, S. P., and Kempf, K. G. (2011). An iterative approach to item-level tactical
production and inventory planning. International Journal of Production Economics, 133(1):439–
450.

Veinott Jr, A. F. (1965). Optimal policy for a multi-product, dynamic, nonstationary inventory
problem. Management Science, 12(3):206–222.

Vidal-Carreras, P. I., Garcia-Sabater, J. P., and Garcia-Sabater, J. J. (2017). A practical model


for managing inventories with unknown costs and a budget constraint. International Journal of
Production Research, 55(1):118–129.

Wang, T.-Y. and Hu, J.-M. (2010). Heuristic method on solving an inventory model for products
with optional components under stochastic payment and budget constraints. Expert Systems with
Applications, 37(3):2588–2598.

Willems, S. P. (2008). Data set—real-world multiechelon supply chains used for inventory optimization.
Manufacturing & Service Operations Management, 10(1):19–23.

Xu, K. and Leung, M. T. (2009). Stocking policy in a two-party vendor managed channel with space
restrictions. International Journal of Production Economics, 117(2):271–285.

Yang, L., Li, H., Campbell, J. F., and Sweeney, D. C. (2017). Integrated multi-period dynamic
inventory classification and control. International Journal of Production Economics, 189:86–96.

You, F. and Grossmann, I. E. (2011). Stochastic inventory management for tactical process planning
under uncertainties: Minlp models and algorithms. AIChE Journal, 57(5):1250–1277.

29
Appendix A. Proof for Proposition 1

Proof. Two problem formulations are said to be equivalent if for each feasible solution in the first for-
mulation there is a corresponding feasible solution in the second formulation with the same objective
value, and vice versa.

Formulations P0 and P1 are equivalent.


We need to show that for any feasible solution R̄p0 , LT ¯ 0p , SI
¯ 0 and S̄ 0 in P0, there exists a corresponding
j j
¯ 1 1
feasible solution Ȳp,q , SI j and S̄j in P1 with the same objective value, and vice versa.
Consider a feasible solution in P0. Since Qp is the set of all possible lead time values at production
node p, there exists index q 1 such that LT ¯ 0p = lp,q1 . Therefore, for production node p, we set Ȳp,q1 = 1
and zero for all other q’s. Thus, LT ¯ 0p = P 0
P ¯1 ¯0
q∈Qp lp,q Ȳp,q and R̄p = q∈Qp rp,q Ȳp,q . We also set SI j = SI j
and S̄j1 = S̄j0 . The constraints of P0 and P1 are essentially the same, hence the constructed solution
is feasible in P1 since we started from a feasible solution in P0. Furthermore, the objective values
are equal:
X X q
V P0 = ¯ 0+
wp µp LT H(z j )σ j SI¯ 0 + λj − S̄ 0
p j j
p∈P j∈L
X X X q
= wp µ p lp,q Ȳp,q + H(zj )σj ¯ 1 + λj − S̄ 1
SI j j
p∈P q∈Qp j∈L
P1
=V (A.1)

where, V P0 and V P1 are the objective values in P0 and P1, respectively.


¯ 1 and S̄ 1 there exists a
Similarly, we can show that for each feasible solution of P1, i.e., Ȳp,q , SI j j
corresponding feasible solution in P0 with the same objective value. In this case, we set SI ¯ 0 = SI¯ 1,
j j
¯0=
S̄j0 = S̄j1 , LT
P
l Ȳ , and R̄ 0 =
P
r Ȳ .
p q∈Qp p,q p,q p q∈Qp p,q p,q

Formulations P0 and P2 are equivalent.


¯ 0 , SI
We show that a feasible solution R̄p0 , LT ¯ 0 and S̄ 0 in P0 is also feasible in P2 with the same
p j j
objective value, and vice versa.
Consider a feasible solution in P0. From constraints (5), we have LT ¯ 0 = S̄ 0 − SI
¯ 0 . It follows that
p p p

X X q
V P0 = ¯ 0p +
wp µp LT H(zj )σj ¯ 0 + λj − S̄ 0
SI j j
p∈P j∈L
X  X q
= ¯0 +
wp µp S̄p0 − SI H(z ¯0 0
j j SI j + λj − S̄j

p
p∈P j∈L
P2
=V (A.2)

where, V P0 and V P2 are the objective values of P0 and P2, respectively.


Now, we need to show that a feasible solution in P0 is also feasible in P2. Essentially, we need to
show that this solution satisfies constraints (18), since all other constraints are the same.
Given a feasible solution R̄p0 and LT ¯ 0p for node p, there exists a single corresponding index q 2 ∈ Qp
in formulation P2, as shown in Figure 1. This index identifies two lines with slopes ap,q2 and ap,q2 −1 ,
and intercepts fp,q2 and fp,q2 −1 , respectively. Accordingly, we can write R̄p0 = fp,q2 + ap,q2 × LT ¯ 0p and
¯ 0p . Additionally, because the lead time function is assumed to be decreasing
R̄p0 = fp,q2 −1 + ap,q2 −1 × LT
and convex in capacity, we have R̄0 > fp,q + ap,q × LT ¯ 0 for all other q ∈ Qp . Hence, for all q ∈ Qp
p p

30
we can write R̄p0 ≥ fp,q + ap,q × (S̄p0 − SI ¯ 0 ), since LT
¯ 0 = S̄ 0 − SI
¯ 0 . Therefore the solution , R̄2 = R̄0 ,
p p p p p p
¯ 2 = SI
SI ¯ 0 and S̄ 2 = S̄ 0 , is feasible in formulation P2.
j j j j
Similarly, we can show that each feasible solution in P2 is also feasible solution in P0 with the
same objective value.

Appendix B. The Lagrangian decomposition method for solving P0

Ghadimi et al. (2020) propose a Lagrangian decomposition method LDM to solve the capacity plan-
ning and safety stock placement problem P0, when there is no inventory budget constraints. LDM
can easily be extended to account for nonlinear inventory budget constraints (22) or (25) by integrat-
ing these constraints in the safety stock placement subproblem. In the following, we summarize the
major steps of LDM.
Step 1 (Lagrangian relaxation problem): In the formulation of P0, lead time variables LTp
can be considered as complicating variables because they link capacity and safety stock placement
decisions. LDM reformulates P0 such that complicating variables are transformed into complicating
constraints by duplicating lead time variables and adding corresponding equality constraints. The La-
grangian relaxation problem can then be obtained by relaxing the new equality constraints penalizing
their violation in the objective function.

Step 2 (Update global lower bound): For a given value of the Lagrangian multipliers, the La-
grangian relaxation problem can be decomposed into two subproblems, a capacity planning subproblem
and a safety stock placement subproblem, which can be solved separately. To update the global lower
bound, we proceed as follows:

• Solve the capacity planning subproblem using a Lagrangian relaxation heuristic.

• Iteratively solve the safety stock placement subproblem with inventory budget constraints (22)
or (25) using a successive piecewise linear approximation, while adding budget feasibility con-
straints.

• If the current lower bound is greater than the global lower bound obtained so far, then update
the global lower bound.

Step 3 (Update global upper bound): For a given value of the Lagrangian multiplier, the lower
bound solution of the relaxation problem is not necessarily feasible for the primal problem. To con-
struct a primal feasible solution and the corresponding upper bound, we start from the lower bound
solution and follow the step below:

• Fix the values of production capacities to their values in the solution of the capacity planning
subproblem.

• Solve the resulting problem using a successive piecewise linear approximation method to find
the optimal service times.

• If the current upper bound is less than the global upper bound obtained so far, then update the
global upper bound.

31
Step 4 (Update Lagrangian multipliers): Use a hybrid method that combines cutting planes,
subgradient and boxstep approaches to update the Lagrangian multipliers.

Step 5 (Check stopping criteria): If the optimality gap is acceptable, the number of iterations
reaches a predefined maximum value, or the global lower bound does not improve for a fixed number
of iterations, then the algorithm stops. Otherwise, iter = iter + 1 and go to Step 2.

32
Appendix C. Details of the computational results

In this appendix, we present the detailed computational results for supply chains in sets A to D with infinite and finite inventory budgets.

Table 10: Results for set A with 22 stages with infinite inventory budget

BARON LDM SPLA-P1 SPLA-P2


Ins.#
DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 268.75 3600 0.02 16.0 3 0.00 6.8 6 0.00 0.00 6.4 6 0.00 0.00
2 263.17 3600 0.00 5.0 1 0.00 5.4 5 0.00 0.00 4.3 5 0.00 0.00
3 168.81 3600 0.07 16.8 2 0.00 8.2 7 0.00 0.00 7.8 7 0.00 0.00
4 - 3600 0.00 8.9 1 0.00 8.1 6 0.00 0.00 14.9 6 0.00 0.00
5 238.11 3600 0.02 19.1 5 0.00 3.2 5 0.00 0.00 2.7 5 0.00 0.00

Table 11: Results for set B with 28 stages with infinite inventory budget

BARON LDM SPLA-P1 SPLA-P2


Ins.#

DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 364.38 3600 0.05 85.1 3 0.00 2.4 4 0.00 0.00 54.6 4 0.00 0.00
33

2 530.06 3600 0.05 74.0 4 0.00 1.9 4 0.00 0.00 36.6 4 0.00 0.00
3 427.40 3600 0.04 112.8 12 0.00 4.3 4 0.00 0.00 70.0 4 0.00 0.00
4 409.22 3600 0.08 96.2 6 0.00 2.5 4 0.00 0.00 77.2 4 0.00 0.00
5 - 3600 0.02 62.6 3 0.00 1.4 4 0.00 0.00 45.4 4 0.00 0.00

Table 12: Results for set C with 145 stages with infinite inventory budget

BARON LDM SPLA-P1 SPLA-P2


Ins.#

DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 - 3600 1.92 4903.2 3 0.05 294.2 5 -0.64 0.05 6391.0 5 -0.64 0.00
2 - 3600 2.67 7587.3 2 0.01 6401.6 7 -1.11 1.00 4323.2 5 -0.52 0.60
3 - 3600 0.79 4668.2 2 0.01 2263.9 6 -0.20 0.01 2390.1 6 -0.20 0.00
4 - 3600 1.87 3761.3 6 0.00 1143.8 5 -0.85 0.00 2552.6 5 -0.85 0.00
5 - 3600 3.09 10987.1 1 1.10 7011.0 5 -0.18 1.44 6213.2 4 -0.02 0.17
Table 13: Results for set D with 156 stages with infinite inventory budget

BARON LDM SPLA-P1 SPLA-P2

Ins.#
DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 - 3600 2.82 12099.7 1 0.94 5787.1 4 -0.31 0.17 4216.4 3 0.00 0.32
2 - 3600 5.09 10821.2 1 0.61 6249.7 4 -1.83 0.75 5069.9 4 -1.76 0.07
3 - 3600 4.01 10512.2 2 0.92 6321.3 4 -1.25 1.48 5879.9 4 -1.25 0.00
4 - 3600 2.17 12054.0 1 0.87 5578.1 4 -0.35 1.11 7093.0 4 -0.35 0.00
5 - 3600 2.83 13387.7 2 1.02 4290.3 4 -0.13 1.66 5546.5 4 -0.13 0.00

Table 14: Results for set A with 22 stages with finite inventory budget

BARON LDM SPLA-P1 SPLA-P2


Ins.#

DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 - 3600 0.02 3.7 2 0.00 3.8 6 0.00 0.00 4.5 6 0.00 0.00
2 - 3600 0.07 3.2 4 0.00 2.0 4 0.00 0.00 2.2 4 0.00 0.00
3 - 3600 0.03 161.0 7 0.00 4.7 5 0.00 0.00 6.1 5 0.00 0.00
4 - 3600 0.00 4.9 3 0.00 3.3 5 0.00 0.00 7.5 5 0.00 0.00
5 - 3600 0.04 13.8 5 0.00 4.6 6 0.00 0.00 3.8 6 0.00 0.00
34

Table 15: Results for set B with 28 stages with finite inventory budget

BARON LDM SPLA-P1 SPLA-P2


Ins.#

DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 - 3600 0.09 720.9 7 0.00 23.6 5 0.00 0.00 274.9 5 0.00 0.00
2 - 3600 0.00 182.4 3 0.09 5.2 4 0.00 0.09 14.6 4 0.00 0.00
3 - 3600 0.07 130.3 5 0.00 18.3 6 0.00 0.00 190.9 6 0.00 0.00
4 - 3600 0.04 1937.7 8 0.00 16.8 4 0.00 0.00 211.6 4 0.00 0.00
5 - 3600 0.05 3091.6 6 0.06 28.6 5 0.00 0.06 84.4 5 0.00 0.00
Table 16: Results for set C with 145 stages with finite inventory budget

BARON LDM SPLA-P1 SPLA-P2

Ins.#
DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 - 3600 2.94 9663.3 1 0.25 4790.5 5 -1.46 0.70 3613.6 3 -1.01 0.45
2 - 3600 1.87 8508.5 1 0.15 4735.4 6 -0.80 0.84 3915.0 3 -0.63 0.18
3 - 3600 1.14 6095.7 2 0.10 2519.4 4 -0.47 0.31 5927.4 4 -0.47 0.00
4 - 3600 1.94 4387.0 2 0.02 2447.2 4 -0.92 0.51 3824.8 3 -0.56 0.35
5 - 3600 2.48 11186.9 1 0.45 5892.2 4 -1.27 1.88 3865.6 3 -1.44 -0.17

Table 17: Results for set D with 156 stages with finite inventory budget

BARON LDM SPLA-P1 SPLA-P2


Ins.#

DevII %
Gap% Time (s) Gap% Time (s) Iter Gap% Time (s) Iter DevI % Gap% Time (s) Iter DevI %

1 - 3600 0.97 4064.3 2 0.01 1097.7 6 -0.22 0.07 2291.1 6 -0.22 0.00
2 - 3600 2.28 10330.5 1 0.52 5646.9 5 -0.35 1.61 3605.8 3 -0.01 0.34
3 - 3600 0.92 8528.8 1 0.18 3777.5 5 -0.04 0.39 3755.6 4 -0.19 -0.15
4 - 3600 2.04 10860.0 3 0.31 3816.5 6 -0.23 0.69 4402.7 5 -0.07 0.15
5 - 3600 1.85 4471.7 13 0.04 191.4 6 -0.63 0.04 870.9 6 -0.63 0.00
35
Table 18: Results of the two-phase algorithm SPLA-II for set A with 22 stages with infinite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15

Ins.#
p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 2.5 0.02 5.1 0.00 5.6 0.00


2 3.3 0.37 3.8 0.09 4.5 0.00
3 3.2 0.00 3.9 0.00 4.3 0.00
4 4.2 0.00 4.9 0.00 5.2 0.00
5 3.3 0.00 4.2 0.00 4.7 0.00

Table 19: Results of the two-phase algorithm SPLA-II for set B with 28 stages with infinite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 4.5 0.28 8.3 0.01 17 0.00


2 7.4 0.40 11.1 0.00 63 0.00
3 5.6 0.06 25.2 0.00 84 0.00
4 3.0 0.84 12.2 0.64 54 0.00
5 3.6 0.34 16.1 0.00 22 0.00

Table 20: Results of the two-phase algorithm SPLA-II for set C with 145 stages with infinite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 50 0.03 53 -0.02 58 -0.02


2 258 0.14 307 0.00 311 0.00
3 71 0.08 83 0.00 90 0.00
4 59 0.36 65 0.19 77 0.00
5 165 0.09 272 0.02 542 -0.01

Table 21: Results of the two-phase algorithm SPLA-II for set D with 156 stages with infinite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 715 1.77 839 1.61 889 0.21


2 501 0.51 888 0.08 892 0.08
3 662 1.18 672 -0.30 719 -0.47
4 497 0.69 502 0.58 611 -0.31
5 470 0.57 605 0.14 900 0.11

36
Table 22: Results of the two-phase algorithm SPLA-II for set A with 22 stages with finite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 4.2 0.00 5.6 0.00 6.0 0.00


2 3.6 0.35 3.9 0.09 4.1 0.00
3 4.5 0.27 6.3 0.00 6.7 0.00
4 3.8 0.00 6.4 0.00 7.5 0.00
5 2.9 0.00 3.7 0.00 13.4 0.00

Table 23: Results of the two-phase algorithm SPLA-II for set B with 28 stages with finite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 9 0.25 15 0.00 19 0.00


2 15 0.00 35 0.00 38 0.00
3 16 0.00 18 0.00 20 0.00
4 7 0.14 33 0.00 41 0.00
5 13 0.00 24 0.00 30 0.00

Table 24: Results of the two-phase algorithm SPLA-II for set C with 145 stages with finite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 69 -0.01 151 -0.04 160 -0.04


2 139 0.24 144 0.00 172 0.00
3 8 -0.02 13 -0.04 17 -0.04
4 27 0.11 34 0.03 48 0.00
5 77 0.68 87 0.19 136 -0.03

Table 25: Results of the two-phase algorithm SPLA-II for set D with 156 stages with finite inventory budget
1 1 1
Q = 7 Q = 11 Q = 15
Ins.#

p p p

Time (s) DevIII % Time (s) DevIII % Time (s) DevIII %

1 62 1.08 287 0.45 321 0.05


2 501 0.12 627 0.03 677 0.00
3 395 0.10 518 0.00 543 -0.01
4 56 0.32 191 -0.01 514 -0.02
5 44 0.52 82 0.02 617 0.00

37
Appendix D. Supply chain network Chain04 from Willems (2008) used in our numerical
example

Figure 6 shows the supply chain network Chain04 from the data set of Willems (2008). In this supply
chain, logistics and production nodes are numbered using letter l and p, respectively.

l1 p1 l5 l12

l2 p2 l6 l13

l3 p3 l7 l14

l4 p4 l8 l15

p5 l9

p6 l10

p7 l11

Figure 6: Supply chain network (Chain04) adapted from Willems (2008).

38

You might also like