410
Views
10
CrossRef citations to date
0
Altmetric
Original Articles

Two-level lot-sizing with raw-material perishability and deterioration

, &
Pages 417-432 | Received 25 May 2017, Accepted 10 Dec 2018, Published online: 20 Apr 2019
 

Abstract

In many production systems, it is common to face significant rates of product deterioration, referring to physical exhaustion, loss of functionality and volume, or even obsolescence. This deterioration property, known as perishability, prevents such products from being used after their expiration time. We present lot-sizing problems that incorporate raw-material perishability and analyse how these considerations enforce specific constraints on a set of fundamental decisions, particularly for multi-level structures. We study three variants of the two-level lot-sizing problem incorporating different types of raw-material perishability: (a) fixed shelf-life, (b) functionality deterioration, and (c) functionality-volume deterioration. We propose mixed-integer programming formulations for each of these variants and perform computational experiments with sensitivity analyses. We analyse the added value of explicitly incorporating perishability considerations into production planning problems. For this, we compare the results of the proposed formulations with those obtained by implementing a sequential approach that adapts a standard two-level lot-sizing solution with a Silver-Meal-based rolling-horizon algorithm.

Disclosure statement

No potential conflict of interest was reported by the author(s).

Funding

This work was partially supported by Natural Sciences and Engineering Research Council of Canada, COLCIENCIAS and the Universidad Pontificia Bolivariana Seccional Bucaramanga (Bucaramanga, Colombia). This support is gratefully acknowledged.

Appendix A. Description of test instances

All problem instances used to perform the computational experiments in Section 4 were randomly generated as follows. Three parameters were set a priori as a basis for comparison: planning horizon (n), shelf-life (β), and batch-size (b). In particular, we tested instances with n{18,20,22},β{2,4,6,8}, and b{50,100,150,200,250}. Another parameter set a priori is r = 3 for all considered instances. The remaining parameters were randomly generated using continuous or discrete uniform distributions, depending on the parameter, as follows:

  • Demand: dtU[150,300]

  • Unit production time: aU[2.5,3.5]

  • Unit production cost: ptU[10.0,13.0]

  • Fixed set-up cost: qtU[380.0,420.0]

  • Unit storage cost: htU[5.0,7.0]

  • Unit raw-material cost: ζtU[1.0,3.0]

  • Upper ordering limit: KtU[Kcoef×4.5,Kcoef×4.75],

where the Kt values were generated considering the product of the average demand and the bill of material r, divided by the batch size b. With the purpose of integrating variability in a controlled manner, for the remaining parameters, three different value levels were generated each for 1/3 of the instances.
  • Fixed order-placement cost: A high level using ρtU[500,550], a medium level using ρtU[250,300], and a low level using ρtU[150,200].

  • Raw-material unit storage cost: A high level using γtU[8.0,12.0], a medium level using γtU[3.0,7.0], and a low level using γtU[1.0,2.0].

The capacitated instances used the following:

  • Available process capacity: The Ct values were generated considering the upper demand limit 300 as follows: a high level using CtU[300×4.5,300×4.75], a medium level using CtU[300×4.25,300×4.5], and a low level using CtU[300×4.0,300×4.25].

For the 2LS-FD and 2LS-FVD problem variants, the functionality deterioration rate f(δ) and volume deterioration rate ν(δ) functions were randomly generated as follows:

  • Functionality deterioration rate functions f(δ): for 0δ<β, where δ=(tu),f(0)=pt,f(1)=(pt)(1+rand1), where rand1U(0,1β1),f(2)=(pt)(1+rand2), where rand2U(1β1,2β1), and so on.

  • Volume deteriorations rate functions ν(δ): for 0δ<β where δ=(tu),ν(0)=rand0, where rand0U(0,1β1),ν(1)=rand1, where rand1U(1β1,2β1), and so on.

Appendix B. A standard two-level lot-sizing model

As described in Section 3, the standard two-level lot-sizing 2LS problem considers a production system in which one item (finished product) is to be produced and another item (raw-material), an input of the first, is to be procured from a supplier over a planning horizon with n time periods, T={1,,n}. Solving the 2LS problem is to determine the production, procurement and inventory plans for the two items to meet the demands of the planning horizon, while minimising the corresponding costs.

To evaluate the added value of integrating raw-material perishability into classical lot-sizing problems, we initially performed a comparative analysis on the optimal solutions obtained with our MIP formulations and those of the 2LS model.

For each of our three problem variants, we evaluate the solutions of the 2LS. If they are feasible for the counterpart problems with raw-material deterioration, these solutions are compared with the optimal solutions of the proposed MIP formulations. presents these results for a set of instances with n = 7 where the only varying parameters are β={2,3,4} and b={40,80,100,150,200,250}. The same instances are used for the computational experiments presented in Section 4.1.

Table 3. Average standard 2LS solution deviations.

The first two columns in specify the type of problem variant solved and the β values of the instances. The third column shows the percentage of instances for which the standard 2LS solution is infeasible (%inf) when adapted to solve its counterpart problem variant. The next column shows the average deviation (%dev) of the feasible solutions from the optimal solution of the actual problem considering raw-material perishability. The deviations are computed as %dev=[(SOL2LSOPT)/OPT]×100, where SOL2LS is the objective function value of the feasible solution and OPT the optimal solution value. Finally, the last two columns show the percentage of instances with %dev greater than 10% and the maximum %dev observed, respectively.

Appendix C. A sequential approach

The goal of the sequential approach is to adapt the initial 2LS solutions to find feasible and possibly improved solutions for the considered problem variants. We begin by defining the terms:

x̂t production decisions to fix obtained from standard 2LS solution for 1tn, where x̂t=u=1twut.

X̂ut fixed cumulative production to cover from period u to t.

Q¯ut order quantity (raw-material batches) in period u to cover fixed production up to t.

z¯ut binary raw-material for order placement variable.

w¯ut variables used to modified the original wut variables within the heuristic to avoid violation of the (tu)<β condition.

ACPut average cost per period for an order placed in period u to cover fixed production requirements up to t, where:

ACPut=ρuz¯u+ζuQ¯ut+t=uΘuputiw¯ut+ϕu(bQ¯utt=uΘuw¯ut)(tu)+1, where i=FS for the 2LS-FS variant and i=FD for the 2LS-FD variant. We note that original Silver-Meal heuristic cannot be directly applied to any our problem variants and thus, an extended version is developed. For the 2LS-FS and 2LS-FD variants, the procedure used in the second step of the sequential approach are summarised in Algorithm Citation1.

Algorithm 1.

Sequential approach for 2LS-FS and 2LS-FD

1: Solve standard 2LS to obtain ŷt, wut for u,tT,ut

2: u1

3: while t < n do

4: tu

5: X̂utt=unwutr

6: if X̂ut=0 then

7: Q¯ut0

8: z¯u0

9: else

10: Q¯utmax{rX̂utb,L}

11: z¯u1

12: end if

13: w¯utrx̂t

14: Evaluate ACPut

15: if ACPut>ACPu,t1 or t+1=Θu then

16: go to step 20

17: else

18: t(t+1) and go to step 5

19: end if

20: zuz¯u,t1,QuQ¯u,t1, and wu,t1w¯u,t1

21: u(u+1) and go to step 4

22: end while

23: return zu,Qu,wut for u,tT,0(tu)<β

For the 2LS-FVD variant, ACPut is computed as follows: ACPut=ρuz¯u+ζuQ¯ut+t=uΘuputFVDwut+t=uΘu(γucut+ϕueut)(tu)+1, and the steps are shown in Algorithm Citation2.

Algorithm 2.

Sequential approach for 2LS-FVD

1: Solve standard 2LS, return ŷt, wut for u,tT,ut

2: u1

3: while t < n do

4: tu

5: if u = t then

6: if x̂u = 0 then

7: Q¯ut0

8: z¯u0

9: else

10: Q¯utmax{rx̂ub,L}

11: z¯u1

12: end if

13: else

14: if x̂u = 0 then

15: Q¯ut0

16: z¯u0

17: else

18: Q¯utmax{[c¯ut(1ν(0))+rx̂u]b,L}

19: z¯u1

20: end if

21: end if

22: Evaluate w¯ut,c¯ut, and e¯ut for all utΘu

23: Evaluate ACPut

24: if ACPut>ACPu,t1 or t+1=Θu then

25: go to step 29

26: else

27: t(t+1) and go to step 18

28: end if

29: zuz¯u,t1,QuQ¯u,t1 for utΘu

30: wu,t1w¯u,t1,cu,t1c¯u,t1, and eu,t1e¯u,t1 for utΘu

31: u(u+1) and go to step 4

32: end while

33: return zu,Qu,wu,t,cut,eut for u,tT,0(tu)<β

Where w¯ut=rx̂t; c¯ut=(c¯u,t1rx̂t)(1ν(δ)) and c¯uu=rx̂u+1, and e¯ut=(c¯u,t1rx̂t)(ν(δ)) and e¯uu=(bQ¯utx̂t)(ν(δ)).

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.