This paper presents (1) a novel capacitated model for supply chain network design which considers manufacturing, distribution, and quality costs (named SCND-COQ model) and (2) five combinatorial optimization methods, based on nonlinear optimization, heuristic, and metaheuristic approaches, which are used to solve realistic instances of practical size. The SCND-COQ model is a mixed-integer nonlinear problem which can be used at a strategic planning level to design a supply chain network that maximizes the total profit subject to meeting an overall quality level of the final product at minimum costs. The SCND-COQ model computes the quality-related costs for the whole supply chain network considering the interdependencies among business entities. The effectiveness of the proposed solution approaches is shown using numerical experiments. These methods allow solving more realistic (capacitated) supply chain network design problems including quality-related costs (inspections, rework, opportunity costs, and others) within a reasonable computational time.
The supply chain (SC) can be understood as the integration of all business entities that work together in order to ensure that the customer receives a product or service at the right time, with the right quality, and at low cost. To achieve this, it is necessary to coordinate all the business entities within a SC. This can be achieved through supply chain management (SCM). This paper addresses one of the problems included in SCM which is supply chain network design (SCND). The SCND aims at selecting the business entities that increase the overall performance of the SC. Cost of Quality (COQ) is a measurement system that translates the implications of poor quality into monetary terms. Although COQ has been applied mostly within enterprises, COQ can be applied as an external measure to integrate these costs into SCND modeling. Several studies have provided models to ensure quality in multistage SC [
In previous studies, the COQ function, based on percentage of defective units, is assumed to be given. This paper deals with the development of an SCND-COQ model that computes the COQ for a whole SC based on internal decisions within the manufacturing plant, such as fraction defective at the manufacturing plant and error rate at inspection. No previous work has addressed how the COQ functions were obtained while taking internal operational decisions within the SC. Moreover, the proposed SCND-COQ model computes quality costs for the whole SC considering the interdependencies among business entities, whereas previous works have assumed independent COQ functions for each node of the SC.
This study aims to develop a strategic-level model for computing the COQ for a multistage, capacitated supply chain network design (SCND-COQ) problem. The proposed model is an extension of the serial supply chain model (SC-COQ model) developed by Castillo-Villar et al. [
Illustration of a supply chain network.
The model assumptions are as follows. A consumer goods SC, consisting of three echelons: suppliers, manufacturers, and retailers, is modeled. A single product is modeled. The objective is to maximize profit. The overall quality level, QL, (see xvi) is sufficient to represent the quality of the final product. A new SC is being designed. Modifications to the model would be necessary if implemented for a manufacturing process which is currently working at a specific fraction defective at manufacturing and with an established inspection system. External failure costs can be tolerable for the firm. This implies direct applicability to products where external failure is not catastrophic for customers. However the overall quality level (QL) can be adjusted to address problems in which external failures are not desirable (e.g., aerospace and pharmaceutical industries). Suppliers and retailers are external to the manufacturing plant. It is assumed that a 100% inspection at the end of the manufacturing process is performed to check component conformance. Two types of errors may arise; Type I error involves classifying a good item as defective and Type II error involves labeling a defective item as good. Type I error is not considered in this model because it is not detrimental to customer satisfaction. Type I and Type II errors are defined in this paper as in [ All defective products are returned by customers and incur external failure costs. The relevant operational costs are production, procurement, transportation from supplier to manufacturing plant, transportation from manufacturing plant to retailer, and a fixed cost for opening the plant. Customer demand at each retailer ( Suppliers and manufacturing plants have finite capacity. At least one supplier, one plant, and one retailer must be selected (simplest supply chain network).
An example of the representation of the flow of items through a SC network is shown in Figure
Representation of the flow of items through a supply chain network.
The mathematical notation is presented below.
Prevention cost is linked to the production of good products after the manufacturing process as given by
A 100% inspection is performed at the end of the manufacturing process to verify conformance. The appraisal costs (
The internal failure cost for the capacitated model is given by (
The external failure costs and opportunity costs are given by
The width of the specification is defined by an upper limit (
The loss coefficient is given by
The quality characteristic,
In order to compute the opportunity loss for the SC, a relative value of the quality characteristic is obtained by subtracting the target value (a lower bound) from the current overall percentage defective as shown in the last term of (
The total COQ is computed as the sum of the prevention, appraisal, and internal and external failure expressions as given by
The objective function is to maximize profit
The objective function given in (
Constraints in (
The capacitated SCND-COQ model is a constrained mixed-integer nonlinear programming problem (MINLP) which is challenging to solve because it combines all the difficulties of both of its subcategories: the combinatorial nature of mixed integer programming (MIP) and the difficulty of solving nonconvex nonlinear problems (NLP). These two subcategories are known as NPO-complete problems [
Five procedures for solving the capacitated SCND-COQ model are described and compared. Three heuristic procedures are based on the serial model and they can be divided into two stages. Stage I consists of finding serial logistic routes, a serial route being a combination of three entities (supplier-plant-retailer), with the highest profit per unit sold, which are to be added to the network at each iteration of the procedure. Once a feasible network is constructed, Stage II consists of evaluating the feasible network configuration using the capacitated SCND-COQ model. The difference among the serial-based procedures lies in how the search of the serial routes to be added to the network at each iteration is performed. The first heuristic procedure enumerates all the serial routes and applies a value-restricted selection for finding the serial logistic route to be added to the network at each iteration of the algorithm. The second procedure uses the local search metaheuristic simulated annealing (SA) for finding the serial logistic route to be added to the network at each iteration of the algorithm. The third procedure uses a population-based metaheuristic, the genetic algorithm (GA), for finding the serial logistic route to be added to the network at each iteration of the algorithm. In addition, two solution procedures which are not based on finding serial logistic routes were developed: (1) an exhaustive enumeration of all possible networks with calls to a GlobalSearch (GS) algorithm and (2) an exhaustive enumeration of all possible networks with calls to a MultiStart (MS) algorithm. A detailed description of each of the five solution procedures is presented in Sections
The number of possible serial logistic routes is computed as
The heuristic procedures based on the serial model rely on the following idea: a network can be constructed by (1) choosing the serial logistic route with the highest profit per unit sold when sending the maximum possible amount of items through that route, (2) adding that serial route to the network, (3) updating the remaining capacities, and repeating the process.
The heuristic procedures serve to construct a feasible network and to determine the amount of items to be sent (Stage I). Despite the ease of implementation and speed of these heuristic procedures for constructing a network, some limitations exist. For each serial route, the internal decision variables error rate at inspection (
Create a list of all possible serial routes ( Compute the quality level attained by each serial route, eliminate the routes that do not meet the minimum level in ( Determine the maximum flow that can be sent through a route by evaluating the following: Prelocate the vector with not opened plants (NOP). Since the same plant can be selected in several serial routes (as long as the remaining plant’s capacity is greater than zero), this vector avoids taking the fixed cost for opening a plant into account more than once. The search for additional serial routes to be added to the network continues until one of the five following cases occurs: nonpositive profit is obtained, the sum of the capacities of the suppliers is exhausted, the sum of the capacities of the plants is exhausted, the demand is satisfied, or there are no more feasible remaining routes to select from (the updated
The search is performed by using one of the following procedures: (1) evaluation of all the serial routes and a greedy or value-restricted constructive (VRC) procedure, (2) simulated annealing (SA), and (3) the genetic algorithm (GA). The details of the procedures are described in Sections Update the remaining capacities and demands. One or more of these three cases may occur: one supplier is saturated, one plant is saturated, or the demand at one retailer is fully satisfied. In each case, the business entities that were saturated are eliminated from the set of potential business entities and all the routes that include these business entities are eliminated from the matrix with possible serial routes ( Update the NOP vector each time a plant is selected. For instance, if the selected route contains a plant that was already opened in a previous iteration, then the additional fixed cost is zero; otherwise, if the plant is in the NOP vector, then a fixed cost is incurred for opening that plant. Store results.
The network with flows formed by adding serial routes is evaluated by using the capacitated SCND-COQ model and the internal continuous variables are reoptimized. It is worth noting that the network and flows found in Stage I are not modified. Reoptimize the internal continuous variables associated with the opened manufacturing plants by using the GlobalSearch algorithm in MATLAB.
For each serial route (rows in the possible serial routes matrix, that is, the
Value-restricted selection (VRS) was used to choose the serial route to be added to the network at each iteration of the procedure. The selection of the logistic route at each iteration is determined by choosing a random route from a restricted candidate list (RCL). The RCL was used as a way to avoid a greedy choice as in the GRASP (greedy randomized adaptive search procedure) metaheuristic; refer to [
The RCL contains the routes with the higher values of profit per unit sold. Let
Descriptions of the general SA procedure can be found in [
Two additional variations of this method were developed: SSA2 and SSA3. SSA2 has as decision variables the selection of serial routes while the internal continuous variables (
SSA3 also has as decision variables the selection of serial routes while the internal continuous variables (
Genetic algorithms, introduced by Holland [
Exhaustive enumeration consists of listing all possible SC networks. For each SC network, the MATLAB GlobalSearch (GS) and the MultiStart (MS) algorithms are used to solve for the amount of items to be sent between suppliers and manufacturing plants and between plants and retailers (i.e.,
It should be noted that the exhaustive enumeration of all possible SC networks does not necessarily mean that all the possible solutions in the search space are evaluated, as each possible SC network contains infinite possible solutions, which depend on the values of the decision variables (
Since the number of networks grows exponentially as the number of business entities increases, as shown in (
To investigate the effectiveness of the developed solution procedures, a variety of network sizes (as shown in Table
Test problems.
Number of suppliers ( |
Number of plants ( |
Number of retailers ( |
Number of constraints | Number of decision variables |
---|---|---|---|---|
3 | 2 | 3 | 13 | 24 |
5 | 4 | 6 | 25 | 67 |
8 | 8 | 10 | 44 | 186 |
35 | 20 | 35 | 145 | 1530 |
In order to compare the performance of the solution procedures against optimal solutions, specially constructed instances (problem class I described in Subsection
The general approach used to generate instances is described next. The data used in test problems was generated randomly from a uniform distribution between the low and high levels documented in Table
Ranges of the parameters used to generate the instances.
Input parameter | Low level | High level |
---|---|---|
Fraction defective at supplier ( |
0.05 | 0.2 |
Fraction defective at retailer ( |
0.05 | 0.1 |
Extra percentage (extra) in price ( |
1.2 | 1.3 |
Procurement costs ( |
50 | 120 |
Production costs ( |
70 | 130 |
Transportation costs: |
3 | 12 |
Fixed cost for opening manufacturing plants ( |
80,000 | 120,000 |
Fixed costs: |
5,000 | 15,000 |
Rework cost ( |
70 | 90 |
Loss incurred owing to failure of purchased components ( |
0.45 of average |
0.55 of average |
Variable cost for prevention activities ( |
|
5 |
Variable cost for appraisal/inspection activities ( |
5 | 5 |
Price per “sold as defective” items ( |
1/4 |
3/4 |
Cost for computing Taguchi loss function for the network ( |
1/10 | 1/3 |
Cost per defective item ( |
1/4 of avg. price | 1/2 of avg. price |
|
50,000 | 80,000 |
The function of the variable cost for prevention activities was considered as in scenario 3 (as described in Section
The cost for computing the Taguchi loss function (
In class I problem instances, the optimal solution is a serial route that satisfies all the demand at the selected retailers. This was accomplished by generating instances as described above but setting the extra percentage (extra) to 0.5, instead of the interval shown in Table
Once the parameter values are generated from uniform distributions with ranges as shown in Table
The rework rate (
The sales price is set to three times the maximum generated price. The price of “sold as defective” items of
The instances created by using the above procedure are verified by enumerating and evaluating all the possible serial routes. The maximum flow is sent through the route and the internal continuous variables are found by using a nonlinear solver to obtain the profit. The solution with the maximum profit should select
For class II problem instances, the opening of all the business entities to satisfy the demand at retailers is expected. This was accomplished by increasing the price of the final items and modifying capacities so that the retailers limit the flow.
The parameter values are randomly generated from uniform distributions with ranges as shown in Table
The data for class III problems was generated randomly from a uniform distribution between the low and high levels documented in Table
Instances were solved using each of the five proposed solution procedures. Since the number of SC network configurations grows exponentially as the size of the problem increases, exhaustive enumeration procedures are used only for the
The SA algorithm is run 5 times in order to select one serial route with the best-found objective value at each iteration of the heuristic procedure. The GA algorithm is also run 5 times. The VRC procedure performs an enumeration of all the possible serial routes and selects one from the RCL at each iteration of the heuristic procedure. The whole procedure (steps (1.5) and (1.6) in Section
The heuristic parameter for SVRC1 and SVRC2 is
Heuristic parameters.
Solution procedure | Heuristic parameters | ||||
---|---|---|---|---|---|
SVRC1 |
|
||||
SVRC2 |
|
||||
SSA1 | neigsize = [0.45 0.45 0.1 size (PS, 1)] |
|
|
Accep/MaxTrials = 30 | MaxChains = 3 |
SSA2 | neigsize = [0.1 size (PS, 1)] |
|
|
Accep/MaxTrials = 30; |
MaxChains = 2 |
SSA3 | neigsize = |
|
|
Accep/MaxTrials = 30; |
MaxChains = 2 |
SGA1 | pm = 0.01 | pc = 0.95 | gen = 20 | pop = 20% of |
|
SGA2 | pm = 0.01 | pc = 0.95 | gen = 10 | pop = 10% of |
|
SGA3 | pm = 0.01 | pc = 0.95 | gen = 10 | pop = 10% of |
Note: for the
Tables
Results for problem size
GS | MS | SVRC1 | SVRC2 | SSA1 | SSA2 | SSA3 | SGA1 | SGA2 | SGA3 | |
---|---|---|---|---|---|---|---|---|---|---|
Class I | ||||||||||
Avg_Profit |
|
41,709,103.64 |
|
|
|
|
|
40,569,521.42 |
|
|
Avg%dev |
|
0.26 |
|
|
|
|
|
2.57 |
|
|
Avg_Evals |
|
16,986,412.80 |
|
|
|
|
|
4,404.00 |
|
|
Avg_Time |
|
13,906.77 |
|
|
|
|
|
2.59 |
|
|
Class II | ||||||||||
Avg_Profit | 43,977,372.68 | 40,721,911.06 | 44,986,134.32 |
|
47,390,930.58 |
|
|
47,576,092.96 |
|
|
Avg%dev | 8.92 | 14.66 | 5.37 |
|
1.16 |
|
|
0.57 |
|
|
Avg_Evals | 17,880,237.60 | 16,848,438.00 | 6,656.60 |
|
19,915.40 |
|
|
13,345.60 |
|
|
Avg_Time | 12,414.88 | 11,740.01 | 8.13 |
|
9.48 |
|
|
8.02 |
|
|
Class III | ||||||||||
Avg_Profit | 9,763,747.96 | 9,488,786.92 | 9,778,795.24 |
|
|
|
|
10,221,015.40 |
|
|
Avg%dev | 6.63 | 6.62 | 8.02 |
|
|
|
|
3.74 |
|
|
Avg_Evals | 9,420,031.20 | 19,270,506.00 | 5,155.60 |
|
|
|
|
7,119.80 |
|
|
Avg_Time | 6,944.75 | 13,079.87 | 6.82 |
|
|
|
|
3.92 |
|
|
The bold font in the tables refers to the algorithms that reached best solutions.
Results for problem size
SVRC1 | SVRC2 | SSA1 | SSA2 | SSA3 | SGA1 | SGA2 | SGA3 | |
---|---|---|---|---|---|---|---|---|
Class I | ||||||||
Avg_Profit |
|
|
|
|
|
49,623,191.12 | 51,243,573.72 |
|
Avg%dev |
|
|
|
|
|
5.58 | 3.08 |
|
Avg_Evals |
|
|
|
|
|
8,846.60 | 6,951.40 |
|
Avg_Time |
|
|
|
|
|
5.06 | 21.88 |
|
Class II | ||||||||
Avg_Profit | 118,455,380.46 | 125,070,837.06 | 124,353,125.54 |
|
123,051,779.22 | 123,204,151.47 | 124,955,144.86 | 123,927,909.74 |
Avg%dev | 5.58 | 0.19 | 0.74 |
|
1.70 | 1.76 | 0.29 | 0.98 |
Avg_Evals | 29,055.40 | 5,049.64 | 42,555.60 |
|
34,449.40 | 46,363.40 | 18,697.20 | 17,002.40 |
Avg_Time | 74.04 | 17.07 | 14.70 |
|
317.41 | 24.52 | 133.09 | 146.33 |
Class III | ||||||||
Avg_Profit | 39,465,124.69 | 42,810,167.13 | 42,810,167.13 |
|
40,157,925.23 | 40,128,165.86 | 42,796,773.97 | 42,810,167.13 |
Avg%dev | 8.16 | 0.20 | 0.20 |
|
6.95 | 6.23 | 0.23 | 0.20 |
Avg_Evals | 22,111.00 | 5,210.44 | 38,800.00 |
|
17,804.60 | 37,709.60 | 13,984.20 | 13,701.60 |
Avg_Time | 60.39 | 15.60 | 13.89 |
|
191.32 | 19.02 | 111.73 | 110.97 |
The bold font in the tables refers to the algorithms that reached best solutions.
Results for problem size
SVRC1 | SVRC2 | SSA1 | SSA2 | SSA3 | SGA1 | SGA2 | SGA3 | |
---|---|---|---|---|---|---|---|---|
Class I | ||||||||
Avg_Profit |
|
|
|
|
53,822,605.31 | 48,794,936.66 |
|
|
Avg%dev |
|
|
|
|
2.02 | 11.21 |
|
|
Avg_Evals |
|
|
|
|
7,919.80 | 22,529.20 |
|
|
Avg_Time |
|
|
|
|
66.15 | 6.65 |
|
|
Class II | ||||||||
Avg_Profit | 210,780,559.55 | 234,647,930.81 |
|
234,647,930.81 | 201,791,597.82 | 234,518,007.14 | 234,524,750.57 | 234,647,930.81 |
Avg%dev | 10.33 | 0.15 |
|
0.15 | 14.49 | 0.19 | 0.20 | 0.15 |
Avg_Evals | 174,373.80 | 32,888.00 |
|
82,037.80 | 54,223.60 | 237,543.60 | 79,051.60 | 83,976.00 |
Avg_Time | 791.55 | 115.83 |
|
1,487.61 | 1,027.24 | 107.95 | 1,239.64 | 1,575.92 |
Class III | ||||||||
Avg_Profit | 77,799,129.47 | 88,500,880.62 |
|
88,444,907.51 | 76,311,740.30 | 88,883,338.00 | 88,297,371.17 | 88,444,907.51 |
Avg%dev | 13.47 | 0.96 |
|
1.03 | 15.29 | 0.55 | 1.18 | 1.03 |
Avg_Evals | 166,321.40 | 35,431.92 |
|
88,296.60 | 63,744.00 | 245,791.60 | 87,427.60 | 87,802.00 |
Avg_Time | 528.86 | 126.18 |
|
1,705.61 | 1,197.31 | 102.84 | 1,279.54 | 1,212.89 |
The bold font in the tables refers to the algorithms that reached best solutions.
Results for problem size
SVRC1 | SVRC2 | SSA1 | SSA2 | SSA3 | SGA1 | SGA2 | SGA3 | |
---|---|---|---|---|---|---|---|---|
Class I | ||||||||
Avg_Profit | 58,064,475.00 |
|
58,835,952.34 | 58,247,593.08 | 38,238,724.57 | 55,730,804.56 | 57,808,706.54 | 57,087,459.85 |
Avg%dev | 2.92 |
|
1.64 | 2.61 | 36.44 | 6.92 | 3.45 | 4.55 |
Avg_Evals | 1,949,047.20 |
|
48,971.00 | 24,684.00 | 19,717.20 | 1,563,423.40 | 52,121.60 | 66,082.00 |
Avg_Time | 6,733.20 |
|
32.22 | 165.15 | 120.47 | 554.06 | 849.38 | 1,667.85 |
Class II | ||||||||
Avg_Profit | 867,540,166.20 | 981,487,545.86 | 981,963,721.23 | 974,060,070.59 | 565,928,537.54 |
|
978,690,227.10 | 983,533,295.26 |
Avg%dev | 12.11 | 0.73 | 0.7 | 1.47 | 42.52 |
|
1.01 | 0.52 |
Avg_Evals | 18,860,758.20 | 19,184,769.80 | 829,529.00 | 276,866.20 | 148,021.40 |
|
627,077.60 | 637,319.40 |
Avg_Time | 68,691.96 | 14,677.11 | 337.97 | 5,037.87 | 2,320.08 |
|
16,920.93 | 17,572.59 |
Class III | ||||||||
Avg_Profit | 266,985,536.25 |
|
303,366,283.17 | 305,752,432.09 | 216,893,443.36 | 308,695,294.99 | 307,980,118.48 | 305,808,477.36 |
Avg%dev | 13.75 |
|
2.07 | 1.28 | 29.74 | 0.34 | 0.56 | 1.26 |
Avg_Evals | 14,534,583.40 |
|
464,191.00 | 190,929.40 | 158,399.80 | 19,569,407.20 | 434,557.00 | 212,050.20 |
Avg_Time | 52,247.29 |
|
332.6 | 3,632.26 | 2,807.67 | 7,096.90 | 8,490.13 | 6,104.69 |
The bold font in the tables refers to the algorithms that reached best solutions.
For the GS and MS procedures, the best-found profit, achieved from one of all possible SC network configurations, is the one reported. For SVRC1 and SVRC2 (greedy approach), only 1 run is performed in Stage 1 and the profit achieved by the network in Stage 2 is the one reported as the final objective value. For SSA/SGA, at each iteration, the serial logistic route with the best-found profit in 5 runs is the one added to the network in Stage 1; the profit obtained by the network in Stage 2 is the one reported.
The average number of evaluations of the objective function over 5 instances (Avg_Evals) is also considered as a performance measure. For the GS and MS procedures, the number of evaluations of the objective function is determined by the total number of times that the nonlinear solver is called while solving the problem instance. For SVRC, SSA, and SGA, the number of evaluations is computed as the sum of the number of evaluations performed by the heuristic procedures when constructing the network and the number of evaluations performed by the nonlinear solver while reoptimizing the internal continuous variables for the capacitated model.
Finally, the average computational time (Avg_Time) is the average processing time duration in CPU seconds that is required for each solution procedure over 5 instances. The computational time considers the entire solution procedures, that is, phase I and phase II. The computer used for the computational experiments was a Sager NP8130 with an Intel i7 2720QM processor operating at 3.3 GHz, with 16 GB of memory DDR3 on an Intel HM65 chipset motherboard.
Table
For class II problems, based on Avg_Profit, the SVRC2, SSA2, SSA3, SGA2, and the SGA3 reach the same average solution (best-found solution). For class III problems, the best-found solution was found by SVRC2, SSA1, SSA2, SSA3, SGA2, and SGA3. GS, MS, and SVRC1 present an Avg%dev greater than 6.6%.
Table
Table
The results for the largest instance (
To conclude, GS and MS perform poorly, even for the smallest problem size, and require substantial computational effort. The computational time for SVRC2 is for only one run of the whole procedure and the CPU time for the remaining procedures includes the 5 runs in phase I. For realistically sized problems, the practitioner could use the SSA1 which requires less computational time than the remaining procedures to obtain good quality solutions or the GA-based procedures which require more computational effort but obtain the higher profits on average. Interestingly, the index-independent representation is not adequate for the SA-based procedure (SSA3) but improves the average profits reached by SGA3.
The capacitated SCND-COQ model selects several business entities at each echelon of the SC and allows the modeling of business entities with limited capacity. Using the SCND-COQ model can assist firms in improving their profitability and quality simultaneously.
Noteworthy, in the classes where SGA2, SGA3, SSA1, and SSA2 achieve better profits than SVRC2, the average percentage difference between the solutions was less than 0.73%. This may suggest that these methods could be close to the global solution for the classes where the optimal is unknown. As the problem size continues to increase, using SVRC2 will entail considerable computational burden. Thus, the use of GA-based procedures and SSA1 is more attractive for large problems and these methods find solutions close to the best-found solutions. The computational results demonstrate that the state and individual representation in the simulated annealing and the genetic algorithm, respectively, has a significant impact on the solution quality.
A possibility for future research would be to develop additional algorithms specifically designed for the capacitated model; metaheuristics such as SA, the GA, Tabu search, and scatter search could be explored. In addition, a multiproduct and multiobjective capacitated supply chain network design problem including COQ could be studied.
The authors declare that there is no conflict of interests regarding the publication of this paper.
This research was funded in-part by the University of Texas at San Antonio, Office of the Vice President for Research.