1 Introduction

In periods of economic crisis, companies have to reduce costs at all stages of the production-storage-distribution system. The general purpose is to seek the most efficient allocation of available resources. The decrease in costs related to the activities of the supply chain promotes an increase in business productivity and net profit. Inventory control and management is a fundamental activity of organizations and it is vital for the development of product sales and the marketing process. This is one of the disciplines most studied by academics to assist in management decision-making related to logistics and the commercial distribution of goods. In recent years, researchers have carried out deeper analyses of inventory models whose main objectives consist in determining the best inventory policies so that customer demand is satisfied and the total inventory cost function is minimized.

The classical inventory models consider that customer demand is known and constant throughout time. However, in some real systems, the demand rate of an item can be time-dependent. Thus, many researchers have analyzed new models where demands vary with time during the inventory cycle. One of these models was developed by Donaldson [6], who studied an inventory problem without shortages for items with a linear demand rate. Ritchie [14] developed an economic ordering quantity model, assuming demand increases linearly. Deb and Chaudhuri [5] studied the model of Donaldson [6] allowing shortages. Goswami and Chaudhuri [7] developed an economic production quantity model for an inventory system with shortages and time-dependent demand. Wu [28] analyzed a system for deteriorating items with time-varying demand and allowing shortages. Sakaguchi [15] studied an inventory system considering time-varying demand. Teng et al. [25] studied a model with quadratic demand rate assuming partial backlogging. Agarwal [3] developed an inventory model with time-dependent demand and reduction delivery policy. Li [10] studied optimal delivery strategies considering carbon emissions, time-dependent demands and demand–supply interactions. More recently, Kumar and Singh [9] analyzed the optimal time policy for deteriorating items of a two-warehouse inventory system with time and stock dependent demand and partial backlogging. Afshar-Nadjafi et al. [2] studied a retailing system with time-dependent demand and utility-sensitive sale price. Schlosser [20] analyzed the joint stochastic dynamic pricing and advertising in an inventory model with time-dependent demand. Tripathi and Kaur [26] presented a linear time-dependent deteriorating inventory model with linearly time-dependent demand rate and inflation. Wang et al. [27] studied a two-stage supply chain in a price-and-time dependent market with demand leakage and producing curve. San José et al. [18] analyzed an inventory system with discrete scheduling period, time-dependent demand and backlogged shortages.

In the classical inventory systems, to satisfy customer demand, it is supposed that items are removed from inventory at a constant rate per unit time. However, in practice, there are other alternatives to withdraw quantities from the inventory. In this line, Naddor [12] introduced the power demand pattern as an appropriate function to describe other ways to take out stock units. This demand pattern extends the inventory system with constant demand rate and can represent other customer demands. Thus, the power demand pattern may model situations where the demanded quantity is lower at the beginning and then goes up over time. It can also represent the contrary situation, where demand is initially high and gradually decreases throughout the inventory cycle. Therefore, the power demand pattern is a good approximation to fit customer demand in inventory modeling.

Several researchers have developed models for different inventory systems considering a power demand pattern during the inventory cycle. See, for example, Rajeswari and Vanjikkodi [13], Sicilia et al. [21], Mishra and Singh [11], Sicilia et al. [22, 23], San José et al. [16, 17, 18], Keshavarzfard et al. [8], Adaraniwon and Omar [1] and San José et al. [19]. In these papers, all the inventory systems refer to a single product. However, in this work, we analyze a multi-item inventory system and present the optimal inventory policy for that system.

In this inventory system for multiple products, demands are time-depending and they follow power patterns. We analyze the model assuming full backlogging, that is, the backorders are satisfied with the arrival of the next replenishment. This means that customers would be willing to wait for the delivery of new merchandise to meet their demands. Taking the assumptions of the inventory model into account, we formulate the mathematical model and calculate the optimal scheduling period, the optimal inventory levels at the beginning of the inventory cycle, the economic lot sizes, the reorder points, the minimum inventory cost and the maximum profit per unit time. In addition, to provide a more complete approach to making management decisions, we calculate the optimal policy when it is assumed that the warehouse used for the storage of products has a limited capacity. This assumption allows more realistic inventory models to be studied.

The main contribution of this work is to determine the optimal inventory policy when the items are jointly replenished and the storage capacity of the products is a constraint of the inventory system. Thus, an algorithmic procedure is developed to obtain the optimal inventory cycle and the optimal inventory level of each product at the beginning of the scheduling period. To the best of our knowledge, this is the first research work that simultaneously assumes the following characteristics: (i) the inventory system considers multiple products, (ii) the demand rates of the items follow power patterns, (iii) shortages are allowed and fully backlogged, and (iv) the warehouse where the products are stored has a limited capacity.

The manuscript is structured as follows. Section 2 introduces the notation used in the article and describes the properties of the inventory system to be studied. Section 3 analyzes the inventory model for multiple items with power demand patterns and full backlogging. The problem of maximizing the profit per unit time for this model is formulated and solved. Section 4 determines the optimal inventory policy for the multi-item system with power demand patterns when there exists a limited storage capacity. An efficient algorithm is proposed to solve this inventory problem. Section 5 presents the optimal policy for the system with a fixed inventory cycle. Numerical examples to illustrate the theoretical results previously obtained are introduced in Sect. 6. Finally, in Sect. 7, we discuss some aspects of the optimal inventory policy proposed in this paper and present some future research lines in inventory management.

2 Notation and characteristics of the inventory system

In this section, we introduce the notation and the hypothesis of the inventory system that is studied throughout the article.

2.1 Notation

The notation for the formulation of the inventory model is the following:

  • N is the number of different items.

  • T represents the length of the scheduling period or inventory cycle (decision variable).

  • Qi denotes the lot size or replenishment quantity of the i-th item, with i = 1,2, …, N.

  • Si represents the inventory level of the item i at the beginning of each inventory cycle, with i = 1,2, …, N. Thus, after the replenishment sizes Qi are included in the inventory, the stocks go up to the levels Si (decision variables).

  • si denotes the replacement level or reorder point of the product i, with i = 1,2, …, N; that is, si = SiQi. Thus, when the inventory level of the item i decreases to the value si, then the inventory would be replenished.

  • Ω is the set of possible inventory policies, that is,

    Ω = {(S1, S2 ,..., SN, T) : 0 < T and 0 ≤ SiQi , with i = 1,2, ..., N}.

  • di is the total demand of the i-th item (i = 1,2, …, N) along the inventory cycle.

  • ri denotes the average demand per inventory cycle of the i-th item, that is, ri = di /T.

  • Di(t) denotes the demand accumulated up to time t for the i-th item, for 0 ≤ t ≤ T.

  • ni represents the index of demand pattern for the i-th item, with ni > 0.

  • Ii(t) is the net inventory level for the i-th item at time t, with 0 ≤ t ≤ T.

  • τi is the time in which the inventory level of the i-th item is zero.

  • A represents the replenishing or ordering cost.

  • W is the total space available in the warehouse to store the items.

  • vi designates the storage space required per unit of the i-th item, with i = 1,2, …, N.

  • ci denotes the unit purchasing cost of the i-th item, for i = 1,2, …, N.

  • pi represents the unit selling price of the i-th item, for i = 1,2, …, N.

  • hi is the holding cost per unit time of a unit in stock of the i-th item, hi > 0, for i = 1,2, …,N.

  • wi denotes the unit backlogging cost per unit time of the i-th article, wi > 0 for i = 1,2, …, N.

2.2 Assumptions

The inventory model is based on the following assumptions:

  • The inventory under consideration is a periodic review system.

  • The inventory system considers various different items.

  • Items are jointly replenished every certain time-period.

  • The replenishment is instantaneous for all the products.

  • Shortages are allowed and fully backlogged.

  • The lead time of each item is considered null.

  • The objective is to maximize the total profit per unit of time.

  • Demand accumulated up to time t for the i-th item is time-dependent and is given by

    $$ D_{i} \left( t \right) = d_{i} \left( \frac{t}{T} \right)^{{1/n_{i} }} = r_{i} T\left( \frac{t}{T} \right)^{{1/n_{i} }} , \quad i = 1,2,...,N $$
    (1)

For the i-th article, ni is the index of demand pattern. Note that if ni > 1, then a greater part of demand occurs at the beginning of the period. If ni = 1, the demand rate is constant throughout the scheduling period. Finally, when ni < 1, a larger portion of demand occurs toward the end of the inventory cycle.

The demand rate at time t (with 0 < t < T) for the i-th item (i = 1,2, ..., N) is

$$ D_{i}^{^{\prime}} \left( t \right) = \frac{{r_{i} }}{{n_{i} }}\left( \frac{t}{T} \right)^{{\frac{{1 - n_{i} }}{{n_{i} }}}} $$
(2)

This demand rate is known as the power demand pattern. Several authors, such as Naddor [12], Rajeswari and Vanjikkodi [13], Mishra and Singh [11], San José et al. [16, 17], Keshavarzfard et al. [8], and San José et al. [19] have studied inventory systems considering this type of demand.

The net inventory level Ii(t) for the i-th item at time t, with 0 ≤ t < T, is deduced from the stock level at the beginning of the inventory cycle less the demand accumulated up to time t, that is,

$$ I_{i} \left( t \right) = S_{i} - d_{i} \left( \frac{t}{T} \right)^{{1/n_{i} }} ,\quad 0 \le t < T $$
(3)

The net inventory level Ii(t) is a continuous and differentiable function on the time interval [0,T). This function starts with Ii(0) = Si units and is decreasing throughout the inventory cycle. Thus, there exists a time τi in which the inventory level of the i-th product drops to zero, that is, Ii(τi) = 0. Next, the inventory level continues to decrease and shortages occur.

At the end of the cycle, the inventory is replenished with a lot size of Qi units when the inventory level of the item i decreases to the value si. Thus, the quantity -si represents demand for the i-th item which is not met (backorders). The replenishment quantity increases the stock up to level Si and the behavior of the inventory level is repeated on the next scheduling period.

Figure 1 shows the fluctuations of the inventory level for the i-th product along the inventory cycle, when demand follows a power demand pattern. The dashed lines show the graphic of the net inventory level for the i-th item when the power demand pattern is ni = 1 and the dotted curves draw the net inventory level when ni < 1.

Fig. 1
figure 1

Graphic of the net inventory level for the i-th item considering a power demand pattern

In the following paragraphs we analyze the inventory model for the system with multiple products and present the optimal inventory policy when shortages are fully backordered. Then, we develop the optimal policy assuming that a constraint on the storage capacity is also incorporated to the model.

3 Inventory model for multiple items with power demand patterns and fully backlogged shortages

Let us consider an inventory system with N items where the demand of each item follows a power pattern. Shortages are allowed and completely backlogged. The replacement of the products is carried out jointly every T time units. In this system, demand di along the inventory cycle is equal to riT for each item i = 1,2, …, N. The replenishing quantity or lot size Qi for the i-th item must be equal to the demanded quantity in the period T. Thus, Qi = di = riT, for i = 1,2, …, N. As shortages are allowed in this system, we have si ≤ 0, for i = 1,2, …, N. Thus, the maximum inventory levels Si satisfy 0 ≤ Si ≤ Qi, because Qi = Sisi, for i = 1,2, …, N.

The evolution of the inventory level of any item is as follows. At the beginning of the inventory cycle there are Si units in stock because the inventory has recently been replenished, but as time passes and considering the effect of demand, the inventory decreases until shortage occurs. Then it stays on shortage until the end of the inventory cycle and a new replenishment of products is added to the inventory.

Let IH(Si,T) be the average amount in inventory and let IB(Si,T) be the average shortage or backlogging for item i, with i = 1,2, …, N. If τi denotes the exact point in time when the i-th item inventory level drops to zero, that is, Ii(τii) = 0, then from (3) we have

$$ \tau_{i} = \frac{{S_{i}^{{n_{i} }} }}{{r_{i}^{{n_{i} }} (T)^{{n_{i} - 1}} }}{, }\quad i = 1,2,...,N{ } $$
(4)

Next, we have to determine the average amount carried in inventory IH(Si,T) and the average shortage IB(Si,T) for each item i = 1,2, …, N. Evidently, these quantities depend on the scheduling period T and on the initial stock level Si.

Thus, from (3) and (4), the average amount held in stock of the i-th item IH(Si,T) is given by

$$ I_{H} \left( {S_{i} ,T} \right) = \frac{1}{T}\mathop \int \limits_{0}^{{\tau_{i} }} I_{i} \left( t \right)dt = \frac{1}{T}\mathop \int \limits_{0}^{{\tau_{i} }} \left( {S_{i} - r_{i} T\left( \frac{t}{T} \right)^{{1/n_{i} }} } \right)dt = \frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} $$
(5)

The average shortage in inventory IB(Si,T) for that i-th item is

$$ \begin{aligned} I_{B} \left( {S_{i} ,T} \right) & = \frac{1}{T}\mathop \int \limits_{{\tau_{i} }}^{T} ( - I_{i} \left( t \right))dt = \frac{1}{T}\mathop \int \limits_{{\tau_{i} }}^{T} \left( {r_{i} T\left( \frac{t}{T} \right)^{{1/n_{i} }} - S_{i} } \right)dt \\ & = \frac{{n_{i} r_{i} T}}{{n_{i} + 1}} + \frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} - S_{i} { } \\ \end{aligned} $$
(6)

For each item i = 1,2, …, N, the holding cost per unit time is hiIH(Si,T) and the backlogging cost per unit time is wiIB(Si,T). Thus, the total holding cost is given by

$$ C_{1} \left( {S_{1} , \ldots ,S_{N} ,T} \right) = \mathop \sum \limits_{i = 1}^{N} h_{i} I_{H} \left( {{\text{S}}_{{\text{i}}} ,T} \right) = \mathop \sum \limits_{i = 1}^{N} h_{i} \frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} $$
(7)

and the total backlogging cost is

$$ C_{2} \left( {S_{1} , \ldots ,S_{N} ,T} \right) = \mathop \sum \limits_{i = 1}^{N} w_{i} I_{B} \left( {S_{i} ,T} \right) = \mathop \sum \limits_{i = 1}^{N} w_{i} \left[ {\frac{{n_{i} r_{i} T}}{{n_{i} + 1}} + \frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} - S_{i} } \right] $$
(8)

The replenishing cost is C3(T) = A/T. Moreover, the purchasing cost per unit time is the sum of the purchasing costs of the N items divided by the inventory cycle T, that is

$$ C_{4} = \mathop \sum \limits_{i = 1}^{N} c_{i} \frac{{Q_{i} }}{T} = \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} $$
(9)

Next, we can calculate the total cost function C(S1,…,SN,T) per unit time related to inventory management. Obviously, this cost function is the sum of the holding and backlogging costs of all items, plus the replenishing cost and the purchasing cost. Thus, the total inventory cost per time unit is

$$ \begin{aligned}C\left( {S_{1} , \ldots ,S_{N} ,T} \right) &= \mathop \sum \limits_{i = 1}^{N} (h_{i} + w_{i} )\frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} \\ &+ \mathop \sum \limits_{i = 1}^{N} w_{i} \left[ {\frac{{n_{i} r_{i} T}}{{n_{i} + 1}} - S_{i} } \right] + \frac{A}{T} + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} \end{aligned}$$
(10)

Since the product sales revenue per unit time is

$$ \mathop \sum \limits_{i = 1}^{N} p_{i} \frac{{Q_{i} }}{T} = \mathop \sum \limits_{i = 1}^{N} p_{i} r_{i} $$
(11)

the profit or gain G(S1,…, SN, T) per unit time is given by

$$ G\left( {S_{1} , \ldots ,S_{N} ,T} \right) = \mathop \sum \limits_{i = 1}^{N} p_{i} r_{i} - C\left( {S_{1} , \ldots ,S_{N} ,T} \right) $$
(12)

The aim is to maximize the profit per unit time. From (12), it is obvious that maximizing the function \(G\left( {S_{1} , \ldots ,S_{N} ,T} \right)\) is equivalent to minimizing the inventory cost per unit time.

Thus, our objective is to determine the optimal inventory cycle and the optimal values of the initial inventory levels Si (i = 1,2, …, N) such that the cost function C(S1,…, SN, T), given in (10), is minimized on the region Ω = {(S1,S2,…,SN,T): 0 < T and 0 ≤ Si ≤ riT, with i = 1,2, …, N}.

3.1 Optimal policy

In order to find the solution that minimizes the inventory cost per unit time shown in (10), we first prove the convexity of the inventory cost function.

Theorem 1

  1. (i)

    The inventory cost C(S1,…, SN, T) proposed in (10) is a strictly convex function on the region \({\mathbb{R}}_{ > 0}^{{{\text{N}} + 1}} =\){(S1,S2,…,SN,T): T > 0, Si > 0, with i = 1,2, …, N}.

  2. (ii)

    The optimal scheduling period is

    $$ T_{0} = \sqrt {\frac{A}{{\mathop \sum \nolimits_{i = 1}^{N} \frac{{w_{i} n_{i} r_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right]}}} $$
    (13)
  3. (iii)

    The optimal inventory levels that minimize the inventory cost function C(S1,…, SN, T) are given by

    $$ S_{i}^{0} = r_{i} \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} \sqrt {\frac{A}{{\mathop \sum \nolimits_{i = 1}^{N} \frac{{w_{i} n_{i} r_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right]}}} , i = 1,2,...,N $$
    (14)

Moreover, the point \(\left({S}_{1}^{0},\dots ,{S}_{N}^{0},{T}_{0}\right)\in\Omega .\)

Proof

  1. (i)

    The cost function (10) is a twice differentiable function. Thus, the first partial derivatives of the cost function C(S1,…, SN, T) with respect to the variables Si (i = 1,2, …, N) and T are given by:

    $$ \frac{\partial C}{{\partial S_{i} }} = \left( {h_{i} + w_{i} } \right)\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} - w_{i} ,\quad i = 1,2,...,N $$
    (15)
    $$ \frac{\partial C}{{\partial T}} = \mathop \sum \limits_{i = 1}^{N} \frac{{ - n_{i} }}{{n_{i} + 1}}\left( {h_{i} + w_{i} } \right)\left( {\frac{{S_{i} }}{{r_{i} }}} \right)^{{n_{i} }} \left( {\frac{{S_{i} }}{{T^{{n_{i} + 1}} }}} \right) + \mathop \sum \limits_{i = 1}^{N} \frac{{n_{i} r_{i} w_{i} }}{{n_{i} + 1}} - \frac{A}{{T^{2} }}{ } $$
    (16)

    The second partial derivatives of the cost function C(S1,..., SN, T) are

    $$ \frac{{\partial^{2} C}}{{\partial S_{i}^{2} }} = \left( {h_{i} + w_{i} } \right)\frac{{n_{i} S_{i}^{{n_{i} - 1}} }}{{(r_{i} T)^{{n_{i} }} }} > 0,\quad i = 1,2,...,N $$
    (17)
    $$ \frac{{\partial^{2} C}}{{\partial S_{i} \partial S_{j} }} = {0, }\quad i,j = 1,2,...,N{\text{ and }}i \ne j{ } $$
    (18)
    $$ \frac{{\partial^{2} C}}{{\partial T^{2} }} = \mathop \sum \limits_{i = 1}^{N} (h_{i} + w_{i} )\left( {\frac{{S_{i} }}{{r_{i} }}} \right)^{{n_{i} }} \left( {\frac{{n_{i} S_{i} }}{{T^{{n_{i} + 2}} }}} \right) + \frac{2A}{{T^{3} }} > 0 $$
    (19)
    $$ \frac{{\partial^{2} C}}{{\partial T\partial S_{i} }} = \left( {h_{i} + w_{i} } \right)\left( {\frac{{S_{i} }}{{r_{i} }}} \right)^{{n_{i} }} \frac{{( - n_{i} )}}{{T^{{n_{i} + 1}} }} < 0,\quad i = 1,2,...,N $$
    (20)

    Thus, from (17) to (20), we have \(\det \left( {H_{j} } \right) = \mathop \prod \nolimits_{i = 1}^{j} \left( {h_{i} + w_{i} } \right)\frac{{n_{i} S_{i}^{{n_{i} - 1}} }}{{(r_{i} T)^{{n_{i} }} }} > {0,}\) for j = 1,2, …, N, where Hj is the leading principal minor of order j of the Hessian matrix and

    $$ {\text{det}}\left( {H_{N + 1} } \right) = \frac{2A}{{T^{3} }}\mathop \prod \limits_{i = 1}^{N} \left( {h_{i} + w_{i} } \right)\frac{{n_{i} S_{i}^{{n_{i} - 1}} }}{{(r_{i} T)^{{n_{i} }} }} > {0 } $$
    (21)

    Therefore, as the Hessian matrix is positive definite, the cost function (10) is a strictly convex function on the region \({\mathbb{R}}_{ > 0}^{{{\text{N}} + 1}}\).

  2. (ii)

    Equating the partial derivatives (15) to zero, we get

    $$ S_{i} = r_{i} T\left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} ,\quad i = 1,2,...,N $$
    (22)

    Substituting the variables Si, with i = 1,2, ..., N, into Eq. (16) and setting this equation to zero, we obtain the optimal scheduling period T0 given by (13).

  3. (iii)

    Now, substituting the optimal scheduling period T0 in (22), we get the formula (14) for the optimal inventory levels Si0, with i = 1,2, …, N.

Note that both the inventory cycle T0 and the optimal inventory levels Si0 are always strictly positive values (T0 > 0 and Si0 > 0, for i = 1, ..., N), because the input parameters ri, wi and hi are strictly positive values for all items.

In addition, these solutions satisfy 0 < Si0 < riT0, for all i = 1,2, ..., N. Thus, the optimal inventory policy (S10, S20,.., SN0, T0) belongs to the interior of the region Ω.□

The following result presents the minimum inventory cost and the optimal lot sizes.

Corollary 1

  1. (i)

    The minimum inventory cost per unit time is given by

    $$ C_{0} = \sqrt {4A\mathop \sum \limits_{i = 1}^{N} \frac{{w_{i} n_{i} r_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right]} { + }\mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} { } $$
    (23)
  2. (ii)

    The economic ordering quantities or optimal lot sizes are

    $$ Q_{i}^{0} = r_{i} \sqrt {\frac{A}{{\mathop \sum \nolimits_{i = 1}^{N} \frac{{w_{i} n_{i} r_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right]}}} {, }i = 1,2,...,N{ } $$
    (24)

Proof

(i) Substituting inventory levels given by (22) into Eq. (10), we get the total inventory cost C0.

$$ \begin{aligned} C_{0} & = C\left( {S_{1}^{0} , \ldots ,S_{N}^{0} ,T_{0} } \right) \\ & = \mathop \sum \limits_{i = 1}^{N} (h_{i} + w_{i} )\frac{{r_{i} T_{0} }}{{(n_{i} + 1)}}\frac{{w_{i} }}{{(h_{i} + w_{i} )}}\left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{\frac{1}{{n_{i} }}}} \\ & \quad + \mathop \sum \limits_{i = 1}^{N} w_{i} r_{i} T_{0} \left[ {\frac{{n_{i} }}{{n_{i} + 1}} - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{\frac{1}{{n_{i} }}}} } \right] + A\frac{1}{{T_{0} }} + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} \\ & = \mathop \sum \limits_{i = 1}^{N} w_{i} r_{i} T_{0} \frac{{n_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right] + A\frac{1}{{T_{0} }} + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} \\ \end{aligned} $$
(25)

Now, substituting T0 given by (13) into Eq. (25) leads to the minimum cost given by (23).

(ii) The optimal lot sizes or economic order quantities are calculated by

$$ Q_{i}^{0} = r_{i} T_{0} , {\text{ for }}i{ } = { }1,2,...,N.{ } $$
(26)

Substituting the value of T0 given by (13) in Eq. (26), we obtain the economic ordering quantities given by (24).□

Notice that the optimal reorder points si0, for i = 1,2, …, N, are calculated as si0 = Si0Qi0, with the initial levels Si0 given by (14) and the optimal lot sizes Qi0 given in (24). That is,

$$ s_{i}^{0} = r_{i} \left[ {\left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} - 1} \right]\sqrt {\frac{A}{{\mathop \sum \nolimits_{i = 1}^{N} \frac{{w_{i} n_{i} r_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right]}}} { , }\quad i = 1,2,...,N $$
(27)

From (12) and (23), the maximum profit or gain G0 per unit time is given by

$$ G_{0} = G\left( { S_{1}^{0} ,...,S_{N}^{0} ,T_{0} } \right) = \mathop \sum \limits_{i = 1}^{N} p_{i} r_{i} - { }C_{0} { } $$
(28)

This is the best solution for the inventory problem when either there is no limit to the capacity of the storage, or when the optimal inventory levels do not fill the available warehouse capacity.

3.2 Particular cases

  1. (i)

    If we have only a single article, that is, if we assume N = 1, then the optimal policy given by (13) and (14) is equivalent to the optimal policy for an inventory system with fully backlogged shortages and power demand pattern (see [21]).

  2. (ii)

    In the particular case when the demand patterns of the N items are uniform, that is, ni = 1, for all i = 1,2, …, N, the inventory policy obtained coincides with the optimal policy for an inventory system with several items, constant demands, allowing shortages and assuming that affected customers are willing to wait for the next replenishment (see [12]).

  3. (iii)

    Finally, considering both conditions simultaneously, that is, if N = 1 and n1 = 1, then the optimal policy obtained coincides with the efficient policy for the inventory system with a single article, instantaneous replenishment, fully backlogged shortages, and uniform demand (see [4], or [29]).

4 Inventory model for multiple items with power demand patterns, backlogged shortages and limited storage

In this section, we study the optimal policy for the multi-item inventory system with power demands and full backlogging, assuming that the total storage space available in the warehouse is limited. Let W be the total available space in the warehouse for all N items. Taking into account that vi represents the unit space of item i, with i = 1,2, …, N, and Si is the initial inventory level of the i-th item, then the total volume of the N items must be less than or equal to the available storage space W. Thus, the following condition must be satisfied

$$ \mathop \sum \limits_{i = 1}^{N} v_{i} S_{i} \le W{ } $$
(29)

The objective function C(S1,…,SN,T) for this inventory system is given by (10), but we additionally consider the constraint of limited storage given in (29). Thus, the new inventory problem is

$$ \begin{aligned} {\text{Min }}C\left( {S_{1} , \ldots ,S_{N} ,T} \right) &= \mathop \sum \limits_{i = 1}^{N} \left( {h_{i} + w_{i} } \right)\frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} + \mathop \sum \limits_{i = 1}^{N} w_{i} \left[ {\frac{{n_{i} r_{i} T}}{{n_{i} + 1}} - S_{i} } \right] \\ &\quad + \frac{A}{T} + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} \end{aligned} $$
$$ \begin{array}{*{20}l} {\text{subject to }} \hfill & {\mathop \sum \limits_{i = 1}^{N} v_{i} S_{i} \le W} \hfill \\ {} \hfill & 0 \le {S_{i} { } \le r_{i} T,\quad {\text{ for }}i{ } = 1,{ }2, \ldots ,{ }N} \hfill \\ {} \hfill & \begin{gathered} {0 < }T \hfill \\ \hfill \\ \end{gathered} \hfill \\ \end{array} { } $$
(30)

4.1 Optimal policy

The objective function of the above problem is convex and the constraints are linear with respect to the decision variables, while the feasible region is a compact set. So, the problem (30) has a unique optimal solution.

If the inventory levels Si0, with i = 1, 2, …, N, determined by (14), satisfy the constraint (29), then they will be the optimal inventory levels because these values meet the conditions of the problem (30). Otherwise, if the levels Si0, with i = 1,2, …, N, do not satisfy the limited storage constraint, as the cost function C(S1,…,SN,T) is convex, then it is clear that the optimal inventory levels for the system with limited storage must hold the equality in Eq. (29).

We can now use the Lagrangian multipliers technique to obtain the optimal inventory cycle T* and the optimal inventory levels Si*, for i = 1,2, …, N. From the problem (30), the Lagrangian function L is formed by the following expression

$$ L\left( {S_{1} , \ldots ,S_{N} ,T,\lambda } \right) = C\left( {S_{1} ,S_{2} ,...,S_{N} ,T} \right) + \lambda \left( {\mathop \sum \limits_{i = 1}^{N} v_{i} S_{i} - W} \right) $$
(31)

where λ ≥ 0 is the Lagrangian multiplier. Hence, for an optimal solution, we have to calculate the partial derivatives with respect to the variables Si (for i = 1,2, …, N), T and λ. This leads to

$$ \frac{\partial L}{{\partial S_{i} }} = \left( {h_{i} + w_{i} } \right)\left( {\frac{{S_{i} }}{{r_{i} T}}} \right)^{{n_{i} }} - w_{i} + \lambda v_{i} ,\quad{i} = 1,2,...,N $$
(32)
$$ \frac{\partial L}{{\partial T}} = \mathop \sum \limits_{i = 1}^{N} \frac{{ - n_{i} }}{{n_{i} + 1}}\left( {h_{i} + w_{i} } \right)\left( {\frac{{S_{i} }}{{r_{i} }}} \right)^{{n_{i} }} \left( {\frac{{S_{i} }}{{T^{{n_{i} + 1}} }}} \right) + \mathop \sum \limits_{i = 1}^{N} \frac{{n_{i} r_{i} w_{i} }}{{n_{i} + 1}} - \frac{A}{{T^{2} }}{ } $$
(33)
$$ \frac{\partial L}{{\partial \lambda }} = \mathop \sum \limits_{i = 1}^{N} v_{i} S_{i} - W{ } $$
(34)

Equating (32) to zero, we obtain

$$ S_{i} = r_{i} T\left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} ,\quad i = 1, 2, \ldots , N $$
(35)

Substituting Si given by (35) into Eq. (33) and setting this equation to zero, we have

$$ T = \sqrt {\frac{A}{{\mathop \sum \nolimits_{i = 1}^{N} \frac{{n_{i} r_{i} }}{{n_{i} + 1}}\left[ {w_{i} - \left( {h_{i} + w_{i} } \right)\left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right)^{{1 + 1/n_{i} }} } \right]}}} $$
(36)

Note that, as λ ≥ 0, the inventory level Si given by (35) satisfies Si < riT, for each item i. Moreover, as these inventory level Si must be greater than or equal to zero, then, from (35), λ has to be less than or equal to wi/vi, for i = 1,2,…,N. However, if λ were greater than wi/vi, for some i, then Si must be zero. As, in this case, the items must occupy the entire storage capacity W, the multiplier λ must satisfy the equation f(λ) = 0, where f(λ) is the function given by

$$ f\left( {\lambda} \right) = \mathop \sum \limits_{i \in I} v_{i} r_{i} \left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right)^{{\frac{1}{{n_{i} }}}} - \frac{W}{\sqrt A }\sqrt {\mathop \sum \limits_{i = 1}^{N} \frac{{n_{i} r_{i} w_{i} }}{{n_{i} + 1}} - \mathop \sum \limits_{i \in I} \frac{{n_{i} r_{i} \left( {h_{i} + w_{i} } \right)}}{{n_{i} + 1}}\left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right)^{{\frac{{1 + n_{i} }}{{n_{i} }}}} } $$
(37)

with \(I = \left\{ {i : w_{i} - \lambda v_{i} \ge 0} \right\}.\) Thus, we have to solve the above non-linear equation f(λ) = 0 to determine the optimal value λ* of the variable λ. Note that f is a continuous and strictly decreasing function with \(f\left( 0 \right) = \frac{1}{{T_{0} }}\left( {\mathop \sum \nolimits_{i = 1}^{N} v_{i} r_{i} S_{i}^{0} - W} \right)\) > 0 and \(f\left( {\lambda} \right) = - \frac{W}{\sqrt A }\sqrt {\mathop \sum \nolimits_{i = 1}^{N} \frac{{n_{i} r_{i} w_{i} }}{{n_{i} + 1}}} < 0\) for λ ≥ \(\mathop {\max }\nolimits_{1 \le i \le N} \{ w_{i} /v_{i}\)}. Thus, the equation f(λ) = 0 has a unique positive solution λ* on the interval [0, \(\mathop {\max }\nolimits_{1 \le i \le N} \{ w_{i} /v_{i}\)}].

Next, the optimal inventory cycle T* can be calculated as

$$ T^{*} = \sqrt {\frac{A}{{\mathop \sum \nolimits_{i = 1}^{N} \frac{{n_{i} r_{i} w_{i} }}{{n_{i} + 1}} - \mathop \sum \nolimits_{{i \in I^{\prime}}} \frac{{n_{i} r_{i} \left( {h_{i} + w_{i} } \right)}}{{n_{i} + 1}}\left( {\frac{{w_{i} - \lambda^{*} v_{i} }}{{h_{i} + w_{i} }}} \right)^{{\frac{{1 + n_{i} }}{{n_{i} }}}} }}} $$
(38)

where \(I^{\prime} = \left\{ {i :w_{i} - \lambda^{*} v_{i} \ge 0} \right\}\). The optimal levels are given by Si* = 0 for i ∉ \(I^{\prime}\) and, by Eq. (35), for i ∈ I', with λ = λ* and T = T*. The economic order quantities are given by Qi* = riT*, for i = 1,2, …, N, the reorder points are calculated by si* = Si* − Qi*, for i = 1,2, …, N and the minimum inventory cost is C* = C(S1*,…,SN*,T*). Finally, the maximum profit G* per unit time is given by

$$ G^{*} = G\left( {S_{1}^{*} ,...,S_{N}^{*} ,T^{*} } \right) = \mathop \sum \limits_{i = 1}^{N} p_{i} r_{i} - { }C^{*} { } $$
(39)

Note that the optimal inventory levels Si* are calculated after the optimal value λ* of the multiplier is obtained solving the equation f(λ) = 0. Next, Si* = 0 if wi/vi ≤ λ* and Si* > 0 otherwise. Thus, once an item i corresponds to the level Si = 0, then that item can never become Si > 0 for increased values of λ. Therefore, the levels Si = 0 are binding constraints in this problem.

Relying on the previous results, we present the following efficient algorithm to solve the inventory problem formulated in (30) for the multi-item system with power demand patterns, backlogged shortages and limited storage. The minimum of C(S1,…,SN,T) subject to the constraints is also provided by this procedure.

Algorithm 1

Step 1. Calculate T0 by Eq. (13) and \(S_{i}^{0}\) by using Eq. (14), for every i = 1, …, N.

Step 2. If \(\mathop \sum \nolimits_{i = 1}^{N} v_{i} S_{i}^{0} \le W,\) then \(S_{i}^{*} = S_{i}^{0} ,{\text{ for }}i = 1,2,...,N\), and T* = T0. Go to Step 7.

Else, go to Step 3.

Step 3. Let λ0 = 0.

Step 4. Rearrange the wi/vi values into a sequence of N non-decreasing numbers and let us designate them by λi, with i = 1,2, …, N. Thus, λi is the i-th smallest value.

Let λk be the first value of the set {λ1, λ2, …, λN} such that f(λk) ≤ 0, with f(λ) given by (37).

Step 5. Obtain \(\lambda^{*} = \mathop {arg}\nolimits_{{\lambda_{k - 1} \,<\, \lambda\,\le\,\lambda_{k} }} \left\{ {f\left( \lambda \right) = 0} \right\}\).

Step 6. Calculate T* by using Eq. (38).

For i = 1 to N do

If wi/vi ≥ λk then \(S_{i}^{*} = r_{i} T^{*} \left( {\frac{{w_{i} - \lambda^{*} v_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }}\).

else \(S_{i}^{*} = 0\).

Step 7. The economic lot sizes are \(Q_{i}^{*} = r_{i} T^{*} ,{\text{ for }}i = 1,2,...,N.{ }\).

The reorder points are calculated by \(s_{i}^{*} = S_{i}^{*} - r_{i} T^{*} ,{\text{ for }}i = 1,2,...,N.{ }\).

From (10), calculate the minimum inventory cost \(C^{*} = C\left( {S_{1}^{*} ,...,S_{N}^{*} ,T^{*} } \right).\)

From (12), obtain the maximum profit per unit time \(G^{*} = G\left( {S_{1}^{*} ,...,S_{N}^{*} ,T^{*} } \right).\)

Remark 1.

Note that the function f(λ) given by (37) is continuous and strictly decreasing on the interval [λ0, λN], with f(λ0) > 0 and f(λN) < 0. In step 4 of the previous algorithm, the interval (λk-1, λk], where f(λk-1) > 0 ≥ f(λk), is determined. Within that interval there is the unique root of the equation f(λ) = 0.

This non-linear equation f(λ) = 0, with λ in the interval (λk-1, λk], can be solved using a numerical approach such as the Newton–Raphson method (see e.g., [24]).

5 The inventory model with fixed scheduling period

In this section, we analyze the inventory system for multiple products, assuming power demand patterns, a fixed inventory cycle, full backlogging and limited storage capacity. Therefore, we assume here that the length of the inventory cycle is a known constant TF.

We can now state some results analogous to those of Sect. 3. Thus, in this case, the total inventory cost per time unit is

$$ C_{F} \left( {S_{1} , \ldots ,S_{N} } \right) = \mathop \sum \limits_{i = 1}^{N} (h_{i} + w_{i} )\frac{{S_{i} }}{{n_{i} + 1}}\left( {\frac{{S_{i} }}{{r_{i} T_{F} }}} \right)^{{n_{i} }} + \mathop \sum \limits_{i = 1}^{N} w_{i} \left[ {\frac{{n_{i} r_{i} T_{F} }}{{n_{i} + 1}} - S_{i} } \right] + \frac{A}{{T_{F} }}{ } + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} $$
(40)

Note that the cost function CF(S1,…, SN) is the sum of N convex functions of Si. Therefore, it is a convex function on the compact ΩF = {(S1,S2,…,SN): 0 ≤ Si ≤ riTF, with i = 1,2, …, N} and has a unique optimal solution.

An analysis similar to that developed in the proof of Theorem 1 shows that the optimal inventory levels that minimize the function CF(S1,…, SN), when the warehouse capacity is not considered, are now given by

$$ S_{Fi}^{0} = r_{i} T_{F} \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} {, }\quad i = 1,2,...,N{ } $$
(41)

Substituting the inventory levels given by (41) into Eq. (40), we get the total inventory cost CF0

$$ C_{F0} = C_{F} \left( {S_{F1}^{0} , \ldots ,S_{FN}^{0} } \right) = \mathop \sum \limits_{i = 1}^{N} w_{i} r_{i} T_{F} \frac{{n_{i} }}{{n_{i} + 1}}\left[ {1 - \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } \right] + A\frac{1}{{T_{F} }} + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} $$
(42)

and, evidently, the optimal lot sizes can be calculated as

$$ Q_{Fi}^{0} = r_{i} T_{F} , {\text{ for }}i{ } = { }1,2,...,N.{ } $$
(43)

Let us now consider that the total available storage space in the warehouse is limited by W. We can proceed analogously to Sect. 4.1. Hence, if the levels \(S_{Fi}^{0}\), with i = 1,2, …, N, satisfy the constraint (29), then they will be the optimal inventory levels. Otherwise, applying arguments similar to those used in Sect. 4.1, we can define the new function

$$ f_{F} \left( \lambda \right) = \mathop \sum \limits_{i \in I} v_{i} r_{i} T_{F} \left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right)^{{\frac{1}{{n_{i} }}}} - W, $$
(44)

with \(I = \left\{ {i :w_{i} - \lambda v_{i} \ge 0} \right\}\) and we can then deduce that the optimal inventory levels are given by

$$ S_{Fi} = \left\{ {\begin{array}{*{20}c} {r_{i} T_{F} \left( {\frac{{w_{i} - \lambda_{F}^{*} v_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }} } & {{\text{if}}\,i \in I_{F} } \\ 0 & {{\text{if}}\,i \notin I_{F} } \\ \end{array} } \right.{ } $$
(45)

where \(\lambda_{F}^{*} = arg\left\{ {f_{F} \left( \lambda \right) = 0} \right\}\) and \(I_{F} = \left\{ {i :w_{i} - \lambda_{F}^{*} v_{i} \ge 0} \right\}.\)

We now summarize these results to derive the following algorithm, which can be used to find the optimal policies when the inventory cycle is a fixed and known parameter TF.

Algorithm 2

Step 1. For every i = 1, …, N, calculate \(S_{Fi}^{0}\) by using Eq. (41).

Step 2. If \(\mathop \sum \nolimits_{i = 1}^{N} v_{i} S_{Fi}^{0} \le W,\) then \(S_{Fi}^{*} = S_{Fi}^{0} ,{\text{ for }}i = 1,2,...,N.\) Go to Step 7.

Else, go to Step 3.

Step 3. Let λ0 = 0.

Step 4. Rearrange the wi/vi values into a sequence of N non-decreasing numbers and let us designate them by λi, with i = 1,2, …, N. Thus, λi is the i-th smallest value.

Let λk be the first value of the set {λ1, λ2, …, λN} such that fFk) ≤ 0, with fF(λ) given by (44).

Step 5. Obtain \(\lambda_{F}^{*} = \mathop {arg}\nolimits_{{\lambda_{k - 1} < \,\lambda\, \le \, \lambda_{k} }} \left\{ {f \left( \lambda \right) = 0} \right\}\).

Step 6. Calculate T* by using Eq. (38).

For i=1 to N do

If wi/vi ≥ λk then \(S_{Fi}^{*} = r_{i} T_{F} \left( {\frac{{w_{i} - \lambda_{F}^{*} v_{i} }}{{h_{i} + w_{i} }}} \right)^{{1/n_{i} }}\).

else \(S_{Fi}^{*} = 0\).

Step 7. The economic lot sizes are \(Q_{Fi}^{*} = r_{i} T_{F} ,{\text{ for }}i = 1,2,...,N.{ }\).

The reorder points are calculated by \(s_{Fi}^{*} = S_{Fi}^{*} - r_{i} T_{F} ,{\text{ for }}i = 1,2,...,N.{ }\).

From (40), calculate the minimum inventory cost \(C_{F}^{*} = C_{F} \left( {S_{F1}^{*} ,...,S_{FN}^{*} } \right).\)

Obtain the maximum profit per unit time \(G_{F}^{*} = \mathop \sum \nolimits_{i = 1}^{N} p_{i} r_{i} - C_{F}^{*} .\)

Next, two particular cases are analyzed.

(i) Let us assume that the demand patterns are uniform, that is, ni = 1, for all i = 1,2, …, N. If \(\mathop \sum \limits_{i = 1}^{N} v_{i} S_{Fi}^{0} > W,\) then the equation fF(λ) = 0 is reduced to

$$ \mathop \sum \limits_{i \in I} v_{i} r_{i} T_{F} \left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right) = W{ } $$
(46)

where \(I = \left\{ {i :w_{i} - \lambda v_{i} \ge 0} \right\}\). From (46) we have

$$ \mathop \sum \limits_{i \in I} v_{i} r_{i} T_{F} \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right) - \lambda \mathop \sum \limits_{i \in I} v_{i} r_{i} T_{F} \left( {\frac{{v_{i} }}{{h_{i} + w_{i} }}} \right) = W{ } $$
(47)

Therefore, the multiplier is

$$ \lambda_{F}^{*} = \frac{{\mathop \sum \nolimits_{i \in I} v_{i} r_{i} T_{F} \left( {\frac{{w_{i} }}{{h_{i} + w_{i} }}} \right) - W}}{{\mathop \sum \nolimits_{i \in I} v_{i} r_{i} T_{F} \left( {\frac{{v_{i} }}{{h_{i} + w_{i} }}} \right)}} $$
(48)

Substituting the above \(\lambda_{F}^{*}\) in Eq. (45) we have the inventory levels \(S_{Fi}^{*}\) = 0 for i ∉ I and

$$ S_{Fi}^{*} = r_{i} T_{F} \frac{{w_{i} }}{{h_{i} + w_{i} }} - r_{i} T_{F} \frac{{\lambda_{F}^{*} v_{i} }}{{h_{i} + w_{i} }}{, }i \in I{ } $$
(49)

Substituting the optimal inventory levels \(S_{Fi}^{*}\) in the cost function given in (40), we obtain the minimum inventory cost

$$ { }C_{F}^{*} = \mathop \sum \limits_{i I} \left( {h_{i} + w_{i} } \right)\frac{{\left( {S_{Fi}^{*} } \right)^{2} }}{{2r_{i} T_{F} }} + \mathop \sum \limits_{i = 1}^{N} \frac{{w_{i} r_{i} T_{F} }}{2} - \mathop \sum \limits_{i I} w_{i} S_{Fi}^{*} + \frac{A}{{T_{F} }}{ } + \mathop \sum \limits_{i = 1}^{N} c_{i} r_{i} { } $$

If the set I is {1, …, N}, then the inventory policy obtained coincides with the optimal policy for an inventory system with several items, constant demands, allowing shortages fully backlogged and limited storage (see [12], pages 75–76, and [4], pages 338–339).

Notice that the solution proposed in Naddor [12] for the inventory model with uniform demand pattern, several items and limited storage is generally incorrect, because he always considers I = {1, …, N}. However, in that case, some of the terms \(w_{i} - \lambda_{F}^{*} v_{i} ,\) with \(\lambda_{F}^{*}\) given by (48), can be negative (please see Sect. 6.3 below) and, therefore, his procedure is not valid. This is because Naddor did not consider the constraints Si ≥ 0 for all i = 1, 2, …, N.

(ii) Now, a single item is considered in the inventory system, that is, we have N = 1. We assume that the inventory level of this item is denoted by S, and the parameters for that item are r, h, w, n and v. From (41), the inventory level is obtained by \(S_{F}^{0} = rT_{F} \left( {\frac{w}{h + w}} \right)^{1/n}\). If \(vS_{F}^{0} \le W\), then the optimal level is \(S_{F}^{*} = S_{F}^{0}\). Otherwise, we have to calculate the multiplier λF. The equation fF(λ) = 0 has its positive solution on the interval (0, w/v). Therefore, from (44), we obtain

$$ vrT_{F} \left( {\frac{w - \lambda v}{{h + w}}} \right)^{1/n} - W = 0{ } $$
(50)

Thus, the multiplier is

$$ \lambda_{F}^{*} = \frac{w}{v} - \frac{{\left( {h + w} \right)}}{v}\left( {\frac{W}{{vrT_{F} }}} \right)^{n} { } $$
(51)

Now, substituting the above multiplier \(\lambda_{F}^{*}\) in (45), we obtain the value \(S_{F}^{*}\) = W/v. Thus, as the inventory level \(S_{F}^{*}\) satisfies the constraint (29), then \(S_{F}^{*}\) = W/v will be the optimal inventory level. The economic order quantity is given by \(Q_{F}^{*}\) = r \(T_{F}\) and the reorder point is calculated by \(s_{F}^{*}\) = \(S_{F}^{*}\) − \(Q_{F}^{*}\) = W/vrTF.

Substituting the optimal inventory level \(S_{F}^{*}\) in the cost function (40), we obtain, in this case, that the minimum inventory cost \(C_{F}^{*}\) is:

$$ C_{F}^{*} = C_{F} \left( {S_{F}^{*} } \right) = \frac{{\left( {h + w} \right)W}}{{\left( {n + 1} \right)v}}\left( {\frac{W}{{vrT_{F} }}} \right)^{n} + w\left[ {\frac{{nrT_{F} }}{n + 1} - \frac{W}{v}} \right] + A\frac{1}{{T_{F} }} + cr $$
(52)

In the following section, we present some numerical examples to illustrate the applicability of the theoretical results obtained for the inventory model proposed in this article.

6 Numerical results

Let us assume that a company sells N = 6 different products. We analyze the inventory management of those items. For each of the six items, the average demand ri, the carrying cost hi per unit time, the shortage cost wi per unit time, the demand pattern index ni, the purchasing cost ci, the selling price pi, and the volume or unit space vi, with i = 1,2, …, 6, are shown in Table 1. The replenishing cost is A = $ 120 per order.

Table 1 Input parameters for an inventory system with N = 6 items whose demands follow different power pattern indices

We present below the optimal policies for this inventory system, considering various storage capacities.

6.1 Multi-item inventory system with power demand patterns, full backlogging, variable inventory cycle and limited storage capacity

Table 2 shows the optimal inventory policy obtained for different storage space limitations, which have been obtained by applying Algorithm 1 proposed in Sect. 4.1.

Table 2 Optimal policy for the multi− item inventory system with power demands, variable inventory cycle and full backlogging, considering the parameters shown in Table 1

Under these optimal inventory policies, the ordering cost is high with respect to the holding cost and the backlogging cost. Note that, for this system, all the lot sizes ordered for replenishing stocks of products are different from the initial stock levels of items. This means that the optimal policy allows shortages, and it should not replenish stocks until shortage levels of the products decrease to the optimum reorder points, which are also shown in Table 2.

Furthermore, if W ≥ 221.174, then the optimal inventory policy is given by (13) and (14). Otherwise, the positive optimal multiplier λ* must be calculated. Next, the optimal inventory cycle is obtained by (38) and the optimal initial inventory levels are calculated by (35).

Note that the holding cost decreases, while the shortage cost and the ordering cost increase as the warehouse capacity W decreases. This is because the inventory cycle, the optimal inventory levels of the items and the reorder points decrease as warehouse capacity decreases. As a consequence, the optimal inventory cost increases slightly, while the maximum profit decreases a little as the parameter W decreases. Thus, when W is reduced from 90 to 60 m3 (a reduction of 33.33%), the total inventory cost has increased a little more than 1.23 percent and the profit per unit time has decreased a little more than 1.90 percent.

6.2 Multi-item inventory system with power demand patterns, fixed inventory cycle, full backlogging and limited storage capacity

For reasons of strategic planning, the company sets when the products must be replenished. Thus, the scheduling period is fixed and known. Suppose the items are replenished every month, that is, the scheduling period is TF = 1/12 = 0.0833333 years.

To obtain the optimal inventory policies, we apply Algorithm 2 proposed in Sect. 5. The optimal initial inventory levels, the economic order quantities, the inventory costs and the maximum profit per unit time are shown in Table 3.

Table 3 Optimal policy for the multi-item inventory system with power demands, fixed inventory cycle TF = 1/12 and full backlogging, assuming the parameters shown in Table 1

If we compare this table with Table 2, it can be seen that the backlogging cost and the maximum profit decrease, while the ordering cost and the total inventory cost increase.

6.3 Multi-item system with uniform demands, fixed inventory cycle and storage capacity limited to W = 30 cubic meters

Now, let us consider the same input parameters given in Table 1, but changing the power demand indices to ni = 1, for all i = 1,2, …, N and supposing, as in Sect. 6.2, that the items are replenished every month, that is, the scheduling period is TF = 1/12. In addition, we suppose that the storage capacity is W = 30 cubic meters.

Applying Algorithm 2 proposed in Sect. 5, we have k = 3 and λ* = 6.44535. The optimal inventory levels, inventory costs and maximum profit per unit time of this new inventory policy are shown in Table 4.

Table 4 Optimal policy for the multi-item inventory system with uniform demands, fixed inventory cycle, full backlogging and a limited storage capacity of W = 30 m3

Remark 2

If the Naddor approach is used when demands are uniform and the warehouse capacity is W = 30 cubic meters, then the value of the Lagrangian multiplier λ* would be.

$$ \lambda^{*} = \mathop {arg}\limits_{0 < \lambda } \left\{ {\mathop \sum \limits_{i = 1}^{N} v_{i} r_{i} T_{F} \left( {\frac{{w_{i} - \lambda v_{i} }}{{h_{i} + w_{i} }}} \right) = W} \right\} = 6.21072 $$

and the optimal inventory levels would be obtained from

$$ S_{i} = r_{i} T_{F} \left( {\frac{{w_{i} - \lambda^{*} v_{i} }}{{h_{i} + w_{i} }}} \right),\quad {\text{for i}} \in I = \left\{ {1,2, \ldots ,N} \right\} $$

Thus, the inventory levels would be S1 = 8.59623, S2 =− 0.258775, S3 = 19.4253, S4 =− 1.99129, S5 = 11.6593 and S6 = 18.5962. Unfortunately, as can be seen, the optimal solution proposed by Naddor would not be feasible (because S2 < 0 and S4 < 0). In addition, \({\sum }_{i=1}^{N}{v}_{i}\mathrm{max}({S}_{i},0)=31.7742>W=30\). Therefore, this solution does not satisfy the storage capacity.

7 Conclusions

The main contribution of this paper is the determination of the optimal inventory policy for multi-item inventory systems with backlogged shortages and power demand patterns. First, the inventory model considers that the place where the items are held in stock has enough capacity to store all the items. Then, the inventory model assumes that the total storage space available in the warehouse is limited. From the point of view of decision-making, incorporating power demand patterns may help to better fit the evolution of the inventory levels of the products. The results obtained have a direct impact on the inventory policy to follow, reducing the costs of inventory management. Considering multiple items and incorporating backlogging into the inventory models are more realistic assumptions and this adds new contributions to other papers previously analyzed.

An inventory model has been formulated in order to take decisions to maximize the profit per unit time. In this inventory model, demands of the items are not constant. They depend on time and follow power patterns, representing the temporal concentration of customer demand throughout the scheduling period for each item.

Solving the multi-item inventory problem, we can calculate the inventory cycle, the initial inventory levels, the economic order quantities and the reorder points that minimize the inventory management cost of all the products. Thus, we first determine the optimal inventory policy for an inventory system with full backlogging without considering the capacity of the warehouse, achieving the optimal scheduling period and the optimal stock levels. The solution depends on the input parameters and the power demand pattern index of each item, i.e., the optimal policy is conditioned by the behavior of customer demand for each product.

Next, we analyze the model for the multi-item inventory system with power demand patterns and full backlogging when the warehouse used in the storage of the items has a fixed capacity. The optimal initial inventory levels, the economic order quantities, the minimum inventory cost and the maximum profit per unit time are obtained.

The model presented in this paper extends some inventory systems studied by other authors. Thus, the multi-item model of inventory level with constant demands, backlogged shortages and limited storage is a particular case of the model analyzed in this work (see [12]). The optimal solution proposed in this paper also generalizes the optimal policy for the inventory system with a single item, constant demand and full backlogging (see [4]). Moreover, the optimal policy extends the inventory policy proposed by Sicilia et al. [21] for the inventory system with a single item, power demand pattern and full backlogging.

Future research would be to study the inventory system for multiple items with power demand patterns, additionally considering a deterioration rate for items. Another research line may be to analyze the inventory system for multiple items and power demand patterns, assuming that shortages are lost sales. Finally, it would be interesting to develop the optimal policy for the inventory system with multiple items and power demand patterns, supposing that the replenishments of the products are not instantaneous and there exists a production rate for each item in the inventory model.