Inventory replenishment decision model for the supplier selection problem using metaheuristic algorithms

In supply chain management, fast and accurate decisions in supplier selection and order quantity allocation have a strong influence on the company's profitability and the total cost of finished products. In this paper, a novel and non-linear model is proposed for solving the supplier selection and order quantity allocation problem. The model is introduced for minimizing the total cost per time unit, considering ordering, purchasing, inventory, and transportation cost with freight rate discounts. Perfect rate and capacity constraints are also considered in the model. Since metaheuristic algorithms have been successfully applied in supplier selection, and due to the non-linearity of the proposed model, particle swarm optimization (PSO), genetic algorithm (GA), and differential evolution (DE), are implemented as optimizing solvers instead of analytical methods. The model is tested by solving a reference model using PSO, GA, and DE. The performance is evaluated by comparing the solution to the problem against other solutions reported in the literature. Experimental results prove the effectiveness of the proposed model, and demonstrate that metaheuristic algorithms can find lower-cost solutions in less time than analytical methods.


Introduction
As a consequence of globalization, supply chain management has faced important challenges due to the competitive markets. One of the most critical challenges is the minimization of production costs [1]. Therefore, several operational activities, such as ordering, purchasing, transportation, inventory control, manufacturing, and distribution, are fundamental in determining the total cost of finished products [2].
Purchasing has a strong influence on a company's profitability and the total cost of products [3]. For that reason, making correct decisions about purchasing will reduce production costs, including the inventory cost of a company. However, the purchasing operation is not an easy task since there are many aspects in consideration, namely, the supplier selection, the order cycle frequency, the number of orders assigned to each supplier, and the number of units per order [4]. Consequently, when the manufacturer requires distinct materials to produce a single product, the available suppliers, offered items, different prices, lead times, production capacities, shipping costs, etc., must be considered as part of the total cost. These are decision variables that provide an infinite number of possible solutions, even for a single purchasing material [3,5].
Specifically, supplier selection has a high impact on the purchasing process. An appropriate choice of suppliers has become a crucial activity since it improves the competitive advantages of industrial companies [4,6,7]. In that sense, selecting the best suppliers affects the quality and price of the final product, increasing customer satisfaction [8,9]. Nevertheless, supplier selection is a complicated process because several criteria must be considered, such as prices, volume discounts, reliability, and quality [10]. Therefore, companies are still exploring and applying different methods or decision models to select final suppliers [11].
Transportation costs also play an essential role in successful supply chain management [12,13]. In fact, freight transportation is one of the most researched issues, due to the negative effects on the average total cost in a supply chain [14]. Usually, shipping companies determine transportation costs depending on the shipped quantity, sometimes, assuming a constant unit shipping cost [15]. But, although some suppliers include volume discounts in the shipping cost, purchasing more items will increase the inventory storage cost [5,[16][17][18][19]. In that context, inventory management is also a significant activity in supply chain management [5,20]. An efficient inventory policy will reduce the inventory-related and the average total cost. Consequently, a trade-off between purchasing and inventory costs must be contemplated.
The development of supply chain models where, purchasing, inventory, and transportation costs are considered is an active research field, due to the complexity of the decision-making process involved. There are several models available in the literature, for instance, the model presented in [5], where inventory and transportation costs are considered for the supplier selection and order quantity allocation problem. A model where purchasing and transportation are included, to define the order quantity and reorder point that minimizes the total cost per time unit subject to quantity and freight rate discounts, is presented in [19]. An inventory model considering two modes of freight transportation and constant demand rate is studied in [21]. A model where setup, freight, production and inventory holding costs are contemplated for the lot-sizing problem under capacity constraints, is presented in [22]. A supplier selection and order quantity allocation model, for minimizing the total cost per time unit considering ordering, purchasing, inventory and transportation cost with freight rate discounts is shown in [5,23]. And, a model for a multi-item lot-sizing problem whit multiple suppliers, quantity discounts, time periods and back-ordering shortages is discussed in [24].
Certainly, there is a wide variety of supply chain models proposed in the literature for solving different problems, but, when supply chain models include volume discounts in the transportation cost, they become complex and non-linear. Those models are commonly solved by commercial optimization software, such as LINGO. However, most of these optimizers do not guarantee to find the global optimal solution in a reasonable time. This issue is due to the non-linearity of the model, and because of the significant number of possible solutions involved [5,23]. Alternatives for simplifying these models have been proposed in the literature; a common one is restricting the number of possible solutions but, even in those cases, the software is not always able to find a solution in a suitable time [5,23]. Unfortunately, the making-decision process must not be a time-consuming task, since industrial companies may require purchasing different raw materials to produce a single product, and suppliers may change their policies from time to time. This situation has left open the necessity of exploring other models and other possible methods for solving these kinds of problems.
In recent years, research studies have been applying artificial intelligence approaches, specifically metaheuristic algorithms, for optimizing supply chain models [25]. They have found in metaheuristic algorithms, an alternative to solve complex and non-linear models, since analytical methods (like multi-criteria decision-making [26] and mathematical programming [27]) may not be able to find feasible solutions in a suitable time with commercial solvers. Due to its simplicity and easiness of implementation, some of the most popular employed metaheuristic algorithms for optimizing supply chain models are particle swarm optimization (PSO) [28] and genetic algorithms (GA) [29,30].
Metaheuristic algorithms have been primary techniques for solving the supplier selection problem [31]. They have also been successfully applied in different models, such as the optimization of an integrated production-inventory model, where the objective is to minimize the inventory cost of the system [32]. An inventory problem, where the total cost is minimized considering the re-order point, the order quantity, and the chance-constraint joint single vendor-single buyer is reported in [33]. The inventory control system optimization, where a relaxation of continuous and periodic review assumptions of multi-periodic inventory control problems are presented, and the periods between two replenishments are assumed independent and identically distributed random variables, is shown in [34]. The optimization of a two-echelon distribution supply chain network with multiple vendors and buyers, where the inventory cost including ordering, holding, and purchasing must be minimized is addresed in [35]. The supplier selection problem considering the minimization of the total cost including quality and lead time is presented in [36]. Other authors study the optimization of a supply chain scheduling model [37], and the optimization of a supply chain with multiple products and suppliers, considering capacity constraints, imperfect quality, and limited storage space [38]. More applications of metaheuristic algorithms in supply chain models can be found in [39][40][41][42][43][44].
With the aim of finding a feasible solution in a reasonable time for the supplier selection and order quantity allocation problem, a novel and non-linear model is proposed in this work. The model is introduced for minimizing the total cost per time unit considering ordering, purchasing, inventory, and transportation cost with freight rate discounts. Perfect rate and capacity constraints are also considered in the model. Since metaheuristic algorithms have been successfully applied in supplier selection models, and due to the non-linearity of the proposed model, particle swarm optimization (PSO), genetic algorithm (GA), and differential evolution (DE) are implemented.
The rest of the article is organized as follows: In section 2, related models are described; in section 3, a brief explanation of the metaheuristic algorithms employed in this work is presented; in section 4, the proposed model is presented; a detailed description of a reference problem for developing the proposed model is shown in section 5; in section 6, experimental results are reported and analyzed; finally, conclusions are discussed in section 7.

Related models
In this section, two related models reported in the literature for the supplier selection and order quantity allocation, are reviewed. These models are called P1 and P2. Both models are simplified to overcome the non-linearity and the non-differentiability presented due to the freight rate discounts. Without those simplifications, finding a feasible solution in a reasonable time, using analytical methods on commercial software, would be improbable. They have been tested by solving the same numerical reference problem, obtaining low-cost solutions, but in a significantly longer time. A brief description of these models is presented in the following sections.

P1 model
P1 is a mixed-integer non-linear programming model for solving the supplier selection and order quantity allocation problem [5]. This model includes purchasing, inventory, and transportation costs, with freight rate discounts under capacity and quality constraints, considering truck as the means of transportation. Since the model becomes non-differentiable and non-convex, due to the freight rate function, it considers actual freight rates and transportation costs as a piecewise linear function of the weight shipped, using binary variables.

P2 model
This model has been recently proposed for solving the supplier selection and order quantity allocation problem [23]. P2 is introduced for minimizing the total cost per time unit considering ordering, purchasing, inventory, and transportation cost with freight rate discounts. Capacity constraint is considered, and the desired perfect rate is included as a part of the order cycle parameters instead of being an individual constraint. Since volume discounts are included in the transportation cost, the model becomes complex and non-linear. Therefore, two simplifications are made to the model: (i) the number of orders is limited to an order cycle period, and (ii) the optimal quantity for each supplier is obtained by linearizing the structure of the transportation cost applying a break-point technique [5,46].

Metaheuristic algorithms
Metaheuristic algorithms are powerful optimization methods that have been successfully applied to complex, high dimensional, and non-linear problems. Therefore, this work explores the application of these techniques to solve the proposed model. The employed metaheuristic algorithms are the discrete versions of the particle swarm optimization, genetic algorithm, and differential evolution. Discrete versions are used because the problem has a discrete search space. This section presents a brief description of these methods.

Particle swarm optimization
Particle swarm optimization (PSO) algorithm simulates the behavior observed in flocks of birds [28]. The basic procedure consists of initializing a population of random particles. Each particle represents a possible solution that evolves over the course of iterations by updating its velocity. The PSO process is described as follows: The search process starts by initializing the population and its velocity. Particles are randomly generated and distributed over the search space, following a uniform probability distribution, considering the lower and upper bounds. After initialization, the population is evaluated in the objective function, and the local and global best particles are determined. Then, an iterative process starts, where the velocity and position updating operators are applied to the population.

Update velocity
The velocity is updated based on the local and global influence of the best particles. These influences can be manipulated with the cognitive and social factors, respectively. The velocity of each particle is updated using Eq (3.1).
where is the current iteration, +1 is the updated velocity of the particle for the next generation + 1, is the current velocity, is the global best so far, is the local best so far of . Additionally, 1 and 2 are random values in the interval of [0, 1], while the constant parameters 1 y 2 are the cognitive and social factors, respectively.

Update position
Particles move through the search space to explore new possible solutions. The movement of each particle is determined according to its updated velocity. The position of each particle is updated, as shown in Eq (3.2): Here +1 is the updated position of the particle where its updated velocity is +1 . Then, the updated particles are evaluated in the objective function, and the local and global best particles so far are updated. The whole process is repeated until the maximum number of iterations is reached. The PSO algorithm can be summarized in the flowchart shown in Figure 1.

Genetic algorithm
Genetic algorithm (GA) is based on the natural selection in the biological evolution process [29]. This method is able to find optimal solutions in high dimensional and non-linear problems. In this paper, a discrete and non-binary version of GA is considered. A detailed description of the algorithm is presented in the following.

Initialization
The search process starts by initializing a population of size . Individuals are randomly generated and distributed over the solutions space, following a uniform probability distribution, considering the lower and upper bounds. After initialization, the population is evaluated in the objective function. Then, an iterative process starts where the cross-over, mutation, and selection operators are applied to the population.

Cross-over
In the cross-over operation, an offspring of individuals is generated by combining the individuals from the population. Sets of two individuals are randomly chosen from the population, using the proportional selection method [29]. The number of sets is determined according to a cross-over probability . These pairs of individuals are selected to be the generators of new individuals, by applying the cross-over operation. In this process, the genes of each pair of individuals are combined, as shown in Eqs (3.3) and (3.4): where an individual is combined with an individual to generate the new individuals and . The constant determines how many genes from and are being taken to generate the offspring. The number of genes corresponds to the dimensions of the problem. The process is graphically explained in Figure 2.

Mutation
The mutation operator is applied to the offspring in order to promote the diversity of the population. In the process, the genes of the offspring mutate according to the mutation probability . This procedure is defined in Eq (3.5): where and are the lower and upper bounds of the search space.

Selection
After the cross-over and mutation operators, the offspring is evaluated in the objective function. Then, the best individuals among the offspring and the population are selected to be the new generation.
The GA algorithm can be summarized in the flowchart shown in Figure 3.

Differential evolution
The differential evolution (DE) algorithm is a powerful method for global optimization [45]. DE is a population-based technique that employs mutation, cross-over, and selection operations. In the population, each individual is considered a potential solution vector that evolves over the course of iterations. The search process of classical DE can be summarized as initialization, mutation, cross-over, and selection.

Initialization
At the beginning of the search process, the population of size is randomly initialized over the search space. Considering the lower and upper bounds of the land space, individuals are generated and distributed following a uniform probability distribution. After initialization, the population is evaluated in the objective function. Then, an iterative process starts where mutation, cross-over, and selection operations are applied to the population.

Mutation
This operator creates mutant vectors by calculating the sum of a random solution and the weighted difference between two random solutions. The mutation operator is defined in Eq (3.6): where is the mutant vector and 1 , 2 and 3 are three different random solutions selected from the population.
is a factor in the interval of [0, 2] for scaling differential vectors. where (0,1) is a random number among 0 and 1. is a constant parameter which specifies the probability of cross-over.

Selection
In the selection process, the objective is to decide if the trial vector generated in the cross-over operation will replace the current solution for the next generation. This decision is based on the fitness value of both individuals. In a minimization problem, the selection process is defined as shown in Eq (3.8): where +1 is the new individual for the next generation + 1, ( ) and ( ) are the fitness values of and respectively. The whole process is repeated until the maximum number of iterations is reached. The DE algorithm can be summarized in the flowchart shown in Figure 4.

The proposed model
The proposed model aims to solve the supplier selection and order quantity allocation problem. It is introduced for minimizing the total cost per time unit, considering ordering, purchasing, inventory, and transportation cost, with freight rate discounts. Perfect rate and capacity constraints are also included in the model. The mathematical model is defined by Eq (4.1) to Eq (4.5):  In Eq (4.1), the first term represents the order cycle frequency, which is the number of orders per time unit, usually given in months. The order cycle period is determined from the order cycle frequency, as shown in Eq (4.6): is the number of available suppliers. In Eq (4.7), represents the total units ordered to supplier during the full order cycle period, where is the number of orders assigned to supplier , and is the ordered quantity assigned to supplier . The perfect rate of supplier is represented by . Eq (4.8) shows the effective demand , which is the number of non-defective parts that the customer requires for producing without shortages. The demand per time unit is and is the customer minimum required perfect rate. The terms inside the brackets in the objective function, Eq (4.1), represent the ordering, purchasing, inventory, and transportation cost in the following order: The first term describes the ordering cost, Eq (4.9): where is the setup cost of supplier . The second term represents the purchasing cost, which is the price of the items, in Eq (4.10): Here, is the price per unit from supplier . The inventory cost is included in the third and fourth term. The third term is the cost of inventory on hand, in Eq (4.11): where ℎ is the inventory holding cost per item and time. The fourth term represents the cost of inventory in transit, in Eq (4.12): where is the time length of the planning scenario, is the lead time of supplier , and the proportion of the lead time over a month is ⁄ .
Finally, the fifth term represents the total transportation cost, in Eq (4.13): In Eq (4.14), is the transportation cost of one order to supplier , and is the freight rate of supplier . The freight rate depends on the shipped weight range, which is determined by the order size and the weight of each item. The weight of an item shipped is defined as .

= (
) (4.14) Eq (4.2) represents the capacity constraint, which ensures the monthly supplier capacity is not exceeded. Here, is the capacity of supplier . In Eq (4.3), the total number of orders from selected suppliers has been redefined as . Table 1 summarizes the notation of the model.

Problem description
In this section, the problem employed for developing the proposed model is presented. This problem is selected for comparison purposes.
An industrial customer requires one thousand units a month of a particular item, = 1000. These units can be purchased from three different available suppliers, thus = 3. The shortage of this item is not allowed. Each supplier has a different but constant price , ordering cost , lead time , monthly capacity , and perfect rate . The guarantee of non-defective parts over the total purchased units is given by the perfect rate, which represents the percentage of non-defective parts provided by each supplier. The customer has a minimum required perfect rate = 0.95. This means that at least 95% of the purchased items must be non-defective parts. The perfect rate must be satisfied considering the average of the total purchased units. Therefore, the effective demand is = 950 units per month. Table 2 reviews the notation and the values of these parameters. In Table 3, the parameters of each supplier are summarized, noticing that each supplier guarantees a different perfect rate . The shipping cost is described by a non-linear function. Transportation cost is different from each supplier, and depends on the order size and the weight of each item. This cost is a non-linear function of the shipment weight. Table 4 shows the shipping cost of each supplier for this problem, which is given in dollars per hundred weight (CWT). In this case, dollars per hundreds of pounds.

Decision variables
The optimization of the problem using the proposed model will provide the set of decision variables indicated in Table 5. These are the solutions to the problem. From these results, the remaining variables shown in Table 6 can be determined. Total number of items ordered to supplier i during the full order cycle period

Experiments and results
The proposed model is tested by solving the numerical problem described in section 5. Particle swarm optimization, genetic algorithm, and differential evolution are used for optimizing the model. These methods are selected because they represent some of the most popular artificial Intelligence-based optimization techniques in supply chain management. The performance of the algorithms is statistical evaluated by comparing their results with each other. Then, the effectiveness of the model is assessed by comparing the solution of the problem against the solutions of models P1 and P2. Experiments and results are informed in the following sections.

Setting parameters of metaheuristic algorithms
First, parameters of metaheuristic algorithms must be set for the optimization process. Initial parameters of PSO, GA, and DE are configured with the following values: The total population has been set to 200 individuals and the maximum number of iterations has been set to 300. The number of dimensions, , is 6, according to the decision variables of the problem: 1 , 2 , 3 , 1 , 2 , and 3 .
The parameters used for each metaheuristic algorithm have been configured according to the reported values in the literature, where their best performances were achieved [28,29,45]. Table 7 shows the configuration of these parameters.

Experimental results applying metaheuristic algorithms
After setting the parameters of the algorithms, they are used for solving the numerical instance. Since metaheuristic algorithms are stochastic methods, the optimization process is repeated in 30 independent executions for every metaheuristic algorithm, to verify the consistency of the results. From the 30 independent executions, thirty results are obtained, which represent the best-found solutions. With this information, the performance of the three algorithms are statistically compared considering different indicators: the lower cost , higher cost ℎ , average cost , standard deviation , computational time , and average computational time . Indicators , ℎ , and evaluate the accuracy of the algorithms, evaluates the consistency of the solutions and, therefore, the robustness of the metaheuristic algorithms. Finally, and evaluates the speed of the methods.
The experiments are implemented using MATLAB R2017a, in a computer with a processor intel(R)core(TM)i5-4200ucpu@1.60GHz2.30GHz. The experimental results considering the 30 independent executions are listed in Table 8. The best outcomes are highlighted in boldface. From Table 8, it can be observed that GA and DE achieve the lowest cost solutions, PSO shows the worst performance, and GA is the fastest method. However, DE has the best ℎ , , and indicators, demonstrating the consistency and accuracy of the algorithm. From these results, it can be concluded that DE outperforms the rest of the techniques. Additionally, the convergence of the algorithms for the best-found solutions is illustrated in Figure 5. From this figure, it can be observed that GA converges faster than PSO and DE. GA reaches the best solution in iteration 145, while PSO in 255 and DE in 234. Under such scenario, GA is also a suitable algorithm for optimizing the proposed model.

Comparisons against related models
P1, P2, and the proposed model are tested by solving the numerical problem described in section 5. The effectiveness of the proposed model is evaluated by comparing its best-found solutions against the solutions obtained whit P1 and P2 models. P1and P2 are optimized with the commercial software LINGO, while the proposed model is optimized using PSO, GA, and DE in MATLAB. However, it took a long time to find a solution for P1 and P2, even running the model in a high-performance computer. The best-found solutions by each model are reported in Table 9. The best results are highlighted in boldface.  From Table 9, it can be seen that the proposed model had better performance than the others. P1 and P2 found worse solutions.

Statistical analysis
Statistical analysis has been applied with growing interest to the study of evolutionary algorithms. Non-parametric statistical techniques have been used because they are suitable for the comparison between algorithms [47]. A Kruskal-Wallis test was carried out with the purpose of determining whether the medians of the proposed algorithms differ for total cost and computational time.   Table 10 shows the Kruskal-Wallis statistics for the comparison of the total cost and the computational time. The evidence of the p-values demonstrates a significant difference between the medians of the three algorithms. Table 11 shows the medians and their confidence intervals for both total cost and computational time. For total cost, it is observed that the intervals of the DE and GA are overlapped, but the DE algorithm expands to lower costs, and the interval of PSO is above the other two algorithms. In terms of computational time, the intervals are not overlapped, and the differences are more evident, with GA being the fastest algorithm.

Conclusions
In this work, a novel model is proposed for solving the supplier selection and order quantity allocation problem. The model considers ordering, purchasing, holding, and transportation costs. Freight rate discounts, quality, and capacity constraints are also included. The model is tested by solving an existing numerical instance, using PSO, GA, and DE. These algorithms are implemented instead of analytical methods. The performance of the algorithms is statistical evaluated by comparing their results with each other. Then, the effectiveness of the model is assessed by comparing the solution of the problem against the solutions obtained with P1 and P2. These are related models reported in the literature that solved the same problem using the mathematical programming solver LINGO. Experimental results prove the effectiveness of the proposed model, and demonstrate that metaheuristic algorithms are able to find lower-cost solutions in less computational time than P1 and P2 models, using LINGO. Future research may incorporate quantity discounts schemes on the purchasing cost in order to analyze the impact on the order quantity. Additionally, a multi-objective formulation can be modeled, where the transportation costs can be treated separately from the other logistic costs to produce a Pareto front. Evolutionary algorithms could be used to find solutions in a very efficient manner. Finally, more specialized heuristics can be developed in order to solve larger instances efficiently by exploiting some of the mathematical properties of the model.