arXiv is now an independent nonprofit! Learn more
License: arXiv.org perpetual non-exclusive license
arXiv:1210.5386v1 [cs.OH] 19 Oct 2012

A Robust Lot Sizing Problem with Ill-known Demands Thanks: The second author of the paper was partially supported by Polish Committee for Scientific Research, grant N N206 492938.

Romain Guillaume Affiliation: Université de Toulouse-IRIT, Affiliation: 5, Allées A. Machado,31058 Toulouse Cedex 1, France, Email: Romain.Guillaume@irit.fr    Przemysław Kobylański    Paweł Zieliński Note: Corresponding author Affiliation: Faculty of Fundamental Problems of Technology, Affiliation: Wrocław University of Technology, Affiliation: Wybrzeże Wyspiańskiego 27, Affiliation: 50-370 Wrocław, Poland, Email: {Przemyslaw.Kobylanski,Pawel.Zielinski}@pwr.wroc.pl
Abstract

The paper deals with a lot sizing problem with ill-known demands modeled by fuzzy intervals whose membership functions are possibility distributions for the values of the uncertain demands. Optimization criteria, in the setting of possibility theory, that lead to choose robust production plans under fuzzy demands are given. Some algorithms for determining optimal robust production plans with respect to the proposed criteria, and for evaluating production plans are provided. Some computational experiments are presented.

Keywords: Fuzzy Optimization, Dynamic Lot Sizing, Uncertain Demand, Possibility Theory

1 Introduction

Nowadays, companies do not compete as independent entities but as a part of collaborative supply chains. Uncertainty in demands creates a risk in a supply chain as backordering, obsolete inventory due to the bullwhip effect [1]. To reduce this risk two different approaches exist that are considered here. The first approach consists in a collaboration between the customer and the supplier and the second one consists in an integration of uncertainty into a planning process.

The collaborative processes mainly aim to reduce a risk in a supply chain [2]. This is done by enforcing a coordination in a supply chain. Two approaches can be applied: vertical and horizontal. The vertical approach is a centralized decision making that synchronizes a supply chain (the most common way to coordinate within companies). The horizontal one refers to the collaborative planning, in which a supply chain can be seen as a chain, where actors are independent entities [3]. The industrial collaborative planning has been standardized for implementing a cooperation between retailers and manufactures. This process is called Collaborative Planning, Forecasting and Replenishment (CPFR) [4]. More precisely, the collaborative processes are usually characterized by a set of point-to-point (customer/supplier) relationships with a partial information sharing [2, 5]. In the collaborative supply chain, a procurement plan is built and propagated through a supply chain. Namely, the procurement plan is composed of three horizons: freezing, flexible and free ones [2]. Quantities in the freezing horizon are crisp and can not be modified, quantities in the flexible horizon are intervals and can be modified under constraints imposed by a previous procurement plan. In the free horizon quantities can be modified without constraints. Another way to reduce a risk in a supply chain is to integrate the uncertainty in a planning process. In the literature, three different sources of uncertainty are distinguished (see [6] for a review): demand, process and supply. These uncertainties are due to difficulties to access to available historical data allowing to determine a probability distribution.

In this paper, we focus on the collaborative supply chain (a supply chain, where actors are independents entities) under uncertain demands. In most companies today, especially in aeronautic companies, actors use the Manufacturing Resource Planning (MRPII) to plan theirs production. MRPII is a planning control process composed of three processes (the production process, the procurement process and the distribution process) and three levels [7]: the strategic level (computing commercial and industrial plans), the tactical level (the Master Production Scheduling (MPS) and the Material Requirement Planning (MRP)) and the operational level (a detailed scheduling and a shop floor control). MRPII have been also extended to take into account: the imprecision on quantities of demands (MPS) [8], the imprecision on quantities of demands and uncertain orders [9] (MRP) and the imprecision on quantities and on dates of demands with uncertain order dates [10] (MRP).

In this paper, we wish to investigate the part of the MRPII process. Namely, the procurement process in the tactical level in the collaborative context. Our purpose is to help the decision maker of a procurement service to evaluate a performance of a given procurement plan with ill-known gross requirements and to compute a procurement plan in a collaborative supply chain (with and without supplier capacity sharing due to a procurement contract) with ill-known gross requirements.

Several production planning problems have been adapted to the case of fuzzy demands: economic order quantity [11, 12], multi-period planning [8, 9, 10, 13, 14, 15, 16, 17], and the problem of supply chain planning (production distribution, centralized supply chain) [18, 19, 20, 21, 22, 23]. In the literature, there are two popular families of approaches for coping with fuzzy parameters. In the first family, a defuzzification is first performed and then deterministic optimization methods are used [20, 21]. In the second one, the objective is expressed in the setting of possibility theory [24] and credibility theory [25]. We can distinguish: the possibilistic programming (a fuzzy mathematical programming) in which a solution optimizing a criterion based on the possibility measure is built [16, 17], the credibility measure based programming in which the credibility measure is used to guaranty a service level (chance constraints on the inventory level) [26] or the goal is to choose a solution that optimizes a criterion based on the credibility measure [13] and a decision support based on the propagation of the uncertainty to the inventory level and backordering level [8, 9, 10]. Here, we restrict our attention to uncertainty propagation in MRP (the tactical level) [8, 9, 10] and we propose methods both for evaluating a procurement plan in terms of costs under uncertain demands and for computing a procurement plan which minimizes the impact of uncertainty on costs, since the approaches proposed in the literature are not able to do this.

Popular setting of problems for hedging against uncertainty of parameters is robust optimization [27]. In the robust optimization setting the uncertainty is modeled by specifying a set of all possible realizations of the parameters called scenarios. No probability distribution in the scenario set is given. The value of each parameter may fall within a given closed interval and the set of scenarios is the Cartesian product of these intervals. Then, in order to choose a solution, two optimization criteria, called the min-max and the min-max regret, can be adopted. Under the min-max criterion, we seek a solution that minimizes the largest cost over all scenarios. Under the min-max regret criterion we wish to find a solution, which minimizes the largest deviation from optimum over all scenarios.

In this paper, we are interested in computing a robust procurement plan (with and without delivering capacity of the supplier sharing). The delivering capacity are composed of two bounds: the lower one being the minimal accepted quantity that is sent to the customer and the upper bound which is due to a production capacity of the supplier. Moreover the customer accepts to have backordering but it is more penalized that inventory. This problem is equivalent to the problem of production planning with backordering, more precisely to a certain version of the lot sizing problem (see, e.g., [28, 29]), where: the procured quantities are production quantities, a production plan; delivering constraints are production constraints, capacity limits on production plans; and the gross requirements are demands. Thus, the problem consists in finding a production plan that fulfills capacity limits and minimizes the total cost of storage and backordering subject to the conditions of satisfying each demand. It is efficiently solvable when the demands are precisely known (see, e.g., [30, 31, 32]). However, the demands are seldom precisely known in advance and the uncertainty must be taken into account.

In this paper, we consider the above problem with uncertain demands modeled by fuzzy intervals. The membership function of a fuzzy interval is a possibility distribution describing, for each value of the demand, the extent to which it is a possible value. In other words, it means that the value of this demand belongs to a λ\lambda-cut of the fuzzy interval with the degree of necessity (confidence) 1λ1-\lambda. To evaluate a production plan, we assign to it, degrees of possibility and necessity that its cost does not exceed a given threshold and a degree of necessity that costs of the plan fall within a given fuzzy goal. In order to find “robust solutions” under fuzzy demands, we apply two criteria. The first one consists in choosing a production plan which maximizes the degree of necessity (certainty) that its cost does not exceed a given threshold. The second criterion is weaker than the first one and consists in choosing a plan with the maximum degree of necessity that costs of the plan fall within a given fuzzy goal. A similar criterion has been proposed in [33] for discrete optimization problems with fuzzy costs. We provide some methods for finding a robust production plan with respect to the proposed criteria as well as for evaluating a given production plan under fuzzy-valued demands which heavy rely on methods for finding a robust production plan, called optimal robust production plan, in the problem of production planning under interval-valued demands with the robust min-max criterion. Namely, it turns out that the considered fuzzy problems can be reduced to examining a family of the interval problems with the min-max criterion. Therefore, we generalize in this way the min-max criterion under the interval structure of uncertainty to the fuzzy case.

The paper is organized as follows. In Section 2, we recall some notions of possibility theory. In Section 3, we present a lot-size problem with backorders and precise demands. In Section 4, we present our results. Namely, we investigate the interval case, that is the lot-size problem with backorders in which uncertain demands are specified as closed intervals. We construct algorithms for finding an optimal robust production plan (a polynomial algorithm for the case without capacity limits and an iterative algorithm for the case with capacity limits) and for evaluating a given production plan (linear and mixed integer programing methods, a pseudopolynomial algorithm). An experimental evidence of the efficiency of the proposed algorithms is provided. In Section 5, we extend our results from the previous section to the fuzzy case. We study the lot-size problem with backorders with uncertain demands modeled by fuzzy intervals in a setting of possibility theory. We provide methods for seeking a robust production plan with respect to two proposed criteria as well as for evaluating a given production plan under fuzzy-valued demands (the methods heavily rely on the ones from the interval case). The efficiency of the methods is confirmed experimentally.

2 Selected Notions of Possibility Theory

A fuzzy interval A~\widetilde{A} is a fuzzy set in \mathbb{R} whose membership function μA~\mu_{\widetilde{A}} is normal, quasi concave and upper semicontinuous. Usually, it is assumed that the support of a fuzzy interval is bounded. The main property of a fuzzy interval is the fact that all its λ\lambda-cuts, that is the sets A~[λ]={x:μA~(x)λ}\widetilde{A}^{[\lambda]}=\{x:\mu_{\widetilde{A}}(x)\geq\lambda\}, λ(0,1]\lambda\in(0,1], are closed intervals. We will assume that A~[0]\widetilde{A}^{[0]} is the smallest closed set containing the support of A~\widetilde{A}. So, every fuzzy interval A~\widetilde{A} can be represented as a family of closed intervals A~[λ]=[a[λ],a+[λ]]\widetilde{A}^{[\lambda]}=[a^{-[\lambda]},a^{+[\lambda]}], parametrized by the value of λ[0,1]\lambda\in[0,1]. In many applications, the class of trapezoidal fuzzy intervals is used. A trapezoidal fuzzy interval, denoted by a quadruple A~=(a,b,c,d)\widetilde{A}=(a,b,c,d) and its membership function has the following form:

μA~(z)={0if za,zabaif a<z<b,1if bzc,dzdcif c<z<d,0if zd.\mu_{\widetilde{A}}(z)=\begin{cases}0&\text{if $z\leq a$,}\\ \frac{z-a}{b-a}&\text{if $a<z<b$,}\\ 1&\text{if $b\leq z\leq c$,}\\ \frac{d-z}{d-c}&\text{if $c<z<d$,}\\ 0&\text{if $z\geq d$.}\end{cases}

Its λ\lambda-cuts are simply [a+λ(ba),dλ(dc)][a+\lambda(b-a),d-\lambda(d-c)] for λ[0,1]\lambda\in[0,1]. Notice that this representation contains triangular fuzzy intervals (b=cb=c).

Let us now recall the possibilistic interpretation of fuzzy intervals. Possibility theory [24] is an approach to handle incomplete information and it relies on two dual measures: possibility and necessity, which express plausibility and certainty of events. Both measures are built from a possibility distribution. Let a fuzzy interval A~\widetilde{A} be attached with a single-valued variable aa (uncertain real quantity). The membership function μA~\mu_{\widetilde{A}} is understood as a possibility distribution, πa=μA~\pi_{a}=\mu_{\widetilde{A}}, which describes the set of more or less plausible, mutually exclusive values of the variable aa. It can encode a family of probability functions [34]. In particular, a degree of possibility can be viewed as the upper bound of a degree of probability [34]. The value of πa(v)\pi_{a}(v) represents the possibility degree of the assignment a=va=v, i.e. Π(a=v)=πa(v)=μA~(v)\mathrm{\Pi}(a=v)=\pi_{a}(v)=\mu_{\widetilde{A}}(v), where Π(a=v)\mathrm{\Pi}(a=v) is the possibility of the event that aa will take the value of vv. In particular, πa(v)=0\pi_{a}(v)=0 means that a=va=v is impossible and πa(v)>0\pi_{a}(v)>0 means that a=va=v is plausible. Equivalently, it means that the value of aa belongs to a λ\lambda-cut A~[λ]\widetilde{A}^{[\lambda]} with confidence (or degree of necessity) 1λ1-\lambda. A detailed interpretation of the possibility distribution and some methods of obtaining it from the possessed knowledge are described in [24, 35]. Let G~\widetilde{G} be a fuzzy interval. Then “aG~a\in\widetilde{G}” is a fuzzy event. The possibility of “aG~a\in\widetilde{G}”, denoted by Π(aG~)\Pi(a\in\widetilde{G}), is as follows [36]:

Π(aG~)=supvmin{πa(v),μG~(v)}.\Pi(a\in\widetilde{G})=\sup_{v\in\mathbb{R}}\min\{\pi_{a}(v),\mu_{\widetilde{G}}(v)\}. (1)

Π(aG~)\Pi(a\in\widetilde{G}) evaluates the extent to which “aG~a\in\widetilde{G}” is possibly true. The necessity of event “aG~a\in\widetilde{G}”, denoted by N(aG~)\mathrm{N}(a\in\widetilde{G}), is as follows:

N(aG~)\displaystyle\mathrm{N}(a\in\widetilde{G}) =1Π(aG~)=1supvmin{πa(v),1μG~(v)}\displaystyle=1-\Pi(a\not\in\widetilde{G})=1-\sup_{v\in\mathbb{R}}\min\{\pi_{a}(v),1-\mu_{\widetilde{G}}(v)\} (2)
=infvmax{1πa(v),μG~(v)},\displaystyle=\inf_{v\in\mathbb{R}}\max\{1-\pi_{a}(v),\mu_{\widetilde{G}}(v)\},

where 1μG~1-\mu_{\widetilde{G}} is the membership function of the complement of the fuzzy set G~\widetilde{G}. N(aG~)\mathrm{N}(a\in\widetilde{G}) evaluates the extent to which “aG~a\in\widetilde{G}” is certainly true. Observe that if GG is a classical set, then Π(aG)=supvGπa(v)\Pi(a\in G)=\sup_{v\in G}\pi_{a}(v) and N(aG)=1supvGπa(v)\mathrm{N}(a\in G)=1-\sup_{v\notin G}\pi_{a}(v).

3 The Deterministic Problem

We are given TT periods. For period tt, t=1,,Tt=1,\ldots,T, let dtd_{t} be the demand in period tt, dt0d_{t}\geq 0 (here we assume that the demands are precise), xtx_{t} the production amount in period tt, xt0x_{t}\geq 0, ltl_{t}, utu_{t} the production capacity limits on xtx_{t}. Let 𝕏+T\mathbb{X}\subseteq\mathbb{R}^{T}_{+} be the set of feasible production amounts. Two cases are distinguished, the case with no capacity limits 𝕏={(x1,,xT):xt0,t=1,,T}\mathbb{X}=\{(x_{1},\ldots,x_{T})\;:\;x_{t}\geq 0,t=1,\ldots,T\} and the one with capacity limits 𝕏={(x1,,xT):ltxtut,t=1,,T}\mathbb{X}=\{(x_{1},\ldots,x_{T})\;:\;l_{t}\leq x_{t}\leq u_{t},t=1,\ldots,T\}. Set 𝐃t=i=1tdi\mathbf{D}_{t}=\sum_{i=1}^{t}d_{i} and 𝐗t=i=1txi\mathbf{X}_{t}=\sum_{i=1}^{t}x_{i}, 𝐃t\mathbf{D}_{t} and 𝐗t\mathbf{X}_{t} stand for the cumulative demand up to period tt and the production level up to period tt, respectively. Obviously, 𝐗t1𝐗t\mathbf{X}_{t-1}\leq\mathbf{X}_{t} and 𝐃t1𝐃t\mathbf{D}_{t-1}\leq\mathbf{D}_{t}, t=2,,Tt=2,\ldots,T. The costs of carrying one unit of inventory from period tt to period t+1t+1 is given by ctI0c^{I}_{t}\geq 0 and the costs of backordering one unit from period t+1t+1 to period tt is given by ctB0c^{B}_{t}\geq 0. The nonnegative real function Lt(u,v)L_{t}(u,v) represents either the cost of storing inventory from period tt to period t+1t+1 or the cost of backordering quantity from period t+1t+1 to period tt, namely Lt(𝐗t,𝐃t)=ctI(𝐗t𝐃t)L_{t}(\mathbf{X}_{t},\mathbf{D}_{t})=c^{I}_{t}(\mathbf{X}_{t}-\mathbf{D}_{t}) if 𝐗t𝐃t\mathbf{X}_{t}\geq\mathbf{D}_{t}; ctB(𝐃t𝐗t)c^{B}_{t}(\mathbf{D}_{t}-\mathbf{X}_{t}) otherwise. The function has the form Lt(𝐗t,𝐃t)=max{ctI(𝐗t𝐃t),ctB(𝐃t𝐗t)}L_{t}(\mathbf{X}_{t},\mathbf{D}_{t})=\max\{c^{I}_{t}(\mathbf{X}_{t}-\mathbf{D}_{t}),c^{B}_{t}(\mathbf{D}_{t}-\mathbf{X}_{t})\}.

Our production planning problem with the deterministic (precise) demands consists in finding a feasible production plan 𝒙=(x1,,xT)\boldsymbol{x}=(x_{1},\ldots,x_{T}), 𝒙𝕏\boldsymbol{x}\in\mathbb{X}, that minimizes the total cost of storage and backordering subject to the conditions of satisfying each demand, namely

min𝒙𝕏F(𝒙)=mint=1T𝒙𝕏Lt(𝐗t,𝐃t).\min_{\boldsymbol{x}\in\mathbb{X}}F(\boldsymbol{x})=\min_{\boldsymbol{x}\in\mathbb{X}}\sum_{t=1}^{T}L_{t}(\mathbf{X}_{t},\mathbf{D}_{t}). (3)

Obviously, the problem (3) is a version of the classical dynamic lot-size problem with backorders (see, e.g., [28, 29]). Without loss of generality, we can assume that an initial inventory I0I_{0} and an initial backorder B0B_{0} are equal to zero. Otherwise, one can append period 00 and assign x0=I0x_{0}=I_{0} and d0=0d_{0}=0 with zero inventory cost if I0>0I_{0}>0 or assign x0=0x_{0}=0 and d0=B0d_{0}=B_{0} with zero backorder cost if B0>0B_{0}>0.

In the case with no capacity limits problem (3) has a trivial optimal solution equal to (d1,,dT)(d_{1},\ldots,d_{T}). In the case with capacity limits, (3) can be formulated as the minimum cost flow problem (see, e.g., [37]):

mint=1T(ctIIt+ctBBt)s.t. BtIt=j=1t(djxj),t=1,,T,ltxtut,t=1,,T,Bt,It0,t=1,,T.\begin{array}[]{lll}\min&\displaystyle\sum_{t=1}^{T}(c^{I}_{t}I_{t}+c^{B}_{t}B_{t})&\\ \text{s.t. }&B_{t}-I_{t}=\sum_{j=1}^{t}(d_{j}-x_{j}),&t=1,\ldots,T,\\ &l_{t}\leq x_{t}\leq u_{t},&t=1,\ldots,T,\\ &B_{t},I_{t}\geq 0,&t=1,\ldots,T.\end{array} (4)

Problem (4) can efficiently solved, for instance, by an algorithm presented in [32] that takes into account a special structure of the underling network.

4 Robust Problem

Assume that demands dtd_{t}, t=1,,Tt=1,\ldots,T, in problem (3), are only known to belong to intervals Dt=[dt,dt+]D_{t}=[d^{-}_{t},d^{+}_{t}], dt0d^{-}_{t}\geq 0. This means that we neither know the exact demands, nor can we set them precisely. We assume that the demands are unrelated to one another and there is no probability distribution in DtD_{t}, t=1,,Tt=1,\ldots,T. A vector S=(d1,,dT)S=(d_{1},\ldots,d_{T}), dtDtd_{t}\in D_{t}, that represents an assignment of demands dtd_{t} to periods tt, t=1,,Tt=1,\ldots,T, is called a scenario. Thus every scenario expresses a realization of the demands. We denote by Γ\Gamma the set of all the scenarios, i.e. Γ=[d1,d1+]××[dT,dT+]\Gamma=[d^{-}_{1},d^{+}_{1}]\times\cdots\times[d^{-}_{T},d^{+}_{T}]. Among the scenarios of Γ\Gamma extreme scenarios can be distinguished, that is the ones, which belong to {d1,d1+}××{dT,dT+}\{d^{-}_{1},d^{+}_{1}\}\times\cdots\times\{d^{-}_{T},d^{+}_{T}\}, the set of extreme scenarios is denoted by Γext\Gamma_{\text{ext}}. We denote by S+S^{+} (resp. SS^{-}) the extreme scenario in which all the demands are set to their upper (resp. lower) bounds. The demand and the cumulative demand in period tt under scenario SS are denoted by dt(S)Dtd_{t}(S)\in D_{t} and 𝐃t(S)\mathbf{D}_{t}(S), respectively, 𝐃t(S)=i=1tdi(S)\mathbf{D}_{t}(S)=\sum_{i=1}^{t}d_{i}(S). Clearly, for every SΓS\in\Gamma it holds 𝐃t1(S)𝐃t(S)\mathbf{D}_{t-1}(S)\leq\mathbf{D}_{t}(S), t=2,,Tt=2,\ldots,T, and 𝐃t(S)[𝐃t(S),𝐃t(S+)]\mathbf{D}_{t}(S)\in[\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{+})]. The function Lt(𝐗t,𝐃t(S))=max{ctI(𝐗t𝐃t(S)),ctB(𝐃t(S)𝐗t)}L_{t}(\mathbf{X}_{t},\mathbf{D}_{t}(S))=\max\{c^{I}_{t}(\mathbf{X}_{t}-\mathbf{D}_{t}(S)),c^{B}_{t}(\mathbf{D}_{t}(S)-\mathbf{X}_{t})\}, represents either the cost of storing inventory from period tt to period t+1t+1 or the cost of backordering quantity from period t+1t+1 to period tt under scenario SS. Now F(𝒙,S)F(\boldsymbol{x},S) denotes the total cost of a production plan 𝒙𝕏\boldsymbol{x}\in\mathbb{X} under scenario SS, i.e. F(𝒙,S)=t=1TLt(𝐗t,𝐃t(S))F(\boldsymbol{x},S)=\sum_{t=1}^{T}L_{t}(\mathbf{X}_{t},\mathbf{D}_{t}(S)).

In order to choose a robust production plan, one of robust criteria, called the min-max can be adopted (see, e.g. [27]). In the min-max version of problem (3), we seek a feasible production plan with the minimum the worst total cost over all scenarios, that is

ROB:min𝒙𝕏A(𝒙)=min𝒙𝕏maxSΓF(𝒙,S)=min𝒙𝕏maxt=1TSΓLt(𝐗t,𝐃t(S)).\textsc{ROB}:\;\min_{\boldsymbol{x}\in\mathbb{X}}A(\boldsymbol{x})=\min_{\boldsymbol{x}\in\mathbb{X}}\max_{S\in\Gamma}F(\boldsymbol{x},S)=\min_{\boldsymbol{x}\in\mathbb{X}}\max_{S\in\Gamma}\sum_{t=1}^{T}L_{t}(\mathbf{X}_{t},\mathbf{D}_{t}(S)).

In other words, we wish to find among all production plans the one that minimizes the maximum production plan cost over all scenarios, that minimizes A(𝒙)A(\boldsymbol{x}), A(𝒙)A(\boldsymbol{x}) is the maximal cost of production plan 𝒙\boldsymbol{x}. An optimal solution 𝒙r\boldsymbol{x}^{r} to the problem ROB is called optimal robust production plan.

Let 𝒙𝕏\boldsymbol{x}\in\mathbb{X} be a given production plan. A scenario SoΓS^{o}\in\Gamma that minimizes the total cost F(𝒙,S)F(\boldsymbol{x},S) of the production plan 𝒙\boldsymbol{x} is called optimistic scenario. A scenario SwΓS^{w}\in\Gamma that maximizes the total cost F(𝒙,S)F(\boldsymbol{x},S) of the production plan 𝒙\boldsymbol{x} is called the worst case scenario.

4.1 Evaluating Production Plan

In this section, we show how to evaluate a given production plan 𝒙𝕏\boldsymbol{x}^{*}\in\mathbb{X}. We first consider the problem of determining the optimal interval, F𝒙=[f𝒙,f𝒙+]F_{\boldsymbol{x}^{*}}=[f_{\boldsymbol{x}^{*}}^{-},f_{\boldsymbol{x}^{*}}^{+}], containing possible values of costs of the production plan 𝒙\boldsymbol{x}^{*} which can be rigorously defined as the following optimization problems:

f𝒙=\displaystyle f_{\boldsymbol{x}^{*}}^{-}= minSΓF(𝒙,S),\displaystyle\min_{S\in\Gamma}F(\boldsymbol{x}^{*},S), (5)
f𝒙+=\displaystyle f_{\boldsymbol{x}^{*}}^{+}= maxSΓF(𝒙,S).\displaystyle\max_{S\in\Gamma}F(\boldsymbol{x}^{*},S). (6)

It is easily seen that the problem of computing the optimal lower bound on costs of 𝒙\boldsymbol{x}^{*} (5) is equivalent to the one of determining an optimistic scenario SoS^{o} for 𝒙\boldsymbol{x}^{*}, namely f𝒙=F(𝒙,So)=minSΓF(𝒙,S)f_{\boldsymbol{x}^{*}}^{-}=F(\boldsymbol{x}^{*},S^{o})=\min_{S\in\Gamma}F(\boldsymbol{x}^{*},S). Similarly, the problem of computing the optimal upper bound on costs of 𝒙\boldsymbol{x}^{*} (6) is equivalent to the problem of determining a worst case scenario SwS^{w} for 𝒙\boldsymbol{x}^{*}, i.e. f𝒙+=A(𝒙)=F(𝒙,Sw)=maxSΓF(𝒙,S)f_{\boldsymbol{x}^{*}}^{+}=A(\boldsymbol{x}^{*})=F(\boldsymbol{x}^{*},S^{w})=\max_{S\in\Gamma}F(\boldsymbol{x}^{*},S). Thus

F𝒙=[f𝒙,f𝒙+]=[F(𝒙,So),F(𝒙,Sw)].F_{\boldsymbol{x}^{*}}=[f_{\boldsymbol{x}^{*}}^{-},f_{\boldsymbol{x}^{*}}^{+}]=[F(\boldsymbol{x}^{*},S^{o}),F(\boldsymbol{x}^{*},S^{w})]. (7)

Using the optimal interval F𝒙F_{\boldsymbol{x}^{*}} of possible values of costs of production plan 𝒙\boldsymbol{x}^{*} allows us to evaluate possibility and necessity that the cost of the plan does not exceed a given threshold under uncertain demands modeled by intervals. Hence, in order to assert possibility that the cost of the plan does not exceed a given threshold gg, i.e. to assert whether there exits a scenario SΓS\in\Gamma for which F(𝒙,S)gF(\boldsymbol{x}^{*},S)\leq g, it suffices to determine an optimistic scenario SoS^{o}, the optimal lower bound f𝒙=F(𝒙,So)f_{\boldsymbol{x}^{*}}^{-}=F(\boldsymbol{x}^{*},S^{o}) and evaluate f𝒙gf_{\boldsymbol{x}^{*}}^{-}\leq g. If the inequality holds then there exists a scenario; otherwise not. Similarly, evaluating necessity that the cost of the plan does not exceed a given threshold gg, i.e. asserting whether F(𝒙,S)gF(\boldsymbol{x}^{*},S)\leq g for every scenario SΓS\in\Gamma, we only need to determine worst case scenario SwS^{w}, the optimal upper bound f𝒙+=F(𝒙,Sw)f_{\boldsymbol{x}^{*}}^{+}=F(\boldsymbol{x}^{*},S^{w}) and evaluate ,f𝒙+g,f_{\boldsymbol{x}^{*}}^{+}\leq g. Thus, evaluating a production plan boils down to computing its optimistic and worst case scenarios.

Let us consider the problem of computing an optimistic scenario for a given production plan 𝒙𝕏\boldsymbol{x}^{*}\in\mathbb{X}, that is the problem (5). Its minimum is attained for some SΓS\in\Gamma, since F(𝒙,S)F(\boldsymbol{x},S) is a continuous function on the bounded closed set Γ\Gamma. Problem (5) can be formulated as a linear programming problem:

f𝒙=mint=1T(ctIIt+ctBBt)s.t. BtIt=j=1t(sjxj),t=1,,T,st[dt,dt+],t=1,,T,Bt,It0,t=1,,T.\begin{array}[]{llll}f_{\boldsymbol{x}^{*}}^{-}=&\min&\sum_{t=1}^{T}(c^{I}_{t}I_{t}+c^{B}_{t}B_{t})&\\ &\text{s.t. }&B_{t}-I_{t}=\sum_{j=1}^{t}(s_{j}-x^{*}_{j}),&t=1,\ldots,T,\\ &&s_{t}\in[d^{-}_{t},d^{+}_{t}],&t=1,\ldots,T,\\ &&B_{t},I_{t}\geq 0,&t=1,\ldots,T.\end{array} (8)

If stos^{o}_{t}, BtoB^{o}_{t} and ItoI^{o}_{t}, t=1,,Tt=1,\ldots,T, is an optimal solution to problem (8), then So=(s1o,,sTo)S^{o}=(s^{o}_{1},\ldots,s^{o}_{T}) is an optimistic scenario for 𝒙\boldsymbol{x}^{*} (an optimistic realization of uncertain demands) and ItoI^{o}_{t} is storing inventory amount from period tt to period t+1t+1 and BtoB^{o}_{t} represents backordering amount from period t+1t+1 to period tt under the optimistic scenario SoS^{o}. The problem (8) can be reduced to the classical minimum cost flow problem and effectively solved by algorithms that take into a special structure of the underling network (see, e.g., [32]). Hence, and fact that ctI,ctB0c^{I}_{t},c^{B}_{t}\geq 0 it follows that for t=1,,Tt=1,\ldots,T one of ItoI^{o}_{t} and BtoB^{o}_{t} is zero.

Let us study the problem of computing a worst case scenario for a given production plan 𝒙𝕏\boldsymbol{x}^{*}\in\mathbb{X}, that is the problem (6). Since F(𝒙,S)F(\boldsymbol{x}^{*},S) is a continuous function on the bounded closed set Γ\Gamma, it attains maximum for some SΓS\in\Gamma. The problem (6) can be formulated as a mixed integer programming problem (MIP):

f𝒙+=maxt=1T(ctIIt+ctBBt)s.t. BtIt=j=1t(sjxj),t=1,,T,st[dt,dt+],t=1,,T,Bt,It0,t=1,,T,It(1δt)j=1t(xjdj),t=1,,T,Btδtj=1t(dj+xj),t=1,,T,δt{0,1},t=1,,T.\begin{array}[]{llll}f_{\boldsymbol{x}^{*}}^{+}=&\max&\sum_{t=1}^{T}(c^{I}_{t}I_{t}+c^{B}_{t}B_{t})&\\ &\text{s.t. }&B_{t}-I_{t}=\sum_{j=1}^{t}(s_{j}-x^{*}_{j}),&t=1,\ldots,T,\\ &&s_{t}\in[d^{-}_{t},d^{+}_{t}],&t=1,\ldots,T,\\ &&B_{t},I_{t}\geq 0,&t=1,\ldots,T,\\ &&I_{t}\leq(1-\delta_{t})\sum_{j=1}^{t}(x^{*}_{j}-d^{-}_{j}),&t=1,\ldots,T,\\ &&B_{t}\leq\delta_{t}\sum_{j=1}^{t}(d^{+}_{j}-x^{*}_{j}),&t=1,\ldots,T,\\ &&\delta_{t}\in\{0,1\},&t=1,\ldots,T.\end{array} (9)

Let stws^{w}_{t}, BtwB^{w}_{t}, ItwI^{w}_{t} and δt\delta_{t}, t=1,,Tt=1,\ldots,T, be an optimal solution to problem (9). Then Sw=(s1w,,sTw)S^{w}=(s^{w}_{1},\ldots,s^{w}_{T}) is a worst case scenario for 𝒙\boldsymbol{x}^{*} (a pessimistic realization of uncertain demands) and ItwI^{w}_{t} is storing inventory amount from period tt to period t+1t+1 and BtwB^{w}_{t} is backordering amount from period t+1t+1 to period tt under the worst case scenario SwS^{w}. The last two constraints model (9) and the binary variables δt\delta_{t} ensure that storing inventory from period tt to period t+1t+1 and backordering from period t+1t+1 to period tt is not performed simultaneously (either It>0I_{t}>0 or Bt>0B_{t}>0). If δt=1\delta_{t}=1 then backordering is performed Bt>0B_{t}>0; otherwise storing inventory is performed It>0I_{t}>0. Thus, the problem (6) turns out to be much harder than (5).

We now solve the problem (6) by means of dynamic programming. Let us present a result which shows that determining a worst case scenario SwS^{w} can be restricted to the vertices of Γ\Gamma, that is to the set of extreme scenarios Γext\Gamma_{\text{ext}}. We prove the convexity of the cost function on Γ\Gamma.

Proposition 1.

Function F(𝐱,S)F(\boldsymbol{x}^{*},S) is convex on Γ\Gamma for any fixed production plan 𝐱𝕏\boldsymbol{x}^{*}\in\mathbb{X}.

Proof.

Function ctI(𝐗t𝐃t(S))c^{I}_{t}(\mathbf{X}^{*}_{t}-\mathbf{D}_{t}(S)) and ctB(𝐃t(S)𝐗t)c^{B}_{t}(\mathbf{D}_{t}(S)-\mathbf{X}^{*}_{t}) are convex on Γ\Gamma. Then so are max{ctI(𝐗t𝐃t(S)),ctB(𝐃t(S)𝐗t)}\max\{c^{I}_{t}(\mathbf{X}^{*}_{t}-\mathbf{D}_{t}(S)),c^{B}_{t}(\mathbf{D}_{t}(S)-\mathbf{X}^{*}_{t})\} and t=1Tmax{ctI(𝐗t𝐃t(S)),ctB(𝐃t(S)𝐗t)}\sum_{t=1}^{T}\max\{c^{I}_{t}(\mathbf{X}^{*}_{t}-\mathbf{D}_{t}(S)),c^{B}_{t}(\mathbf{D}_{t}(S)-\mathbf{X}^{*}_{t})\}. ∎

The following result allows us to reduce the set of scenarios Γ\Gamma to the set of extreme scenarios Γext\Gamma_{\text{ext}}.

Proposition 2.

An optimal scenario for problem (6) (a worst case scenario) is an extreme one.

Proof.

Function F(𝒙,S)F(\boldsymbol{x}^{*},S) attains its maximum in Γ\Gamma. Since F(𝒙,S)F(\boldsymbol{x}^{*},S) is convex (Proposition 1) and Γ\Gamma is the hyper-rectangle, an optimal scenario for problem (6) is an extreme one (see, e.g., [38]). ∎

Applying Proposition 2, we can rewrite problem (6) as:

f𝒙+=A(𝒙)=F(𝒙,Sw)=maxSΓextF(𝒙,S).f_{\boldsymbol{x}^{*}}^{+}=A(\boldsymbol{x}^{*})=F(\boldsymbol{x}^{*},S^{w})=\max_{S\in\Gamma_{\text{ext}}}F(\boldsymbol{x}^{*},S). (10)

We are now ready to give a dynamic programming based algorithm for solving problem (10). Let 𝔻t\mathbb{D}_{t} be the set of feasible cumulative demand levels in period tt, t=1,,Tt=1,\ldots,T, i.e. 𝔻t={𝐃t(S),𝐃t(S)+1,,𝐃t(S+)}\mathbb{D}_{t}=\{\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{-})+1,\ldots,\mathbf{D}_{t}(S^{+})\}, let t1(𝐃)\mathcal{L}_{t-1}(\mathbf{D}) be the maximal cost of a given production plan 𝒙\boldsymbol{x}^{*} over periods t,,Tt,\ldots,T, when the cumulative demand level up to period t1t-1 is equal to 𝐃\mathbf{D}, 𝐃𝔻t1\mathbf{D}\in\mathbb{D}_{t-1}, t1:𝔻t1+\mathcal{L}_{t-1}:\mathbb{D}_{t-1}\rightarrow\mathbb{R}_{+}. Set 𝔻0={0}\mathbb{D}_{0}=\{0\}. It is evident that:

T(𝐃)\displaystyle\mathcal{L}_{T}(\mathbf{D}) =0\displaystyle=0 𝐃𝔻T,\displaystyle\mathbf{D}\in\mathbb{D}_{T}, (11)
t1(𝐃)\displaystyle\mathcal{L}_{t-1}(\mathbf{D}) =max{Lt(𝐗t,𝐃+dt)+t(𝐃+dt)Lt(𝐗t,𝐃+dt+)+t(𝐃+dt+)}\displaystyle=\max\left\{\begin{array}[]{l}L_{t}(\mathbf{X}^{*}_{t},\mathbf{D}+d^{-}_{t})+\mathcal{L}_{t}(\mathbf{D}+d^{-}_{t})\\ L_{t}(\mathbf{X}^{*}_{t},\mathbf{D}+d^{+}_{t})+\mathcal{L}_{t}(\mathbf{D}+d^{+}_{t})\end{array}\right\} 𝐃𝔻t1,\displaystyle\mathbf{D}\in\mathbb{D}_{t-1},
t=T,,1.\displaystyle t=T,\ldots,1.

The maximal cost of production plan 𝒙\boldsymbol{x}^{*} over period 1,,T1,\ldots,T is equal to 0(0)\mathcal{L}_{0}(0), 0(0)=f𝒙+\mathcal{L}_{0}(0)=f_{\boldsymbol{x}^{*}}^{+}, which is computed according to the backward recursion (11) and (4.1). The corresponding to 𝒙\boldsymbol{x}^{*} worst case scenario SwS^{w} can be determined by a forward recursion technique. It is sufficient to store for each 𝐃𝔻t1\mathbf{D}\in\mathbb{D}_{t-1} the value for which the maximum in (4.1) is attained, that is either 𝐃+dt\mathbf{D}+d^{-}_{t} or 𝐃+dt+\mathbf{D}+d^{+}_{t}. The running time of the dynamic programming based algorithm is O(T𝐃T)O(T\cdot\mathbf{D}_{T}), which is pseudo-polynomial. We have thus proved the following theorem.

Theorem 1.

There is an algorithm for computing the maximal cost of a given production plan 𝐱\boldsymbol{x}^{*} and its a worst case scenario SwS^{w}, which runs in O(T𝐃T)O(T\cdot\mathbf{D}_{T}).

Since finding a worst case scenario requires taking into account only extreme demand scenarios (see Proposition 2), the running time of the above algorithm may be additionally refined by reducing the cardinalities of sets 𝔻t\mathbb{D}_{t}, t=1,,Tt=1,\ldots,T, in (11) and (4.1). Note that we need only consider cumulative demand levels 𝐃\mathbf{D} which can be obtained by summing instantiated demands, at their lower or upper bounds, in the periods up to tt. Namely, 𝐃𝔻t\mathbf{D}\in\mathbb{D}_{t} if and only if 𝐃=k=1tdk\mathbf{D}=\sum_{k=1}^{t}d_{k}, where dk{dk,dk+}d_{k}\in\{d^{-}_{k},d^{+}_{k}\}. Hence, each reduced set of possible cumulative demand levels 𝔻t\mathbb{D}_{t} has form {𝐃t1,,𝐃tl}\{\mathbf{D}^{1}_{t},\ldots,\mathbf{D}^{l}_{t}\}. Of course, ll is bound by 𝐃t(S+)\mathbf{D}_{t}(S^{+}). An idea of the improved dynamic programming based algorithm can be outlined as follows:

Step 1 (reducing sets 𝔻t\mathbb{D}_{t}): built a directed acyclic network composed of node that is associated with 𝔻0={0}\mathbb{D}_{0}=\{0\} and TT layers that are associated with the reduced sets of possible cumulative demand levels 𝔻t={𝐃t1,,𝐃tl}\mathbb{D}_{t}=\{\mathbf{D}^{1}_{t},\ldots,\mathbf{D}^{l}_{t}\}, t=1,,Tt=1,\ldots,T. The tt-th layer is composed of nodes corresponding to cumulative demand levels 𝐃\mathbf{D}, 𝐃𝔻t\mathbf{D}\in\mathbb{D}_{t}. The arc between 𝐃t1u\mathbf{D}^{u}_{t-1} and 𝐃tv\mathbf{D}^{v}_{t} exists if and only if either 𝐃tv=𝐃t1u+dt\mathbf{D}^{v}_{t}=\mathbf{D}^{u}_{t-1}+d^{-}_{t} or 𝐃tv=𝐃t1u+dt+\mathbf{D}^{v}_{t}=\mathbf{D}^{u}_{t-1}+d^{+}_{t}. Observe that, except for nodes from the last layer, each node in the network has exactly two outgoing arcs. An example of the constructed network is presented in Figure 1.

Step 2: compute the maximal cost of production plan 𝒙\boldsymbol{x}^{*} over period 1,,T1,\ldots,T according to the backward recursion (11) and (4.1) in the constructed network with the layers corresponding to reduced sets 𝔻t\mathbb{D}_{t} and store for each 𝐃𝔻t1\mathbf{D}\in\mathbb{D}_{t-1} the value 𝐃𝔻t\mathbf{D}\in\mathbb{D}_{t} for which the maximum in (4.1) is attained.

Step 3: determine a worst case scenario for production plan 𝒙\boldsymbol{x}^{*} by performing a simple forward recursion in the constructed network using the stored (in Step 2) values for which the maxima in (4.1) are attained.

Figure 1: An example of the constructed network in Step 1.

The network in Step 1 can be built in O(Tmaxt=1,,T|𝔻t|)O(T\cdot\max_{t=1,\ldots,T}|\mathbb{D}_{t}|) time. The running time of Step 2 is the same time as Step 1. Step 3 can be done in O(T)O(T) time. Hence, the overall running time of the improved algorithm is O(Tmaxt=1,,T|𝔻t|)O(T\cdot\max_{t=1,\ldots,T}|\mathbb{D}_{t}|). It is easily seen that maxt=1,,T|𝔻t|\max_{t=1,\ldots,T}|\mathbb{D}_{t}| is upper bounded by 𝐃T(S+)\mathbf{D}_{T}(S^{+}) and at the worst case maxt=1,,T|𝔻t|=𝐃T(S+)\max_{t=1,\ldots,T}|\mathbb{D}_{t}|=\mathbf{D}_{T}(S^{+}).

Furthermore, the running time can be reduced if d1+d1==dT+dT=hd^{+}_{1}-d^{-}_{1}=\cdots=d^{+}_{T}-d^{-}_{T}=h. Then we find 𝔻t={𝐃t(S),𝐃t(S)+h,,𝐃t(S)+th}\mathbb{D}_{t}=\{\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{-})+h,\ldots,\mathbf{D}_{t}(S^{-})+th\}, t=1,,Tt=1,\ldots,T. Now the running time is O(T2)O(T^{2}), which is polynomial.

4.2 Solving the Robust Problem

Let us consider the problem ROB with no capacity limits, i.e. the problem with the set 𝕏={(x1,,xT):xt0,t=1,,T}\mathbb{X}=\{(x_{1},\ldots,x_{T})\;:\;x_{t}\geq 0,t=1,\ldots,T\}. In this case, we make the assumption: the costs of carrying one unit of inventory from period tt to period t+1t+1 for every t=1,,Tt=1,\ldots,T are equal, we denote it by cIc^{I} and the costs of backordering one unit from period t+1t+1 to period tt for every t=1,,Tt=1,\ldots,T are equal, we denote it by cBc^{B}. Note that function F(𝒙,S)F(\boldsymbol{x},S) is continuous on 𝕏\mathbb{X} and Γ\Gamma, Γ\Gamma is a closed bounded set, and so A(𝒙)A(\boldsymbol{x}) is well defined continuous function on 𝕏\mathbb{X} (see, e.g., [39, Theorem 1.4]). We show that an optimal robust production plan 𝒙^=(x^1,,x^T)\hat{\boldsymbol{x}}=(\hat{x}_{1},\ldots,\hat{x}_{T}), i.e. 𝒙^=arg min𝒙𝕏A(𝒙)\hat{\boldsymbol{x}}=\text{arg }\min_{\boldsymbol{x}\in\mathbb{X}}A(\boldsymbol{x}), exists and can be computed by the following formulae:

𝐗^1:=cB𝐃1(S+)+cI𝐃1(S)cB+cI,x^1:=𝐗^1𝐗^t:=cB𝐃t(S+)+cI𝐃t(S)cB+cI,x^t:=𝐗^t𝐗^t1,t2.\begin{array}[]{lll}\hat{\mathbf{X}}_{1}:=\frac{c^{B}\mathbf{D}_{1}(S^{+})+c^{I}\mathbf{D}_{1}(S^{-})}{c^{B}+c^{I}},&\hat{x}_{1}:=\hat{\mathbf{X}}_{1}&\\ \hat{\mathbf{X}}_{t}:=\frac{c^{B}\mathbf{D}_{t}(S^{+})+c^{I}\mathbf{D}_{t}(S^{-})}{c^{B}+c^{I}},&\hat{x}_{t}:=\hat{\mathbf{X}}_{t}-\hat{\mathbf{X}}_{t-1},&t\geq 2.\end{array} (14)

An algorithm for determining a production plan 𝒙^\hat{\boldsymbol{x}} according to (14) can be implemented in O(T)O(T) time. Before we show that 𝒙^\hat{\boldsymbol{x}} is optimal to problem ROB (an optimal robust production plan) with no capacity limits we prove the following proposition.

Proposition 3.

Let 𝐱^\hat{\boldsymbol{x}} be a plan computed according to (14). Then 𝐱^\hat{\boldsymbol{x}} is feasible and SS^{-} and S+S^{+} are the worst case scenarios for plan 𝐱^\hat{\boldsymbol{x}}, i.e. A(𝐱^)=F(𝐱^,S)=F(𝐱^,S+)A(\hat{\boldsymbol{x}})=F(\hat{\boldsymbol{x}},S^{-})=F(\hat{\boldsymbol{x}},S^{+}).

Proof.

See Appendix A. ∎

We are now ready to prove that 𝒙^\hat{\boldsymbol{x}} is an optimal robust production plan.

Theorem 2.

A production plan determined by formulae (14) is an optimal one for problem ROB with no capacity limits.

Proof.

See Appendix A. ∎

Note that if an initial backorder B0B_{0} or an initial inventory I0I_{0} are not equal to zero then one can modify the interval demand D1D_{1} as follows: D1:=[d1+B0,d1++B0]D_{1}:=[d^{-}_{1}+B_{0},d^{+}_{1}+B_{0}] if B0>0B_{0}>0 or D1:=[d1I0,d1+I0]D_{1}:=[d^{-}_{1}-I_{0},d^{+}_{1}-I_{0}] if 0<I0d10<I_{0}\leq d^{-}_{1}, and apply formulae (14) to determine an optimal robust production plan for problem ROB with the modified demand. If I0>d1I_{0}>d^{-}_{1} then one appends period 00, as it has been described in Section 3, and applies an algorithm (Algorithm 1) for the case with capacity limits, lt=0l_{t}=0, ut=Mu_{t}=M, t=1,,Tt=1,\ldots,T, where MM is a large number.

Let us turn to the problem ROB with capacity limits, i.e. the problem with the set 𝕏={(x1,,xT):ltxtut,t=1,,T}\mathbb{X}=\{(x_{1},\ldots,x_{T})\;:\;l_{t}\leq x_{t}\leq u_{t},t=1,\ldots,T\}. Notice Γ\Gamma is a bounded closed set. Function F(𝒙,S)F(\boldsymbol{x},S) is continuous on 𝕏\mathbb{X} and Γ\Gamma and hence A(𝒙)A(\boldsymbol{x}) is continuous function on 𝕏\mathbb{X} (see, e.g., [39, Theorem 1.4]). From this and the fact 𝕏\mathbb{X} is a bounded closed set it follows that A(𝒙)A(\boldsymbol{x}) attains its minimum on 𝕏\mathbb{X}.

We now construct an iterative algorithm for solving problem ROB based on on iterative relaxation scheme for min-max problems proposed in [40]. Similar methods were developed for min-max regret linear programming problems with an interval objective function [41, 42]. Let us consider the problem (RX-ROB) being a relaxation of problem ROB that consists in replacing a given scenario set Γ\Gamma with a discrete scenario set Γdis={S1,,SK}\Gamma_{\text{dis}}=\{S^{1},\ldots,S^{K}\}, ΓdisΓ\Gamma_{\text{dis}}\subseteq\Gamma:

RX-ROB:a=minas.t. aF(𝒙,Sk)SkΓdis,𝒙𝕏,\begin{array}[]{rll}\textsc{RX-ROB:}&a^{*}=\min a&\\ \text{s.t. }&a\geq F(\boldsymbol{x},S^{k})&\forall S^{k}\in\Gamma_{\text{dis}},\\ &\boldsymbol{x}\in\mathbb{X},&\end{array} (15)

where Sk=(stk)t=1TS^{k}=(s^{k}_{t})_{t=1}^{T}. The constraint aF(𝒙,Sk)a\geq F(\boldsymbol{x},S^{k}), called scenario cut, is associated with exactly one scenario SkΓdisS^{k}\in\Gamma_{\text{dis}}. Since ΓdisΓ\Gamma_{\text{dis}}\subseteq\Gamma, the maximal cost aa^{*} of an optimal solution 𝒙\boldsymbol{x}^{*} of problem RX-ROB over discrete scenario set Γdis\Gamma_{\text{dis}} is a lower bound on the maximal cost of an optimal robust production plan 𝒙r\boldsymbol{x}^{r} for problem ROB, i.e. aA(𝒙r)a^{*}\leq A(\boldsymbol{x}^{r}). Note that the scenario cut, aF(𝒙,Sk)a\geq F(\boldsymbol{x},S^{k}), associated with SkS^{k} is not a linear constraint. One can linearize the cut by replacing it in RX-ROB with the following T+1T+1 constraints and 2T2T new decision variables:

at=1T(ctIItSk+ctBBtSk),BtSkItSk=j=1t(sjkxj),t=1,,T,BtSk,ItSk0,t=1,,T.\begin{array}[]{ll}a\geq\sum_{t=1}^{T}(c^{I}_{t}I^{S^{k}}_{t}+c^{B}_{t}B^{S^{k}}_{t}),&\\ B^{S^{k}}_{t}-I^{S^{k}}_{t}=\sum_{j=1}^{t}(s^{k}_{j}-x_{j}),&t=1,\ldots,T,\\ B^{S^{k}}_{t},I^{S^{k}}_{t}\geq 0,&t=1,\ldots,T.\end{array}

Our algorithm (Algorithm 1) starts with zero lower bound on the maximal cost of an optimal robust production plan 𝒙r\boldsymbol{x}^{r}, LB=0LB=0, a candidate 𝒙𝕏\boldsymbol{x}^{*}\in\mathbb{X} for an optimal solution for ROB and empty discrete scenario set, Γdis=\Gamma_{\text{dis}}=\emptyset. At each iteration, a worst case scenario SwS^{w} for 𝒙\boldsymbol{x}^{*} is computed by applying the method (9) or the dynamic programming based algorithm presented in Section 4.1. Clearly, A(𝒙)=F(𝒙,Sw)A(\boldsymbol{x}^{*})=F(\boldsymbol{x}^{*},S^{w}) is an upper bound on A(𝒙r)A(\boldsymbol{x}^{r}), A(𝒙r)A(𝒙)A(\boldsymbol{x}^{r})\leq A(\boldsymbol{x}^{*}). If a termination criterion is fulfilled (usually (A(𝒙)LB)/LBϵ(A(\boldsymbol{x}^{*})-LB)/LB\leq\epsilon if LB>1LB>1; A(𝒙)LBϵA(\boldsymbol{x}^{*})-LB\leq\epsilon otherwise, ϵ>0\epsilon>0 is a given tolerance) then algorithm stops with production plan 𝒙\boldsymbol{x}^{*}, which is an approximation of an optimal robust production plan. Otherwise the worst case scenario Sw=(stw)t=1TS^{w}=(s^{w}_{t})_{t=1}^{T} is added to Γdis\Gamma_{\text{dis}}, the corresponding to SwS^{w} scenario cut is appended to problem RX-ROB. Next the updated linear programming problem RX-ROB is solved to obtain a better candidate 𝒙\boldsymbol{x}^{*} for an optimal solution for ROB and new lower bound LB=aLB=a^{*}. Since set Γdis\Gamma_{\text{dis}} is updated during the course of the algorithm, the computed values of lower bounds are nondecreasing sequence of their values. Then new iteration is started.

Input: Interval demands Dt=[dt,dt+]D_{t}=[d^{-}_{t},d^{+}_{t}], costs ctIc^{I}_{t}, ctBc^{B}_{t}, t=1,Tt=1,\ldots T, initial production plan 𝒙𝕏\boldsymbol{x}^{*}\in\mathbb{X}, a convergence tolerance parameter ϵ>0\epsilon>0.
Output: A production plan 𝒙^r\hat{\boldsymbol{x}}^{r}, an approximation of an optimal robust production plan, and its worst case scenario SwS^{w}.
Step 0. k:=0k:=0, LB:=0LB:=0, Γdis:=\Gamma_{\text{dis}}:=\emptyset.
Step 1. 𝒙k:=𝒙\boldsymbol{x}^{k}:=\boldsymbol{x}^{*}.
Step 2. Compute a worst case scenario SwS^{w} for 𝒙k\boldsymbol{x}^{k} by applying the method (9) or the dynamic programming based algorithm presented in Section 4.1.
Step 3. Δ:=F(𝒙k,Sw)LB\Delta:=F(\boldsymbol{x}^{k},S^{w})-LB. If LB>1LB>1 then Δ:=Δ/LB\Delta:=\Delta/LB.
If Δϵ\Delta\leq\epsilon then output 𝒙k,Sw\boldsymbol{x}^{k},S^{w} and STOP.
Step 4. k:=k+1k:=k+1.
Step 5. Sk:=SwS^{k}:=S^{w}, Γdis:=Γdis{Sk}\Gamma_{\text{dis}}:=\Gamma_{\text{dis}}\cup\{S^{k}\} and append scenario cut aF(𝒙,Sk)a\geq F(\boldsymbol{x},S^{k}) to problem RX-ROB.
Step 6. Compute an optimal solution (𝒙,a)(\boldsymbol{x}^{*},a^{*}) for RX-ROB, LB:=aLB:=a^{*}, and go to Step 1.
Algorithm 1 Solving problem ROB.

In order to choose a good initial production plan 𝒙𝕏\boldsymbol{x}^{*}\in\mathbb{X} in Algorithm 1, we suggest to solve the classical production planning problem (3) with capacity limits (the model (4)) under the midpoint demand scenario SmS^{m}, i.e. dt(Sm)=(dt+dt+)/2d_{t}(S^{m})=(d^{-}_{t}+d^{+}_{t})/2, t=1,,Tt=1,\ldots,T and take an optimal production plan under the midpoint scenario as an initial production plan.

Theorem 3.

Algorithm 1 terminates in a finite number of steps for any given ϵ>0\epsilon>0.

Proof.

See Appendix A. ∎

Note that if an initial inventory I0I_{0} or an initial backorder B0B_{0} are not equal to zero then one appends period 00, as it has been described in Section 3, and applies Algorithm 1 for T+1T+1 periods.

Let us illustrate, by the following example, that solving problem ROB leads to a robust production plan. We are given 55 periods with the production capacity limits on a production plan: l1=40l_{1}=40, u1=50u_{1}=50, l2=30l_{2}=30, u2=40u_{2}=40, l3=30l_{3}=30, u3=40u_{3}=40, l4=10l_{4}=10, u4=35u_{4}=35 and l5=10l_{5}=10, u5=35u_{5}=35. The costs of carrying one unit of inventory from period tt to period t+1t+1, ctIc^{I}_{t}, for every t=1,,5t=1,\ldots,5 equal 11 and the costs of backordering one unit from period t+1t+1 to period tt, ctBc^{B}_{t}, for every t=1,,5t=1,\ldots,5 equal 55. The knowledge about demands in each period is represented by the intervals: D1=[30,45]D_{1}=[30,45], D2=[5,15]D_{2}=[5,15], D3=[10,30]D_{3}=[10,30], D4=[20,40]D_{4}=[20,40] and D5=[20,40]D_{5}=[20,40]. The scenario set Γ\Gamma (states of the world) is Γ=[30,45]×[5,15]×[10,30]×[20,40]×[20,40]\Gamma=[30,45]\times[5,15]\times[10,30]\times[20,40]\times[20,40] (see Figure 2). The execution of Algorithm 1 gives a production plan: x1opt=40x^{\text{opt}}_{1}=40, x2opt=30x^{\text{opt}}_{2}=30, x3opt=30x^{\text{opt}}_{3}=30, x4opt=27.9167x^{\text{opt}}_{4}=27.9167, x5opt=10x^{\text{opt}}_{5}=10 with the total cost of 215.833215.833 (𝒙opt\boldsymbol{x}^{\text{opt}} is an approximation of an optimal robust production plan with convergence tolerance parameter ϵ=0.0001\epsilon=0.0001, the maximal cost of 𝒙opt\boldsymbol{x}^{\text{opt}} is no more than 0.01%0.01\% from optimality). The worst case scenario SwΓS^{w}\in\Gamma is d1(Sw)=30d_{1}(S^{w})=30, d2(Sw)=5d_{2}(S^{w})=5, d3(Sw)=10d_{3}(S^{w})=10, d4(Sw)=20d_{4}(S^{w})=20, d5(Sw)=20d_{5}(S^{w})=20 and maxSΓF(𝒙opt,S)=F(𝒙opt,Sw)=215.833\max_{S\in\Gamma}F(\boldsymbol{x}^{\text{opt}},S)=F(\boldsymbol{x}^{\text{opt}},S^{w})=215.833 (see Figure 2). This means that total costs of production plan 𝒙opt\boldsymbol{x}^{\text{opt}} do not exceed the value of 215.833215.833 over the set of scenarios. Moreover, the plan 𝒙opt\boldsymbol{x}^{\text{opt}} has the best worst performance, i.e. it minimizes the total cost over the all scenarios. Additionally, making use of the methods presented in Section 4.1, one gets complete information about all possible values of costs of the production plan 𝒙opt\boldsymbol{x}^{\text{opt}} over the set of scenarios Γ\Gamma, by determining the optimal interval F𝒙opt=[f𝒙opt,f𝒙opt+]F_{\boldsymbol{x}^{\text{opt}}}=[f_{\boldsymbol{x}^{\text{opt}}}^{-},f_{\boldsymbol{x}^{\text{opt}}}^{+}] that contains these values (see (7)). This interval equals [40,215.833][40,215.833]. A popular approach for solving a problem with uncertain parameters modeled by the classical intervals is taking the midpoints of the intervals (the average values of the possible parameter values) and solving the problem with these deterministic parameters. In our example, the midpoint scenario has the form d1(Smid)=37.5d_{1}(S^{\text{mid}})=37.5, d2(Smid)=10d_{2}(S^{\text{mid}})=10, d3(Smid)=20d_{3}(S^{\text{mid}})=20, d4(Smid)=30d_{4}(S^{\text{mid}})=30, d5(Smid)=30d_{5}(S^{\text{mid}})=30. An algorithm for the problem with the midpoint demands (see Section 3) returns an optimal production plan: x1mid=40x^{\text{mid}}_{1}=40, x2mid=30x^{\text{mid}}_{2}=30, x3opt=30x^{\text{opt}}_{3}=30, x4mid=10x^{\text{mid}}_{4}=10, x5mid=17.5x^{\text{mid}}_{5}=17.5 with the total cost of 7070. But, if scenario d1(Sw)=45d_{1}(S^{w})=45, d2(Sw)=15d_{2}(S^{w})=15, d3(Sw)=30d_{3}(S^{w})=30, d4(Sw)=40d_{4}(S^{w})=40, d5(Sw)=40d_{5}(S^{w})=40 (a worst case scenario for 𝒙mid\boldsymbol{x}^{\text{mid}}) occurs then the cost will be equal to 357.5357.5 (maxSΓF(𝒙mid,S)=357.5\max_{S\in\Gamma}F(\boldsymbol{x}^{\text{mid}},S)=357.5). Note that 357.5215.833357.5\gg 215.833. Similar situation is for two extreme scenarios S+S^{+} and SS^{-}, the scenarios in which all the demands are set to their upper bounds and the lower bounds, respectively. Again running an algorithm for the crisp problem with the demands under scenario S+S^{+} and SS^{-}, we obtain optimal solutions: x1+=45x^{+}_{1}=45, x2+=30x^{+}_{2}=30, x3+=30x^{+}_{3}=30, x4+=30x^{+}_{4}=30, x5+=35x^{+}_{5}=35 with the total cost of 3535 under S+S^{+} and x1=40x^{-}_{1}=40, x2=30x^{-}_{2}=30, x3=30x^{-}_{3}=30, x4=10x^{-}_{4}=10, x5=10x^{-}_{5}=10, under SS^{-}, with the total cost of 180180. It turns out that if scenario d1(Sw)=30d_{1}(S^{w})=30, d2(Sw)=5d_{2}(S^{w})=5, d3(Sw)=10d_{3}(S^{w})=10, d4(Sw)=20d_{4}(S^{w})=20, d5(Sw)=20d_{5}(S^{w})=20, SwΓS^{w}\in\Gamma, (a worst case scenario for 𝒙+\boldsymbol{x}^{+}) occurs then the cost of  𝒙+\boldsymbol{x}^{+} will be equal to 270270. Similarly, if d1(Sw)=45d_{1}(S^{w})=45, d2(Sw)=15d_{2}(S^{w})=15, d3(Sw)=30d_{3}(S^{w})=30, d4(Sw)=40d_{4}(S^{w})=40, d5(Sw)=40d_{5}(S^{w})=40, SwΓS^{w}\in\Gamma, (a worst case scenario for 𝒙\boldsymbol{x}^{-}) occurs then the cost of  𝒙\boldsymbol{x}^{-} will be equal to 395395. The summary of the input and output data of the above illustrative example is shown in Table 1. Accordingly, we have no doubts that the computed plan 𝒙opt\boldsymbol{x}^{\text{opt}} with respect to the min-max criterion (problem ROB) is a robust one.

Figure 2: The computed production plan 𝒙opt\boldsymbol{x}^{\text{opt}} in the illustrative example.
Table 1: Summary of the data and results of the illustrative example
data results
capacity interval robust plan plan plan
limits demands plan under SmidS^{\text{mid}} under S+S^{+} under SS^{-}
tt ltl_{t} utu_{t} DtD_{t} xtoptx^{\text{opt}}_{t} dt(Sw)d_{t}(S^{w}) xtmidx^{\text{mid}}_{t} dt(Sw)d_{t}(S^{w}) xt+x^{+}_{t} dt(Sw)d_{t}(S^{w}) xtx^{-}_{t} dt(Sw)d_{t}(S^{w})
1 40 50 [30,45] 40 30 40 45 45 30 40 45
2 30 40 [5,15] 30 5 30 15 30 5 30 15
3 30 40 [10,30] 30 10 30 30 30 10 30 30
4 10 35 [20,40] 27.9167 20 10 40 30 20 10 40
5 10 35 [20,40] 10 20 17.5 40 35 20 10 40
cIt=1,cBt=5,t=1,,5{}^{{\dagger}}c^{I}_{t}=1,c^{B}_{t}=5,t=1,\ldots,5 the worst costs for plans: 𝒙opt\boldsymbol{x}^{\text{opt}}, 𝒙mid\boldsymbol{x}^{\text{mid}}, 𝒙+\boldsymbol{x}^{+}, 𝒙\boldsymbol{x}^{-}
F(𝒙opt,Sw)F(\boldsymbol{x}^{\text{opt}},S^{w}) F(𝒙mid,Sw)F(\boldsymbol{x}^{\text{mid}},S^{w}) F(𝒙+,Sw)F(\boldsymbol{x}^{+},S^{w}) F(𝒙,Sw)F(\boldsymbol{x}^{-},S^{w})
215.833 357.5 270 395

In order to check the efficiency of Algorithm 1, we performed some computational tests. For every T=100,200,,1000T=100,200,\ldots,1000, ten instances of the problem ROB with capacity limits were generated. In every instance, inventory costs were randomly chosen from the set {1,2,,10}\{1,2,\ldots,10\}, backorder costs were randomly chosen from the set {20,21,,50}\{20,21,\ldots,50\}, the demands and the production capacities were randomly generated intervals [X,Y][X,Y], where XX is an integer-valued random variable uniformly distributed in {0,1,,99}\{0,1,\ldots,99\} and YY is an integer-valued random variable uniformly distributed in {100,101,,199}\{100,101,\ldots,199\}. To solve the generated instances, we used IBM ILOG CPLEX 12.2 library (parallel using up 2 threads) [43] and a computer equipped with Intel Core 2 Duo 2.5 GHz. In Table 2, minimal, average and maximal computation times in seconds, required to find approximations of optimal robust production plans with convergence tolerance parameter ϵ=0.0001\epsilon=0.0001, are presented. Thus, the maximal costs of the computed production plans are no more than 0.01%0.01\% from optimality. All computations finished in a few iterations and about 98%98\% of the total running time was spent on computing worst case scenarios by MIP model (9). We also implemented and ran the improved dynamic programming based algorithm for computing worst case scenarios presented in Section 4.1, but it turned out that solving MIP model for determining worst case scenarios was much faster than computing them by the dynamic programming algorithm. As we can see from the obtained results, Algorithm 1 allows us to solve quite large problems having up to 1000 periods in reasonable time.

Table 2: Minimal, average and maximal computation times in seconds
T 100 200 300 400 500 600 700 800 900 1000
min 0.25 0.63 0.96 2.04 2.64 23.55 9.64 24.54 61.26 41.44
avg 0.39 0.84 5.68 9.18 11.47 61.44 72.20 180.78 282.20 372.58
max 0.65 1.05 13.40 20.47 21.78 147.32 188.36 328.61 573.26 893.01

5 Fuzzy Problem

In this section, we apply a more elaborate approach to model uncertain demands. Namely, the uncertain demands, in problem (3), are modeled by fuzzy intervals D~t\widetilde{D}_{t}, t=1,,Tt=1,\ldots,T. Here, a membership function of D~t\widetilde{D}_{t} is regarded as a possibility distribution for the values of the unknown demand dtd_{t} (see Section 2). The possibility degree of the assignment dt=sd_{t}=s is Π(dt=s)=πdt(s)=μD~t(s)\Pi(d_{t}=s)=\pi_{d_{t}}(s)=\mu_{\widetilde{D}_{t}}(s). Let S=(st)t=1TS=(s_{t})_{t=1}^{T} be a scenario that represents a state of the world where dt=std_{t}=s_{t}, for t=1,,Tt=1,\ldots,T. It is assumed that the demands are unrelated one to each other. Hence, the possibility distributions associated with the demands induce the following possibility distribution over all scenarios in STS\in\mathbb{R}^{T} (see [44]):

π(S)=Π((d1=s1)(dT=sT))=mint=1,,TΠ(dt=st)=mint=1,,TμD~t(st).\pi(S)=\Pi((d_{1}=s_{1})\wedge\cdots\wedge(d_{T}=s_{T}))=\min_{t=1,\ldots,T}\Pi(d_{t}=s_{t})=\min_{t=1,\ldots,T}\mu_{\widetilde{D}_{t}}(s_{t}). (16)

The value of π(S)\pi(S) stands for the possibility of the event that scenario STS\in\mathbb{R}^{T} will occur. We have thus extended scenario set Γ\Gamma given by the intervals (see Section 4) to the fuzzy case and now Γ~\widetilde{\Gamma} is a fuzzy set of scenarios with membership function μΓ~(S)=π(S)\mu_{\widetilde{\Gamma}}(S)=\pi(S), STS\in\mathbb{R}^{T}. We see at once that the λ\lambda-cuts of Γ~\widetilde{\Gamma} for every λ(0,1]\lambda\in(0,1] fulfill the following equality:

Γ~[λ]={S:π(S)λ}=[d1[λ],d1+[λ]]××[dT[λ],dT+[λ]],\widetilde{\Gamma}^{[\lambda]}=\{S:\;\pi(S)\geq\lambda\}=[d^{-[\lambda]}_{1},d^{+[\lambda]}_{1}]\times\cdots\times[d^{-[\lambda]}_{T},d^{+[\lambda]}_{T}],

which is from (16) and the definition of λ\lambda-cut. We also define Γ~[0]=[d1[0],d1+[0]]××[dT[0],dT+[0]]\widetilde{\Gamma}^{[0]}=[d^{-[0]}_{1},d^{+[0]}_{1}]\times\cdots\times[d^{-[0]}_{T},d^{+[0]}_{T}]. Notice that Γ~λ\widetilde{\Gamma}^{\lambda}, λ[0,1]\lambda\in[0,1], is the classical scenario set containing all scenarios whose possibility of occurrence is not less than λ\lambda.

5.1 Evaluating Production Plan

In order to choose a reasonable production plan under fuzziness, we first show how to evaluate a given production plan 𝒙𝕏\boldsymbol{x}\in\mathbb{X}. Notice that a cost of production plan 𝒙\boldsymbol{x} is unknown quantity, denoted by f𝒙f_{\boldsymbol{x}}, since demands are unknown and modeled by fuzzy intervals in the setting of possibility theory. Thus, the unknown cost f𝒙f_{\boldsymbol{x}} falls within fuzzy interval F~𝒙\widetilde{F}_{\boldsymbol{x}}, called fuzzy cost of plan 𝒙\boldsymbol{x}, whose membership function μF~𝒙\mu_{\widetilde{F}_{\boldsymbol{x}}} is a possibility distribution for the values of fuzzy variable f𝒙f_{\boldsymbol{x}} (unknown cost of 𝒙\boldsymbol{x}), πF~𝒙=μF~𝒙\pi_{\widetilde{F}_{\boldsymbol{x}}}=\mu_{\widetilde{F}_{\boldsymbol{x}}}, defined as follows:

μF~𝒙(v)=Π(f𝒙=v)=sup{S:F(𝒙,S)=v}π(S),v.\mu_{\widetilde{F}_{\boldsymbol{x}}}(v)=\Pi(f_{\boldsymbol{x}}=v)=\sup_{\{S:\;F(\boldsymbol{x},S)=v\}}\pi(S),\;\;v\in\mathbb{R}. (17)

Making use of (17), we can define degrees of possibility and necessity that a cost of a given plan 𝒙𝕏\boldsymbol{x}\in\mathbb{X} does not exceed a given threshold gg:

Π(f𝒙g)\displaystyle\Pi(f_{\boldsymbol{x}}\leq g) =supvgπF~𝒙(v)=sup{S:F(𝒙,S)g}π(S),\displaystyle=\sup_{v\leq g}\pi_{\widetilde{F}_{\boldsymbol{x}}}(v)=\sup_{\{S:\;F(\boldsymbol{x},S)\leq g\}}\pi(S), (18)
N(f𝒙g)\displaystyle\mathrm{N}(f_{\boldsymbol{x}}\leq g) =1Π(f𝒙>g)=1supv>gπF~𝒙(v)=1sup{S:F(𝒙,S)>g}π(S).\displaystyle=1-\Pi(f_{\boldsymbol{x}}>g)=1-\sup_{v>g}\pi_{\widetilde{F}_{\boldsymbol{x}}}(v)=1-\sup_{\{S:\;F(\boldsymbol{x},S)>g\}}\pi(S). (19)

It is easily seen that Π(f𝒙g)=λ\Pi(f_{\boldsymbol{x}}\leq g)=\lambda means that there exists a scenario SS such that π(S)=λ\pi(S)=\lambda in which the cost of plan 𝒙\boldsymbol{x} does not exceed threshold gg, F(𝒙,S)gF(\boldsymbol{x},S)\leq g. N(f𝒙g)=1λ\mathrm{N}(f_{\boldsymbol{x}}\leq g)=1-\lambda means that for all scenarios SS such that π(S)>λ\pi(S)>\lambda, costs of plan 𝒙\boldsymbol{x} under these scenarios do not exceed gg.

We now consider the problem of computing the degrees (18) and (19) of a given plan 𝒙\boldsymbol{x}. Write F~𝒙[λ]=[f𝒙[λ],f𝒙+[λ]]\widetilde{F}_{\boldsymbol{x}}^{[\lambda]}=[f^{-[\lambda]}_{\boldsymbol{x}},f^{+[\lambda]}_{\boldsymbol{x}}]. Note that the interval F~𝒙[λ]\widetilde{F}_{\boldsymbol{x}}^{[\lambda]} (λ\lambda-cut of the fuzzy cost) is the optimal interval of possible costs of 𝒙\boldsymbol{x} (see (7)) in problem ROB under interval scenario set Γ~[λ]\widetilde{\Gamma}^{[\lambda]}. Hence there exists a link between the interval and the fuzzy cases:

Π(f𝒙g)\displaystyle\Pi(f_{\boldsymbol{x}}\leq g) =\displaystyle= sup{λ[0,1]:f𝒙[λ]g},\displaystyle\sup\{\lambda\in[0,1]:f^{-[\lambda]}_{\boldsymbol{x}}\leq g\}, (20)
N(f𝒙g)\displaystyle\mathrm{N}(f_{\boldsymbol{x}}\leq g) =\displaystyle= 1inf{λ[0,1]:f𝒙+[λ]g}.\displaystyle 1-\inf\{\lambda\in[0,1]:f^{+[\lambda]}_{\boldsymbol{x}}\leq g\}. (21)

From equations (20) and (21), we obtain methods for computing the degrees. So, in order to compute Π(f𝒙g)\Pi(f_{\boldsymbol{x}}\leq g) (resp. N(f𝒙g)\mathrm{N}(f_{\boldsymbol{x}}\leq g)) we need to find the largest (resp. smallest) value of λ\lambda such that there exits a scenario SΓ~[λ]S\in\widetilde{\Gamma}^{[\lambda]} for which F(𝒙,S)gF(\boldsymbol{x},S)\leq g (resp. for every scenario SΓ~[λ]S\in\widetilde{\Gamma}^{[\lambda]} inequality F(𝒙,S)gF(\boldsymbol{x},S)\leq g holds), which is equivalent to determine an optimistic scenario SoΓ~[λ]S^{o}\in\widetilde{\Gamma}^{[\lambda]} (resp. a worst case scenario SwΓ~[λ]S^{w}\in\widetilde{\Gamma}^{[\lambda]}) for 𝒙\boldsymbol{x} by solving (8) (resp. (9)) and evaluating F(𝒙,So)gF(\boldsymbol{x},S^{o})\leq g (resp. F(𝒙,Sw)gF(\boldsymbol{x},S^{w})\leq g). Notice f𝒙[λ]=F(𝒙,So)f^{-[\lambda]}_{\boldsymbol{x}}=F(\boldsymbol{x},S^{o}) (resp. f𝒙+[λ]=F(𝒙,Sw)f^{+[\lambda]}_{\boldsymbol{x}}=F(\boldsymbol{x},S^{w})). Since f𝒙[λ]f^{-[\lambda]}_{\boldsymbol{x}} (resp. f𝒙+[λ]f^{+[\lambda]}_{\boldsymbol{x}}) is nondecreasing (resp. nonincreasing) function of λ\lambda, we can apply a binary search technique on λ[0,1]\lambda\in[0,1].

The fuzzy cost of production plan 𝒙\boldsymbol{x} (the possibility distribution for costs of 𝒙\boldsymbol{x}), F~𝒙\widetilde{F}_{\boldsymbol{x}} can be determined approximately, if necessary, via the use of λ\lambda-cuts. Namely, the optimal intervals of possible costs of F~𝒙[λ]=[f𝒙[λ],f𝒙+[λ]]\widetilde{F}^{[\lambda]}_{\boldsymbol{x}}=[f^{-[\lambda]}_{\boldsymbol{x}},f^{+[\lambda]}_{\boldsymbol{x}}] under Γ~[λ]\widetilde{\Gamma}^{[\lambda]} are computed for suitably chosen λ\lambda-cuts. Then fuzzy cost F~𝒙\widetilde{F}_{\boldsymbol{x}} is reconstructed from their λ\lambda-cuts. This approach makes sense since intervals F~𝒙[λ]\widetilde{F}^{[\lambda]}_{\boldsymbol{x}} are nested.

5.2 Fuzzy Robust Problem

We now propose two criteria of choosing a robust solution in the fuzzy-valued problem (3).

We are given a threshold gg, and we would like to find a production plan which maximizes the degree of certainty (necessity) that its cost does not exceed threshold gg. Thus, we would like to solve the following problem:

max𝒙𝕏N(f𝒙g).\max_{\boldsymbol{x}\in\mathbb{X}}\mathrm{N}(f_{\boldsymbol{x}}\leq g). (22)

There are no doubts that an optimal production plan computed according to (22) is a robust one, since with the highest degree of certainty costs of the plan over scenarios will not exceed threshold gg. By (21), it is easy to check that problem (22) is equivalent to the following mathematical programming problem:

minλs.t.f𝒙+[λ]g,λ[0,1],𝒙𝕏.\begin{array}[]{ll}\min&\lambda\\ \text{s.t.}&f^{+[\lambda]}_{\boldsymbol{x}}\leq g,\\ &\lambda\in[0,1],\\ &\boldsymbol{x}\in\mathbb{X}.\end{array} (23)

If λ\lambda^{*} is the optimal objective and 𝒙\boldsymbol{x}^{*} is an optimal solution for problem (23) then N(f𝒙g)=1λ\mathrm{N}(f_{\boldsymbol{x}^{*}}\leq g)=1-\lambda^{*} and 𝒙\boldsymbol{x}^{*} is an optimal production plan for (22). If (23) is infeasible then N(f𝒙g)=0\mathrm{N}(f_{\boldsymbol{x}}\leq g)=0 for all 𝒙𝕏\boldsymbol{x}\in\mathbb{X}.

We now present a more general criterion of choosing a robust production plan than (22). Namely, suppose that a decision maker knows her/his preferences about a cost of a production plan f𝒙f_{\boldsymbol{x}} and expresses it by a fuzzy goal G~\widetilde{G}, which is a fuzzy interval with a bounded support and a nonincreasing upper semicontinuous membership function μG~:[0,1]\mu_{\widetilde{G}}:\mathbb{R}\rightarrow[0,1] such that μG~(v)=1\mu_{\widetilde{G}}(v)=1 for v[0,g]v\in[0,g]. The value of μG~(f𝒙)\mu_{\widetilde{G}}(f_{\boldsymbol{x}}) is the extent to which cost f𝒙f_{\boldsymbol{x}} of 𝒙\boldsymbol{x} satisfies the decision maker. Now the requirement “f𝒙gf_{\boldsymbol{x}}\leq g” is replaced softer one, i.e. “f𝒙G~f_{\boldsymbol{x}}\in\widetilde{G}”. So, by (2) and (17) the necessity that event “f𝒙G~f_{\boldsymbol{x}}\in\widetilde{G}” holds can be expressed as follows:

N(f𝒙G~)\displaystyle\mathrm{N}(f_{\boldsymbol{x}}\in\widetilde{G}) =\displaystyle= 1Π(f𝒙G~)\displaystyle 1-\Pi(f_{\boldsymbol{x}}\not\in\widetilde{G}) (24)
=\displaystyle= 1supvmin{πf𝒙(v),1μG~(v)}\displaystyle 1-\sup_{v\in\mathbb{R}}\min\{\pi_{f_{\boldsymbol{x}}}(v),1-\mu_{\widetilde{G}}(v)\}
=\displaystyle= 1supSmin{π(S),1μG~(F(𝒙,S))}.\displaystyle 1-\sup_{S}\min\{\pi(S),1-\mu_{\widetilde{G}}(F(\boldsymbol{x},S))\}.

Thus, if N(f𝒙G~)=1λ\mathrm{N}(f_{\boldsymbol{x}}\in\widetilde{G})=1-\lambda means that for all scenarios SS such that π(S)>λ\pi(S)>\lambda, the degree that costs of plan 𝒙\boldsymbol{x} fall within fuzzy goal G~\widetilde{G}, is not less than 1λ1-\lambda. Note that N(f𝒙G~)\mathrm{N}(f_{\boldsymbol{x}}\in\widetilde{G}) is more general and weaker than N(f𝒙g)\mathrm{N}(f_{\boldsymbol{x}}\leq g). If μG~(v)=0\mu_{\widetilde{G}}(v)=0 for v>gv>g then they are the same. Moreover, N(f𝒙g)N(f𝒙G~)\mathrm{N}(f_{\boldsymbol{x}}\leq g)\leq\mathrm{N}(f_{\boldsymbol{x}}\in\widetilde{G}).

Let us give the second criterion of choosing a robust plan. We are given a fuzzy goal G~\widetilde{G}, and we wish to find a production plan which maximizes the necessity degree that costs of the plan fall within fuzzy goal G~\widetilde{G}. Thus we need to solve the following optimization problem,

max𝒙𝕏N(f𝒙G~).\max_{\boldsymbol{x}\in\mathbb{X}}\mathrm{N}(f_{\boldsymbol{x}}\in\widetilde{G}). (25)

We check at once that problem (25) is equivalent to the following mathematical programming problem, which is from (21) and (24):

minλs.t.f𝒙+[λ]g+[1λ],λ[0,1],𝒙𝕏.\begin{array}[]{ll}\min&\lambda\\ \text{s.t.}&f^{+[\lambda]}_{\boldsymbol{x}}\leq g^{+[1-\lambda]},\\ &\lambda\in[0,1],\\ &\boldsymbol{x}\in\mathbb{X}.\end{array} (26)

If (𝒙,λ)(\boldsymbol{x}^{*},\lambda^{*}) is an optimal solution for problem (26), then N(f𝒙G~)=1λ\mathrm{N}(f_{\boldsymbol{x}^{*}}\in\widetilde{G})=1-\lambda^{*}. If (26) is infeasible then N(f𝒙G~)=0\mathrm{N}(f_{\boldsymbol{x}}\in\widetilde{G})=0 for all 𝒙𝕏\boldsymbol{x}\in\mathbb{X}.

An algorithm for solving problem (26) (resp. (23)) is based on the standard binary search technique in [0,1][0,1] (the interval of possible values of λ\lambda) which follows from the fact that f𝒙+[λ]f^{+[\lambda]}_{\boldsymbol{x}} is nonincreasing and g+[1λ]g^{+[1-\lambda]} (resp. gg) is nondecreasing function of λ\lambda. We call the algorithm the binary search based algorithm. To find an optimal (x,λ)(x^{*},\lambda^{*}), x𝕏x^{*}\in\mathbb{X}, λ[0,1]\lambda^{*}\in[0,1], with a given error tolerance ξ>0\xi>0, we seek at each iteration, for a fixed λ\lambda, a plan 𝒙𝕏\boldsymbol{x}\in\mathbb{X} satisfying f𝒙+[λ]g+[1λ]f^{+[\lambda]}_{\boldsymbol{x}}\leq g^{+[1-\lambda]} (resp. f𝒙+[λ]gf^{+[\lambda]}_{\boldsymbol{x}}\leq g), which boils down to seeking an optimal robust production plan 𝒙r\boldsymbol{x}^{r} and its worst case scenario under scenario set Γ~[λ]\widetilde{\Gamma}^{[\lambda]}, i.e. to solving problem ROB (see Section 4). Note that f𝒙+[λ]=A(𝒙)f^{+[\lambda]}_{\boldsymbol{x}}=A(\boldsymbol{x}) and also that f𝒙+[λ]g+[1λ]f^{+[\lambda]}_{\boldsymbol{x}}\leq g^{+[1-\lambda]} (resp. f𝒙+[λ]gf^{+[\lambda]}_{\boldsymbol{x}}\leq g) holds for some 𝒙𝕏\boldsymbol{x}\in\mathbb{X} if and only if it holds for an optimal robust production plan under Γ~[λ]\widetilde{\Gamma}^{[\lambda]}. Thus, at each iteration, we use either formulae (14) for the case without capacity limits or Algorithm 1 for the case with capacity limits. If the length of determined interval of possible values of λ\lambda is less than ξ\xi, then an optimal robust production plan 𝒙r\boldsymbol{x}^{r} for a fixed λ\lambda, (𝒙r,λ)(\boldsymbol{x}^{r},\lambda), is an approximation of an optimal solution for problem (26) (resp. (23)) with precision ξ\xi. The running time of the above algorithm is O(I(T)logξ1)O(I(T)\log\xi^{-1}) time, where ξ>0\xi>0 is a given error tolerance and I(|T|)I(|T|) is time required for finding an optimal robust production plan and its worst case scenario under interval scenario set Γ~[λ]\widetilde{\Gamma}^{[\lambda]} (the running time of either (14) or Algorithm 1).

We now show, by the following illustrative example, that determining a production plan maximizing the necessity degree that costs of the plan fall within fuzzy goal G~\widetilde{G} (problem (25)) is a robust one under uncertain demands modeled by fuzzy intervals. We are given 55 periods with the production capacity limits on a production plan: l1=40l_{1}=40, u1=50u_{1}=50, l2=30l_{2}=30, u2=40u_{2}=40, l3=30l_{3}=30, u3=40u_{3}=40, l4=10l_{4}=10, u4=35u_{4}=35 and l5=10l_{5}=10, u5=35u_{5}=35 and the same the costs of carrying one unit of inventory from period tt to period t+1t+1, ctI=1c^{I}_{t}=1, t=1,,5t=1,\ldots,5, and the same the costs of backordering one unit from period t+1t+1 to period tt ,ctB=5c^{B}_{t}=5, t=1,,5t=1,\ldots,5. The demand uncertainty in each period is represented by the triangular fuzzy intervals: D~1=(30,37.5,45)\widetilde{D}_{1}=(30,37.5,45), D~2=(5,10,15)\widetilde{D}_{2}=(5,10,15), D~3=(10,20,30)\widetilde{D}_{3}=(10,20,30), D~4=(20,30,40)\widetilde{D}_{4}=(20,30,40) and D~5=(20,30,40)\widetilde{D}_{5}=(20,30,40), regarded as possibility distributions for the values of the unknown demands. The fuzzy set of scenarios has the membership function: μΓ~(S)=π(S)=mint=1,,5μD~t(st)\mu_{\widetilde{\Gamma}}(S)=\pi(S)=\min_{t=1,\ldots,5}\mu_{\widetilde{D}_{t}}(s_{t}), S5S\in\mathbb{R}^{5}. The fuzzy goal G~\widetilde{G} is trapezoidal fuzzy interval G~=(0,0,195.83,215.42)\widetilde{G}=(0,0,195.83,215.42), where 195.833195.833 is the maximal cost of an optimal robust production plan for the problem ROB without capacity limits (an ideal supplier) and under the supports (the interval demands) of the fuzzy demands, i.e. D~t[0]\widetilde{D}^{[0]}_{t}, t=1,5t=1,\ldots 5. Thus, a production plan with the cost less than 195.833195.833 is totally accepted and with the cost greater than 215.42215.42 is not at all accepted. The binary search based algorithm outputs a production plan (with  ξ=0.01\xi=0.01 and ϵ=0.0001\epsilon=0.0001 for Algorithm 1): x1opt=40x^{\text{opt}}_{1}=40, x2opt=30x^{\text{opt}}_{2}=30, x3opt=30x^{\text{opt}}_{3}=30, x4opt=25.3776x^{\text{opt}}_{4}=25.3776, x5opt=10x^{\text{opt}}_{5}=10, that maximizes the necessity degree that costs of the plan fall within fuzzy goal G~\widetilde{G}, N(f𝒙optG~)=1λ=0.883\mathrm{N}(f_{\boldsymbol{x}^{\text{opt}}}\in\widetilde{G})=1-\lambda=0.883. This means that for all scenarios SS whose possibility of occurrence is greater than 0.1170.117, π(S)>λ=0.117\pi(S)>\lambda=0.117, the degree of necessity (the degree of certainty) that total costs of plan 𝒙opt\boldsymbol{x}^{\text{opt}} fall within fuzzy goal G~\widetilde{G}, is not less than 0.8830.883. Furthermore, we are sure that the total costs of the plan do not exceed 196.986196.986 (the total cost at λ\lambda-cut equal to 0.1170.117) for every scenario SS such that π(S)>0.117\pi(S)>0.117. We now apply existing approaches to our example. We first consider methods based on a defuzzification which take into account only one scenario resulting from a defuzzification of fuzzy parameters (demands) – see, e.g., [20, 21]. Applying, for instance, the index of Yager [45], we get crisp demands: d1(SY)=37.5d_{1}(S^{\text{Y}})=37.5, d2(SY)=10d_{2}(S^{\text{Y}})=10, d3(SY)=20d_{3}(S^{\text{Y}})=20, d4(SY)=30d_{4}(S^{\text{Y}})=30, d5(SY)=30d_{5}(S^{\text{Y}})=30. An algorithm for the crisp dynamic lot-size problem with these demands (see Section 3) returns an optimal production plan: x1Y=40x^{\text{Y}}_{1}=40, x2Y=30x^{\text{Y}}_{2}=30, x3Y=30x^{\text{Y}}_{3}=30, x4Y=10x^{\text{Y}}_{4}=10, x5Y=17.5x^{\text{Y}}_{5}=17.5 with the total cost of 7070. However, the cost of 𝒙Y\boldsymbol{x}^{\text{Y}} may be even 313.262313.262 for scenarios SS such that π(S)>0.117\pi(S)>0.117, and so 313.262196.986313.262\gg 196.986. The necessity degree that costs of 𝒙Y\boldsymbol{x}^{\text{Y}} fall within G~\widetilde{G} equals 0.593, N(f𝒙YG~)=0.593\mathrm{N}(f_{\boldsymbol{x}^{\text{Y}}}\in\widetilde{G})=0.593, which gives N(f𝒙YG~)<N(f𝒙optG~)\mathrm{N}(f_{\boldsymbol{x}^{\text{Y}}}\in\widetilde{G})<\mathrm{N}(f_{\boldsymbol{x}^{\text{opt}}}\in\widetilde{G}). Let us examine a possibilistic programming (a mathematical programming with fuzzy parameters), where solution concepts are based on the Bellman-Zadeh approach [46] - see, e.g., [16, 17]. In this way, the assertion of the form “f𝒙G~f_{\boldsymbol{x}}\in\widetilde{G}”, where f𝒙f_{\boldsymbol{x}} is a cost of production plan 𝒙\boldsymbol{x}, is treated as a fuzzy constraint and values of the membership function μG~\mu_{\widetilde{G}} stand for degrees of satisfaction of this constraint - the fuzzy goal. In other words, the assertion induces Π(f𝒙G~)\mathrm{\Pi}(f_{\boldsymbol{x}}\in\widetilde{G}). The joint possibility distribution generated by the fuzzy goal as well as constraints with fuzzy demands is the minimum of the possibility of satisfaction of the fuzzy goal and the possibility of feasibility of the constraints and thus an optimal production plan is a plan, denoted by 𝒙BZ\boldsymbol{x}^{\text{BZ}}, that maximizes the possibility degree of satisfaction both goal and the constraints. A trivial verification shows that for production plan 𝒙Y\boldsymbol{x}^{\text{Y}} with the total cost of 7070, the possibility degree of satisfaction the goal as well as the constraints is equal to 1 in our fuzzy problem under consideration - in problem (3) with triangular fuzzy demands D~t\widetilde{D}_{t}, t=1,,5t=1,\ldots,5, and so 𝒙BZ=𝒙Y\boldsymbol{x}^{\text{BZ}}=\boldsymbol{x}^{\text{Y}}. However, as we have seen above, this plan is not a robust one. The summary of the data and results of the example is given in Table 3.

Table 3: Summary of the data and results of the illustrative example
data results
capacity interval robust plan plan
limits demands plan (index of Yager) (Bellman-Zadeh)
tt ltl_{t} utu_{t} D~t\widetilde{D}_{t} xtoptx^{\text{opt}}_{t} xtYx^{\text{Y}}_{t} xtBZx^{\text{BZ}}_{t}
1 40 50 (30,37.5,45) 40 40 40
2 30 40 (5,10,15) 30 30 30
3 30 40 (10,20,30) 30 30 30
4 10 35 (20,30,40) 25.3776 10 10
5 10 35 (20,30,40) 10 17.5 17.5
cIt=1,cBt=5,t=1,,5{}^{{\dagger}}c^{I}_{t}=1,c^{B}_{t}=5,t=1,\ldots,5 the worst costs under SS such that π(S)>0.117\pi(S)>0.117 for
G~=(0,0,195.83,215.42)\widetilde{G}=(0,0,195.83,215.42) 𝒙opt\boldsymbol{x}^{\text{opt}} 𝒙Y\boldsymbol{x}^{\text{Y}} 𝒙BZ\boldsymbol{x}^{\text{BZ}}
196.986 313.262 313.262
N(f𝒙optG~)\mathrm{N}(f_{\boldsymbol{x}^{\text{opt}}}\in\widetilde{G}) N(f𝒙YG~)\mathrm{N}(f_{\boldsymbol{x}^{\text{Y}}}\in\widetilde{G}) N(f𝒙BZG~)\mathrm{N}(f_{\boldsymbol{x}^{\text{BZ}}}\in\widetilde{G})
0.883 0.593 0.593

In order to evaluate the efficiency of the binary search based algorithm, we show some results of computational experiments. For every number of periods T=100,200,,1000T=100,200,\ldots,1000, ten instances of the problem (25) with capacity limits were generated. In every instance, inventory costs were randomly chosen from the set {1,2,,10}\{1,2,\ldots,10\}, backorder costs were randomly chosen from the set {20,21,,50}\{20,21,\ldots,50\}, the production capacities were randomly generated intervals [X,Y][X,Y], where XX is an integer-valued random variable uniformly distributed in {0,1,,99}\{0,1,\ldots,99\} and YY is an integer-valued random variable uniformly distributed in {100,101,,199}\{100,101,\ldots,199\}, the demands are triangular fuzzy intervals with the supports equal to [0,199][0,199] and the modal values equal to ZZ, where ZZ is an integer-valued random variable uniformly distributed in {0,1,,199}\{0,1,\ldots,199\}, the fuzzy goal G~\widetilde{G} was modeled as a trapezoidal fuzzy interval G~=(0,0,c,d)\widetilde{G}=(0,0,c,d), where cc was chosen as the maximal cost of an optimal robust production plan for the problem ROB without capacity limits and under the interval demands being the supports of the generated triangular fuzzy demands. The values of dd were equal to c+βc+\beta, for β{0.00c,0.25c,0.50c,0.75c,1.00c}\beta\in\{0.00\cdot c,0.25\cdot c,0.50\cdot c,0.75\cdot c,1.00\cdot c\} and the error tolerance ξ=0.01\xi=0.01. We used IBM ILOG CPLEX 12.2 library (parallel using up 2 threads) [43] and a computer equipped with Intel Core 2 Duo 2.5 GHz to solve the generated instances. In Table 4 average computation times in seconds are presented. As we can see from the obtained results, the binary search based algorithm, which calls Algorithm 1 at each iteration with convergence tolerance parameter ϵ=0.0001\epsilon=0.0001, can solve efficiently the problem (25), with capacity limits, having up to 1000 periods.

Table 4: Average computation times in seconds
β\beta
T 0.00c0.00\cdot c 0.25c0.25\cdot c 0.50c0.50\cdot c 0.75c0.75\cdot c 1.00c1.00\cdot c
100 0.96 0.92 0.88 0.83 0.92
200 2.36 2.29 2.26 2.11 2.10
300 7.22 6.93 6.81 6.76 6.86
400 14.68 14.67 14.55 14.57 14.55
500 27.51 27.06 26.60 26.69 26.64
600 46.73 46.85 46.72 46.38 46.49
700 111.72 109.70 109.41 109.71 109.43
800 223.22 217.24 217.89 217.65 217.85
900 243.51 243.28 243.87 244.75 245.21
1000 417.78 416.86 416.14 414.14 415.80

6 Conclusion

In this paper, we have proposed methods to compute a robust procurement plan in the collaborative supply chain, where the customer uses a version of MRP with ill-known demands to plan a production. This problem is a certain version of the lot sizing problem with ill-known demands modeled by fuzzy intervals, whose membership functions are regarded as possibility distributions for the values of the unknown demands. We have introduced, in this setting, the degrees of possibility and necessity that the cost of a plan does not exceed a given threshold and a degree of necessity that costs of a plan fall within a given fuzzy goal, which allows us to evaluate a given production plan. Moreover, we have provided methods for computing these degrees. For finding robust production plans under fuzzy demands, we have proposed two criteria: the first one consists in choosing a production plan which maximizes the degree of necessity that its cost does not exceed a given threshold, the second criterion is softer than the first one and consists in choosing a plan with the maximum degree of necessity that costs of the plan fall within a given fuzzy goal. We have constructed the algorithms for determining optimal robust production plans with respect to the criteria and confirmed their efficiency experimentally. The criteria are a generalization, to the fuzzy case, of the known from literature the min-max criterion. Consequently, we have shown in the paper that there exists a link between interval uncertainty with the min-max criterion and possibilistic uncertainty with the necessity based criteria. It turns out that the evaluation of a production plan and choosing a plan in the fuzzy-valued problem are not harder than in the interval-valued case. The difficulty of solving the fuzzy problems lies in the interval case, since it is reduced to solving a small number of interval problems. Therefore, we have discussed first the interval-valued case. In this case, we have considered the problem of determining the optimal interval of possible costs of a production plan, which allowed us to evaluate the plan. Determining the optimal bounds of the interval boils down to computing optimistic and worst case scenarios. We have proposed linear programing based method for computing an optimistic scenario and mixed integer programing and dynamic programming methods for computing a worst case scenario. We have also identified a polynomial solvable case. For computing an optimal robust production plan, we have provided a polynomial algorithm and iterative one for the cases: with no capacity limits and with capacity limits, respectively. Then we have extended the methods introduced for the interval-valued problem to the fuzzy-valued one.

There is still an open question concerning the complexity status of computing a worst case scenario of a given production plan. The problem is pseudopolynomially solvable and polynomially solvable under certain assumptions and seems to be a core of most of the problems considered in the paper. These assumptions are nearly realistic and make possible extension of our approach to the case where a procurement plan is given for a family of product. In other words, when the sum of quantities procured has to respect supplier capacity constraints which are computed from a previous procurement plan. This problem is equivalent to the multi-item capacitated lot sizing problem. The fact that the complexity status is still open creates the possibility to find a polynomial algorithm and to extend our approach to the multi-item, multi-level capacitated lot sizing problem without the assumptions. So, it is an interesting topic of further research.

Appendix A Appendix

Proposition 3.

It is easily seen that 𝐗^t[𝐃t(S),𝐃t(S+)]\hat{\mathbf{X}}_{t}\in[\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{+})], cI(𝐗^t𝐃t(S))=cB(𝐃t(S+)𝐗^t)c^{I}(\hat{\mathbf{X}}_{t}-\mathbf{D}_{t}(S^{-}))=c^{B}(\mathbf{D}_{t}(S^{+})-\hat{\mathbf{X}}_{t}), t=1,,Tt=1,\ldots,T, and x^10\hat{x}_{1}\geq 0. Since 𝐃t1(S)𝐃t(S)\mathbf{D}_{t-1}(S^{-})\leq\mathbf{D}_{t}(S^{-}) and 𝐃t1(S+)𝐃t(S+)\mathbf{D}_{t-1}(S^{+})\leq\mathbf{D}_{t}(S^{+}), t2t\geq 2, (14) shows that x^t0\hat{x}_{t}\geq 0, t2t\geq 2. Hence Lt(𝐗^t,𝐃t(S))=cI(𝐗^t𝐃t(S))L_{t}(\hat{\mathbf{X}}_{t},\mathbf{D}_{t}(S^{-}))=c^{I}(\hat{\mathbf{X}}_{t}-\mathbf{D}_{t}(S^{-})) and Lt(𝐗^t,𝐃t(S+))=cB(𝐃t(S+)𝐗^t)L_{t}(\hat{\mathbf{X}}_{t},\mathbf{D}_{t}(S^{+}))=c^{B}(\mathbf{D}_{t}(S^{+})-\hat{\mathbf{X}}_{t}), t=1,,Tt=1,\ldots,T, and so F(𝒙^,S)=F(𝒙^,S+)F(\hat{\boldsymbol{x}},S^{-})=F(\hat{\boldsymbol{x}},S^{+}). Let SS be any scenario, SΓS\in\Gamma. Therefore, F(𝒙^,S)=t=1Tmax{cI(𝐗^t𝐃t(S)),cB(𝐃t(S)𝐗^t)}t=1Tmax{cI(𝐗^t𝐃t(S)),cB(𝐃t(S+)𝐗^t)}=t=1TLt(𝐗^t,𝐃t(S))=t=1TLt(𝐗^t,𝐃t(S+))=F(𝒙^,S)=F(𝒙^,S+)F(\hat{\boldsymbol{x}},S)=\sum_{t=1}^{T}\max\{c^{I}(\hat{\mathbf{X}}_{t}-\mathbf{D}_{t}(S)),c^{B}(\mathbf{D}_{t}(S)-\hat{\mathbf{X}}_{t})\}\leq\sum_{t=1}^{T}\max\{c^{I}(\hat{\mathbf{X}}_{t}-\mathbf{D}_{t}(S^{-})),c^{B}(\mathbf{D}_{t}(S^{+})-\hat{\mathbf{X}}_{t})\}=\sum_{t=1}^{T}L_{t}(\hat{\mathbf{X}}_{t},\mathbf{D}_{t}(S^{-}))=\sum_{t=1}^{T}L_{t}(\hat{\mathbf{X}}_{t},\mathbf{D}_{t}(S^{+}))\\ =F(\hat{\boldsymbol{x}},S^{-})=F(\hat{\boldsymbol{x}},S^{+}). ∎

Theorem 2.

We show that A(𝒙)A(𝒙^)A(\boldsymbol{x})\geq A(\hat{\boldsymbol{x}}) for every 𝒙𝕏\boldsymbol{x}\in\mathbb{X}. Consider any 𝒙𝕏\boldsymbol{x}^{{}^{\prime}}\in\mathbb{X}. Let us modify 𝒙\boldsymbol{x}^{{}^{\prime}} in the following way:

𝐗′′t={𝐃t(S)if 𝐗t<𝐃t(S),𝐗tif 𝐃t(S)𝐗t𝐃t(S+)t=1,,T,𝐃t(S+)if 𝐗t>𝐃t(S+).\mathbf{X}^{{}^{\prime\prime}}_{t}=\begin{cases}\mathbf{D}_{t}(S^{-})&\text{if $\mathbf{X}^{{}^{\prime}}_{t}<\mathbf{D}_{t}(S^{-})$,}\\ \mathbf{X}^{{}^{\prime}}_{t}&\text{if $\mathbf{D}_{t}(S^{-})\leq\mathbf{X}^{{}^{\prime}}_{t}\leq\mathbf{D}_{t}(S^{+})$, $t=1,\ldots,T$,}\\ \mathbf{D}_{t}(S^{+})&\text{if $\mathbf{X}^{{}^{\prime}}_{t}>\mathbf{D}_{t}(S^{+})$.}\end{cases}

Now 𝐗t′′[𝐃t(S),𝐃t(S+)]\mathbf{X}^{{}^{\prime\prime}}_{t}\in[\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{+})]. From the feasibility of 𝒙\boldsymbol{x}^{{}^{\prime}}, it follows that 𝐗t1𝐗t\mathbf{X}^{{}^{\prime}}_{t-1}\leq\mathbf{X}^{{}^{\prime}}_{t}, t2t\geq 2. Hence and 𝐃t1(S)𝐃t(S)\mathbf{D}_{t-1}(S^{-})\leq\mathbf{D}_{t}(S^{-}) and 𝐃t1(S+)𝐃t(S+)\mathbf{D}_{t-1}(S^{+})\leq\mathbf{D}_{t}(S^{+}), t2t\geq 2, we obtain 𝐗′′t1𝐗′′t\mathbf{X}^{{}^{\prime\prime}}_{t-1}\leq\mathbf{X}^{{}^{\prime\prime}}_{t}, t2t\geq 2 and, in consequence 𝒙′′𝕏\boldsymbol{x}^{{}^{\prime\prime}}\in\mathbb{X}. Furthermore, it is easy to check that A(𝒙)A(𝒙′′)A(\boldsymbol{x}^{{}^{\prime}})\geq A(\boldsymbol{x}^{{}^{\prime\prime}}). By the definition of A(𝒙′′)A(\boldsymbol{x}^{{}^{\prime\prime}}), we have A(𝒙′′)max{F(𝒙′′,S),F(𝒙′′,S+)}A(\boldsymbol{x}^{{}^{\prime\prime}})\geq\max\{F(\boldsymbol{x}^{{}^{\prime\prime}},S^{-}),F(\boldsymbol{x}^{{}^{\prime\prime}},S^{+})\}. We now only need to show that max{F(𝒙′′,S),F(𝒙′′,S+)}F(𝒙^,S)=F(𝒙^,S+)\max\{F(\boldsymbol{x}^{{}^{\prime\prime}},S^{-}),F(\boldsymbol{x}^{{}^{\prime\prime}},S^{+})\}\geq F(\hat{\boldsymbol{x}},S^{-})=F(\hat{\boldsymbol{x}},S^{+}).

Let us focus on a production plan 𝒙^\hat{\boldsymbol{x}} (determined by formulae (14)). Notice that function F(𝒙,S)=t=1TcI(𝐗t𝐃t(S))F(\boldsymbol{x},S^{-})=\sum_{t=1}^{T}c^{I}(\mathbf{X}_{t}-\mathbf{D}_{t}(S^{-})) (resp. F(𝒙,S+)=t=1TcB(𝐃t(S+)𝐗t)F(\boldsymbol{x},S^{+})=\sum_{t=1}^{T}c^{B}(\mathbf{D}_{t}(S^{+})-\mathbf{X}_{t})) are the sum of linear and increasing (resp. decreasing) functions with respect to 𝐗t\mathbf{X}_{t}, cI(𝐗t𝐃t(S))0c^{I}(\mathbf{X}_{t}-\mathbf{D}_{t}(S^{-}))\geq 0 (resp. cB(𝐃t(S+)𝐗t)0c^{B}(\mathbf{D}_{t}(S^{+})-\mathbf{X}_{t})\geq 0) for 𝐗t[𝐃t(S),𝐃t(S+)]\mathbf{X}_{t}\in[\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{+})], t=1,,Tt=1,\ldots,T. Hence, for each t=1,,Tt=1,\ldots,T there exists the intersection point in interval [𝐃t(S),𝐃t(S+)][\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{+})]. It is easy to check that 𝐗^t[𝐃t(S),𝐃t(S+)]\hat{\mathbf{X}}_{t}\in[\mathbf{D}_{t}(S^{-}),\mathbf{D}_{t}(S^{+})] and cI(𝐗^t𝐃t(S))=cB(𝐃t(S+)𝐗^t)c^{I}(\hat{\mathbf{X}}_{t}-\mathbf{D}_{t}(S^{-}))=c^{B}(\mathbf{D}_{t}(S^{+})-\hat{\mathbf{X}}_{t}), t=1,,Tt=1,\ldots,T. Therefore, the points 𝐗^t\hat{\mathbf{X}}_{t}, t=1,,Tt=1,\ldots,T, are the intersection ones and max{F(𝒙′′,S),F(𝒙′′,S+)}F(𝒙^,S)=F(𝒙^,S+)\max\{F(\boldsymbol{x}^{{}^{\prime\prime}},S^{-}),F(\boldsymbol{x}^{{}^{\prime\prime}},S^{+})\}\geq F(\hat{\boldsymbol{x}},S^{-})=F(\hat{\boldsymbol{x}},S^{+}). Proposition 3 shows that F(𝒙^,S)=F(𝒙^,S+)=A(𝒙^)F(\hat{\boldsymbol{x}},S^{-})=F(\hat{\boldsymbol{x}},S^{+})=A(\hat{\boldsymbol{x}}) and we thus get A(𝒙)A(𝒙′′)A(𝒙^)A(\boldsymbol{x}^{{}^{\prime}})\geq A(\boldsymbol{x}^{{}^{\prime\prime}})\geq A(\hat{\boldsymbol{x}}). ∎

Theorem 3.

The proof is almost the same as those given in [47, Theorem 2.5] and [40, Theorem 3]. We will denote by {(𝒙k,ak)}\{(\boldsymbol{x}^{k},a^{k})\} the sequence of optimal solution (𝒙,a)(\boldsymbol{x}^{*},a^{*}) computed in consecutive iterations in Step 6 of Algorithm 1, kk stands for the kk-th iteration. By picking a subsequence, if necessary, the sequence {(𝒙k,ak)}\{(\boldsymbol{x}^{k},a^{k})\} converges to point (𝒙^,a^)(\hat{\boldsymbol{x}},\hat{a}), 𝒙^𝕏\hat{\boldsymbol{x}}\in\mathbb{X}, which follows from the fact that sequence {𝒙k}\{\boldsymbol{x}^{k}\} belong to the bounded and closet set 𝕏+T\mathbb{X}\subseteq\mathbb{R}^{T}_{+} (𝕏\mathbb{X} is a compact set) and {ak}\{a^{k}\} is a nondecreasing sequence bounded above. Similar considerations apply to the sequence {Sk}\{S^{k}\} of worst case scenarios determined in Step 2 of Algorithm 1. The set Γ\Gamma is a closed and bounded (compact) and hence {Sk}\{S^{k}\} converges to S^Γ\hat{S}\in\Gamma. Since scenario cuts are appended to problem RX-ROB, the inequality ak+1F(𝒙k+1,Sk)a^{k+1}\geq F(\boldsymbol{x}^{k+1},S^{k}) holds. By continuity of FF, we have

a^F(𝒙^,S^).\hat{a}\geq F(\hat{\boldsymbol{x}},\hat{S}). (27)

Let us define the set 𝒮w(𝒙)\mathcal{S}^{w}(\boldsymbol{x}) of worst case scenarios for 𝒙X\boldsymbol{x}\in X, i.e. 𝒮w(𝒙)={Sw|Sw=arg maxSΓF(𝒙,S)}\mathcal{S}^{w}(\boldsymbol{x})=\{S^{w}\,|\,S^{w}=\text{arg }\max_{S\in\Gamma}F(\boldsymbol{x},S)\}, which is the point-to-set mapping. The set 𝒮w(𝒙)\mathcal{S}^{w}(\boldsymbol{x}) is nonempty for every for 𝒙X\boldsymbol{x}\in X. By [39, Theorem 1.5], 𝒮w\mathcal{S}^{w} is upper semicontinuous at 𝒙^\hat{\boldsymbol{x}} and so S^𝒮w(𝒙^)\hat{S}\in\mathcal{S}^{w}(\hat{\boldsymbol{x}}). Therefore

A(𝒙^)=maxSΓF(𝒙^,S)=F(𝒙^,S^).A(\hat{\boldsymbol{x}})=\max_{S\in\Gamma}F(\hat{\boldsymbol{x}},S)=F(\hat{\boldsymbol{x}},\hat{S}). (28)

Combining (27) and (28), we obtain a^A(𝒙^)\hat{a}\geq A(\hat{\boldsymbol{x}}). By [39, Lemma 1.2] AA is upper semicontinuous, which yields

A(𝒙k)=F(𝒙k,Sk)ak+ϵ, for some sufficiently large k.A(\boldsymbol{x}^{k})=F(\boldsymbol{x}^{k},S^{k})\leq a^{k}+\epsilon,\text{ for some sufficiently large }k.

This implies that the termination criterion in Step 3 of Algorithm 1 will be fulfilled in a finite number of iterations. ∎

References

  • [1] H. L. Lee, V. Padmanabhan, S. Whang, Information Distortion in a Supply Chain: The Bullwhip Effect, Management Science 43 (1997) 546–558.
  • [2] F. Galasso, C. Thierry, Design of cooperative processes in a customer-supplier relationship: An approach based on simulation and decision theory, Engineering Applications of Artificial Intelligence 22 (2009) 865–881.
  • [3] G. Dudek, Collaborative planning in supply chains: A negotiation-based approach, Springer-Verlag, 2009.
  • [4] R. K. Ireland, C. Crum, Supply Chain Collaboration: How to Implement CPFR and Other Best Collaborative Practices, J. Ross Publishing, Inc., 2005.
  • [5] S. Agrawal, R. N. Senguptaa, K. Shanker, Impact of information sharing and lead time on bullwhip effect and on-hand inventory, European Journal of Operational Research 192 (2009) 576–593.
  • [6] D. Peidro, J. Mula, R. Poler, F. C. Lario, Quantitative models for supply chain planning under uncertainty: a review, The International Journal of Advanced Manufacturing Technology 43 (2009) 400–420.
  • [7] J. R. T. Arnold, S. N. Chapman, L. M. Clive, Introduction to Materials Management, 7th Edition, Prentice Hall, 2011.
  • [8] H. Fargier, C. Thierry, The Use of Possibilistic Decision Theory in Manufacturing Planning and Control: Recent Results in Fuzzy Master Production Scheduling, in: R. Slowiński, M. Hapke (Eds.), Advances in Scheduling and Sequencing under Fuzziness, Springer-Verlag, 2000, pp. 45–59.
  • [9] B. Grabot, L. Geneste, G. Reynoso-Castillo, S. Vérot, Integration of uncertain and imprecise orders in the MRP method, Journal of Intelligent Manufacturing 16 (2005) 215–234.
  • [10] R. Guillaume, C. Thierry, B. Grabot, Modelling of ill-known requirements and integration in production planning, Production Planning and Control.
  • [11] C. Kao, W. K. Hsu, A Single-Period Inventory Model with Fuzzy Demand, Computers & Mathematics with Applications 43 (2002) 841–848.
  • [12] D. Panda, S. Kar, K. Maity, M. Maiti, A single period inventory model with imperfect production and stochastic demand under chance and imprecise constraints, European Journal of Operational Research 188 (2008) 121–139.
  • [13] G. J. Sun, Y. K. Liu, Fuzzy Minimum-Risk Material Procurement Planning Problem, in: Proceedings of the International Conference on Natural Computation, Vol. 7, 2008, pp. 629–633.
  • [14] Y. F. Lan, Y. K. Liu, G. J. Sun, Modeling fuzzy multi-period production planning and sourcing problem with credibility service levels, Journal of Computational and Applied Mathematics 231 (2009) 208–221.
  • [15] J. Mula, R. Poler, J. P. Garcia-Sabater, Material Requirement Planning with fuzzy constraints and fuzzy coefficients, Fuzzy Sets and Systems 159 (2007) 783–793.
  • [16] J. Mula, D. Peidro, R. Poler, The effectiveness of a fuzzy mathematical programming approach for supply chain production planning with fuzzy demand, International Journal of Production Economics 128 (2010) 136–143.
  • [17] R. Tavakkoli-Moghaddam, M. Rabbani, A. H. Gharehgozli, N. Zaerpour, A Fuzzy Aggregate Production Planning Model for Make-to-Stock Environments, in: Proceedings of the International Conference on Industrial Engineering and Engineering Management, 2007, pp. 1609–1613.
  • [18] R. A. Aliev, B. Fazlollahi, B. G. Guirimov, R. R. Aliev, Fuzzy-genetic approach to aggregate production–distribution planning in supply chain management, Information Sciences 177 (2007) 4241–4255.
  • [19] T. F. Liang, H. W. Cheng, Application of fuzzy sets to manufacturing/distribution planning decisions with multi-product and multi-time period in supply chains, Expert Systems with Applications 36 (2009) 3367–3377.
  • [20] D. Peidro, J. Mula, R. Poler, J. L. Verdegay, Fuzzy optimization for supply chain planning under supply, demand and process uncertainties, Fuzzy Sets and Systems 160 (2009) 2640–2657.
  • [21] D. Peidro, J. Mula, M. Jiménez, M. d. M. Botella, A fuzzy linear programming based approach for tactical supply chain planning in an uncertainty environment, European Journal of Operational Research 205 (2010) 65–80.
  • [22] D. Petrovic, R. Roy, R. Petrovic, Supply chain modelling using fuzzy sets, International Journal of Production Economics 59 (1999) 443–453.
  • [23] J. Wang, Y. F. Shu, Fuzzy decision modeling for supply chain management, Fuzzy Sets and Systems 150 (2005) 107–127.
  • [24] D. Dubois, H. Prade, Possibility theory: an approach to computerized processing of uncertainty, Plenum Press, New York, 1988.
  • [25] B. Liu, Uncertainty Theory: An Introduction to its Axiomatic Foundations, Springer-Verlag, 2004.
  • [26] Y. F. Lan, Y. K. Liu, G. J. Sun, Modeling fuzzy multi-period production planning and sourcing problem with credibility service levels, Journal of Computational and Applied Mathematics 231 (2009) 208–221.
  • [27] P. Kouvelis, G. Yu, Robust Discrete Optimization and its applications, Kluwer Academic Publishers, 1997.
  • [28] H. M. Wagner, T. M. Whitin, Dynamic Version of the Economic Lot Size Model, Management Science 5 (1958) 89–96.
  • [29] M. Florian, K. J. Lenstra, A. H. G. Rinnooy Kan, Deterministic Production Planning: Algorithms and Complexity, Management Science 26 (1980) 669–679.
  • [30] A. Drexl, A. Kimms, Lot sizing and scheduling – Survey and extensions, European Journal of Operational Research 99 (1997) 221–235.
  • [31] B. Karimi, S. M. T. Fatemi Ghomi, J. M. Wilson, The capacitated lot sizing problem: a review of models and algorithms, Omega 31 (2003) 365–378.
  • [32] R. K. Ahuja, D. S. Hochbaum, Solving Linear Cost Dynamic Lot Sizing Problems in O(n log n) Time, Operations Research 56 (2008) 255–261.
  • [33] A. Kasperski, M. Kulej, Choosing robust solutions in discrete optimization problems with fuzzy costs, Fuzzy Sets and Systems 160 (2009) 667–682.
  • [34] D. Dubois, H. Prade, When upper probabilities are possibility measures, Fuzzy Sets and Systems 49 (1992) 65–74.
  • [35] D. Dubois, H. Prade, Possibility theory and data fusion in poorly informed environments, Control Engineering Practice 2 (1994) 811–823.
  • [36] D. Dubois, H. Fargier, P. Fortemps, Fuzzy scheduling: Modelling flexible constraints vs. coping with incomplete knowledge., European Journal of Operational Research 147 (2003) 231–252.
  • [37] R. K. Ahuja, T. L. Magnanti, J. B. Orlin, Network Flows: theory, algorithms, and applications, Prentice Hall, Englewood Cliffs, New Jersey, 1993.
  • [38] B. Martos, Nonlinear programming theory and methods, Akadémiai Kiadó, Budapest, 1975.
  • [39] R. Meyer, The Validity of a Family of Optimization Methods, SIAM Journal on Control and Optimization 8 (1970) 41–54.
  • [40] K. Shimizu, E. Aiyoshi, Necessary Conditions for Min-Max Problems and Algorithms by a Relaxation Procedure, IEEE Transactions on Automatic Control 25 (1980) 62–66.
  • [41] M. Inuiguchi, M. Sakawa, Minimax regret solution to linear programming problems with an interval objective function, European Journal of Operational Research 86 (1995) 526–536.
  • [42] H. E. Mausser, M. Laguna, A heuristic to minimax absolute regret for linear programs with interval objective function coefficients, European Journal of Operational Research 117 (1999) 157–174.
  • [43] IBM ILOG CPLEX Optimizer, http://publib.boulder.ibm.com/.
  • [44] D. Dubois, H. Fargier, V. Galvagnon, On latest starting times and floats in activity networks with ill-known durations, European Journal of Operational Research 147 (2003) 266–280.
  • [45] R. R. Yager, A procedure for ordering fuzzy subsets of the unit interval, Information Sciences 24 (1981) 143–161.
  • [46] R. E. Bellman, L. A. Zadeh, Decision-Making in a Fuzzy Environment, Management Science 17 (1970) B–141–B–164.
  • [47] A. M. Geoffrion, Generalized Benders Decomposition, Journal of Optimization Theory and Applications 10 (1972) 237–260.