Open Access

Supply Chain Planning Problem Considering Customer Inventory Holding Cost Based on an Improved Tabu Search Algorithm

 and    | Aug 27, 2020

Cite

Introduction

Supply chain management is one of the effective ways to improve the competitiveness of logistics enterprises. Among them, planning supply chain distribution network to reduce logistics costs and improve response ability is an important work in supply chain management. Supply chain distribution network planning can be a strategic deployment or a specific operation, such as delivery frequency selection, inventory level setting, vehicle path planning, vehicle scheduling, etc.

An important problem that supply chain managers often need to solve at the operational level is vehicle routing problem (VRP), which was originally proposed by Dantzig and Ramser [1]. This is a milestone in logistics distribution management. Then, scholars put forward a series of expansion problems based on VRP. Among them, Bell et al. extended VRP by determining the optimal inventory level of depot (or customer), and put forward the inventory routing problem (IRP) [2]. Balakrishnan et al. put forward location routing problem (LRP) by combining depot location with vehicle routing planning [3]. With the aggravation of socialized division of labor in production, the concept of supply chain comes out. In order to solve the optimal problem of supply chain system, scholars proposed a new problem named the inventory location routing problem (ILRP) based on IRP. The operation efficiency of the whole supply chain network can be improved and the total cost can be reduced by optimizing the location, routing and inventory at the same time [4].

At present, the main research of ILRP includes two aspects: the distribution of fast moving consumer goods (FMCG) and the connection of electronic distribution network. The distribution of FMCG mainly considers the distribution of perishable products [56] and the random demand of customers [7,8,9]. The connection of electronic distribution network is mainly aimed at the recyclable electronic supply chain [10], electronic commerce distribution system [11], as well as the strategy problems in the case of risk situation and interruption [12]. However, in general researches, scholars pay little attention to the customer's inventory problem, even considering the customer's inventory cost, it is also roughly treated as holding cost. In addition, few researches introduce strategies such as quick response, distribution integration and vendor managed inventory (VMI) into ILRP.

This paper introduced the VMI strategy into ILRP and applies it to the situation of customers with definite demand. The ILRP mathematical model established in this paper gives a more accurate representation of the customer's holding cost. An improved tabu search algorithm is used to solve the problem proposed in this paper, and the relationship between the number of vehicles, the capacity of each vehicles, the utilization of alternative vehicles and the total cost of the system are analyzed. The model of ILRP considering customer inventory holding cost is established in the section 2. Section 3 introduces an improved tabu search algorithm to solved the model. A case study is analyzed in section 4. Finally, in section 5, the main conclusions of this paper are summarized.

Problem Description and Model Establishment

The following scenarios are assumed in this paper. A third-party logistics(3PL) supplier is responsible for providing logistics services for manufacturers (factories) producing single products, by transporting goods from the factory to one or more depots, storing them in the depot (if necessary), and then delivering them to customers with fixed demand rate.

It is supposed that 3PL supplier adopts VMI strategy, determines the frequency of customer delivery, and then determines which depot, inventory level, number of scheduled vehicles, scheduling time and vehicle path will be used. In addition, it is assumed that goods can be transported from the factory to each warehouse in one time. The capacity of the depot is sufficient to accommodate all of vehicles, the capacity of each vehicle is the same and constant, and so as the capacity of each depot. Some supplementary assumptions are considered: no transshipment will be considered between depots; the ending inventory of each period depot is 0, that is, the arrival quantity of products in the same period is equal to the delivery quantity; the starting point and end point of vehicle path are all depots, and the operation time is in a period; the driving time is known and fixed; customers are not allowed to wait; customers have wireless storage capacity and are not allowed to be short.

The objective function considered in this paper is that the total cost of supply chain is the lowest. The decision variables include: the delivery quantity and delivery period of each customer, the depot location used, the number of vehicles used in each depot and the route and scheduling time of each vehicle.

Customer inventory holding cost

Considering the time when the product arrives at each customer, this paper considers the customer inventory holding cost in each period. The customer inventory holding cost is equal to the unit time unit commodity holding cost multiplied by the inventory quantity and then by the storage time. If the customer does not have inventory before the first delivery, there is no stable inventory in the first period, so the customer inventory cost is not considered in the first period. Since there is no opening stock, the stock level is considered as 0 at the beginning, that is, IEi1=0IE_i^1 = 0 . Where, IEi1IE_i^1 means the inventory level of product at customer i just before the 1th delivery.

The inventory at the beginning of the 2th delivery is the quantity by the 1th delivery quantity minus consumption quantity (IEi2=(IEi1dti1Di+qi)+)\left( {IE_i^2 = \left( {IE_i^1 - dt_i^1 \cdot D_i + q_i } \right)^ + } \right) or 0. Where, IEi2IE_i^2 means the inventory level of product at customer i just before the 2th delivery. qi indicates the delivery quantity for customer node i. dti1dt_i^1 indicates the time between delivery 1 and delivery 2 at customer node i. Di means the demand value of customer node i. dti1dt_i^1 can be calculated by the number of periods between two deliveries multiplied by the period time, plus the second delivery arrival time minus the first delivery arrival time in the corresponding period shown as follows: dti1=ritp+okjxijkfri+ritsijkfri+riokjxijkfritsijkfridt_i^1 = r_i \cdot tp + \sum\limits_o {\sum\limits_k {\sum\limits_j {x_{ijk}^{fr_i + r_i } \cdot ts_{ijk}^{fr_i + r_i } - \sum\limits_o {\sum\limits_k {\sum\limits_j {x_{ijk}^{fr_i } \cdot ts_{ijk}^{fr_i } } } } } } } Where, ri indicates the periodic multiplier. t p means the period duration. xijkpx_{ijk}^p is a binary variable, which reflect whether vehicle traveled between node i and node j in period p. tsijkpts_{ijk}^p is the dispatching time for vehicle k from node i to node j in period p. Inventory levels continue to increase as subsequent deliveries continue. And so on until the end of the period. According to the definition of VMI, the unit inventory holding cost of serving customers in each period is not considered because there is no need to maintain additional inventory in its depot. The total inventory holding cost of all customers in the second repetition period is expressed as follows: inchi2tpmin{IEin+qiDi,dtin}(IEin+IEin+1+qi)\sum\limits_i {\sum\limits_n^{} {{{ch_i } \over {2tp}} \cdot \min \left\{ {{{IE_i^n + q_i } \over {D_i }},\;dt_i^n } \right\}} } \cdot (IE_i^n + IE_i^{n + 1} + q_i ) Where, chi indicates the holding cost of customer node i. IEinIE_i^n means the inventory level of product at customer i just before the nth delivery.

Objective functions and constraints

The total cost (objective function) can be expressed as a linear sum of 5 costs, as follows: Z=inchi2tpmin{IEin+qiDi,dtin}(IEin+IEin+1+qi)+pokijxijkpctdij+pokjxojkpcfk+pok[(ijxijkpqi)(jxojkpstojkpdhotp)]+poyicd\eqalign{& Z = \sum\limits_i {\sum\limits_n^{} {{{ch_i } \over {2tp}} \cdot \min \left\{ {{{IE_i^n + q_i } \over {D_i }},\;dt_i^n } \right\}} } \cdot (IE_i^n + IE_i^{n + 1} + q_i ) + \sum\limits_p^{} {\sum\limits_o {\sum\limits_k {\sum\limits_i {\sum\limits_j {x_{ijk}^p \cdot ct \cdot d_{ij} } } } } }\cr & \;\;\;\;\;\; + \sum\limits_p^{} {\sum\limits_o {\sum\limits_k {\sum\limits_j {x_{ojk}^p \cdot cf_k } } } } + \sum\limits_p^{} {\sum\limits_o {\sum\limits_k^{} {\left[ {\left( {\sum\limits_i {\sum\limits_j {x_{ijk}^p \cdot q_i } } } \right) \cdot \left( {\sum\limits_j {x_{ojk}^p \cdot st_{ojk}^p \cdot {{dh_o } \over {tp}}} } \right)} \right]} } } + \sum\limits_p^{} {\sum\limits_o {y_i \cdot cd} } \;\;\; \cr}

The first item is the customer inventory holding cost, that is, formula (2). The first item is the customer inventory holding cost, that is, formula (2). The second item represents the vehicle transportation cost, where, ct indicates the transportation cost from depot to each customer. And it is assumed that the relationship between cost and distance is linear. The third item is the vehicle scheduling cost which is considered as fixed values, where, cfk means the scheduling cost of vehicle k. The fourth item represents the inventory holding cost of products in depot, where dho means the inventory holding cost of each product in depot o. The last item is the transportation cost from factory to depot o, where yi is a binary variable, defining whether depot i is used. cd indicates the transportation cost from factory to depot.

The constraints of the model are as follows: ixiokp(tsiokp+tio)tpk,p\sum\limits_i {x_{iok}^p \cdot \left( {ts_{iok}^p + t_{io} } \right)} \le tp\;\;\;\forall k,\;pjxijkptsijkp=jxjikp(tsjikp+tji)i,k,p\sum\limits_j {x_{ijk}^p \cdot ts_{ijk}^p } = \sum\limits_j {x_{jik}^p \cdot \left( {ts_{jik}^p + t_{ji} } \right)\;\;\;} \forall i,\;k,\;pijxijkpqiCk,p\sum\limits_i {\sum\limits_j {x_{ijk}^p \cdot q_i } \le C\;\;\;} \forall k,\;pyojkxojkppy_o \le \sum\limits_j {\sum\limits_k {x_{ojk}^p } \;\;\;} \forall pjkxojkp=yojkxojkpp\sum\limits_j {\sum\limits_k {x_{ojk}^p } = y_o \cdot \sum\limits_j {\sum\limits_k {x_{ojk}^p } \;\;\;} } \forall pijxijkp|Skp|1k,p\sum\limits_i {\sum\limits_j {x_{ijk}^p } \le \left| {S_k^p } \right| - 1\;\;\;\forall k,\;p} jxijkp=jxjikpi,k,p\sum\limits_j {x_{ijk}^p } = \sum\limits_j {x_{jik}^p } \;\;\forall i,\;k,\;pixijkp=0j,k,p\sum\limits_i {x_{ijk}^p = 0\;} \;\forall j,\;k,\;pijkxijkp=1p\sum\limits_i {\sum\limits_j {\sum\limits_k {x_{ijk}^p = 1} } } \;\;\forall pjxojkp=jxjokpk,p\sum\limits_j {x_{ojk}^p } = \sum\limits_j {x_{jok}^p } \;\;\forall k,\;pjxojkp1k,p\sum\limits_j {x_{ojk}^p \le 1} \;\;\forall k,\;pyop{0,1}py_o^p \in \left\{ {0,\;1} \right\}\;\;\;\forall pxijkp{0,1}i,j,k,px_{ijk}^p \in \left\{ {0,\;1} \right\}\;\;\;\forall i,\;j,\;k,\;ptsijkp0i,j,k,pts_{ijk}^p \ge 0\;\;\;\forall i,\;j,\;k,\;p Constraint (4) ensures that every vehicle must be in its corresponding depot at the end of each period. Constraint (5) indicates that the loading and unloading time of the vehicle at the customer point is 0, and there is no waiting time. Constraint (6) indicates the capacity limit of the vehicle. Constraints (7) and (8) indicate that a depot is used only when there are vehicles in the depot that are scheduled. Constraints (9) are sub routing elimination constraints, where, SkpS_k^p is the set of customer nodes serviced by vehicle k in period p. Constraints (10) ensure the continuity of vehicles between customer points. Constraints (11) ensure that vehicles cannot travel between depots. Constraint (12) ensures that any customer is served by only one vehicle in the same period and only once. Constraint (13) defines the start and end nodes of each used vehicle as the same depot. Constraint (14) means that each vehicle is scheduled at most once in each period. Constraints (15) and (16) are binary variable constraints, and constraint (17) is a nonnegative constraint.

The improved tabu search algorithm

ILRP is a NP-hard problem. The tabu search (TS) algorithm has been proved to be effective in solving a variety of NP-hard problems, and the results are close to the optimal solution. In this paper, an improved tabu search algorithm is used to solve the supply chain planning problem considering customer inventory holding cost. The algorithm is described in detail as follows.

Let X and Xbest indicate the initial feasible solution and current optimal solution. Let BtuB_{tu}^\prime and BtmB_{tm}^\prime represent the delivery frequency and quantity corresponding to the optimal solution Xbest respectively. The initial feasible solution X will be optimized step by step as follows.

Step 1: Determine objective function value Q(X) and penalty cost P(X). Let Xbest = X, Xm=XmX_m^\prime = X_m , Lqm=LqmL_{qm}^\prime = L_{qm} , Btu=BtuB_{tu}^\prime = B_{tu} and Btm=BtmB_{tm}^\prime = B_{tm} . Set the value of tabu search condition Tm = 0, the shift times without improved solution Tmax = 0 and iteration times Nitr = 0.

Step 2: Parameters setting. Set MAXIT, the maximum shift times in an iteration; MAXT R, the maximum iteration times; Nogut, the maximum times of iterations without improvement of the admissible solution; Neighb, the neighbourhood number; IT ERAT, the shift value; Ntabu, the length of tabu table.

Step 3: Set iteration value Nitr = Nitr + 1.

Step 4: Adding routing with minimum quasi opportunity cost to feasible solution by neighborhood moving. Set S(X) = {s1, s2, K, sneighb} indicates a series of movements to be verified. Set the value of movement Lterat = Lterat + 1.

Step 5: Best shift calculation. Every shift s(X) ∈ S(X) need to be determined including X, Q(X) and P(X). if P(X) = 0, execute the movement s*, s* = min{δ2(s)|s(X) ∈ S(X), P(X) = 0}, otherwise, execute the movement s*, s* = min{δ2(s)|s(X) ∈ S(X), P(X) ≠ 0}. Remove movement s* from the set S(X) by setting S(X) = S(X)/s*.

Step 6: Judge whether s* is feasible by checking P(s*(X)). If P(s*(X)) ≠ 0, determine if condition Q(s*(X)) < Q(Xbest), P(Xbest) ≠ 0 is met. If met, go to Step 7. Otherwise, if Q(s*(X)) > Q(Xbest), P(Xbest) ≠ 0, check the condition Btu < Btu or Btu = Btu met or not. If met, go to Step 7. Otherwise, go to Step 8. If Q(s*(X)) > Q(Xbest), P(Xbest) ≠ 0, go to Step 7. Otherwise, if Q(s*(X)) > Q(Xbest), go to Step 8. If Q(s*(X)) = Q(Xbest), check the condition Btu < Btu or Btu = Btu met or not. If met, go to Step 7. Otherwise, go to Step 8.

Step 7: Set Tmax = 0, X = s*, Xbest = X, Btu = Btu, Btm = Btm, Lqm=LqmL_{qm}^\prime = L_{qm} and Xm=XmX_m^\prime = X_m , and go to Step 9.

Step 8: Set Tmax = Tmax + 1.

Step 9: Check if the tabu condition is broken by shift s*. If not broken, if shift s* can’t improve the feasible solution Xbest, Set X = s*(X), and over. Determine the tabu condition Tr(S*) through s*. If St = Ntabu, set Tabu(i) = Tabu(i + 1) and Tabu(St) = Tr(s*), and insert Tr(S*) into the tabu table to remove the most primitive tabu condition from the tabu table. Otherwise, set St = St + 1, Tabu(St) = Tr(s*), and go to Step 10. If broken, if shift s* can improve the feasible solution Xbest, update the tabu table. Determine the tabu condition Tt(s*) through s*. Set Tabu(i) = Tabu(i + 1) and Tabu(St) = Tr(s*), and insert Tr(S*) into the tabu table to remove the most primitive tabu condition from the tabu table. Otherwise, check L. If L < Neighb(S(X) ≠ ∅), let L = L + 1, and go to Step 5. Otherwise, set Neighb = Neighb + 10, and go to Step 11.

Step 10: If IT ERAT = MAXIT, go to Step 11. Otherwise, go to Step 4. Step 11: If Nitr < MAXIT and Tmax < MAXIT, set Ntabu = Ntabu + 1, and go to Step 3. Otherwise, check whether Xbest is optimal solution. If not, set X = Xbest, and go to Step 2. Otherwise, over.

If the target function W (Xbest) doesn’t have any requirements, then the program goes in the direction of Q(X). If there is no improvement of the solution after the maximum iteration or the allowable maximum iteration, the program ends with the feasible solution Xbest as the optimal solution.

Numerical Experiment

We take the example of multi depot vehicle routing problem (MDVRP) in Ghoseiri's research [13] as the benchmark case, take the first 10 users and the last 30 users in the benchmark case respectively, and form cases with the number of users of 10 and 30 to verify the model and algorithm of this paper. According to the benchmark case, the four candidate locations, user locations and user requirements of the depot are all known, the service time in the depot and user nodes is ignored, and the duration of each period is set to 100 unit time, assuming that the travel speed is 1 unit of length per unit of time, and the unit cost of 1 unit length 1. In order to research the influence of the capacity of each vehicle and depot on system total cost, vehicles number in each depot and vehicle's capacity are changed; similarly, due to the different mobilization costs, the capacity of vehicles in each mobilization will also change, as shown in Table 1.

The parameters value setting in the numerical simulation.

ParametersValues of case 1Values of case 2
Number of customers nodes1030
Vehicles number in each depot1, 4, 72, 5, 8
Vehicle's capacity40, 80, 12040, 80, 120
Dispatching cost80, 120, 15080, 120, 150
Transportation cost between factory and each depot400400
Transportation cost between depot and each customer node11
Customer inventory holding cost0.10.1

The transportation cost between depot and each customer node is 10 times that of the customer inventory holding cost, and the transportation cost between factory and each depot is 400 times that of the one between depot and each customer node. It indicates that the factory is far enough from the candidate depots, and the transportation cost will not change with the change of the depot. The improved tabu search algorithm is used in the actual calculation, only three times are calculated and the optimal solution is taken for analysis. The calculation results are shown in follows.

It can be seen from table 2 that when the number of users is 10 and 30, the increase of transport vehicle capacity can reduce the total cost. With the number of vehicles allocated to each depot increasing, the total cost will also decrease. This is because with the increase of vehicle capacity or the number of vehicles allocated to the depot, the number of depots needed will be reduced, resulting in the reduction of the transportation cost between the factory and each depot, so the total cost will be reduced, although the path cost will increase with the increase of vehicle capacity or the number of vehicles allocated to the depot. As the routing cost only accounts for about twenty percent of the total cost, its increase is made up by the reduction of the transportation cost from the factory to the depot, which leads to the total cost reduction.

Calculation results of the numerical experiment.

customers numbervehicle's capacityvehicle number in each depottotal cost in each periodthe number of used depotsrouting cost
1040117532190
1040414112213
1040710071247
1080112302165
108048741165
108078741170
10120112211132
1012047951147
1012077951147
3040231653432
3040528073515
3040825132601
3080223113330
3080519862333
3080815501385
30120216822271
30120513411309
30120813411298

As shown in Table 3, the increase of vehicle capacity leads to the reduction of the number of vehicles needed in each warehouse and the need for more warehouses. However, with the increase of vehicle capacity, the vehicle utilization rate does not decrease with the decrease of total cost, and the scheduled vehicle utilization increases first and then decreases. This is because with the increase of vehicle capacity, the number of vehicles to be dispatched decreases. When the demand is constant, the decrease range is large, so the utilization ratio of low capacity vehicles increases; while for high capacity vehicles, the decrease range is low, so the total capacity of vehicles increases, which leads to the decrease of utilization ratio.

Vehicles’ utilization with vehicles capacities increasing.

customers numbervehicle's capacityvehicles’ utilizationcustomers numbervehicle's capacityvehicles’ utilization
10400.78230400.791
10800.97530800.847
101200.659301200.824
Conclusion

This paper studies ILRP with the consideration of supplier inventory management, and establishes a model to determine the depot usage, customer service, delivery quantity, vehicle scheduling time and path in each cycle, so as to minimize the cost of supply chain. The original holding model is put forward, and the improved tabu search algorithm is applied to solve the problem. Through numerical simulation, it can be found that: with the increasing of the total capacity of transport vehicles the number of depot needed will be reduced, thus reducing the total cost; The maximum utilization of alternative vehicles and the minimum cost of the system don’t occur at the same time in some cases, as the increase in transport vehicle capacity will lead to a reduction in vehicle utilization. The future work can start from random demand, random driving time, delivery time limit, and multilevel supply chain considering other strategic and tactical costs, and further enrich the research results of this paper.

eISSN:
2444-8656
Language:
English
Publication timeframe:
Volume Open
Journal Subjects:
Life Sciences, other, Mathematics, Applied Mathematics, General Mathematics, Physics