Computers and Operations Research: Franco Quezada, Céline Gicquel, Safia Kedad-Sidhoum, Dong Quan Vu

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

Computers and Operations Research 116 (2020) 104865

Contents lists available at ScienceDirect

Computers and Operations Research


journal homepage: www.elsevier.com/locate/cor

A multi-stage stochastic integer programming approach for a


multi-echelon lot-sizing problem with returns and lost sales
Franco Quezada a,∗, Céline Gicquel b, Safia Kedad-Sidhoum c, Dong Quan Vu d
a
Sorbonne Université, CNRS, Laboratoire d’informatique de Paris 6, LIP6, Paris F-75005, France
b
Université Paris-Saclay, Laboratoire de Recherche en Informatique, LRI, Gif-sur-Yvette 91190, France
c
CNAM, Centre d’Études et de Recherche en Informatique et Communications, CEDRIC, Paris F-75003, France
d
Nokia Bell Labs, Nokia Paris-Saclay, Route de Villejust, Nozay 91620, France

a r t i c l e i n f o a b s t r a c t

Article history: We consider an uncapacitated multi-item multi-echelon lot-sizing problem within a remanufacturing sys-
Received 16 July 2018 tem involving three production echelons: disassembly, refurbishing and reassembly. We seek to plan the
Revised 11 October 2019
production activities on this system over a multi-period horizon. We consider a stochastic environment,
Accepted 9 December 2019
in which the input data of the optimization problem are subject to uncertainty. We propose a multi-stage
Available online 13 December 2019
stochastic integer programming approach relying on scenario trees to represent the uncertain informa-
Keywords: tion structure and develop a branch-and-cut algorithm in order to solve the resulting mixed-integer linear
Stochastic lot-sizing program to optimality. This algorithm relies on a new set of tree inequalities obtained by combining valid
Remanufacturing system inequalities previously known for each individual scenario of the scenario tree. These inequalities are
Lost sales used within a cutting-plane generation procedure based on a heuristic resolution of the corresponding
Multi-stage stochastic integer programming separation problem. Computational experiments carried out on randomly generated instances show that
Scenario tree
the proposed branch-and-cut algorithm performs well as compared to the use of a stand-alone mathe-
Valid inequalities
Branch-and-cut algorithm
matical solver. Finally, rolling horizon simulations are carried out to assess the practical performance of
the multi-stage stochastic planning model with respect to a deterministic model and a two-stage stochas-
tic planning model.
© 2019 Elsevier Ltd. All rights reserved.

1. Introduction assembly into like-new finished products. We aim at optimizing


the production planning for the corresponding three-echelon sys-
Industrial companies face an increasing pressure from cus- tem over a multi-period horizon. Production planning involves
tomers and governments to become more environmentally re- making decisions about the production level (i.e. which prod-
sponsible and mitigate the environmental impact of their prod- ucts and how much of them should be made), the timing (i.e.
ucts. One way of achieving this objective is to remanufacture the when the products should be made) and the resources to be
products once they have reached their end-of-life. Remanufac- used. Within a remanufacturing context, production planning in-
turing is defined as a set of processes transforming end-of-life cludes making decisions on the used products returned by cus-
products (used products or returns) into like-new finished prod- tomers, such as how much and when used products should be dis-
ucts, once again usable by customers, mainly by rehabilitating assembled, refurbished or reassembled in order to build new or
damaged components (Lund and Mundial, 1984). By reusing the like-new products. The main objective is to meet customers’ de-
materials and components embedded in used products, it both mand for the remanufactured products in the most cost-effective
contributes in reducing pollution emissions and natural resource way.
consumption. Lot-sizing problems arise in production situations which involve
In this work, we study a remanufacturing system which in- setup operations such as tool changes, machine calibration or ma-
volves three key processes: disassembly of used products brought chine installation incurring fixed setup costs. As a naive perception,
back by customers, refurbishing of the recovered parts and re- to reduce these setup costs, production should be run using large
lot sizes. However, this generates desynchronized patterns between
the customers’ demand and the production plan leading to costly

Corresponding author. high levels of inventory. Lot-sizing models thus aim at reaching
E-mail address: franco.quezada@lip6.fr (F. Quezada). the best possible trade-off between minimizing the setup costs

https://doi.org/10.1016/j.cor.2019.104865
0305-0548/© 2019 Elsevier Ltd. All rights reserved.
2 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

and minimizing the inventory holding costs, under constraints on Multi-period single-echelon single-item stochastic lot-sizing prob-
customers’ demand satisfaction and practical limitations of the lems have been studied in Kilic (2013), Kilic et al. (2018) and
system. In the present work we investigate the problem of min- Naeem et al. (2013), taking under consideration both stochastic de-
imizing the setup cost and the inventory holding cost together mand and returns quantity. Kilic (2013) and Kilic et al. (2018) in-
with a penalty cost for the lost sales induced by the demand not cluded customer service level constraints and developed a heuris-
satisfied on time within a remanufacturing environment. We thus tic approach based on a static-dynamic uncertainty strategy.
investigate a 3-echelon lot-sizing problem with returns and lost Naeem et al. (2013) introduced a backlogging cost to be paid
sales. whenever the demand is not satisfied on time. They proposed
As compared to classical manufacturing systems which produce a stochastic dynamic programming approach to deal with the
end-products from virgin raw materials and new components, re- uncertain parameters. Subsequently, Macedo et al. (2016) and
manufacturing systems involve several complicating characteris- Hilger et al. (2016) studied a multi-item variant of the problem
tics, among which is a high level of uncertainty in the input data taking into account both stochastic demand and returns quantity.
needed to make planning decisions. This is mainly due to a lack Macedo et al. (2016) extended the previous works (Kilic, 2013;
of control on the return flows of used products, both in terms of Kilic et al., 2018; Naeem et al., 2013) by considering also stochas-
quantity and quality, and to the difficulty of forecasting the de- tic setup costs and proposed a two-stage stochastic programming
mand for new (or like-new) products. Even in cases where compa- model that assumes production and setup as first-stage decision
nies apply special policies to collect the used products from cus- variables and inventory, disposal, and backlogging as second-stage
tomers, e.g. product life-cycle contracts or collecting incentives, decision variables. Hilger et al. (2016) studied the multi-item vari-
these parameters remain difficult to accurately predict. The fact ant under capacity constraints and proposed a nonlinear model
that production planning and control activities are more complex formulation that is approximated by two models. In the first ap-
for remanufacturing firms due to uncertainties is extensively dis- proximation, the nonlinear functions of the expected values are
cussed in Guide et al. (1999) and Guide (20 0 0). Lage Junior and approximated by piecewise linear functions such that the prob-
Filho (2012) provided a recent literature review about production lem can be converted into a mixed-integer problem that can be
planning and control for remanufacturing systems. They analyzed solved using a standard mixed-integer programming (MIP) solver.
whether the gap identified by Guide (20 0 0) was fully investigated The second approximation uses an approach based on sample av-
and concluded that no work deals simultaneously with all of the erages where the random variables are represented by samples of
complicating characteristics involved in production planning and independently generated scenarios. In contrast to the above men-
control activities in a remanufacturing environment. In the same tioned works which considered single-echelon production systems,
way, Ilgin and Gupta (2010) provided a review of the state of Wang and Huang (2013) and Fang et al. (2017) studied multi-
the art in environmentally conscious manufacturing and product period multi-echelon multi-product stochastic lot-sizing problems
recovery and investigated the production planning field within a for remanufacturing systems comprising several operations such
remanufacturing environment. Most works reported in Ilgin and as disassembly, recycling and reassembly. Both works focused on
Gupta (2010) for planning production activities did not take into stochastic demand. Wang and Huang (2013) developed a two-
account any uncertain parameters and the authors concluded that stage stochastic programming model aiming at finding a com-
more studies are needed to better control the effects of uncertain- promise between the expected cost and the solution robustness.
ties in remanufacturing systems. Hence, this work is an attempt Fang et al. (2017) proposed a multi-stage stochastic programming
at closing this gap. Namely, we investigate a production planning approach which resulted in the formulation of a large-size MILP
model where uncertainties related to the quantity and quality of and developed a Lagrangian relaxation-based heuristic algorithm to
returned products, the customers’ demand, and the costs are si- solve it.
multaneously taken into account and seek to develop an approach We focus on a multi-echelon system with not only disassem-
where the multi-stage aspect of the decision making process is ex- bly and reassembly operations, but also refurbishing operations.
plicitly considered. We explicitly consider uncertain input parameters and propose a
Note that such multi-stage decision making processes have multi-stage stochastic programming approach. Our work is there-
already been considered for stochastic production planning fore closely related to the one of Fang et al. (2017). However,
problems displaying features similar to our problem. Thus, these authors focused only on stochastic demand and developed
Denizel et al. (2010) studied a production planning problem for a heuristic solution approach. In contrast, we consider the uncer-
a company remanufacturing large-scale mailing equipment. They tainty on the demand, the return quantity and quality and the pro-
considered uncertainty in the quality of the returns and developed duction costs and we aim at developing an exact solution method
a multi-stage stochastic programming approach. Kazemi Zanjani for the problem.
et al. (2010) investigated a sawmill production planning problem Multi-stage stochastic integer programming approaches usually
with uncertainty on both the demand and the raw materials qual- rely on scenario trees to represent the uncertain information struc-
ity and also proposed a multi-stage stochastic programming ap- ture and result in the formulation of large-size mixed integer linear
proach. Production planning for remanufacturing under stochastic programs. One key element in efficiently solving large-size MILP
demand and returns was studied by Li et al. (2009). They proposed to optimality is the quality of the bounds provided by the linear
a stochastic dynamic programming based model for this problem. relaxation of the problem as it has a strong impact of the nu-
However, these three works all assume linear production costs, merical efficiency of the branch-and-bound algorithm. Linear pro-
which enable them to formulate the optimization problem using gramming relaxation strengthening techniques focused on stochas-
only continuous decision variables. In contrast, we consider fixed tic lot-sizing problems expressed on scenario trees have been stud-
production setup costs in our problem modeling, leading to the ied in Guan et al. (2006), Guan et al. (2009), Di Summa and
formulation of a lot-sizing problem involving a set of binary deci- Wolsey (2008) and Zhang et al. (2014). Guan et al. (2006) in-
sion variables. In what follows, we thus focus on reviewing previ- vestigated an uncapacitated lot-sizing problem and extended the
ously published works on stochastic lot-sizing for remanufacturing (, S) valid inequalities known for the deterministic variant to a
systems. general facet-defining class called (Q, SQ ) for the stochastic vari-
In recent years, stochastic lot-sizing problems for remanu- ant. Later, Di Summa and Wolsey (2008) studied a capacitated lot
facturing or hybrid manufacturing/remanufacturing systems have sizing problem and extended the work of Guan et al. (2006) by
been studied under several modeling and uncertainty assumptions. proving that the (Q, SQ ) valid inequality is dominated by a mixing
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 3

inequality. Additionally, Guan et al. (2009) proposed a general 2. Problem description and mathematical formulation
method for generating cutting planes for multi-stage stochastic
integer programs based on combining valid inequalities for the 2.1. System description
individual scenarios. Zhang et al. (2014) investigated a dynamic
stochastic lot-sizing problem with service level constraints and for- We consider a remanufacturing system comprising three main
mulated the problem as a multi-stage chance-constrained program. production echelons (see Fig. 1): disassembly, refurbishing and re-
The authors developed a branch-and-cut method for the multi- assembly, and seek to plan the production activities in this sys-
stage setting based on a set of valid inequalities obtained by a tem over a multi-period horizon. We assume that there is a single
mixing procedure. Nonetheless, all these works have focused on type of used product which, in each period, is returned in limited
single-echelon production systems and do not consider used prod- quantity by customers. These used products are first disassembled
uct returns nor lost sales. In contrast, we investigate a multi-stage into parts. Due to the usage state of the used products, some of
stochastic integer programming approach dealing with a multi- these parts are not recoverable and have to be discarded during
echelon multi-item stochastic lot-sizing problem with lost sales disassembly. In order to reflect the variations in the quality of the
within a remanufacturing environment. used products, the yield of the disassembly process, i.e. the pro-
The contributions of the present work are threefold. Firstly, we portion of parts which will be recoverable, is assumed to be part-
propose a multi-stage stochastic integer programming approach for dependent and time-dependent. The remaining recoverable parts
a stochastic lot-sizing problem arising in a remanufacturing con- are then refurbished on dedicated refurbishing processes. The ser-
text. This is in contrast with most previously published works viceable parts obtained after refurbishing are reassembled into re-
on lot-sizing for remanufacturing which consider either a deter- manufactured products which have the same bill-of-material as the
ministic setting or develop two-stage stochastic programming ap- used products. These remanufactured products are used to satisfy
proaches. Secondly, we consider a multi-echelon multi-item set- the dynamic demand of customers.
ting, whereas most papers dealing with a multi-stage decision All the production processes are assumed to be uncapacitated.
process for stochastic lot-sizing problems assume either a single- However, the system might not be able to satisfy the customer
echelon or a single-item setting. Finally, we propose a branch- demand on time due to part shortages if there are not enough
and-cut framework to solve the resulting large-size mixed inte- used products returned by customers or if their quality is low. In
ger linear program. The algorithm relies on a new set of valid this situation, the corresponding demand is lost incurring a high
inequalities obtained by mixing previously known path inequal- penalty cost to account for the loss of customer goodwill. More-
ities (Loparic et al., 2001). The number of these valid inequali- over, note that some used products are allowed to be discarded
ties increases exponentially fast with the size of the scenario tree. before being disassembled: this option might be useful in case
We provide an efficient cutting-plane generation strategy to iden- more used products are returned that what is needed to satisfy
tify the useful subset of this class. Our computational experiments the demand for remanufactured products. Similarly, some of the
show that the proposed method is capable of significantly decreas- recoverable parts obtained from the disassembly process may be
ing the computation time needed to obtain guaranteed optimal discarded. In case there is a strong unbalance between the part-
solutions. dependent disassembly yields, this option might be used in a pro-
The remaining part of this paper is organized as follows. duction plan to avoid an unnecessary accumulation in inventory of
Section 2 formally describes the problem and proposes a mixed the easy-to-recover parts.
integer linear programming model. In Section 3, a reformula- We aim at finding an optimal production plan, i.e. a produc-
tion of the problem based on the echelon-stock concept is pre- tion plan complying with all the practical limitations of the system
sented. This reformulation allows us to identify a series of single- while minimizing the total production cost. This cost comprises the
echelon subproblems embedded in the general multi-echelon production fixed setup costs to be incurred each time a production
problem. Section 4 introduces a new class of valid inequalities takes place on a process, the inventory holding costs for all the
to strengthen the linear relaxation of each single-echelon sub- items involved in the system, the lost-sales costs penalizing the
problem. Cutting-plane generation algorithms are developed in unsatisfied demand and the disposal costs for the discarded used
Section 5. Section 6 reports the results of computational experi- products and parts.
ments and discusses the performance of our branch-and-cut algo- Ahn et al. (2011) studied a deterministic and particular case of
rithm. Finally, Section 7 gives the conclusions with possible issues the problem, in which the quantity of returned products is unlim-
for further research. ited and the lost sales and the discarding quantities are assumed

Fig. 1. Illustration of studied remanufacturing system.


4 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

to be zero. The authors proved that, under these assumptions, the Note that due to the unknown quality of the returned prod-
problem is NP-hard. Therefore, our problem is NP-hard as well. uct, there exists an implicit flow of unrecoverable parts gener-
ated when disassembling used products. We thus introduce gn =
I
i=1 qi (1 − πi )αi which represents the unit cost of the parts that
n n
2.2. Uncertainty
cannot be recovered when a returned product is disassembled.
As mentioned in Section 1, one of the main challenges to be Moreover, we assume that at each stage, the realization of the ran-
faced when planning remanufacturing activities is the high level of dom parameters happens before we have to make a decision for
uncertainty in the problem parameters. In what follows, we pro- this stage, i.e. we assume that the values of rn , dn , πin , ln , f pn , hnp ,
pose a production planning model in which all problem parame- qn and gn are known before we have to decide on the production
ters, except the bill-of-material coefficients, are subject to uncer- plan at node n ∈ V. We also assume that ln  gn for all n ∈ V.
tainty.
We consider a multi-stage decision process corresponding to 2.3. MILP formulation
the case where the value of the uncertain parameters unfolds lit-
tle by little following a discrete-time stochastic process and the We propose a multi-stage stochastic integer programming
production decisions are adapted progressively as more and more model based on the uncertainty representation described above.
information is collected. This leads to the representation of the The decision variables involved in the model are:
uncertainty via a scenario tree T = (V, E ). Each node n ∈ V corre-
• X pn : quantity of parts processed on process p ∈ J at node n ∈ V,
sponds to a single planning period t belonging to a single decision
• Ypn ∈ {0, 1}: setup variable for the process p ∈ J at node n ∈ V,
stage s ∈ S. It represents the state of the system that can be dis-
• Sin : inventory level of part i ∈ I at node n ∈ V,
tinguished by the information unfolded up to that period t. At any
• Qin : quantity of part i ∈ Ir ∪ {0} discarded at node n ∈ V,
non-terminal node of the tree, there are one or several branches to
• Ln : lost sales of remanufactured products at node n ∈ V.
indicate future possible outcomes of the random variables from the
current node. The nodes of the scenario tree are indexed from 0 to The mixed integer linear programming model is given below.
|V | − 1. Each node n (except root node 0) belongs to a time period     
t + 1 and has a unique predecessor node denoted an correspond- Z ∗ = min ρn f pnYpn + hni Sin + l n Ln + qni Qin + gn X0n
ing to the time period t. The probability associated with the state n∈V p∈J i∈I i∈Ir ∪{0}
represented by the node n is ρ n : note that the sum of ρ n over all
(1)
nodes n corresponding to a given time period t is equal to 1. Each
non-terminal node n is the root node of a subtree T (n ). The set subject to
L(n ) represents the set of leaf-nodes belonging to T (n ). The set
X pn ≤ MnpYpn ∀ p ∈ J , ∀n ∈ V (2)
of nodes on the path from a node n to a node μ is denoted by
P (n, μ ). Note that we assume without loss of generality that the
∀n ∈ V
n
nodes in the sets P (· ) and L(· ) follow the same indexation as the S0n = S0a + r n − X0n − Q0n (3)
one used for the scenario tree T .
We use the following notations for the problem formulation:
Sin = Sia + πin αi X0n − Xin − Qin ∀i ∈ Ir , ∀n ∈ V
n
(4)
• I: number of part types involved in one product,
• I: set of all products involved in the system, I = {0, . . . , 2I +
Sin = Sia + Xin−I − αi XI+1 ∀i ∈ Is , ∀n ∈ V
n
n
(5)
1}, where i = 0 corresponds to returned product and i = 2I + 1
corresponds to remanufactured product,
∀n ∈ V
n
• Ir : set of recoverable parts provided by the disassembly pro- S2nI+1 = S2aI+1 + XI+1
n
− d n + Ln (6)
cess, Ir = {1, . . . , I},
• Is : set of serviceable parts provided by the refurbishing pro-
S00 = r 0 − X00 − Q00 (7)
cesses, Is = {I + 1, . . . , 2I},
• J : set of production processes, J = {0, . . . , I + 1}, where p = 0
corresponds to the disassembly process, p = 1, . . . , I correspond Si0 = πi0 αi X00 − Qi0 ∀i ∈ Ir (8)
to the refurbishing processes and p = I + 1 corresponds to the
reassembly process.
Si0 = Xi0−I − αi−I XI+1
0
∀i ∈ Is (9)
The deterministic parameter is:
• α i : number of parts i embedded in a returned/remanufactured S20I+1 = XI+1
0
− d 0 + L0 (10)
product.

The stochastic parameters are introduced as follows: Sin ≥ 0 ∀i ∈ I, ∀n ∈ V (11)


• rn : quantity of used products (returns) collected at node n ∈ V,
• dn : customers’ demand at node n ∈ V, Ln ≥ 0 ∀n ∈ V (12)
• πin : proportion of recoverable parts i ∈ Ir obtained by disas-
sembling one unit of returned product at node n ∈ V,
X pn ≥ 0, Ypn ∈ {0, 1} ∀ p ∈ J , ∀n ∈ V (13)
• ln : unit lost-sales penalty cost at node n ∈ V,
• f pn : setup cost for process p ∈ J at node n ∈ V, The objective function (1) aims at minimizing the expected to-
• hni : unit inventory cost for part i ∈ I at node n ∈ V, tal cost, over all nodes of the scenario tree. This cost is the sum
• qni : unit cost for discarding a recoverable part or a returned of the expected setup, inventory holding, lost sales and disposal
product i ∈ Ir ∪ {0} at node n ∈ V, costs. Constraints (2) link the production quantity variables to
• gn : unit cost for discarding the unrecoverable parts obtained the setup variables. Constraints (3)–(10) are the inventory bal-
while disassembling one unit of returned product at node ance constraints. Constraints (3) (resp. (4) and (5)) involve a term
n ∈ V. corresponding to a dependent demand X0n (resp. Xin and αi XI+1 n )
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 5

whereas Constraints (6) only involve an independent demand term (the reader is referred to Pochet and Wolsey (2006) for further de-
dn . Without loss of generality, we assume that the initial invento- tails). The main advantages of the reformulation is that it helps
ries are all set to 0. Finally, Constraints (11)–(13) provide the do- decomposing the multi-echelon problem into a series of single-
main of the decision variables. echelon lot-sizing problems for which formulation strengthening
The value of Mnp can be set by using an upper bound on the techniques such as valid inequalities or extended reformulations
quantity that can be processed on process p at node n. This quan- are available. As each subproblem is a relaxed version of the over-
tity is limited by two elements: the availability of the used prod- all multi-echelon problem, valid inequalities strengthening the lin-
ucts already returned by customers and the future demand for re- ear relaxation of each subproblem will strengthen the linear relax-
manufactured products. Thus, for a given process p and a node n, ation of the overall multi-echelon problem.
Mnp is computed as the minimum between:
3.1. Echelon stock reformulation
• A value provided by the maximum amount of input product
(used product, recoverable part or serviceable part) that can be
The echelon demand edin for an intermediate product can be
available for processing on process p at node n. This value is
understood as the translation of the external demand for the fin-
computed by summing the values of rν on the nodes ν belong-
ished product into an independent demand for the intermediate
ing to the path from the root node to the node n.
product. For each product i = 1 . . . 2I, we straightforwardly define
• A value provided by the maximum demand for the output
the echelon demand as edin = αi dn . We note however that, in our
product (recoverable part, serviceable part or remanufactured
case, it is not possible to properly define such an echelon demand
product) of process p at node n. This value is computed by con-
for the used product i = 0. Namely, this demand could be defined
sidering the maximum future demand for the output product n
as ed0n = min d π n by considering that the amount of used product
over the set P (n, λ ). It is the maximum, over all leaf nodes λ i∈Ir i
in L(n ), of the cumulated demand on the path from the node to disassemble to satisfy the external demand dn is determined by
n to the leaf node λ. the disassembly yield of the item i ∈ Ir which is the most difficult
to recover at node n. However, as the disassembly yields are time-
This leads to the following expressions for constants Mnp : varying and stochastic, the actual amount of used product needed
    to satisfy the external demand dn depends on the period in which

 ν ∈P (n,λ )
n
it is disassembled and might be larger or smaller than min d π n .
• M0n = min r ν , max mini=1...I πin i∈Ir i
ν ∈P (0,n ) λ∈L(n )

Hence, using the echelon demand ed0n might lead to inconsistent
   disassembly production decisions. We thus focus in what follows
• Mnp = min (α p rν max π pμ ), max α p dν ,
ν ∈P (0,n ) μ∈P (ν,n ) λ∈L(n ) ν ∈P (n,λ ) on defining echelon stock variables for products i ∈ {1, . . . , 2I + 1}.
for p = 1, . .
. , I. The echelon stock of a product in a multi-echelon production

 μ
system corresponds to the total quantity of the product held in in-
• n
MI+1 = min min (r ν max π p ) , ventory, either as such or as a component within its successors in
p∈{1,...,I} ν ∈P (0,n ) μ∈P (ν,n )

the bill-of-material. For each product i ∈ {1, . . . , 2I + 1}, we define



max dν the echelon inventory variables as follows:
λ∈L(n ) ν ∈P (n,λ )
n = Sn + Sn + α Sn
Ein = Sin + EI+

i i I+i i 2I+1 , for i ∈ Ir , for n ∈ V
Even if the problem (1)–(13) is a mixed-integer linear program • Ein = Sin + αi E2nI+1 = Sin + αi S2nI+1 , for i ∈ Is , for n ∈ V
displaying a structure similar to the one of its deterministic coun- • E2nI+1 = S2nI+1 , for n ∈ V
terpart, its resolution by a mathematical programming solver poses
some computational difficulties in practice. This first comes from Moreover, we define the unit echelon inventory holding cost
the problem size which, for a given planning horizon length, is ehni as follows:
much larger in the stochastic case than in the deterministic case. • ehni = hni , for i ∈ Is , for n ∈ V
Namely, in the stochastic case, the mixed-integer linear program- • ehni = hni − hni−I , for i ∈ Ir , for n ∈ V
ming formulation involves O (|V ||J | ) binary variables, O (|V ||J | ) 
• ehn2I+1 = hn2I+1 − i∈Ir αi hni , for n ∈ V
continuous variables and O (|V ||J + I | ) constraints. The size of the
scenario tree |V | is in O (cT +1 ) with c is the number of children This leads to the following mixed-integer linear programming
per node and T the number of stages. The MILP formulation size formulation:
thus grows exponentially fast with the number of decision stages   
T. Moreover, the presence of the big-M type constraints (2) leads Z ∗ = min ρn f pnYpn + hn0 S0n + ehni Ein + l n Ln
to a poor quality of the lower bounds provided by the linear relax- n∈V p∈J i∈I \{0}
 
ation of the problem.
+ qni Qin + gn X0n (14)
In what follows, we propose a branch-and-cut algorithm in or-
i∈Ir ∪{0}
der to solve to optimality medium-size instances of the problem.
We first describe a reformulation of the problem that provides subject to:
a way to decompose the multi-echelon problem into a series of
X pn ≤ MnpYpn ∀ p ∈ J , ∀n ∈ V (15)
single-echelon subproblems. We then investigate two sets of valid
inequalities (path inequalities and tree inequalities) that can be
∀n ∈ V
n
used to strengthen the formulation of each of these single-echelon S0n = S0a + r n − X0n − Q0n (16)
subproblems. These valid inequalities are added to the problem
formulation using a cutting-plane strategy during the course of the
Ein = Eia + πin αi X0n − αi dn + αi Ln − Qin ∀i ∈ Ir , ∀n ∈ V
n

branch-and-bound search. (17)

3. Mathematical reformulation Ein = Eia + Xin−I − αi dn + αi Ln


n
∀i ∈ Is , ∀n ∈ V (18)

The concept of echelon stock has been widely used to de-


∀n ∈ V
n
velop solution approaches for multi-echelon lot-sizing problems E2nI+1 = E2aI+1 + XI+1
n
− d n + Ln (19)
6 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

S00 = r 0 − X00 − Q00 (20) For the disassembly process, for each item i ∈ Ir , we have the
following subproblem:

  
I 
I 
Ei0 = πi0 αi X00 − αi d0 + αi L0 − Qi0 ∀i ∈ Ir (21) Z0∗ = min ρ n f0nY0n + ehni Ein + qni Qin + l n Ln + gn X0n (35)
n∈V i=1 i=1

Ei0 = Xi0−I − αi−I d + αi−I L


0 0
∀i ∈ Is (22) subject to:
X0n ≤ M0nY0n ∀n ∈ V (36)
E20I+1 = 0
XI+1 −d +L 0 0
(23)
Ein = Eia + πin αi X0n − αi dn + αi Ln − Qin ∀n ∈ V
n
(37)

Ein − n
EI+ i ≥0 ∀i ∈ Ir , ∀n ∈ V (24)
Ei0 = πi0 αi X00 − αi d0 + αi L0 − Qi0 (38)

Ein −α n
i E2I+1 ≥0 ∀i ∈ Is , ∀n ∈ V (25)
Ein ≥ 0 ∀n ∈ V (39)

E2nI+1 ≥ 0 ∀n ∈ V (26)
Ln ≥ 0, X0n ≥ 0, Qin ≥ 0, Y0n ∈ {0, 1} ∀n ∈ V (40)
Each subproblem (29)–(34) or (35)–(40) is an uncapaci-
S0n ≥ 0, Ln ≥ 0 ∀n ∈ V (27)
tated single-echelon single-item lot-sizing problem with lost
sales. The deterministic variant of this problem was studied by
X pn ≥ 0, Ypn ∈ {0, 1} ∀ p ∈ J , ∀n ∈ V (28) Loparic et al. (2001) who proposed a family of valid inequalities
called (k, U) inequalities, to strengthen the linear relaxation. We
As in the previous formulation, the objective function (14) aims discuss in Section 4 how these inequalities known for the deter-
at minimizing the expected cost, over all nodes of the scenario ministic variant of the problem can be used to solve the stochastic
tree. Constraints (15) are defined as Constraints (2) of the (1)– problem expressed on a scenario tree.
(13) formulation. Constraints (16)–(20) are inventory balance con-
straints. Constraints (16) use the classical inventory variables, 4. Valid inequalities
whereas Constraints (17)–(19) make use of the echelon inven-
tory variables. Contrary to Constraints (4)–(5) of the natural for- In this section, we provide (k, U) inequalities for each single-
mulation, Constraints (17)–(19) do not involve a dependent de- echelon subproblem described in Section 3. We first exploit these
mand term but only an external demand term. Constraints (24)– (k, U) inequalities considering their application to each individual
(26) ensure consistency between the echelon inventory at the dif- scenario, i.e. to each individual path from a non-terminal node n to
ferent levels of the bill-of-material and guarantee that the physi- a leaf node λ ∈ L(n ) in the scenario tree T . Next, we extend them
cal inventory of each product remains non-negative. Finally, Con- to a more general class of inequalities. This is done by exploiting
straints (27)–(28) define the domain of the decision variables. the scheme proposed by Guan et al. (2009) for generic multi-stage
stochastic integer programs. The idea is to mix valid inequalities
3.2. Single echelon subproblems corresponding to different individual scenarios to obtain valid in-
equalities for the whole scenario tree (or for a subtree). Through-
The introduction of echelon inventory variables leads to the out this section we will refer to a (k, U) inequality applied to an
elimination of the dependent demand term in the inventory bal- individual scenario as a path inequality and to a (k, U) inequality
ance equations of the (1)–(13) formulation. This induces that the applied to a subtree as a tree inequality.
constraint matrix of (14)–(28) displays a specific structure: it can
be decomposed in a series of single-echelon single-resource lot- 4.1. Path inequalities
sizing subproblems coupled by the linking constraints (16), (24)–
(26). The single-echelon subproblems are defined as follows. We first recall the relevant notation introduced in Section 2.
For each refurbishing/reassembly process p, we have the follow- Each node k of the scenario tree T , except for the root node, has a
ing subproblem: unique parent, and each non-terminal node k is the root of a sub-
   tree T (k ), with T (0 ) = T . Let L(k ) be the set of leaf nodes such
Z ∗p = min ρ n f pnYpn + ehnp+I E p+
n n n
I +l L (29) that there exists a path from the node k ∈ V to the leaf node and
n∈V let ckλ be the immediate successor of node k belonging to the set
subject to: P (k, λ ), for λ ∈ L(k ). Let Uk,λ ⊆ P (ckλ , λ ) be a subset of nodes be-
longing to the path from the node ckλ to the leaf node λ, not nec-
X pn ≤ MnpYpn ∀n ∈ V (30) essarily consecutive.
For each process p ∈ {1 . . . I + 1}, we have the following propo-
I = E p+I + X p − α p d + α p L ∀n ∈ V
n
E p+ a n
n n n
(31) sition:

Proposition 1. Let k ∈ V and λ ∈ L(k ). Let Uk,λ ⊂ P (ckλ , λ ). The fol-


lowing (k, U) inequality
0
E p+ I = X p0 − αpd + αpL
0 0
(32)  
  μ
I ≥ αp dv 1 − − Lv
k
E p+ Yp (41)
n
∀n ∈ V v∈Uk,λ μ∈P (ckv ,v )
E p+ I ≥0 (33)
is valid for the problem (14)–(28).

Ln ≥ 0, X pn ≥ 0, Ypn ∈ {0, 1} ∀n ∈ V (34) The proof is direct following the proof in Loparic et al. (2001).
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 7

The intuition underlying path inequalities can be understood as We rewrite the inequalities (44) in a form making it easier to apply
follows. We consider the inventory level of the product p + I of Theorem 2 in Guan et al. (2009).
node k and look for the future demands for this product in the      
path originated from the node k to the leaf node λ. For a node
Ek + Lν + dν Y μ ≥ dν
 ν ∈Uk,λ μ∈P (ckλ ,λ ) ν ∈Uaμ ,λ ν ∈Uk,λ
v ∈ Uk, λ , if μ∈P (cλ ,v ) Ypv ≥ 1, the demand of node v, α p dv , can be
k
satisfied by a production in one of the nodes μ ∈ P (ckv , v ) and does Let σ = {σ1 , . . . , σ|L(k )| } be a sequence of leaf nodes in increas-
  ν  ν
not have to be in stock at the node k. But if μ∈P (cv ,v ) Ypv = 0, the ing order of cumulative demand ν ∈Uk,λ d : ν ∈Uk,σ d ≤ . . . ≤
k  ν  ν  ν
1
demand α p dv cannot be produced in any node μ ∈ P (ckv , v ) mean- ν ∈U d ≤ . . . ≤ ν ∈U d . We set ν ∈U d = 0. Now, we
k,σl k,σ|L (k )| k,σ0
ing that the portion of this demand which will be satisfied by a
use Theorem 2 in Guan et al. (2009) to combine these |L(k )| path
production α p (dv − Lv ), should already be in stock at node k.
inequalities and derive a new tree inequality as follows:
Moreover, for process p = 0 and each part i ∈ Ir , we also have     
a path inequality defined as follows: Ek + Lν + φ μY μ ≥ dν
   μ
 ν ∈∪λ∈L(k)Uk,λ μ∈V \{k} ν ∈Uk,|L(k)|
Eik ≥ αi v d 1− Y0 − Lv
v∈Uk,λ μ∈P (ck ,v ) where, the coefficient φ μ for μ ∈ V \ {k}, is given by:
      
We note that the right-hand side of this inequality has the same φ μ = min max { d ν }, dν − dν
expression for each i ∈ Ir . In order to exploit this fact and limit λ∈L(μ )
ν ∈Uaμ ,λ ν ∈Uk,λ ν ∈Uk,λ−1
λ∈L(μ )
the number of valid inequalities to be investigated, we consider 
with v 
only the inequality corresponding to the item i ∈ Ir for which the v∈U0 d set to 0.
value Eik /αi is minimum. This leads to the following proposition.
The same scheme can be applied starting with the path in-
Proposition 2. Let k ∈ V and λ ∈ L(k ). Let Uk,λ ⊂ P (ckλ , λ ). The fol- equalities (42) for the disassembly process p = 0. This leads to the
lowing (k, U) inequality following proposition:
Ek     Proposition 4. Let k ∈ V and U ⊂ V (k ). Let σ = {σ1 , . . . , σ|L(k )| } be
μ
min i
≥ dv 1 − Y0 − Lv (42) a sequence of leaf nodes belonging to L(k ) in the increasing order
i∈Ir αi v∈Uk,λ μ∈P (ck ,v )  ν  ν  ν
of the cumulative demand ν ∈Uk,λ d : ν ∈Uk,σ d ≤ ν ∈Uk,σ d ≤
is valid for the problem (14)–(28).  ν  ν 
0
ν
1
. . . ≤ ν ∈U d ≤ . . . ≤ ν ∈U d . We set ν ∈U d = 0. The
k,σl k,σ|L (k )| k,σ0

4.2. Tree inequalities following inequality


Ek   
Now, we investigate a new family of valid inequalities ob- min i
+ Lν + φ μY0μ ≥ dν (45)
i∈Ir αi ν ∈U μ∈V (k )\{k} ν ∈Uk,σ|L(k)|
tained by considering a subtree of the scenario tree as proposed by
Guan et al. (2006) and Guan et al. (2009). The authors proposed a
is valid for problem (14)–(28), with
general scheme to obtain valid inequalities for multi-stage stochas-
 
tic integer programs by mixing several path inequalities. In what
φ μ = min max { d ν },
follows, we apply this scheme to derive a new set of tree inequal- λ∈L(μ )
ν ∈Uaμ ,λ
ities based on a mixing of the path inequalities discussed above.
    
We first introduce additional notations to properly define this new dν − dν
set of valid inequalities. Let V (k ) be the subset of nodes belonging l=1...|L(k )| s.t σl ∈L(μ ) ν ∈Uk,σl ν ∈Uk,σl−1
to the subtree T (k ) and U = ∪λ∈L(k )Uk,λ be a set of nodes defining
a tree inequality. This enables us to introduce the following propo-
5. Cutting-plane generation
sition for each process p ∈ {1, . . . , I + 1}.

Proposition 3. Let k ∈ V and U ⊂ V (k ). Let σ = {σ1 , . . . , σ|L(k )| } be The number of valid inequalities (41), (42), (43) and (45) is too
a sequence of leaf nodes belonging to L(k ) in increasing order of cu- large to allow adding all of them a priori to the formulation. Hence,
  
mulative demand ν ∈U dν : ν ∈U dν ≤ . . . ≤ ν ∈U dν ≤ . . . ≤ a cutting-plane generation strategy is needed to add only a sub-
k,λ k,σ1 k,σl
  set of these valid inequalities into the MILP formulation. Conse-
ν ∈U dν . We set ν ∈U dν = 0. The following inequality
k,σ|L (k )| k,σ0 quently, the corresponding separation problems must be solved in
   order to identify which inequalities to incorporate in the formula-
k
E p+ I + αp Lν + α p φ μYpμ ≥ α p dν (43)
tion. In what follows, we discuss an exact separation algorithm for
ν ∈U μ∈V (k )\{k} ν ∈Uk,σ|L(k)|
the path inequalities and a heuristic one for the tree inequalities.
is valid for problem (14)–(28), with These separation algorithms will be used within a cutting-plane
  generation procedure aiming at strengthening the linear relaxation
φ μ = min max { d ν }, of the problem (14)–(28).
λ∈L(μ )
ν ∈Uaμ ,λ
     5.1. Separation algorithm for path inequalities
dν − dν
l=1...|L(k )| s.t σl ∈L(μ ) ν ∈Uk,σl ν ∈Uk,σl−1
Given a solution (Y˜ , L˜ ) of the linear relaxation of the problem,
Proof. Without loss of generality, we drop the index of the pro- solving the separation problem for path inequalities consists in
duction process and assume α p = 1, for all p ∈ {1, . . . , I + 1}. Let finding the most violated inequality (41)–(42) if it exists or prov-
k be a non-leaf node. For each leaf node λ ∈ L(k ), we arbitrarily ing that no such inequality exists. For a given process p, node k ∈ V
choose a subset of nodes Uk,λ ⊂ P (ckλ , λ ). We thus obtain a set of and leaf node λ ∈ L(k ), finding the most violated inequality corre-
|L(k )| path inequalities defined as follows: sponds to identifying the set Uk,λ maximizing the right-hand side
    of the inequality. We note that the value of the term correspond-
Ek ≥ ν d 1− Y μ − Lν (44) ing to a node ν ∈ Uk,λ in the right-hand side of (41)–(42) does not
ν ∈Uk,λ μ∈P (ckλ ,ν ) depend on the other nodes belonging to Uk,λ . Hence, each node of
8 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

P (ckλ , λ ) can be considered individually: if it has a positive contri-


Algorithm 1: Cutting-plane generation for path inequalities.
bution in maximizing the right-hand side value of the inequality,
we add it to set Uk,λ , if not, it is discarded. This leads to the fol- Data: instances parameters and linear relaxation solution
lowing exact separation algorithm for inequalities (41)–(42): (E˜ , Y˜ , L˜)
For a given process p, node k ∈ V and leaf node λ ∈ L(k ), the Result: set of path inequalities S path
set Uk,λ is built by adding all the nodes in the set P (ckλ , λ ), which 1 Initialize S path ← ∅
satisfy the following inequality: 2 foreach p ∈ J do
   3 L ( · ) ← L ( · )
μ
α p dν 1 − Y˜p − L˜ν > 0 4 foreach k ∈ V do
μ∈P (ckν ,ν ) 5 violmin ← 0
6 foreach λ ∈ L (k ) do
We underline that the above strategy can be implemented in poly- 7 Uk,λ ← ∅, νlast ← k
nomial time (Loparic et al., 2001), namely, the running-time of the ckλ , λ ) do
proposed separation algorithm is O (P 2 ), where P corresponds to
8 foreach ν∈ P ( 
μ
the number of nodes in the set P (ckλ , λ ). 9 if dν 1 − μ∈P (cλ ,ν ) Y˜p − L˜ν > 0 then
k
10 Uk,λ ← Uk,λ ∪ {ν}, νlast ← ν
5.2. Cutting-plane generation for path inequalities 11 end
12 end
Our preliminary computational experiments showed that 13 viol ←  
  μ
adding all the violated inequalities of class (41)–(42) found at each E˜ kp+I − α p ν ∈U dν 1 − μ∈P (cλ ,ν ) Y˜p − L˜ν
k,λ
iteration of the cutting-plane generation led to the introduction of k
14 if viol < violmin then
a large number of additional constraints in the problem formula-
tion. Moreover, many of these inequalities involved the same sub-
15 violmin ← viol, λmin ← λ, νmin ← νlast
16 end
sets of setup variables Ypn and had thus similar effects in terms of
strengthening the relaxation of the problem. 17 end
In order to limit the increase in the formulation size, we pro- 18 if violmin < 0 then
pose the following cutting plane generation strategy to add vio- 19 S path ← S path ∪ E kp+I >
 ν
μ 
lated path inequalities to the formulation. This strategy relies on  
αp 1− ν
two main ideas. ν ∈Uk,λ
min
d μ∈P (ckλ ,ν ) Yp − L
The first idea consists in adding, for a given process p and λ
20 foreach ν ∈ P (ck min , νmin ) do
node k ∈ V, at most one valid inequality at each iteration of
21 L (ν ) ← L (ν ) \ {λmin }
the cutting-plane generation, namely the inequality correspond-
22 end
ing to the leaf node λ ∈ L(k ) providing the largest violation of
23 end
the path inequality, i.e. to the leaf node λmin = argminλ∈L(k ) E˜ kp+I −

 
 24 end
α p ν ∈U dν 1 − μ∈P (cλ ,ν ) Y˜pμ − L˜ν .
k,λ 25 end
k
The second idea aims at avoiding the addition of inequalities
involving similar subsets of setup variables Ypn , during an itera-
tion of the cutting-plane generation algorithm. This is achieved by and the right-hand side of inequalitie (43) (resp. (45)). This is chal-
using the following strategy. During a given iteration of the algo- lenging as contrary to the case of path inequalities, it is not pos-
rithm, each time a violated inequality is added to the formulation, sible to consider each node of V (k ) individually. Namely, select-
λ
we record νmin , the last node of the path P (ck min , λmin ) added to ing a node v of V (k ) in the set U not only changes the left-hand
the set Uk,λmin . The inequality added to the formulation involves a side of the inequality by a quantity Lv + φ vY v , but also poten-
subset of setup variables Ypn corresponding to nodes n belonging tially impacts the value of the coefficient φ μ for all other nodes
λ
to the subpath P (ck min , νmin ). As the valid inequalities generated in V (k ) \ {k}. In addition, selecting a node v of V (k ) potentially
λ changes the order of the sequence σ and hence the value of the
when considering the leaf node λmin at nodes n ∈ P (ck min , νmin ) right-hand side of the inequality. These interactions significantly
are likely to involve the same setup variables Ypn and have a redun- complicate the resolution of the separation problem. Therefore,
dant effect on the formulation strengthening, we do not consider we consider a heuristic separation approach based on a neigh-
generating them during the current iteration. Thus, if a cut involv- borhood search to solve the separation problem corresponding to
ing leaf node λmin is generated at node k at a given iteration, for the tree inequalities. The separation algorithm is summarized as
all n ∈ P (k, νmin ), λmin is removed temporarily, i.e. for the course follows:
of the current iteration, from the leaf node set L (n ) considered for The intuition behind Algorithm 2 is the following. It first builds
the search of violated valid inequalities at node n. It is then reinte- an initial set U containing all nodes in V (k ) that would be selected
grated into all leaf node sets at the beginning of the next iteration. in the set Uk,λ when looking for a violated path inequality: see
Note that this cutting-plane generation strategy implies that all lines 4–9 of Algorithm 2. If this initial set is empty, we stop: see
valid inequalities are still potentially considered for inclusion in lines 10–11. Otherwise, we try to find a tree inequality as violated
the formulation and that the separation problem is solved exactly. as possible by removing, one by one, some nodes from set U: see
The cutting-plane generation algorithm is summarized as fol- lines 12–30. More precisely, we start by computing the amount of
lows: violation (violmin ) obtained with the initial set U: this requires to
determine the ordering σ of the leaf nodes in Lk corresponding
5.3. Separation algorithm for tree inequalities to set U and to compute coefficients φ μ for every μ ∈ V (k ). We
then explore the neighborhood of set U which consists of all sub-
Given a non-leaf node k, solving the separation problem for in- sets of U obtained by removing a single node. For each considered
equalities (43) (resp. (45)) requires to identify a subset of nodes neighbor, we compute the amount of violation of the correspond-
U ⊆ V (k ) minimizing the difference between the left-hand side ing tree inequality: this operation is particularly time-consuming
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 9

of these experiments is to assess the effectiveness of the branch-


Algorithm 2: Cutting-plane generation for tree inequalities.
and-cut algorithms by comparing them with the one of a stand-
Data: instances parameters and linear relaxation solution alone mathematical programming solver.
(E˜ , Y˜ , L˜) In what follows, we introduce the setting used to ran-
Result: set of tree inequalities Stree domly generate instances based on the data presented in
1 Initialize Stree ← ∅, V := {ν ∈ V : |E (ν )| > 1} Ahn et al. (2011) and Jayaraman (2006) before discussing the de-
2 foreach p ∈ J do tailed results of our computational experiments.
3 foreach k ∈ V do
4 U ← ∅, violcurr ← ∞ 6.1. Instances generation
5 foreach ν∈ V (
k ) do 
μ
6 if d 1 − μ∈P (cλ ,ν ) Y˜p − L˜ν > 0 then
ν The following test data were randomly generated based on the
k instances generation scheme provided in Ahn et al. (2011).
7 U ← U ∪ {ν}
8 end • The demands for finished products dn at each node n were gen-
9 end erated from the discrete uniform distribution DU(100, 10 0 0).
10 if U = ∅ then • The bill of material was generated such that α0 = αI + 1 = 1,
11 break; and for each p = 1, . . . , I, α p was generated from DU(1, 6).
12 else • The set-up costs for the disassembly process f0n were generated
13 Determine the ordering σ of the leaf nodes for set from DU(50 0 0 0, 70 0 0 0), the set-up costs f pn for each refurbish-
U and compute φ μ for every μ ∈ V (k ) \ {k} ing process p = 1, . . . , I from DU(40 0 0, 80 0 0), and the set-up

violmin ← E˜kp+I + α p ν ∈U L˜ν + cost for the reassembly process fI+1 n from DU(50 0 0 0, 70 0 0 0).
14
  The unit inventory holding costs for used products hn0 were
α p μ∈V (k)\{k} φ μY˜pμ − α p ν ∈U


k,σ|L (k )| fixed and set to 1. The unit inventory holding costs hni for each
15 while violmin < violcurr do recoverable part i ∈ Ir were generated from DU(2, 7). The unit
16 violcurr ← violmin inventory holding costs hni for each serviceable part i ∈ Is were
17 foreach ν ∈ U do generated from DU(7, 12). To ensure non negative echelon costs,
18 U ← U \ {ν} we generated the unit inventory holding costs for the remanu-
19 Update the ordering σ for set U and I

compute φ μ for every μ ∈ V (k ) \ {k} and


factured products, hn2I+1 , from αi hnI+i + ε where we generated
 i=1
20 viol ← E˜kp+I + α p ν ∈U L˜ν + from DU(80, 100).
 
α p μ∈V (k)\{k} φ μY˜pμ − α p ν ∈U dν
k,σ|L (k )| For the proportion of recoverable parts πin , i ∈ Ir , obtained by
21 if viol < violmin then disassembling one unit of used product at node n ∈ V, we defined
22 violmin ← viol, U ← U three intervals for the uniform probability distribution correspond-
23 end ing to three quality levels. These intervals are based on the values
24 end presented in the case study reported by Jayaraman (2006).
25 end - Low nominal quality level (Q1): πin ∼ U[0.08, 0.25]
26 if violmin < 0 then - Medium nominal quality level (Q2): πin ∼ U[0.11, 0.58]
27 Update the ordering σ for the set U and - High nominal quality level (Q3): πin ∼ U[0.21, 0.79]
compute φ μ for  every μ ∈ V ( k ) \ {k}
Similarly, we defined three intervals for the discrete uniform
28 Stree ← Stree ∪ E p+I > α p ν ∈U Lν +
k
distribution corresponding to three levels of returned product vol-
 μ μ 
αp μ∈V (k )\{k} φ Yp − α p ν ∈Uk,σ dν umes.
|L ( k ) |
29 end - Low nominal level of returns (R1): rn ~ DU(335, 2150).
30 end - Medium nominal level of returns (R2): rn ~ DU(1738, 3454).
- High nominal level of returns (R3): rn ~ DU(704, 7942).
31 end
32 end Finally, we define the following probability distribution for the
input parameters specific to the problem studied in this paper.
• The lost-sales unit penalty costs ln were set to 10 0 0 0, at each
due to the fact that the ordering σ of the leaf nodes and the co- node n ∈ V.
efficients φ need to be recomputed for each neighbor. Note that • The cost for discarding one unit of recoverable part, i ∈ Ir ∪ {0},
a first improvement strategy is used to explore the neighborhood is defined at each node n ∈ V as follows, qni = hni ∗ βT , where
of the current set, i.e. we update the current set U as soon as a β ~ U[2, T].
better neighbor set U is found. Finally, the algorithm stops when • The cost for discarding the unrecoverable parts generated dur-

no neighbor set U has a violation value lower than the one of the ing the disassembly process is computed as gn = Ii=1 qni (1 −
current set U. π i ) αi .
n

We set the number of parts in a product to I ∈ {5, 10}, the


6. Computational results and discussion length of a decision stage to b ∈ {1, 2, 3} periods and the number
of stages to s ∈ {4, 5, 6, 7, 8, 9}. The number of immediate succes-
We develop two branch-and-cut algorithms for solving problem sors c of each last-period-of-stage node is defined between 2 and
(1)–(13). These algorithms rely on the cutting-plane generation al- 6. This leads to 16 different structures of the scenario trees. Fig. 2
gorithms proposed in Section 5 to add valid inequalities to the Ech- displays a scenario tree with (b, s, c ) = (3, 3, 2 ). For each combi-
elon Stock reformulation discussed in Section 3. We provide in this nation of scenario tree structure, used product quality level and
Section the results of computational experiments carried out on used product quantity level, we randomly generated 10 instances,
randomly generated instances of the problem. The main objective resulting in a total of 2880 instances.
10 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

All related linear programs and mixed-integer linear program


were solved by CPLEX 12.8 with the solver default settings. The al-
gorithms were implemented in C++ using the Concert Technology
environment. All tests were run on the computing infrastructure
of the Laboratoire d’Informatique de Paris VI (LIP6), which consists
in a cluster of Intel Xeon Processors X5690. We set the cluster to
use two 3.46GHz cores and 12GB RAM to solve each instance. We
imposed a time limit of 900 s. The corresponding results are dis-
played in Tables 1 and 3 for instances with I = 5 and Tables 2 and
4 for instances with I = 10.
For each set of instances, we report five performance measures:

1. “GapLP ” is the average percentage integrality gap. It is computed


as the relative difference between the lower bound provided
Fig. 2. Scenario tree structure. by the linear relaxation of the formulation and the value of
the optimal integer solution. In case the instance could not be
solved to optimality, the value of the best integer feasible solu-
6.2. Results
tion found is used.
2. “GapMIP ” is the average percentage residual gap reported by
Each instance was solved using the echelon stock formulation
CPLEX. It is computed as the relative difference between the
(14)–(28) discussed in Section 3 by three alternative branch-and-
best lower bound and the best integer feasible solution found
cut methods:
by the solver within the time limit.
1. The standard branch-and-cut algorithm embedded in the math- 3. “Time” is the average CPU time (in seconds) needed to find
ematical programming solver CPLEX with the solver default set- a guaranteed optimal integer solution (we used the value of
tings. 900s in case a guaranteed optimal integer solution could not
2. BC1: a customized branch-and-cut algorithm using only Algo- be found within the computation time limit).
rithm 1 to add path inequalities at the root node of the branch- 4. “#Opt” is the number of instances solved to optimality within
and-bound search tree. the time limit.
3. BC2: a customized branch-and-cut algorithm in which 5. “Cuts” reports the average number of cuts added to the formu-
Algorithms 1 and 2 are used to add path and tree inequalities lation.
at the root node of the branch-and-bound search tree and
Tables 1 and 2 display the results according to the scenario
UserConstraints callbacks based on Algorithm 2 are used to
tree structure and size. Instances are grouped into two categories
add tree valid inequalities to the formulation during the course
in order to be analyzed: small (between 126 and 381 nodes) and
of the branch-and-bound search. Note that Algorithm 2 is not
medium (between 468 and 1022 nodes).
only capable to find valid tree inequalities, but also valid path
First, results from Table 1 indicate that, for small-size instances
inequalities.
with I = 5, the two proposed branch-and-cut algorithms perform
We note that even though the natural formulation (1)–(13) and much better than CPLEX solver. This can be seen by the fact that
the echelon stock formulation (14)–(28) have the same linear the number of instances solved to optimality is more than twice
relaxation, preliminary experiments show that CPLEX performs the number solved by CPLEX when using Algorithm BC1 and al-
slightly better using the echelon stock formulation than the nat- most three times the number solved by CPLEX when using Algo-
ural formulation on the considered set of instances. We thus only rithm BC2. Moreover, the average residual gap is decreased from
report the results obtained using this latter formulation. 0.15% with CPLEX to 0.07% with BC1 and 0.05% with BC2 and the

Table 1
Comparison between default CPLEX configuration and the customized branch-and-cut algorithms for instances with I = 5. Instances are grouped according
to the number of nodes in the scenario tree.

Instances CPLEX default BC1 (Path) BC2 (Path and Tree)

Nodes GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt Cuts GapLP GapMIP Time #Opt Cuts

126 10.25 0.02 338.04 68 1.83 0.01 200.50 79 1190 1.58 0.01 160.52 80 1350
189 13.35 0.07 716.55 26 1.77 0.03 429.89 58 2146 1.54 0.02 339.91 66 2315
242 10.68 0.13 856.61 7 2.34 0.06 640.80 37 1790 2.00 0.05 550.86 48 2109
254 12.25 0.16 877.31 5 2.05 0.07 693.37 33 2439 1.74 0.05 589.49 46 2778
255 8.72 0.12 810.42 12 2.30 0.06 629.43 36 1631 1.84 0.04 488.53 51 2385
255 10.68 0.15 891.51 1 1.89 0.07 801.11 16 2209 1.66 0.05 660.45 37 2427
363 11.78 0.23 900.07 0 1.90 0.12 863.67 5 3476 1.63 0.11 855.92 8 3820
381 12.91 0.28 900.24 0 1.59 0.14 888.23 3 4470 1.36 0.11 874.01 4 4837

Average 11.33 0.15 786.34 119 1.96 0.07 643.37 267 2418 1.67 0.05 564.96 340 2752

468 10.34 0.34 900.17 0 1.96 0.19 898.79 1 3778 1.70 0.18 900.69 0 4159
510 12.02 0.38 900.27 0 1.89 0.20 900.74 0 4963 1.58 0.21 899.74 1 5693
511 9.61 0.29 900.18 0 2.50 0.21 890.58 3 3332 2.02 0.21 897.06 2 4858
682 9.47 0.40 900.20 0 2.18 0.33 898.19 1 4430 1.87 0.31 900.73 0 5220
728 9.88 0.45 900.32 0 2.02 0.37 900.88 0 5421 1.73 0.37 900.74 0 6375
765 13.37 0.47 900.43 0 1.54 0.34 900.97 0 9043 1.30 0.32 900.90 0 9773
777 10.90 0.58 900.25 0 2.13 0.40 900.69 0 6019 1.88 0.42 901.07 0 6581
1022 12.75 0.68 900.48 0 1.87 0.42 901.01 0 10058 1.61 0.47 901.05 0 11537

Average 11.04 0.45 900.29 0 2.01 0.31 898.98 5 5880 1.71 0.31 900.24 3 6774
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 11

Table 2
Comparison between default CPLEX configuration and the customized branch-and-cut algorithms for instances with I = 10. Instances are grouped accord-
ing to the number of nodes in the scenario tree.

Instances CPLEX default BC1 (Path) BC2 (Path and Tree)

Nodes GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt Cuts GapLP GapMIP Time #Opt Cuts

126 7.71 0.14 871.23 7 1.4 0.07 571.63 46 2042 1.24 0.07 541.35 48 2288
189 9.56 0.27 895.13 1 1.23 0.15 818.65 14 3778 1.09 0.13 805.72 15 4030
242 6.81 0.26 900.37 0 1.48 0.19 880.81 4 3057 1.29 0.19 871.13 7 3540
254 8.04 0.36 900.18 0 1.37 0.25 863.01 8 4185 1.21 0.24 849.03 11 4652
255 6.15 0.24 897.71 1 1.65 0.17 815.49 14 2761 1.38 0.15 784.94 18 3900
255 7.45 0.27 900.13 0 1.32 0.19 892.65 2 3801 1.18 0.17 888.76 3 4120
363 8.81 0.46 906.08 0 1.42 0.35 900.57 0 5985 1.28 0.31 900.67 0 6183
381 8.86 0.41 906.39 0 1.07 0.31 900.63 0 7698 0.96 0.29 900.25 1 7985

Average 7.92 0.30 897.49 9 1.37 0.21 830.43 88 4163 1.20 0.19 817.73 103 4587

468 7.62 0.51 900.20 0 1.93 0.91 900.70 0 6528 1.36 0.39 900.70 0 6683
510 8.34 0.79 900.24 0 1.69 0.83 900.74 0 8528 1.43 0.67 900.66 0 9083
511 6.52 0.44 900.78 0 1.62 0.34 900.68 0 5545 1.44 0.33 900.81 0 6742
682 6.74 0.66 900.25 0 2.69 1.60 900.79 0 7509 1.65 0.65 900.72 0 7904
728 10.01 3.20 903.11 0 7.03 6.02 900.87 0 9254 4.15 3.25 900.81 0 9827
765 14.01 5.47 900.65 0 14.62 14.05 900.90 0 15556 9.42 8.91 900.96 0 16128
777 9.93 3.51 905.34 0 8.83 7.96 900.85 0 10369 5.32 4.51 900.85 0 10578
1022 18.13 10.33 900.42 0 14.64 13.91 900.96 0 17131 14.74 14.14 900.89 0 18282

Average 10.17 3.11 901.38 0 6.63 5.70 900.81 0 10052 4.94 4.11 900.80 0 10653

Table 3
Comparison between default CPLEX configuration and the customized branch-and-cut algorithm for instances with I = 5. The instances are grouped
according to the nominal returns and quality levels.

Instances CPLEX default BC1 (Path) BC2 (Path and Tree)

R Q GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt Cuts GapLP GapMIP Time #Opt Cuts

1 1 1.21 0.22 894.20 2 0.62 0.23 893.37 2 4908 0.64 0.25 890.65 3 5010
2 3.71 0.26 876.34 6 1.13 0.23 858.92 10 4401 1.08 0.22 839.89 14 4850
3 10.89 0.30 851.54 12 2.25 0.18 770.57 31 4133 2.01 0.17 731.14 43 4799

Average 5.27 0.26 874.03 20 1.33 0.22 840.95 43 4481 1.25 0.21 820.56 60 4886

2 1 3.38 0.20 886.32 5 0.97 0.17 856.49 14 4329 0.93 0.18 833.98 17 4778
2 12.66 0.27 807.24 23 2.20 0.13 697.91 45 3913 1.85 0.13 656.96 53 4688
3 22.71 0.47 839.15 13 3.21 0.23 766.87 32 3979 2.54 0.21 709.88 46 4785

Average 12.91 0.31 844.24 41 2.13 0.18 773.75 91 4074 1.77 0.17 733.61 116 4750

3 1 6.37 0.10 758.60 30 1.25 0.06 628.28 62 3863 1.09 0.06 589.14 67 4566
2 14.28 0.31 829.69 17 2.26 0.16 703.93 44 3858 1.84 0.15 656.43 52 4637
3 25.47 0.54 846.76 11 3.96 0.3 764.26 32 3962 3.22 0.27 685.38 48 4758

Average 15.37 0.32 811.68 58 2.49 0.17 698.82 138 3894 2.05 0.16 643.65 167 4654

Table 4
Comparison between default CPLEX configuration and the customized branch-and-cut algorithms for instances with I = 10. The instances are grouped
according to the nominal returns and quality levels.

Instances CPLEX default BC1 (Path) BC2 (Path and Tree)

R Q GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt Cuts GapLP GapMIP Time #Opt Cuts

1 1 4.77 3.81 903.00 0 6.11 5.81 900.70 0 7846 5.63 5.32 900.65 0 7946
2 8.20 5.00 900.15 0 10.76 10.20 900.64 0 7615 8.17 7.61 900.66 0 8009
3 8.87 0.67 900.18 0 3.64 2.36 896.34 2 7205 2.77 1.57 893.75 3 7758

Average 7.28 3.16 901.11 0 6.84 6.12 899.23 2 7555 5.52 4.83 898.36 3 7905

2 1 4.93 2.49 912.03 0 7.11 6.67 900.64 0 7313 3.98 3.56 900.73 0 7728
2 8.33 0.39 888.57 4 1.35 0.24 818.24 22 6791 1.19 0.22 805.78 26 7404
3 15.87 0.72 900.27 0 2.19 0.4 861.45 11 6924 1.85 0.35 854.26 13 7562

Average 9.71 1.20 900.29 4 3.55 2.44 860.11 33 7009 2.34 1.38 853.59 39 7564

3 1 4.86 0.97 897.64 1 0.80 0.16 844.12 15 6707 0.72 0.14 832.63 19 7301
2 9.78 0.52 894.84 2 1.67 0.43 822.14 23 6710 1.32 0.27 807.64 26 7366
3 15.83 0.80 896.65 2 2.36 0.34 846.3 15 6860 2.02 0.32 837.28 16 7507

Average 10.14 0.76 896.38 5 1.61 0.31 837.52 53 6759 1.35 0.24 825.85 61 7391
12 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

Table 5
Comparison between default CPLEX configuration and the customized branch-and-cut algorithms without automatically generated cuts embedded in CPLEX
for instances with I = 10. Instances are grouped according to the number of nodes in the scenario tree.

Instances CPLEX default BC1 (Path) BC2 (Path and Tree)

Nodes GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt Cuts GapLP GapMIP Time #Opt Cuts

126 7.71 0.14 871.23 7 1.40 0.23 900.63 0 2042 1.24 0.15 866.06 8 2289
189 9.56 0.27 895.13 1 1.22 0.32 900.66 0 3778 1.09 0.24 892.70 2 4030
242 6.81 0.26 900.37 0 1.48 0.49 900.54 0 3057 1.29 0.36 900.60 0 3539
254 8.04 0.36 900.18 0 1.37 0.52 900.66 0 4184 1.21 0.40 900.68 0 4653
255 6.15 0.24 897.71 1 1.66 0.67 900.68 0 2761 1.40 0.44 900.63 0 3900
255 7.45 0.27 900.13 0 1.33 0.46 900.66 0 3801 1.19 0.36 900.56 0 4119
363 8.81 0.46 906.08 0 1.45 0.74 900.67 0 5984 1.31 0.62 900.64 0 6182
381 8.86 0.41 906.39 0 1.09 0.60 900.75 0 7699 0.97 0.50 900.75 0 7985

Average 7.92 0.30 897.49 9 1.37 0.50 900.66 0 4163 1.21 0.38 895.33 10 4587

468 7.62 0.51 900.20 0 1.51 0.85 900.78 0 6528 1.40 0.71 900.70 0 6682
510 8.34 0.79 900.24 0 1.35 0.88 900.71 0 8527 1.21 0.75 900.62 0 9082
511 6.52 0.44 900.78 0 1.69 0.96 900.77 0 5545 1.47 0.78 900.64 0 6741
682 6.74 0.66 900.25 0 1.61 0.94 900.85 0 7509 1.50 0.87 900.75 0 7904
728 10.01 3.20 903.11 0 1.63 0.98 900.87 0 9253 1.47 0.86 900.98 0 9826
765 14.01 5.47 900.65 0 1.53 1.19 901.11 0 15,549 1.08 0.73 901.13 0 16,121
777 9.93 3.51 905.34 0 1.47 0.88 900.86 0 10,369 1.40 0.83 900.89 0 10,578
1022 18.13 10.33 900.42 0 2.96 2.61 900.99 0 17,129 1.55 1.22 901.53 0 18,279

Average 10.17 3.11 901.38 0 1.72 1.16 900.87 0 10,051 1.38 0.84 900.91 0 10,652

1093 13.45 8.45 900.48 0 2.46 1.72 900.98 0 7950 1.94 1.24 900.82 0 9831
1365 17.90 13.59 900.51 0 2.26 1.52 900.80 0 7690 1.74 0.98 900.89 0 9479

Average 15.67 11.02 900.49 0 2.36 1.62 900.89 0 7820 1.84 1.11 900.85 0 9655

average computation time is decreased from 786s with CPLEX to binary constraints on the setup variables Ypn are relaxed so that
643s with BC1 and 565s with BC2. This is mainly explained by the the value of the fixed setup costs is underestimated in the lin-
effectiveness of the cutting-plane generation at tightening the LP ear relaxation. The larger the relative weight of the setup costs in
relaxation gap at the root node, as shown by the results provided the objective function, the larger the integrality gap. Now, in case
in columns GapLP . Namely, a significant tightening of the LP relax- the volume of returned products is high and their quality is good,
ation is achieved via our approach since the average LP gap is re- a large part of the demand for remanufactured products will be
duced from over 11% to less than 2%. Moreover, we note that on satisfied so that the lost sales quantity will be close to zero. This
these instances, the addition of tree inequalities using Algorithm implies that the setup costs will make up a large portion of the
2 during the course of the branch-and-cut algorithm proves use- overall production costs, leading to a large integrality gap. On the
ful to improve its performance both in terms of solution quality contrary, in case the volume of returned products is low and their
and computation time. As for the medium-size instances, we note quality is bad, a large portion of the demand will not be satisfied,
that none of the three algorithms could solve them to optimality lost sales penalties will be high as compared to setup costs, lead-
within 900 s. However, we observe that the average residual gap ing to small integrality gaps. We would like to point out that one
is smaller with the proposed branch-and-cut algorithms than with advantage of our cutting-plane generation algorithm is that it is
CPLEX solver. Namely, it is reduced from 0.45% to 0.31%. capable of reducing the integrality gap in the same way for any
Second, by looking at Table 2, we observe that the performance product volume and quality level. We note however that the in-
of the three solution approaches decreases when the number of stances corresponding to a small amount of lost sales and a large
items increases. This is mainly explained by the fact that the for- LP gap seem to be easier to solve than the instances correspond-
mulation size strongly increases with I. However, the proposed ing to a large amount of lost sales and a small LP gap. This might
branch-and-cut algorithms are still able to provide optimal solu- be due to the fact that, over the course of the branch-and-bound
tions for around 15% of the small size instances whereas CPLEX search tree, the lower bound increase is slower when the weight
finds optimal solutions for less than 2% of the considered instances of the lost sales penalty in the objective function is large. Namely,
within the imposed time limit. Regarding medium size instances, in this case, making a branching decision on a binary setup vari-
we note that algorithms BC1 and BC2 lead to larger residual gaps able has a smaller impact on the objective function value in terms
than CPLEX. This might be due to the fact that, even if the best of lower bound improvement.
lower bounds are improved by the cutting-plane generation algo- We note that the proposed branch-and-cut methods do not per-
rithms, the residual gap remains large due to the poor quality of form better than default CPLEX for the sets of instances with more
the best upper bounds found within the time limit. than 682 nodes and I = 10, leading to larger residual gaps. For a
In Tables 3 and 4, the instances are grouped according to better understanding of the behavior of the branch-and-cut meth-
the nominal returns and quality levels. These results show that ods BC1 and BC2, we carried out additional computational exper-
these instance features have an impact on the problem resolution. iments over the same sets of instances after the automatic gen-
Namely, formulation (14)–(28) displays a significant dispersion of eration of cuts by default CPLEX was turned off. The results are
the LP gap: from 1.21% (resp. 4.77%) for the case of a low vol- reported in Table 5. They show that the proposed methods per-
ume and a poor quality of the returned products to 25.47% (resp. form as well as default CPLEX for instances with less than 682
15.82%) for the case of a large volume and a good quality of the nodes, showing slightly larger residual gaps. Nonetheless, for in-
returned products, for the instances with I = 5 (resp. I = 10). This stances with more than 682 nodes, the proposed methods out-
might be explained by the relative weight of the lost sales penalty perform default CPLEX providing much smaller residual gaps. In
costs and fixed setup costs in the objective function. Namely, we general, the method BC2 (resp. BC1) improves the residual gaps
note that the integrality gap mainly comes from the fact that the from 3.11% to 0.84% (resp. 1.16%) on average and, in particular, for
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 13

instances with 1022 nodes, the method is able to reduce the gap This assessment is achieved by carrying out a rolling hori-
from 10.33% to 1.22% (resp. 2.61%). Additionally, we test the meth- zon simulation similar to the one used by Brandimarte (2006).
ods on even larger scenario trees with 1093 and 1365 nodes. The Each experiment consists in simulating the application of the first-
results show that the method BC2 (resp. BC1) is able to decrease stage planning decisions over 12 time periods and in recording
the gap from 11.02% to 1.11% (resp. 1.62%) on average and for in- the total cost incurred when applying the planning decisions es-
stances with 1365 nodes, the methods reduce the gap from over tablished by the deterministic or the stochastic models. Note that
13% to less than 1% (resp 1.52%) on average. A possible explana- the cost considered in this simulation is not the objective func-
tion of the improvement of the residual gaps is that turning off tion of the optimization model, but the sum over time of the true
the default CPLEX cuts generation leads to a decrease of the size cost incurred by the application of the first-stage planning deci-
of the linear programs solved at each node of the search tree. This sions over a true scenario. We then compute the relative differ-
allows more nodes to be explored by the branch-and-bound algo- ence 100(C − CMS )/CMS , where C is the total costs accumulated over
rithm and results in finding upper bounds of better quality. All each simulation run for the deterministic or the two-stage stochas-
these results confirm the usefulness of the proposed methods in tic programming model, and CMS corresponds to the total costs ac-
tackling large instances. cumulated over each simulation run for the multi-stage stochastic
Finally, it is worth mentioning that, in the computational ex- programming model.
periments reported in this section, many sources of uncertainty The instances are generated in the same way as in the previous
are considered whereas in most previously published works, only subsection. Since running the simulation is quite costly, we con-
one or two sources of uncertainty were taken into account: sidered small scenario trees with at most 255 nodes in order to
see e.g. Kilic (2013), Kilic et al. (2018), Naeem et al. (2013), gain some basic insights. More specifically, at each iteration of the
Hilger et al. (2016), Wang and Huang (2013) and Fang et al. (2017). rolling horizon simulation, a scenario tree with s = 4 stages and
We thus carried out additional computational experiments over in- b = 3 periods per stage is generated for the stochastic model. The
stances involving large scenario trees in order to assess the per- number of branches c at each stage is set between 2 and 4. The
formance of the proposed methods when only the demand and stochastic model is solved by algorithm BC2 and, to speed up the
returns quantity are stochastic. The corresponding results are re- simulation, a time limit of 900 s is imposed. Since the determin-
ported in Appendix A. They suggest the good performance of the istic model is easy to solve for instances with 12 time periods, we
methods as compared to the mathematical programming solver use the branch-and-bound algorithm embedded in CPLEX to solve
CPLEX 12.8. In particular, they show that the proposed algorithms it with no suboptimality tolerance.
are able to solve to optimality instances involving scenario trees We randomly generate 100 true independent scenarios for each
with more than 1800 nodes in a reasonable computation time. nominal returns level, each quality level and each scenario tree
structure, resulting in a total of 2700 true scenarios. Table 6 re-
ports the average relative increase in cost, as defined before, and
6.3. Rolling horizon simulation its Mean Absolute Deviation (MAD) for each nominal returns level,
nominal quality level and number of branches of the scenario tree.
In this subsection, we seek to assess the practical perfor- Results from Table 6 suggest that the actual practical per-
mance of the multi-stage stochastic programming model by com- formance of the production plan obtained by the multi-stage
paring it with two simpler production planning models: a de- stochastic model might be significantly better than the one of
terministic model which completely ignores uncertainty and a the production plan provided by a deterministic model. Namely,
two-stage stochastic programming model which considers uncer- the average increase in the actual production cost observed when
tainty but does not allow to dynamically adjust production de- using the deterministic model instead of the multi-stage stochastic
cisions over time. To build the two-stage stochastic program- model is 45%. Moreover, for each nominal returns and quality level,
ming model, we made the same assumptions as the ones used the stochastic model outperforms the deterministic model, even
by Macedo et al. (2016) for planning a hybrid manufactur- if simple scenario trees with two children per end-of-stage node
ing/remanufacturing system under stochastic demand, returns and are used. We note that this cost decrease mainly comes from the
set-up costs. More precisely, we considered the production deci- decrease in the amount of lost sales penalty costs obtained when
sions (production quantity and set-up) as first-stage variables and using the multi-stage stochastic model. Regarding the two-stage
all other decisions (inventory level, lost sales and discarded quan- stochastic model, the results also suggest an overall better per-
tities) as second-stage variables. formance of the multi-stage stochastic model. Indeed, the average

Table 6
Values of the stochastic solution for 2,3 and 4 children in the scenario tree. The instances are grouped by returns and quality levels
and the values were calculated as follows: 100 (C − CMS )/CMS .

Deterministic model Two-stage stochastic model

Instances c=2 c=3 c=4 c=2 c=3 c=4

R Q Ave. MAD Ave. MAD Ave. MAD Ave. MAD Ave. MAD Ave. MAD

1 1 19.9 7.7 25.4 9.6 24.6 8.9 −1.39 15.07 −1.90 21.68 −2.97 28.27
2 36.1 18.5 33.2 16.9 36.2 17.6 16.13 16.35 15.82 13.77 20.29 19.30
3 43.4 41.1 47.8 42.6 65.2 54.6 20.79 25.41 40.18 35.22 44.45 33.44

2 1 26.7 14.5 31.0 15.6 34.3 18.6 5.93 13.62 11.59 17.17 9.50 21.00
2 74.3 61.9 66.5 54.7 74.1 56.6 12.10 21.56 21.87 24.48 28.79 24.08
3 52.0 70.5 69.2 89.7 39.8 48.5 9.65 15.93 15.27 15.94 22.72 18.41

3 1 37.1 31.8 34.0 25.8 45.5 39.8 21.76 20.26 29.39 21.10 27.36 21.89
2 60.2 62.1 46.0 44.5 65.4 69.5 15.00 18.58 23.33 19.90 46.12 29.39
3 33.2 55.9 46.1 68.6 50.0 70.7 7.94 14.10 18.78 17.41 27.16 19.83

Average 42.5 42.5 44.3 42.2 48.2 44.8 11.99 17.88 19.37 20.74 24.82 23.96
14 F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865

increase in the actual production cost observed when using the lem modeling uncapacitated production processes. Extending the
two-stage stochastic model instead of the multi-stage stochastic present work in order to account for production resources with
model is almost 19%. We note however an exception for the limited capacity could also be worth investigating.
instances with the lowest returns and quality level for which the
two-stage stochastic model slightly outperforms the multi-stage Acknowledgements
stochastic model. A reasonable explanation for this is that, with
low returns of bad quality, there will be a large amount of lost This research was partially supported by the supercomputing
sales and the positive impact on the costs of the additional infrastructure of the NLHPC (ECM-02) in which preliminary com-
flexibility to adjust production decisions over time offered by the putational tests were conducted. Authors are grateful for partial
multi-stage stochastic model is diminished. support from Gaspard Monge Program for Optimization, opera-
Moreover, we observe a clear, but not large, average improve- tional research and their interactions with data science (PGMO)
ment when increasing the number of branches. However, this im- and the Fondation Mathématique Jacques Hadamard (FMJH). The
provement has to be counter-balanced by the increased CPU effort authors would also like to thank three anonymous referees for
required. Of course, these results should be taken carefully, given their detailed reviews that helped to improve an initial version of
the large mean absolute deviation. This large variability is partly this paper.
due to the instance generation framework, which involves some
uniform distributions with large amplitude of their intervals. It can Appendix A. Additional computational results on large
be easily observed by comparing the mean absolute deviation of instances with only two sources of uncertainty
the instances with low nominal returns and quality levels, which
have a relative smaller amplitude of its uniform distribution, to the In Section 6.2, we study the performance of the proposed algo-
high nominal and quality levels. rithms over a set of instances where many sources of uncertainty,
namely the returns quality and quantity, the demand and the costs,
are taken into account. However, most of the works carried out
7. Conclusions so far considered only one or two sources of uncertainty and fo-
cused on a stochastic demand and/or a stochastic returns quan-
We considered an uncapacitated multi-item multi-echelon lot- tity: see e.g. Kilic (2013), Kilic et al. (2018), Naeem et al. (2013),
sizing problem within a remanufacturing system involving three Hilger et al. (2016), Wang and Huang (2013) and Fang et al. (2017).
production echelons: disassembly, refurbishing and reassembly. We In this Appendix, we thus seek to assess the effectiveness of
considered a stochastic environment in which the input data of the proposed branch-and-cut algorithms over a set of instances
the optimization problem are subject to uncertainty and proposed in which only two sources of uncertainty, namely the demand
a multi-stage stochastic integer programming approach relying on and the returns quantity, are taken into account. In particular, we
scenario trees to represent the uncertain information structure. would like to evaluate whether reducing the level of stochasticity
This resulted in the formulation of a large-size mixed-integer lin- in the problem parameters could enable us to solve instances in-
ear program involving a series of big-M type constraints. We de- volving larger scenario trees.
veloped a branch-and-cut algorithm in order to solve the obtained In what follows, we introduce the settings used to randomly
MILP to optimality. This algorithm relies on a new set of tree generate this second set of instances and present the results of the
inequalities obtained by combining valid inequalities previously related computational experiments.
known for each individual scenario of the scenario tree. The tree
inequalities are used within a cutting-plane generation procedure A1. Instances generation
based on a heuristic resolution of the corresponding separation
problem. Computational experiments carried out on randomly gen- We randomly generate instances following the scheme pre-
erated instances show that the proposed branch-and-cut algorithm sented in Section 6.1. The stochastic parameters, i.e. the demand
performs well as compared to the use of a stand-alone mathemat- and returns quantity, are generated as described in Section 6.1.
ical solver. Although the proposed branch-and-cut methods pro- All the other parameters may be time varying but are assumed
vide small residual gaps for large-size scenario tree instances, they to be deterministically known. Hence, contrary to what is done in
were not able to solve them to optimality within the imposed time Section 6.1, these parameters now have the same value for each
limit. Hence, an interesting direction for further research could be node of the scenario tree belonging to the same time period. This
to study other heuristic solution approaches in order to reduce value is randomly generated from the same discrete uniform dis-
the total computation time. Moreover, we assumed in our prob- tributions as the ones used in Section 6.1.

Table A1
Performance of branch-and-cut algorithm over larger instances. The instances are grouped according to the number of nodes in the
scenario tree and the nominal returns levels.

Instances CPLEX default BC1 (Path) BC2 (Path and Tree)

Nodes R GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt GapLP GapMIP Time #Opt

1093 1 8.05 0.21 900.18 0 2.41 0.09 841.87 6 2.05 0.06 696.38 9
2 23.90 0.55 900.21 0 6.07 0.28 708.68 8 4.82 0.22 639.78 12
3 26.74 0.68 858.23 2 7.33 0.27 756.66 6 6.12 0.20 710.99 8

1365 1 6.23 0.11 900.14 0 1.88 0.04 758.91 9 1.65 0.03 709.35 9
2 25.66 0.83 871.56 1 7.60 0.37 778.85 7 6.11 0.23 725.53 7
3 28.82 1.14 900.24 0 10.15 0.74 897.16 1 8.48 0.50 831.44 4

1820 1 19.29 0.59 900.19 0 2.18 0.48 901.64 0 1.91 0.28 901.20 0
2 34.62 0.49 901.82 0 2.11 0.10 810.30 4 1.79 0.07 712.60 10
3 34.04 0.43 902.00 0 2.03 0.12 819.63 4 1.70 0.10 780.27 6

Average 23.04 0.56 892.73 3 4.64 0.28 808.17 45 3.78 0.19 745.28 65
F. Quezada, C. Gicquel and S. Kedad-Sidhoum et al. / Computers and Operations Research 116 (2020) 104865 15

We set the number of parts in a product to I = 5 and con- Guan, Y., Ahmed, S., Nemhauser, G.L., 2009. Cutting planes for multistage stochastic
sidered 3 scenario tree structures: (b, s, c ) = (1, 7, 3 ), (b, s, c ) = integer programs. Oper. Res. 57 (2), 287–298.
Guan, Y., Ahmed, S., Nemhauser, G.L., Miller, A.J., 2006. A branch-and-cut algorithm
(1, 6, 4 ) and (b, s, c ) = (5, 6, 3 ) leading to trees involving respec- for the stochastic uncapacitated lot-sizing problem. Math. Program. 105 (1),
tively |V | = 1093, |V | = 1365 and |V | = 1820 nodes. For each com- 55–84.
bination of scenario tree structure and used product quantity level, Guide, V.D.R., 20 0 0. Production planning and control for remanufacturing: industry
practice and research needs. J. Oper. Manage. 18 (4), 467–483.
we randomly generated 30 instances, resulting in a total of 270 in- Guide, V.D.R., Jayaraman, V., Srivastava, R., 1999. Production planning and control
stances. for remanufacturing: a state-of-the-art survey. Rob. Comput. Integr. Manuf. 15
(3), 221–230.
Hilger, T., Sahling, F., Tempelmeier, H., 2016. Capacitated dynamic production and
A2. Results remanufacturing planning under demand and return uncertainty. OR spectrum
38 (4), 849–876.
Each instance was solved using formulation (14)–(28) by the Ilgin, M.A., Gupta, S.M., 2010. Environmentally conscious manufacturing and product
recovery (ECMPRO): a review of the state of the art. J. Environ. Manage. 91 (3),
three alternative branch-and-cut methods detailed in Section 6.2. 563–591.
The corresponding results are provided in Table A.7. They suggest Jayaraman, V., 2006. Production planning for closed-loop supply chains with prod-
that the proposed algorithms also outperform CPLEX for this sec- uct recovery and reuse: an analytical approach. Int. J. Prod. Res. 44 (5), 981–998.
Kazemi Zanjani, M., Nourelfath, M., Ait-Kadi, D., 2010. A multi-stage stochastic pro-
ond set of large instances. This can be seen by the fact that the gramming approach for production planning with uncertainty in the quality of
number of instances solved to optimality is much higher than the raw materials and demand. Int. J. Prod. Res. 48 (16), 4701–4723.
one solved by CPLEX when using Algorithm BC1 or BC2. Specifi- Kilic, O.A., 2013. A mip-based heuristic for the stochastic economic lot sizing prob-
lem with remanufacturing. IFAC Proc. Vol. 46 (9), 742–747.
cally, Algorithm BC2 (resp. BC1) can solve almost 25% (resp. 17%) Kilic, O.A., Tunc, H., Tarim, S.A., 2018. Heuristic policies for the stochastic economic
of the tested instances to optimality whereas CPLEX can solve less lot sizing problem with remanufacturing under service level constraints. Eur. J.
than 1.2% of these instances to optimality. Moreover, the average Oper. Res. 267 (3), 1102–1109.
Lage Junior, M.L., Filho, M.G., 2012. Production planning and control for remanufac-
residual gap is decreased from 0.56% with CPLEX to 0.28% with BC1
turing: literature review and analysis. Prod. Plann. Control 23 (6), 419–435.
and 0.19% with BC2 and the average computation time is decreased Li, C., Liu, F., Cao, H., Wang, Q., 2009. A stochastic dynamic programming based
from 892.73 with CPLEX to 808.17 with BC1 and 745.25 with BC2. model for uncertain production planning of re-manufacturing system. Int. J.
Prod. Res. 47 (13), 3657–3668.
Moreover, we note that Algorithm BC2 performs at least as well as
Loparic, M., Pochet, Y., Wolsey, L.A., 2001. The uncapacitated lot-sizing problem with
Algorithm BC1 over all instance sets, in terms of both reducing the sales and safety stocks. Math. Program. 89 (3), 487–504.
computation time and obtaining optimal solutions. Lund, R.T., Mundial, B., 1984. Remanufacturing: The Experience of the United States
and Implications for Developing Countries, vol. 31. World Bank.
Macedo, P.B., Alem, D., Santos, M., Junior, M.L., Moreno, A., 2016. Hybrid manufac-
References turing and remanufacturing lot-sizing problem with stochastic demand, return,
and setup costs. Int. J. Adv. Manuf. Technol. 82 (5–8), 1241–1257.
Ahn, H.-D., Lee, D.-H., Kim, H.-J., 2011. Solution algorithms for dynamic lot-sizing in Naeem, M.A., Dias, D.J., Tibrewal, R., Chang, P.-C., Tiwari, M.K., 2013. Produc-
remanufacturing systems. Int. J. Prod. Res. 49 (22), 6729–6748. tion planning optimization for manufacturing and remanufacturing system in
Brandimarte, P., 2006. Multi-item capacitated lot-sizing with demand uncertainty. stochastic environment. J. Intell. Manuf. 1–12.
Int. J. Prod. Res. 44 (15), 2997–3022. Pochet, Y., Wolsey, L.A., 2006. Production Planning by Mixed Integer Programming.
Denizel, M., Ferguson, M., et al., 2010. Multiperiod remanufacturing planning with Springer Science & Business Media.
uncertain quality of inputs. IEEE Trans. Eng. Manage. 57 (3), 394–404. Wang, H.-F., Huang, Y.-S., 2013. A two-stage robust programming approach to de-
Di Summa, M., Wolsey, L.A., 2008. Lot-sizing on a tree. Oper. Res. Lett. 36 (1), 7–13. mand-driven disassembly planning for a closed-loop supply chain system. Int. J.
Fang, C., Liu, X., Pardalos, P.M., Long, J., Pei, J., Zuo, C., 2017. A stochastic production Prod. Res. 51 (8), 2414–2432.
planning problem in hybrid manufacturing and remanufacturing systems with Zhang, M., Küçükyavuz, S., Goel, S., 2014. A branch-and-cut method for dynamic
resource capacity planning. J. Global Optim. 68 (4), 851–878. decision making under joint chance constraints. Manage. Sci. 60 (5), 1317–1333.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy